L'abominable AltGr + Espace

 

Kroc - 09 Septembre 2005

Si vous écrivez de cette ligne dans Tkcon ou un shell Tcl :

 if {1 == 1} {puts YES}

Si vous appuyez sur la touche AltGr en faisant le deuxième espace, quelle ne sera pas votre surprise de générer une erreur extra characters after close-brace. Vous venez juste de faire connaissance avec l'affreux caractère AltGr + Espace (AGS pour les intimes) ! Ça a la couleur d'un espace, le goût d'un espace, mais ça n'est pas un espace : ça provoque des erreurs dans vos scripts. La fameuse loi de Murphy aidant, il se trouve que ces deux touches sont mitoyennes sur nos claviers français, ainsi, personne n'est à l'abris d'un AGS inopportun lorsque, la fatigue aidant, la frappe se fait moins précise.

Bon, maintenant que vous savez pourquoi certains de vos scripts à l'apparence exacts provoquent des erreurs, voyons un peu les choses rigolotes qu'on peut faire avec cet AGS.

 % proc test it {foo} { puts $foo }
 % test it david
 david

Mais ça ne marche pas avec les noms de variables :

 % set ma liste {{1 2 3 4} {2 3 9 2} {8 7 3}}
 {1 2 3 4} {2 3 9 2} {8 7 3}
 % puts $ma liste
 can't read "ma": no such variable
 % set liste "1 2 3 4 5"
 1 2 3 4 5
 % llength $liste
 1
 [string map {'''AGS''' " "} $code] ; # (ça c'est très vil !).

etc.. etc..

En bref, avec AltGr + Espace vous pouvez surtout générer des erreurs : à éviter donc.