digital-nation

bloc-note d'un informaticien procrastinate...

Information importante : le blog n'est plus mis à jour. Il a été déménagé vers la plateforme My.Opera à l'adresse suivante : http://my.opera.com/groumphy. N'oubliez pas de mettre à jour vos favoris et RSS.

30 ans de dogme logiciel et de patchs correctifs

Posté le jeudi, 29 septembre, 2005

Microsoft à 30 ans, mais commence à perdre ses dents !

Il est loin le temps de la petite PME de deux employés, actuellement Microsoft compte plus de 50.000 personnes de part le monde et n'a cessé de croître jusqu'il y a peu. Mais cet empire comporte des failles qu'il est parfois bien dur de combler à coup de millions ou de publicités intensives.

L'histoire de Microsoft est cependant parsemée de belles choses mais aussi d'embuches. Dans les embûches citons par exemple : la sortie de Windows Millenium, les déjà grandes critiques de Windows Vista et de ses nombreuses moutures - lisez : 7, un chiffre porte-bonheur ? - ou encore la suite bureautique Office 12 - lisez : Un autre flop en préparation ? - , pourtant encore en développement... Et ce n'est pas finis ! D'après certains sites, Microsoft s'appreterais à sortir plus de logiciel sur les prochains 18 moins que dans les 3 dernières années.

Cependant sous l'égide de Steve Balmer, Microsoft fait des revisions drastiques de son infrastructures. Maintenant subdivisé en 3 branches précises, dont Office et Windows ne sont plus ensemble dans leur développement, Microsoft semble se préparer au pire et ne vogue plus à travers les flots avec un drakkar... Ce que l'on peut aussi en voir, est le rapprochement de Windows et des services internet, prévoyez encore quelques patchs de sécurités et ils pourraient y arriver, au rève qu'ils entretiennent de souder l'un et l'autre !

Malgré tout, souhaitons un bon anniversaire à Microsoft ! Est-il prévu un patch de jeunesse à 40 ans ?

Un autre flop en préparation ?

Posté le mardi, 27 septembre, 2005

Après les 7 versions de Vista, les premiers commentaires sur Office 12 tombent !

Les premiers avis mitigés sur Windows Vista sont à peine tombés - Lisez : 7 un chiffre porte bonheur - que l'on parle déjà en coulisse de Microsoft Office 12 [UK] - Info de : Le journal du Geek - pourtant à peine encore en développement ! Certains commentaires fusent sur de pâles améliorations, d'autres sur de simples mises à jour... Toutefois, les premières impressions d'écran donne figurent de Suite Bureautique pâles et lourde ! Et le design ressemblant à celui du Mac est plus que raté - avis personnel -.

Il semble que Microsoft s'enfonce dans la lourdeur et les panoplies inutiles dans les fonctions en place de devoir stabiliser et renforcer les fonctions les plus utilisées ou les plus récalcitrantes de Office 2003 (voir même de Office XP ou encore 2000 très largement utilisées).

Je dirais même plus, que OpenOffice.org est plus digèste - malgré un design plus sobre - que Office en soi ; et puis les particuliers lisant ce billet sauront d'emblée que OpenOffice.org sera leur suite. On attend encore et toujours avec une certaine impatience la version 2.0 alors que la version 1.1.5 est venue combler quelques léger problèmes. Je dirais même qu'un pas peut être franchis pour les petites entreprises... Sur la diffusion de OpenOffice.org mais pour cela il vaut mieux attendre la version 2.0 qui comprendra plus de module, plus de compatibilité et plus de fonctionnalités dirigées vers les entreprises. Une véritable concurance pourra dès lors s'instaurer.

Pour en revenir à Office 12, il est a espérer que les fonctionnalités ainsi que le design pourront dès lors grandement s'améliorer autrement qu'a coup de millions de dollard de publicité pour faire savoir que Office 12 sera la meilleure suite bureautique sur le marché au moment de sa sortie.

A suivre mais de loin...

Windows ... Linux ... Un dur choix !

Posté le samedi, 24 septembre, 2005

Un combat de titan... Pour des mensurations démesurées

Les plus courtes sont les meilleures... Notre amis Google nous indique pourquoi il faut choisir Linux et non pas Microsoft ! - Je vous l'avais dit que c'était court non ? -

Utilisation de contrôle dans une GUI

Activation et désactivation de contrôles utilisateurs dans une interface utilisateur

AutoIt, malgré le fait qu'il soit complet, ne permet pas nativement d'activer ou de désactiver un contrôle utilisateur. Cela reste bien souvent un problème et est l'objet de nombreuses questions sur différents forums. Toutefois il existe une solution.

Récemment j'ai été confronté au problème et je me suis basé sur un script JavaScript afin de pouvoir solutionner le problème. La logique de pensée reste identique toutefois préalablement il faudra capturer l'évenement du client sur l'interface utilisateur (GUI).

L'action de l'évenement d'activation ($GUI_ENABLE) ou de désactivation ($GUI_DISABLE) est produit par la fonction GUICtrlSetState(IdentificationControle, Status). Il suffit d'extérioriser cette fonction pour avoir une réutilisation possible. Comme déjà vu précédement - Lisez : La création d'alias dans AutoIt - la création n'est pas complèxe. L'astuce du script en lui-même consiste à capturer l'évenement sur le contrôle.

Après cette instance de théorie passons maintenant à la pratique.

Créons notre script - Rappel : Procédure d'écriture script - contenant donc une GUI, une liste déroulante (ComboBox) et une zone de saisie (InputBox) seront dans la GUI. Le schéma sera le suivant : à la sélection d'une certaine valeur du ComboBox, l'InputBox qui était désactivé sera activé.

#include <GUIConstants.au3>

#NoTrayIcon

GUICreate("Ma GUI", 500, 500, -1, -1, -1, -1, -1)

GUISetState (@SW_SHOW)

GUICtrlCreateGroup("Mon groupe"), 170, 10, 320, 45)

Dim $s_cSocLeasing, $s_iOthLeasing

$s_cSocLeasing = GUICtrlCreateCombo("Mon combo", 185, 28, 130, 95)

GUICtrlSetData($s_cSocLeasing, "Valeur 1 | Valeur 2 | Valeur 3")

GUICtrlSetTip($s_cSocLeasing, "Mon astuce")

$s_iOthLeasing = GUICtrlCreateInput("Mon Input", 330, 28, 150, 20, $WS_DISABLED)

GUICtrlSetTip($s_iOthLeasing, "Mon astuce")

While 1

; Affiche l'interface utilisateur

; tant que l'évenement n'est pas fermé.

Dim $s_GUI

$s_GUI = GUIGetMsg()

If $s_GUI = $GUI_EVENT_CLOSE Then ExitLoop

WEnd

Ceci est donc l'interface de base. Maintenant créons les fonctions qui nous permettrons d'activer ou de désactiver les contrôles :

;

; Fonction : _Enable

; Description : Active un contrôle

; Paramètres : $s_Ctrl1 est le contrôle a activer

; Dépendance : Aucunes

; Valeur retournée : Identique à GUICtrlSetState

; ==> 1 = succès

; ==> 0 = échecs

; Auteur : Groumphy

; License : (c) Groumphy - temporairement sous license -

; Version : v1.0.006.beta

;

Func _Enable($s_Ctrl1)

Return GUICtrlSetState($s_Ctrl1, $GUI_ENABLE)

If @error Then MsgBox(0 + 32, "Error", "Error occured" & @CR _

"Failed loading Func _Enable (" & $s_Ctrl1 & ")")

EndFunc

;

; Fonction : _Disable

; Description : Désactive un contrôle

; Paramètres : $s_Ctrl1 est le contrôle a activer

; Dépendance : Aucunes

; Valeur retournée : Identique à GUICtrlSetState

; ==> 1 = succès

; ==> 0 = échecs

; Auteur : Groumphy

; License : (c) Groumphy - temporairement sous license -

; Version : v1.0.006.beta

;

Func _Disable($s_Ctrl2)

Return GUICtrlSetState($s_Ctrl2, $GUI_DISABLE)

If @error Then MsgBox(0 + 32, "Error", "Error occured" & @CR _

"Failed loading Func _Disable (" & $s_Ctrl2 & ")")

EndFunc

Maintenant modifions l'interface utilisateur pour la capture de l'élément et l'utilisation des fonctions extérieures :

While 1

; Affiche l'interface utilisateur

; tant que l'évenement n'est pas fermé.

Dim $s_GUI

$s_GUI = GUIGetMsg()

Select

Case $s_GUI = $GUI_EVENT_CLOSE

ExitLoop

Case $s_GUI = $s_cSocLeasing

If GUICtrlRead($s_cSocLeasing) = "Valeur 3" Then ; Si lors de la sélection de la valeur dans le CombBox ce dernier égale Valeur 3 alors appelle la fonction _Enable

_Enable($s_iOthLeasing)

Else ; Toutes autres valeur sélectionnée dans le ComboBox désactivera l'InputBox

_Disable($s_iOthLeasing)

EndIf

EndSelect

Wend

Ici ce n'est évidement qu'un exemple d'utilisation. Vous pouvez utiliser une telle fonction pour afficher ($GUI_SHOW) ou cacher ($GUI_HIDE) un controle etc... Toutes les possibilités sont faisable. Il suffit de changer les éléments dans les fonctions _Enable($s_Ctrl1) et _Disable($s_Ctrl2).

  • Ce billet est dans la catégorie AutoIt et a été écrit par Groumphy

La gratuité n'a pas de prix !

Posté le mercredi, 21 septembre, 2005

Opéra gratuit... Et sans pub !

Opéra Software, la maison d'édition de Opéra, nous annonce une bonne nouvelle sur ces jours : Opéra devient totalement gratuit et sans publicité ! En effet, il est dès à présent possible de télécharger la version 8.5 du navigateur venant du froid - pour information, je n'ai toujours pas retrouvé d'où venait ce petit nom... - anhiliant l'effet du petit bandeau publicitaire pour les versions ne disposant pas de license.

Que pouvons nous en tirer de cette gratuité et disponibilité nouvelle de ce butineur respectant non seulement les standards mais aussi disposant d'une sécurité réelle ? En premier temps une certaine multiplication du navigateur en lui-même et pour cause ce petit bandeau publicitaire était l'arret de la diffusion principale de celui-ci. La multiplicité d'installation sur les plateforme est un grand avantage aussi... Cela donnera aussi un concurent de plus à Microsoft et à son fumeux Internet Explorer 7 qui ne devrait s'installer que sur le Service Pack 2 (voir SP3 ?), notament en entreprise ou la diffusion de ce dernier pack (SP2) n'est encore que minime - information venant du StandBlog et déjà cité sur le présent blog précédement - . Précisons aussi que Opéra est un tout-en-un : mail, agrégateur de nouvelles (fil RSS), navigateur performant, un client IRC et parmis tout cela devront nous rajouter extrémement léger ? De plus certains blogs narrent qu'il y aurait accès au support premium ? A suivre concernant ce dernier point car pour le moment le support est toujours destiné aux personnes ayant achetté Opéra préalablement.

Que lui manque t'il pour terminer ? Un peu comme FireFox : un module de mise à jour automatique, des extensions - sur ce dernier point, le blog suivant recence une similitude de fonctionnalité ; merci au Nico's blog de ce lien - ... Et je pense que c'est tout ! Ah si j'oubliais encore un point important : la liberté du code source ! Mais ne lui en voulons pas trop, la politique actuelle de Opéra Software n'est pas encore cela.

Mais d'ou vient aussi l'idée de cette gratuité subite ? On se souviens d'il y a quelques temps que Opéra était disponible gratuitement pendant une journée pour ses 10 ans, un bel anniversaire... Toujours selon le blog du JournalDuGeek cela viendrais du fait que les développeur soient rentré dans leurs frais ! Hmm...

Pour conclure, souhaitons beaucoup de succès à ce nouveau navigateur, un frère (et non un concurent) de FireFox, Safari (etc.) et concurent (là le terme est choisis !) de Internet Explorer... Bon surf.

  • Ce billet est dans la catégorie ouai B et a été écrit par Groumphy

7 : un chiffre porte bonheur ?

Posté le mardi, 20 septembre, 2005

Microsoft Windows Vista sortira en 7 versions !

Comme à l'accoutumée, Microsoft décline son système d'exploitation en multiple version. Nous étions habitués à la version légère, familliale et "professionnelle", hors ici ce n'est plus cette structure là qui sortira mais bien sept versions (oui oui vous avez bien lu !) !

Dans l'ensemble global, le problème ne se situe pas au niveau des versions ni de leurs contenus, mais plutot sur le particulier qui déjà s'y perd avec 3 moutures différentes tant dans leurs fonctionnalités que dans la cible marketing. Cette information n'est pour le moment n'est pas encore officialisée par Microsoft mais il ne serait pas étonnant que cela soit vrai. Nous avons déjà vu pire de la part de cet éditeur.

Ainsi il y aurait bel et bien encore une version légère destinée "aux pays pauvres" (Ne pourront t'on pas gérer cela autrement ? Le Logiciel Libre ne pourrait-il mieux convenir ? - Voyez en ces intérrogations une hausse de ton sur le point de vue commercial vers Microsoft -), la version Home Basic Edition contenant simplement ce qu'il faut pour un usage familial, la Home Premium Edition intégrant donc le contenu de la Home Basic et des fonctionnalités de type MediaCenter, la Professionnel Edition (tiens un point de repère !) supportant différentes technologies réseaux non-Microsoft (version qui théoriquement ne serait d'aucune utilité pour un particulier - Cf. article précédemment cité -, la Small Business Edition quant à elle serait destinée aux PME, - reprenez votre souffle ici car ce n'est pas encore fini ! - l'Entreprise Edition destinée au entreprise (où s'arrète pour Microsoft la notion de PME et d'entreprise ?) et pour terminer l'Ultimate Edition incluant tout !

Non seulement dans l'art et la manière d'embrouiller le particulier et parfois mêmes les très petites entreprises - j'irais jusqu'a dire tout le monde - Microsoft fait fort mais explique dans tout cela (non dit directement apparement) que le but de cette déclinaison de version est simplement de s'allouer plus de rentabilité sur certaines version ! Il est absolument honteux de la part d'une société tel quel Microsoft de s'offrir des bénéfices du à la crédulités des particuliers ou des néophytes en informatique, voir même des pays défavorisé !

Sachant que beaucoup de ces systèmes d'exploitation sont piratés, où irait le bonheur de Microsoft ? Je ne sais plus quoi penser sauf que malgré tout la technique commerciale du géant de Redmond est incompréhensible. N'oublierais t'on pas que le premier impacté dans tout cela est le consommateur ? Toutes ces questions ont bien entendu réponse mais peut-être s'agit-il d'un manque de mauvaise volonté de ma part de mal comprendre cela.

Afin de continuer un peu à polémiquer sur la technique commerciale de Microsoft, je me dit que cette société empiète sur le développement du pays (et pas toujours du tiers-monde) en lui-même et sur un des principes fondamentaux relatifs à celui-ci : l'enseignement. Lorsque l'on sait déjà la difficulté que certaines personnes ont à s'offrir le loisir d'un ordinateur, parfois même juste à manger, et que l'informatique de nos jours est nécessaire afin de pouvoir trouver un travail (tant au niveau des pays en voie de développement que chez nous) le paiement d'une license toute light qu'elle soit est préjudiciable à cela.

Ainsi le Logiciel Libre correspondrait mieux à ce type de problème. Et lui ne se développe pas en plusieurs version. Il existe plusieurs type de distribution toutes basées sur le même noyau à distribution gratuite... - certains y verrons le même problème que les 7 versions de Vista mais je le considère totalement différent -. La gratuité du Logiciel Libre avec sa gratuité permet d'instaurer une structure qualitative sur l'enseignement informatique ? A suivre.

Edité par Groumphy le 20.09.2005 à 07:59

Création d'alias dans AutoIT

Posté le dimanche, 18 septembre, 2005

AutotIT permet la création d'alias et l'adaptation de SciTE avec ces derniers : profitons-en !

AutoIT est flexible et le montre encore une fois. L'éditeur SciTE est l'éditeur par défaut de AutoIT, et s'adapte en conséquence ! Lancons nous dans la personnalisation des fonctions AutoIT.

AutoIT en lui-même n'est pas personnalisable sur les fonctions sans un upgrade en sois. De ce fait, certaines personnes ne trouve pas toujours la fonction adéquate, il est normal alors de la créer... Par exemple le fichier qui nous permettra de générer nos commandes particulières sera appellé _alias.au3 et sera placé dans la racine de l'installation et plus particulièrement dans le dossier Include (@ProgramFilesDir\AutoIt3\Include par défaut). Le fichier qui pourra intégrer notre commande et l'insérer dans l'éditeur SciTE est le suivant : au3.user.calltips.api (situé lui dans @ProgramFilesDir\SciTE\api par défaut). Donc ouvrez ce dernier fichier et créez le fichier _alias.au3 dans les répertoires mentionné - cela nécessite évidement au préalable que les deux logiciels soient installés et que SciTE est votre éditeur par défaut -.

Maintenant, il nous faut créer les fonctions qui nous sont nécessaire afin de pouvoir nous faciliter la vie... Pour exemple, l'utilisation de AutoIt est parfaites pour l'automatisation de logiciels, mais certains logiciels requièrent un redémarrage après l'installation. Cependant leur module d'installation ne le permet pas dans l'immédiat. Créons alors la fonctions _Reboot() !

Elle sera basée sur la fonction native de AutoIT Shutdown(code). La valeur pour effectuer une action de redémarrage est 2. Donc pour effectuer un redémarrage la fonction serait la suivante : Shutdown(2). Il suffit maintenant de créer le retour d'information selon l'action réalisée (succès ou non), cela se fait par l'opération Return.

; Nom de fonction : _Reboot()

; Autheur : Groumphy

; Renvois : Succès = 1

; Echec = 0

; Version : v1.0.0

Func _Reboot()

Return Shutdown(2)

EndFunc ; ==> _Reboot()

La fonction est actuellement créée. Il faut maintenant l'intégrer dans l'éditeur SciTE. Cela se fait grâce au fichier au3.user.calltips.api. Pour ce faire, la syntaxe est la suivante : NomDeFonction Description. Pour notre fonction ce sera donc :

_Reboot() Redémarre le PC. Nécessite l'inclusion de _alias.au3 ( #include <_alias.au3> )

Redémarrer l'application SciTE après avoir fermé les deux fichiers (et sauvegardé dans le répertoire adéquat !). Créer un script et intégrez-y une fonction _Reboot() ; vous pouvez le constater, elle est prise en charge par SciTE et l'infobulle apparaît pour vous renseigner sur la fonctions que vous utilisez ainsi que ses attributs.

Il est évident qu'ici le cas est très simple. Par la même manière vous pouvez créer toutes les fonctions que vous désirez. Il suffit de créer le fichier que vous désirez inclure (un fichier peut contenir plusieurs fonctions bien entendu) et de l'insérer avec le commentaire adéquat à au3.user.calltips.api ! Le nombre de possibilité est infini et j'ai pris le sujet des alias en relation avec le topics du forum AutoIT dont je suis l'auteur. C'est à votre choix de rédiger ce que vous désirez.

  • Ce billet est dans la catégorie AutoIt et a été écrit par Groumphy

Chercher sur un blog...

Posté le samedi, 17 septembre, 2005

Un nouveau moteur pour le portail Google : Google BlogSearch (version beta) !

Google vient à peine de sortir quelques outils assez récent - lisez : combat de titan - qu'il continue sur sa lancée avec Google BlogSearch [UK] un outils qui semble selon son nom l'indique un outils de recherche sur les blogs en ligne. Certains commentaire sont assez salés et informe déjà du manque d'efficacité de cette option de Google - Merci au Standblog de l'info -. Oublierais t'on que l'outil n'est qu'en version Beta ?

Ce qui deviens inquiétant est le fait suivant : Google est déjà un classique (devrais-je dire un standard) de la recherche sur le web. Dois t'il par là-même occuper une position dominante sur le marché sur une technologie (le blogging ... Appellons-là comme cela) en pleine expension ? Qu'en est-il des blogs personnels ? Malheureusement à toutes ces questions Google n'y répond. Devrais t'on le condidérer comme un moteur de recherche ?

Dans cette optique, la configuration de l'indexation se ferait l'aide des balises meta et du fichier robots.txt ... Toujours souligné par le StandBlog, certains feraient quelques tests sur cela. Personnellement je pense qu'il est bon d'attendre les dernières mises à jours et une version définitive avant d'en tirer les conclusions. Pourquoi s'énnerver sur une version de test alors que les risques potentiels de changement sont encore important ? La réponse se trouve parfois à portée de main [UK].

Pour continuer sur Google BlogSearch le monopole de Google sur la recherche s'étend, petit à petit l'oiseau fait son nid. Serait-il une pieuvre qui comme Microsoft dans les années 80-90 étendrais son pouvoir ? J'avais déjà donné un avis global sur la question dans un post précédent que Google étendrais bien son emprise mais à une différence de Microsoft diffusais une information gratuite et des services de qualités, sans compter ses logiciels (qui malheureusement tournent encore que sous Windows) gratuits et de bonnes moutures.

Qu'arrivera t'il après de la part de ce nouveau géant ?

  • Ce billet est dans la catégorie ouai B et a été écrit par Groumphy

La recherche standardisée

Posté le dimanche, 11 septembre, 2005

Etonnant mais vrai !

En lisant une brève nouvelle du StandBlog j'ai pu être très étonné ! Un lien [UK] indiquait qu'un test avait été fait sur les moteurs de recherches et plus particulièrement leurs adaptations faces aux standards... Et pour une fois, celui qu'on croit le bon élève, la royce-royce des moteurs, entendez Google ne l'est pas ! Mais il s'agit bien du vilain petit canard qui montre le bon exemple : MSNSearch !

Oui vous avez bien lu, MSNSearch est bien le moteur se rapprochant des standards, je dirais complétement valide car il passe correctement la validation. Google quant à lui n'indique aucun DTD et utilise les tableaux pour pouvoir mettre en page. Dommage. Dans les autres moteurs qui se rapproche des standards, citons : AOL (beta), Hotbot [UK] et c'est tout ! Quant aux autres Altavista [UK], Lycos [UK] ou encore Yahoo! soit ils n'ont pas de DTD soit elle est incorrecte.

Que se passe t'il du coté du leader du marché, notre ami Google ? Préfère t'il développer des services en place de pouvoir être plus conforme ? La question ne se pose pas et Google se diffère des autres moteurs tant sur les services, logiciels que la pertinance acquise dans son système de recherche. Toutefois, il serait préférable que les standards soient respecté, non pas que je sois un adepte spécifique mais comme démontré bien des fois ceux-ci permettent des miracles face aux difficultés du Web (citons l'agnosticisme des navigateurs, la pérénité du code etc. - Merci à OpenWeb -).

Un futur incertain de ce coté là surtout que Google n'en dit mot... Au contraire de MSNSearch qui annonce sa continuité dans cette voie... A suivre.

  • Ce billet est dans la catégorie ouai B et a été écrit par Groumphy

Folie dépensière !

Mes premiers achats sur le net !

Ah voila un grand pas franchis... Je viens de faire mes premiers achats sur une boutique virtuelle. Absolument, j'ai franchis le pas, quoique lentement mais maintenant surement...

Ma première tentative s'était soldée par un échec... En effet il y a quelques temps je tentais d'achetter un livre parlant de ITIL [UK] sur le site Proxis.be via leur boutique en ligne et payement bancaire séparé (oui j'ai encore choisis cette option délibérément !). Le stock était selon le site présent, mais quelques jours par après un mail indiquant qu'un remboursement allait avoir lieu faute de stock m'est parvenu.

Passons dès lors cette expérience peu concluante.

J'ai donc quelques semaines par après décidé de passer commande de vêtement (ayant rapport à l'informatique et plus particulièrement du monde du Libre) sur le site de OpenStuff.net ! J'ai donc refais des achats et payé le montant. Et quelques jours plus tard, j'ai été livré ! Rhaaa quel bonheur !

Certains d'entres-vous auront certainement déjà pu profiter de cette facilité d'achat en ligne mais pour moi ce fut une grande découverte (et ce malgré tout le passé dans l'informatique que je dispose...). Et pour une fois j'ai eu pleine raison de faire confiance à un achat en ligne car mes chemises sont magnifiques !

Toutefois relativisons tout cela, le payement n'est pas encore totalement fait par le net... Une prochaine fois peut-être mais pour le moment, je me contenterais de cela.

La gestion multilingue des interfaces utilisateur

Posté le samedi, 10 septembre, 2005

Dans l'actuelle politique du multilinguisme, quelques solutions pour les script présentant des interfaces graphiques

L'interface utilisateur est le moyen de communication de votre script. L'utilisateur, selon votre pays, peut être d'une autre langue que la votre et ne pas toujours comprendre l'anglais. Alors la nécessité de développer une interface pouvant gérer plusieurs langues fait nécessaire. Comme mentionné dans les premières spécifications de développement script - lisez : Procédure d'écriture script - il appartient au developpeur de trouver une solution.

Malheureusement dans le fichier d'aide de AutoIt rien n'est spécifié dedans. Passons en revue quelques manière de pouvoir spécifier la langue d'une GUI.

1 - Utilisation d'une routine de localisation et d'un fichier externe
Dim $inifile = "language.ini" ; le fichier INI comportant les différentes langues.
MsgBox (0, "Translated", LocStr("My Program"))
; la routine de localisation de chaine
; Auteur : LazyCat des forums AutoIt Func LocStr($str)
Local $ret = IniRead($inifile, @OSLang, StringStripWS($str, 3), $str) ; utilisation de la fonction INIREAD pour ouvrir un fichier INI,
; localiser la section correspondant à la langue du système d'exploitation (@OSLANG)
; et on termine par un remplacement des espaces blanc.
; Si la chaine n'est pas trouvée, c'est la chaine à localiser qui sera renvoyée !
If $ret = "" Then Return $str ; petite condition d'une structure conditionnelle si la chaine est vide ...
; alors je renvoie la chaine elle-même à nouveau !
Return $ret ; renvois de la chaine traduite.
EndFunc

Le fichier de langage commun est un fichier INI répondant à la structure suivante :

[040C]
My Program=Mon programme
[0419]
My Program=??? ?????????

Les explications étant dans le code, cette routine est simple à comprendre... Cependant elle souffre d'une petite déficience. L'utilisateur peut ne pas avoir le système d'exploitation dans sa propre langue... Comment résoudre ce problème ? Après avoir cherché un peu, j'ai pu revoir que un INIREAD imbriqué à un autre INIREAD pouvait résoudre ce type de problème ; de plus résoudre le problème de renvois par une langue par défaut pouvait se faire aussi aisément ! Passons à l'action :

Dim $iniLngFile = "language.ini" ; extériorisation du fichier INI dans une variable. C'est souvent réutilisé et donc utile.
; la routine de localisation de chaine ; Auteur : LazyCat des forums AutoIt - Modification : Groumphy
Func LocStr($str)
Local $ret = IniRead($iniLngFile, IniRead($iniLngFile, "LngWritIni", "InitLng", "DefLng"), StringStripWS($str, 3), $str)
If $ret = "" Then
Return $str
ElseIf @ERROR Then
; Ma gestion d'erreur ici
MsgBox(0 + 16, "Error", "No language file found", 5)
EndIf
Return $ret
EndFunc

La différence citée plus haut est que je recherche une valeur dans une autre valeur inscrite dans le fichier INI... Et si la valeur par défaut n'est pas trouvée, je renvoie la langue que je désire !

Mon fichier INI sera identique à la manière suivante :

[CommonLng]
MyStr=My texte
[FrLng]
MyStr=Mon texte
[NlLng]
MyStr=Mijn texte
2 - Détournement d'une fonction de lecture de fichier

Une autre manière fortement utilisée n'est pas la localisation et le renvois automatique d'une chaine de caractère, mais bien la simple lecture dans un fichier externe ! Cela peut se faire de plusieurs manière... l'une extrémement pragmatique, l'autre plus usuelle du débutant... Passons les en revue :

IniRead("monFichier.ini", "laSectionLangue", "laCle", "leDefaut")

Ici je lirais le fichier INI en direct dans une autre fonction. Je prend donc l'exemple suivant :

MsgBox(0 + 64, IniRead("monFichier.ini", "lngFrancais", "TitreMsgBox", "Title"), IniRead("monFichier.ini", "lngFrancais", "MessageMsgBox", "Message of dialog box"))

Le fichier INI est quant à lui classique :

[lngFrancais]

TitreMsgBox=Bonjour

MessageMsgBox=Vous êtes actuellement sur le blog de Groumphy... Ravis de vous (re) voir !

[lngNeerlandais]

TitreMsgBox=

MessageMsgBox=

Vous pouvez alors aussi créer une dérivée de la fonction IniRead.

Func _Lng($langue, $cle)

Return IniRead("monFichier.ini", $langue, $cle, $cle) ; un unique fichier INI est déclaré d'avance dans la fonction !

If @ERROR Then

; ma gestion d'erreur

EndIf

EndFunc

Le fichier INI est similaire à l'exemple précédent.

L'appel dans la boite de dialogue serait donc le suivant :

MsgBox(0 + 64, _lng(lngFrancais, TitreMsgBox), _lng(lngFrancais, MessageMsgBox))

Plus court et aussi plus pratique.

Certains développeur préfère quant à eux extérioriser dans un fichier variable :

Dans le script je dispose ceci :

#include "lngfrancais.au3" ; le fichier contenant les variables à inclure

Le fichier lgnfrancais.au3 est quant à lui composé uniquement de variable...

Global $monTexte = "Ceci est mon texte de la variable"

Global $monTitre = "Ceci est le titre... Cool non ?"

Quant à l'interface elle-même elle sera utilisée de la manière suivante :

#include "gui_constant.au3"

GUICreate($monTitre, 350, 215, -1, -1)

GUISetState (@SW_SHOW)

Comme vous pouvez le voir, la gestion multilingue est en même temps complèxe... Que simple. Un peu d'imagination permet de combler beaucoup de lacune et surtout l'extériorisation des données permet de corriger facilement les erreurs commises !

L'utilisation dans une interface utilisateur est similaire en tout point. Toutefois la lecture dans un fichier INI peut poser quelques problèmes de rafraichissement mineur...

Il vous appartient maintenant de pouvoir visualiser la méthode correcte qui devra être utilisée... Toutes ne conviennent pas pour tous les scripts ou logiciels. Ainsi il sera totalement inutile d'utiliser un fichier de variable pour un script simple de quelques dizaine de lignes... Les exemples ici ne sont pas des références mais de simples méthodes, il existe encore d'autre manière de faire !

  • Ce billet est dans la catégorie AutoIt et a été écrit par Groumphy

C'est la rentrée !

Le retour à l'école, chaque année le même refrain !

Chaque année la rentrée scolaire fait la une des journaux sur le mois de septembre. Lorsque l'on regarde cela, nous pouvons voir que le mouvement commercial engendré par cet événement est énorme... Ainsi la rentrée n'est pas seulement scolaire mais aussi digitale. A l'heure actuelle, entamer ses études sans ordinateur et Internet est anéantir les chances de réussites avant de pouvoir prendre ses premières notes. Les examens actuels, les mémoires, les rapports tout se fait par le biais d'un PC.

Malheureusement comme à chaque fois, cela bataille aussi du coté des éditeurs de logiciels, des constructeurs... Ainsi sortie de PC sur sortie de PC se font à cette époque. Il est important de ce fait de pouvoir voir ce que l'on désire sans se laisser influencer par un quelconque facteur que ce soit ("amis", magasines, "conseils" de vendeurs, etc.). De ce fait, il vous faut savoir combien vous désirez investir dans votre PC (Pensez à un montant ! Ne dite pas : la plus petite somme possible.) car cet argent malgré tous les services que rendra ce PC est perdu ! Viens après l'aspect financier la partie pratique : quel est le but de cet ordinateur ? Serait-ce uniquement de la bureautique ? Du multimédia ? Du graphisme ? etc. Maintenant viens le rôle de l'évolution et de la portabilité... Voyagerez-vous en compagnie de votre PC ? Préférez-vous une station fixe ?

Toutes ces questions ne sont que basiques mais doivent être relevée lors de l'achat d'un ordinateur. En effet les besoins de chacun sur un nouveau PC est différent de ce que les standards des constructeurs proposent... De ce fait, il appartient au consommateur d'être vigilent sur le choix des magasins et du matériel par rapport à ses besoins.

Les périphériques quant à eux souffrent du même problème. La standardisation au grand public freine la créativité d'achat. De plus le prix des accessoires de ces périphériques - prenons par exemple le prix des cartouches d'encre - est exhorbitant. La politique d'achat doit allors se différencier selon le matériel ajoutant encore un échelon de difficulté dans la jungle de l'achat.

Dès que vous aurez pris en compte la totalité de ces différents points vous aurez un panel de choix... Cette gamme sera votre départ d'achat.

Combat de Titan...

Posté le lundi, 05 septembre, 2005

Google rentre sur le ring mais pas sans gants !

Google est la nouvelle coqueluche et la star montante des nouvelles technologies tant sur le niveau Web que dans les logiciels qu'il sort actuellement. Ainsi après la fameuse Toolbar [UK], le magnifique Picasa [UK], le DesktopSearch [UK] il y a actuellement GoogleTalk [UK] ; et tout cela sans compter les nombreux services dont il dispose (citons par exemple : Earth [UK], Blogger [FR - UK], GMail [UK], GoogleTranslate, etc.). Par là même il dépasse sa fonction primaire de moteur de recherche et entre dans le monde des portails et fournisseur de services.

Pourquoi une telle hausse de service ? Car face à la rude concurance tant de Microsoft que de AOL, Yahoo! et autres consort, Google se doit de réagir à défaut de se voir perdre sa première place... D'après le magazine DataNews.be (N°28 année 2005) certains analystes pense que le simple fait du moteur de recherche et annexes basées sur celui-ci ne peuvent servir à fidéliser les internautes ! De ce fait, l'évolution primaire de Google vers de nombreuses voies annexes.

De plus Kurt Focquaert va plus loin dans ce raisonnement et compare l'avancée actuelle de Google à la prise d'avance de Microsoft à en son temps attaqué le marché. Ansi les suppositions les plus folles sont occupées à courrir sur Google : sortie d'un navigateur internet, logiciel alternatif à Office. Ces actions se font notament par l'engagement de plus en plus nombreux d'informaticiens et d'ingénieur...

Cela ne plait pas à Microsoft, car non seulement le marché se vide et cours vers Google mais ses développeurs et collègues quitte le navire pour se diriger vers la société qui grimpe qui grimpe et qui grimpe ! Ainsi pour le moment cours sur le net de très nombreux billets sur la fameuse déclaration de Balmer, le grand patron de Microsoft, comme quoi il allait tout faire pour couler ce concurrent ! Un article pertinant est celui du StandBlog qui fait la comparaison de l'étouffement subit par Netscape jusqu'a sa mort !

Cette déclaration est une preuve que Microsoft non seulement capable d'engendrer de fameux bénéfices veut se réserver le monopole - mais bon là encore ce n'était un secret pour personne ! - en étouffant chacun des projets des sociétés qui peuvent se permettre d'agir en plein soleil ! Mais cette fois ci en place d'étouffer le morceau dans l'oeuf, Balmer trouve face à lui un adolescent qui rentrera dans la vie adulte très bientôt... Et la résistance est déjà beaucoup plus rude.

Lors d'une réplique sur le StandBlog, j'ai fais part de l'avis suivant :

[...] je découvre au fur et à mesure que cet événement que je croyais une simple histoire banale et de parole en l'air est plus qu'un épisode de l'histoire est occupé à se reproduire (comme le souligne ici même Tristant) : la mort à petit feu de Netscape.
Cependant, je ne pense pas que malgré la puissance "Microsoftienne" (terme Groumphynien unique) le processus qui s'est préalablement réalisé avec Netscape puisse se reproduire.
Avec ses paroles, faite sous serment, le regard est actuellement tourné vers Microsoft... De plus, malgré le poids financier que représente Microsoft je pense que Google sur ce point à lui aussi de la répartie... Enfin pour finir, la loi Anti-trust n'as t'elle pas déjà condamnée Microsoft pour monopole (et pas qu'une unique fois !) ? La jurisprudence voudrais que Microsoft ne recommence pas ces betises...
Cependant actuellement Google est sur ses gardes ; mais je ne pense pas que ce soit suffisant ! Microsoft attend bon nombre de société dans l'ombre, tapis tel un loup, et lance la meute au moment où la faiblesse se montre dans son adversaire.
A suivre...

Il reste comme je le cite maintenant à attendre, ce que Microsoft nous réserve comme attaque surprise ainsi que les réparties de Google. Serait-ce le départ d'une nouvelle guerre autrement plus portée que celle des navigateurs - lisez : La guerre est déclarée - ?

Joyeux anniversaire !

Posté le dimanche, 04 septembre, 2005

Opéra... Internet Explorer... 10 ans de Web !

Microsoft Internet Explorer et Opéra ont deux points en commun : ce sont des navigateurs internet et ils fêtent en quelques temps de séparation leurs 10 ans !

Sortis avec Windows 95, cela fait dix ans que Microsoft tente de monopoliser l'internet... Et au début, ce ne fut pas Opéra qui à pu contrer ce géant. Petit et timide, ce dernier s'est pourtant forgé une réputation solide (comme le sont les nordiques en eux-même) tant dans son respet des standards que sa conception de l'aspet sécurité ; ce qui je dois dire n'est pas le cas du butineur du géant de Redmond.

Internet Explorer peut certe se vanter d'avoir tué Netscape à petit feu... Mais la lutte ne fut pas veine et maintenant face au butineur qui venait du froid - ce titre n'est pas de moi, mais je ne retrouve plus la source ! Désolé - ainsi qu'à FireFox, Internet Explorer montre des points faibles ! Et pour mon propre plaisir j'ai hâte de voir crouler tel que croula Netscape ce navigateur irrespectueux tant envers son public que envers les professionnels du web !

Comparativement, je dirais qu'il s'agit d'une lutte qui commence enfin à devenir égale ; plus de diversité égale aussi plus de sécurité... Et cela, Internet Explorer ne semble pas l'avoir encore digéré avec ses milliers de patch de sécurité et de failles encore non comblées. Certe encore majoritaire dans les statistiques, I.E. - entendez l'abbréviation de Internet Explorer - vient peut être aussi de signer sa propre mort ! A trop vouloir s'enfermer dans la protection de son code, Microsoft ouvre les failles de sécurité ainsi qu'une attaque aux pirates démesurée : le Windows Genuine Advantage 1.0 ; l'authentification des productions Microsoft.

En effet, vu que les mises à jour de Microsoft Windows et d'un découlement logique de Internet Explorer sont devenue impossible (mais il existe déjà des contres-mesures très efficaces à l'aventage des navigateurs alternatifs). Vers quoi vont donc se tourner les internautes prévoyant (mais certe je l'avoue sans scrupule) ? Vers les navigateurs alternatifs : Opéra, FireFox et autres consort !

Alors si vous me permettez, je me permet de vous conseiller la lecture de ces excellents avis (l'un un avis global, l'autre un teaser détaillé de Opéra) : en premier temps celui de Tristant Nitot et en second temps celui de Laurent Denis. Ils reprennent en détails les grandes lignes que je donne ici, de plus ils ont une vision plus motivée que la mienne...

L'avenir que se réserve Opéra peut être emplis de changement et nous en espérons autant pour Internet Explorer, notament sur la compatibilité, les standards et l'évolution de sécurité... Le défi concernant l'utilisation des logiciels alternatifs et libre face au géant de Redmond ne peut que s'emplifier. Le vin est tiré, laissons le murir encore plus longtemps !

  • Ce billet est dans la catégorie ouai B et a été écrit par Groumphy

Phylosophie blogale...

Posté le samedi, 03 septembre, 2005

Les blogs forment-ils comme le logiciel libre, une société à part ?

Dans un récent article de Loic Le Meur, j'ai tilté sur un mot : blogosphère. Ce mot m'est bien entendu déjà connu mais il était surtout intéressant de voir la manière dont il était déclaré : LA blogosphère. Pour moi il a une signification et non des moindres. J'en fais une comparaison avec le logiciel libre ; préalablement je disais LES logiciels libres. Selon la phylosophie que j'en ai déduite j'ai adapté ce vocable à LE logiciel libre. Quelle est la différence me direz-vous ?

L'ensemble du code source ouvert dépend selon moi d'une et même license, d'une même logique de pensée et de partage d'ouverture du code source ; dépendant de ce fait selon moi d'un seul et unique concept celui du libre en lui-même. Contrairement aux logiciels libres - entendez ici LES logiciels libres - qui peuvent ne pas correspondre à une synchronisation totale de cette phylosophie entière tant par leurs logiques de pensées que de distribution.

Mais attention, ne dites pas non plus ce que je n'ai pas dit... Ce n'est pas parce qu'un code source (ou un contenu) est placé sous une license logicielle différente qu'il n'entre pas dans l'optique du libre ! En effet, les clauses restrictives engendrée par la license peuvent très bien cependant permettre une distribution tout aussi large que ce que je sous-entendais lorsque je citais LE logiciel libre. Une page intéressante en la manière simple de l'explication que j'essaye de faire transmettre par le biais de ce post est celle de la phylosophie du logiciel Libre du site GNU.org.

Il m'est donc assez difficile dans un vocable simple d'établir le contexte de nuance... Toutefois, pour en revenir au sujet principal qui était l'utilisation de "LA blogosphère" j'aimerais y faire une comparaison... J'admire cette terminologie qui, pour le moment utopique, pourrais arriver à ses fins si l'ouverture de partage pouvait être présent au sein de chacun d'entre-nous dans le même terme que l'expension de la license GPL. De ce fait, j'ai eu l'image de rapatrier mon idée de partage sur ce mot utilisé envers les blogs.

Malheureusement ce n'est pas le cas... Une utopie comme cité plus haut car certains blogs ne respectent pas les règles du jeu - lisez : [...] Et volez c'est pas beau ! - et fâche des acteurs importants de LA blogosphère tel Tristant Nitot ou encore Laurent Denis ; et tant que cette politique de partage ne sera pas adéquatement respectée il est malheureusement inutile de voir ces choses plus loin de l'avant sans passer par une license qui protègera la propriété intellectuelle du billet émis (dans le sens qu'il est l'auteur, pas dans le sens ca m'appartient, on touche pas !).

J'ai espoir que le mot utilisé par Loic Le Meur pourra un jour s'entendre plus souvent comme émerge actuellement LE logiciel libre et LES logiciels libres... Entendre LA blogosphère et les blogs me fera encore moultes plaisirs - Hum no comment pour les esprits les plus salaces ! -.

Bon blogage à tous et toutes...

  • Ce billet est dans la catégorie ouai B et a été écrit par Groumphy

Un flop... Dans l'eau !

Microsoft Windows Vista beta 1, peu de changement...

N'étant pas un grand fan de Windows (mais l'utilisant quand même quotidiennement) ne vous attendez pas à découvrir un exploit de bienfaisance dans ce billet. Toutefois je tenais à corriger quelques propos que j'avais tenu, tant au niveau de Longhorn (nom de code de Windows Vista [UK]) que de Internet Explorer 7 (toujours lui aussi en version beta 1).

Alors pour commencer allons voir coté de Internet Explorer ... D'un récent billet - lisez : Tant de bruit pour si peu - j'avais été un peu exhaustif sur certains manques de Internet Explorer. Après renseignement pris, voici toutefois quelques corrections que je tenais à apporter au butineur du géant de Redmond. En premier temps, I.E. - abbréviation de Internet Explorer - devrait faire ses débuts dans le service pack 3 - abbréviation : SP3 - de Windows XP (hum, pour rappel beaucoup de personne n'ont toujours pas installé le SP2) prévu pour le dernier trimestre de 2005, la question que je me pose est maintenant la suivante : est-il obligatoire ? Car le SP2 à causé plus d'ennuis que bienfait sur les PC - l'article date un peu mais à résumé parfaitement ce qui s'est passé par la suite ! - équipés de divers matériels ou logiciels... Dans la continuité, I.E. adopte la navigation par onglet (Enfin ! N'oublions pas que ses principaux concurent - je citérais notament Opéra [UK] et FireFox - ont déjà adopté cette manière de naviguer depuis très longtemps !), qui paraît-il serait disposée au dessus de la barre des menus, d'un avis personnel je diras que ce n'est pas trop pratique cet emplacement, mais suis-je déjà habitué aux standard Opéra ? Poursuivons avec l'intégration des fils RSS, un domaine tout nouveau pour I.E. qui j'espère pourra apporter beaucoup et ne sombrera pas dans l'imbécilité globale à laquelle nous sommes habitués dans les goonies de I.E. ! Et on dirais que pour me contredire - lisez : Encore un... Et je m'en vas ! - la gestion de la transparence de PNG sera supportée... Hum... Et pour terminer un filtre anti-pishing (qui d'après certaines connaissance ne serait pas des plus fiables)*.

Continuons maintenant avec Vista... Là encore, Microsoft avait annoncé une révolution (un peu comme il le fait à chaque fois qu'il sort un logiciel) : une interface digne d'un MacOS, une sécurité comparable à celle de Linux et non des moindres pour terminer être digne successeur de Windows XP en matière de compatibilité. Pour s'en résumer, je ne pense pas que le premier ou le second soit comparable, mais j'ai espoir que ces différents points abordés par Microsoft étaient de l'humour... Windows est un trou sans fond dans la sécurité et le restera tant que la politique de ses concepteurs ne sera pas réellement changée ! Quant au graphisme, il est vrai que le design donné par XP est je dois dire réussi (mais ce n'est pas le présent d'un système d'exploitation !), mais de là à concurencer un MacOS le pas est encore grand.

Cependant, Microsoft attend beaucoup de la technologie dite Avalon - 2 / 3 -... Qui gerera une transparence du système d'exploitation dans le fenestrage (dessin vectoriel inclus). Ou encore une gestion de compte améliorée (j'ai ouis dire qu'elle était copie sur Linux - je n'ai malheureusement pas de vérification là dessus, navré -) ; Indigo quant à lui gestionnera les services Web et de communication - toujours pas plus de détails sur ces dires -.

En grosso modo il semble comme l'annonce certain* que l'ex Longhorn n'est qu'une simple continuité de XP... Amélioré. - Hum oui c'est bien moi qui ai dit cela ! - Mais c'est bien tout... Et c'est dommage !

Maintenant, l'évolution du système en vaut-elle la peine ? Pour les particuliers, je ne pense pas que l'évolution soit souhaitable... Ni pour les entreprises. N'oublions pas que l'implémentation de ce nouvel O.S. - abbrégé de operating system - demande bien souvent une évolution matérielle pour cause de manque de celui-ci tant sur le niveau de sa récente adaptation que de sa puissance. L'investissement ne sera pas des moindres donc...

A suivre, mais pas de trop...

* Ces différentes informations ont été prise en compte à la lecture du magasine PCExpert de septembre.

[...] Et voler c'est pas beau !*

Posté le vendredi, 02 septembre, 2005

La créativité des auteurs... A ne pas prendre à la légère !

Alors que Laurent Denis et Tristant Nitot, sans concertation, ferment l'autorisation de copie des articles de leurs blogs publiés sous certaines conditions, la gestion des licenses reprend un bel essort au quotidien. Il ne s'agit pas ici uniquement de license logicielle, mais il existe tout autant une propriété intellectuelle d'écriture ! Alors que certains partagent selon les licenses Creative Common , d'autres émèttent sous copyright et c'est encore une fois comme le dit si bien Laurent Denis, ceux qui respectent le jeux qui en patisse de cette restructuration d'inspiration.

Copier n'est pas autoriser, mais citer oui ! Alors pourquoi se priver d'excellente source de communication tel les blogs de nos deux compères ? Alors que l'un exulte dans "un Ducon hurlé à pleine voix" l'autre est plus raisonné (dans ses écrits peut être pas dans ses pensées) la décision ne s'est pas fait attendre... Si vous avez des insomnies, vous pourrez toujours lire Du bon usage de la piraterie ! Qui pourrait peut être servir de livre de chevet à ces pirates en herbe (peut-être en ont-il trop fumé de l'herbe ?) qui en place de copier aurait pu s'inspirer et citer...

Alors messieurs (les deux auteurs... Pas les pirates !) encore merci de vos blogs qui m'ouvre bien souvent une vision peu commune de certains aspects, ne vous laissez pas abattre, ni à nouveau surprendre, ne tombez pas dans le pièges à con qui se trouve au bout de la route !

* Travailler, c'est trop dur, et voler, c'est pas beau. Zacharie Richard.

Un peu, passionnément, à la folie !

Geek ! Un drôle de mot, pour de drôles de gaillards...

Le mot Geek, signifiant communément passionné et plus particulièrement dans le domaine de l'informatique, m'étais jusqu'il y a peu (environs 2 ans) inconnu. Et je dois dire que cela ne m'empéchait pas de dormir profondément sur mes deux oreilles.

Jusqu'il y a peu je lui donnais une connotation négative (un peu similairement à ce qu'un Geek dirait d'un NERD) mais ce que je supposais il y a quelques mois ne jamais arriver ... Arriva ! On me "traita" de Geek. Hum, tel est pris qui croyais prendre. A y voir de plus près je ne pourrais en vouloir à ces personnes (oui, elles sont plusieurs !).

Analysons cela de plus près. Je passe près de 15 heures par jour sur mon PC, mes sites internets et ma blogosphère sont à majorité (pour ne pas dire principalement) à tendance informatique, j'adore programmer, je suis un passionné de projet fou, un adorateur du logiciel libre... Hum... En bref tout ce qui pourrait rassembler un Geek qui de plus est mes tenues vestimentaires... Laisse toujours à désirer. Ne vous avais-je pas dit que je commandais des vetements par le net (sur les boutiques du libre) ? Tiens j'ai aussi pour le moment une barbe. La plupart de mes amis m'appelle pour déplanter leur PC (sous Windows sinon ca planterais pas c'est évident !), je suis considéré par eux comme un passionné et parfois (je dirais souvent !) incompris lorsque j'expose des idées à tendances nouvelles (et là il n'y a pas que mes amis qui se désistent intellectuellement, je dirais aussi mes collègues, voir parfois mêmes ceux des forums !).

Alors, est-ce une étiquette ? Est-ce un mal ? Non je ne pense pas, les esprits évolues et moi aussi. Il est vrai que j'ai changé, que je me suis amélioré (et pas que dans l'informatique) mais ce statut alors je l'accèpte. Non pas avec un plaisir évident, non pas avec une fierté mais car il semble refléter une certaine réalité. Ce status me semble non pas obsolète, mais... Hmm... Allez, je l'avoue il me quand même plaisir.

A suivre ? Je pense bien, car j'ai espoir de ne pas tomber dans le mutisme absolus, dans l'irréversible spirale de ce tourbillon qui peut être sans fin et entrainer dans l'autisme de l'ordinateur (et de son environnement). Je vis un peu comme vous (je vais au cinéma... Lisez le post Ecran bleu de cinéma ! , je vois des amis qui en m'ont pas encore fuit) mais je suis autre... Serais-je une entité unique ? Je l'espère comme chacun d'entre-vous être unique tant en ressemblant un peu à chacun d'entre-nous sur des points semblables.

Hmm... Et maintenant que dois-je faire ? Ah oui... Programmer !

Procédure d'écriture script

Posté le jeudi, 01 septembre, 2005

Spécification d'écriture script AutoIt : les premières esquisses.

Il y a quelques temps je vous parlais d'écrire les premières spécifications d'écritures sur les scripts AutoIt. Aujourd'hui j'ai le plaisir de pouvoir dire je l'ai fait. Oh il ne s'agit pas de grand chose, quelques pages afin de pouvoir donner un aspet global à l'écriture généralisée. Ces quelques lignes ont étés inspirées de la structure des spécifications du W3C [ W3C.org ]. Voici donc la version Alpha de ces spécifications.

Nom de la spécification : Spécification AutoIt v3

Nom de code : SA3+1.0.0

Information : Spécification des scripts AutoIt v3.1 et postérieurs

Numéro d’identification des Spécifications : v0.5.212.alpha

Auteur : X.B.

Document non officiel

Nom du document : SPEC_AU31++.DOC

Date de création : 18/08/2005 1:33

Dernier enregistrement : 27/08/2005

Préambule

Il est important d’informer que le document ci-présent n’est pas un document officiel du groupe de développement de AutoIt mais des recommandations afin d’avoir un standard minimum de développement tant au niveau du code source applicatifs ou script que du niveau d’un script compilé.

Résumé

Ce document définis les recommandations sur le langage de programmation script AutoIt. La version supportée par ce document est la version 3 et toutes version postérieure indiquant la version majeure 3. Ce document ne repose sur aucune spécificité précédente ou version antérieure au langage de programmation script AutoIt.

AutoIt version 3 (AutoIt v3) apporte plus d’option notamment sur la gestion des interfaces utilisateurs, l’utilisation avancée de macro-commande, la gestion des couleurs. Cette spécification sert principalement à rendre les codes sources accessibles, la gestion linguistique simplifiée et une extériorisation standardisée des scripts compilés.

Statut du document

Le présent document n’a pas encore de base ou d’évolution et est le document initial des spécifications AutoIt v3 et versions postérieures.

Toutes évolutions postérieures à ce document le rendront obsolète sur le chapitre, section, point modifié.

Ce document (traduit en langue anglaise) est passé en revue par les développeurs du langage de programmation script AutoIt (Groupe de développement) et est homologué par ces derniers sous la supervision du concepteur du dit langage.

Ce document (la version homologuée et estampillée selon le schéma de numérotation comme stable) pourra servir de référence ou cité comme référence nominative par un autre document.

Le Groupe de développement recommande que les personnes produisant des applications de modification de code source de script AutoIt tiennent compte des présentes spécifications pour les applications futures.

Les débats publics concernant les spécificités présentes et futures peuvent être trouvée sur le forum. Aucune discussion de forum ne peut être considérée comme une spécification précise tant que cette première n’est pas présente dans une mise à niveau des documents de spécifications.

L’évolution des travaux des spécifications peut être suivie sur les forums ou par demande à un membre du Groupe de développement.

Les versions françaises et anglaises sont uniquement les versions normatives.

Erreurs

Les erreurs connues dans ce document et corrigé dans une version postérieure de spécification sont les suivantes :

• Néant – Document initial

L’identification des corrections apportées au document au sein de celui-ci est annoncée par le titre Errata suivis du texte apporté en correction.

Table des matières

NOM DE LA SPÉCIFICATION : SPÉCIFICATION AUTOIT V3 1

PRÉAMBULE 1

RÉSUMÉ 1

STATUT DU DOCUMENT 1

Erreurs 2

TABLE DES MATIÈRES 2

SPÉCIFICATION DE CODE SOURCE 3

Introduction à AutoIt v3 3

Emploi des caractères 3

Définition de la casse 4

La syntaxe du code source AutoIt 4

INFORMATION RELATIVE À AUTOIT 5

Qu’est ce que AutoIt ? 5

A propos de AutoIt 6

CONFORMITÉS 7

Généralités 7

Spécification de code source

Introduction à AutoIt v3

Le fichier d’aide fournis lors de l’installation de AutoIt et version postérieure est le document modèle d’apprentissage du langage AutoIt. La version anglaise de ce fichier est la seule version normative. L’évolution de ce langage se retrouve dans le fichier d’aide à la racine de la structure (C:\Program%20Files\AutoIt3\AutoIt.chm::/html/history.htm). Le fichier d’aide AutoIt donne une certaine compréhension des relations existantes entre le système d’exploitation Microsoft® Windows® et résume de manière à comprendre les interactions entreprise sur celui-ci.

Le fichier d’aide AutoIt fournis tous les éléments et attributs du langage. Toutes autres éléments ou attributs hors de ce fichier d’aide est considéré comme non officiel et tiens de composition d’éléments utilisateur (Fonctions de définition utilisateur). Ces éléments composites utilisateurs peuvent, avec approbation du Groupe de développement être intégré dans une version postérieure de AutoIt et donc entrer comme élément ou attribut officiel du langage de programmation script AutoIt. Les spécifications répondant aux Fonctions de définition utilisateur sont traitées ci-après.

La référence du langage comprend les informations suivantes :

• L’emploi des caractères ;
• La définition de la casse ;
• La syntaxique du code source d’un script AutoIt.

Emploi des caractères

L’emploi des caractères est défini par le fichier d’aide AutoIt. Il est important de distinguer une utilisation spécifique dans les fonctions des caractères suivants : # ; @ ; _ .

• # : définis une portée sur un groupe de ligne de code, un fichier interne, un fichier externe ou une spécificité de l’emplois de AutoIt ;
• @ : définis une macro-commande, fonctions pré formatée à écriture unique ;
• _ : introduit une Fonction de définition utilisateur, fonction n’étant native de AutoIt et développée en dehors du Groupe de développement et postérieurement introduit dans les fonctions standards de AutoIt sur approbation du groupe de développement.

Définition de la casse

Un nom de fonction (Fonction de définition utilisateur ou fonction native de AutoIt), y compris pour les fonctions utilisant l’emplois des caractères précités exception faite des fonctions disposant du caractère #, répondra aux critères suivants :

• Le premier mot de la fonction sera attribué d’une majuscule ;
• Le second mot et ses suivants disposeront eux aussi d’une majuscule ;
• Les lettres composant le mot se devront d’être en minuscule exception faite des macro-commandes d’interface utilisateur pouvant répondre à une casse majuscule sur toute la longueur des mots la composant ;
• Aucun caractère spécial ou accentué ne pourra être présent dans un nom de fonction ;

Les fonctions disposant du caractère # pourront utiliser la forme suivante :

• Une casse uniquement minuscule ;
• L’emploi du trait d’union ( - ) pour séparer les mots.

La définition d’une variable répondra aux critères généraux cités ci-dessus dans l’exception suivante :

• Les variables d’une interface utilisateur pourront s’écrire en casse majuscule.

Il est important de se reporter au chapitre de la syntaxique sur l’utilisation des variables.

La syntaxe du code source AutoIt

La syntaxe et l’ordination du code source AutoIt, pour raison de lisibilité évidente, se fait par tabulation ou espacement relatifs à celle-ci d’après la mesure suivante qu’une tabulation représente quatre espaces blanc.

Le code source de AutoIt du point de vue de la syntaxe, de l’ordination et de sa mise en forme est représenté sur plusieurs niveaux (nombre indéfinis) sachant que le premier niveau correspond à la racine d’écriture.

La racine d’écriture comporte les éléments suivants :

• Lignes de code générales ;
• Fonctions interne du script.

Les niveaux suivants sont indentés du nombre de tabulation, ou d’espace blanc correspondant à une tabulation, multiplié par le niveau sur lequel ils se trouvent. Lorsque le niveau un est complété par un appel de fonction, les lignes de code suivant cet appel sont indenté sur le niveau deux et successivement (identiquement à l’indentation spécifique d’une structure conditionnelle).

Les niveaux autres que le niveau un ne peuvent comporter que des lignes de code générales et commentaires.

Information relative à AutoIt

Qu’est ce que AutoIt ?

AutoIt est un langage de programmation de type script fonctionnant sous le système d’exploitation de Microsoft® Windows® permettant d’automatiser le traitement et la gestion de l’information ainsi que les interactions demandées par celui-ci.

Prise en charge des systèmes d’exploitations

AutoIt est capable de fonctionner sous les systèmes d’exploitation Microsoft® Windows® 95 et versions postérieures. Chacun de ces systèmes d’exploitation dispose de spécificité propres et AutoIt est conçu de manière à pouvoir inter opérer de manière quelconque sous ces systèmes d’exploitations ; toutefois, certaines fonctions nécessite une adaptation des commandes générales.

AutoIt a été pensé à pouvoir automatiser les tâches sur la plus grande diversité de version possible du système d’exploitation maître de la société Microsoft®.

Le langage de script AutoIt dans sa version 3 ne prolonge pas la version 2. Il s’agit d’une mise à jour majeure du schéma de numérotation avec changement d’écriture des fonctions, attributs et commandes.

Internationalisation

La version 3 de AutoIt a été conçue dans le domaine de l’internationalisation de telle sorte que les scripts peuvent être écrit dans toutes les langues. La langue maîtresse de AutoIt est l’anglais. La procédure de gestion de langue est à charge du concepteur du script ou de l’application.

L’extériorisation des langues permet la simplicité de traduction ainsi que de maintenance. La procédure d’extériorisation est à charge du concepteur de script ou de l’application. La lecture directe du fichier peut être optimalisée par une routine adaptée à la lecture de la langue désirée a l’application ou au script au sein de celui-ci. Cette gestion linguistique permet une efficacité accrue dans l’utilisation des scripts ou des applications développées.

L’accessibilité

L’accessibilité des scripts AutoIt a été augmentée dans les aspects suivants :

• Simplification de l’écriture des lignes de codes ;
• Possibilité de création d’interface utilisateur.

Ces différentes améliorations permettent notamment dans une écriture syntaxique correcte les points suivants :

• Distinction aisée des différentes fonctions, commandes et lignes de commande ;
• Amélioration de l’aisance de manipulation par l’envoi de touches clés ;
• Nouvelle approche de déploiement des applications nécessitant une interface utilisateur ;
• Meilleure gestion de l’environnement utilisateur sous tous les systèmes d’exploitations précités ;
• Un éventail élargis du support des médias apportés par AutoIt ;
• Extériorisation des fichiers et possibilité d’inclusion de ces dits fichiers par la suite ;
• Hiérarchisation de la syntaxe de code.

A propos de AutoIt

Introduction à AutoIt

Un script AutoIt est un ficher de mode « texte » portant l’extension .aut ou .au3. L’extension .aut identifie des fichiers de la version 2 de AutoIt. Aucunes spécifications sur ce modèle de langage script n’a été établis au préalable et le présent document ne définis les spécifications que pour la version 3 ; toutefois vu la largesse d’écriture du présent, il est possible de suivre en grande ligne le présent pour toutes versions antérieurs de AutoIt. L’extension .au3 définis un fichier de mode « texte » de la version de AutoIt. Les recommandations du présent s’appliquent parfaitement et entièrement à cette version.

Un script AutoIt se compose de deux parties :

• Le script en lui-même ;
• Les fichiers requis par le script pour son utilisation correcte (non obligatoire).

Le script

Le script AutoIt est la pièce majeure de l’automatisation ou de l’application requise pour la tâche déterminée à laquelle il est conçu.

Le script se décompose de la manière suivante :

• Identification du script par des lignes de commentaire. Ces lignes de commentaire doivent comporter sous une forme quelconque mais dans l’ordre suivant : le nom du script ou de l’application lorsque le script sera compilé, la description ou le rôle de l’application lorsque le script sera compilé, les fichiers requis pour une exécution correcte du script ou de l’application lorsque le script sera compilé, les différents paramètres du script ou de l’application lorsque le script est compilé, le nom (ou le surnom) de l’auteur d’origine du script ou de l’application lorsque le script est compilé, le nom (ou le surnom) de l’auteur ayant apportés une modification au script ou a l’application lorsque le script est compilé (si plusieurs auteur ou une association d’auteur ont été membre participant, ceux-ci peuvent être énuméré sous forme de liste), la version courante du script ou de l’application lorsque le script est compilé en respect au format de numérotation standard définis ci-après, la date de création du script ou de l’application lorsque le script est compilé, la date de modification du script original ou de l’application lorsque le script est compilé, la compatibilité spécifique du script ou de l’application lorsque le script est compilé ;
• La fonction de comportement du fichier script si ce dernier est une inclusion ;
• L’inclusion des différents fichiers pour le bon déroulement du script ou de l’application lorsque le script est compilé ;
• Les fonctions nécessaires au bon fonctionnement postérieur du script. Il est important de notifier en commentaire chacune des fonctions énumérée de la manière suivante (au dessus de chacune des fonctions) : nom de la fonction, description de la fonction, paramètres de la fonction ainsi que les valeurs de retour ;
• Le script en lui-même commenté par étape importante. Le commentaire peut se trouver en intérieur de code ou en extérieur.

Les fichiers d’inclusion

Les fichiers requis par le script pour sa bonne utilisation répondent aux critères précités mais doivent particulièrement être porté sur l’attention du nombre d’inclusion dont ils doivent faire l’objet.

Si l’utilisation de variable est faite dans un fichier d’inclusion, la portée des variables doit clairement être spécifiée tout en respectant la nomenclature de ces dernières ; les variables seront commentées afin de pouvoir déterminer spécifiquement leur(s) attribution(s).

Conformités

Bientôt

Généralités

Bientôt

Nom de fonctions

Outres les attitudes pré écrites ci-dessus, les noms de fonctions ne disposent pas de recommandations prédéfinies, il est toutefois important d’observer les points suivants :

• Utilisation de nom de fonction clair ;
• Ne pas allonger les noms de fonctions inutilement.

Variables

Les noms de variables outres de commencer par un signe $ qui les distinguent et outres les recommandations pré écrites peuvent être reconnaissable comme suit dans leurs débuts de nom :

• $s_NomDeLaVariable : où $s_ représente l’indication d’une variable système ou script ;
• $u_NomDeLaVariable : où $u_ représente l’indication d’une variable propre à l’utilisateur ;
• $o_NomDeLaVariable : où $o_ indique tout autre type de variable ;
• La lettre définissant le type de variable devra être de casse minuscule ;

Le nom en lui-même de la variable devra correspondre aux définitions définies dans les chapitres ci-dessus.

L’utilisation d’une variable consomme de la mémoire, afin de faire performer les différents script ou applications lorsque le dit script est compilé, il est recommandé d’utiliser les variables à bon escient.

Fonctions utilisateurs

Il est recommandé d’observer stricto les écritures ci-dessus.

Script compilé

Les scripts compilés disposant d’interactions utilisateurs ou d’interfaces utilisateurs devront au niveau du dessin global de ceux-ci intégrer dans la mesure du possible une icône personnalisée dans la barre système.

Compatibilité

Il est recommandé d’écrire les scripts AutoIt pour un maximum de système d’exploitation en évitant les fonctions spécifiques d’un système (tel que le fade-in de Windows Xp etc.).

L’utilisation à bon escient des macro-commandes pré établies est recommandée.

Les interfaces utilisateurs

Les interfaces utilisateurs qui permettent une action de l’exécutant du script devront être munie de clés d’accès afin de permettre toutes manipulations à partir du clavier et ce dans la mesure du possible, y compris lorsque l’interface utilisateur n’est utilisée que pour une automatisation spéciale.

Exécution de script

Les scripts qui s’exécutent disposeront d’un gestionnaire d’erreur personnalisé pour chacun des cas d’erreurs rencontrés.

L’exécution d’un script pourra être stoppé par toute action utilisateur au clavier ou à la souris.

Je soutiens l'action Irrépressible.be !