Utilisateur:Laurent
Après avoir été développeur, je suis administrateur système sous Unix (uniquement GNU/Linux depuis quelques années) et Windows (accessoirement des années d'administration système Windows (c'est contradictoire) et l'évolution de celui-ci m'en ont dégoûté).
Mes usages principaux du clavier :
- le français,
- l'informatique (notamment shell, Perl),
- l'espéranto,
- l'anglais.
Je milite pour la sauvegarde des caractères utilisés en informatique sur le bépo.
Caractères utilisés en informatique
N'hésitez pas à me faire part des manques de cette rubrique (je ne connais pas tout et j'ai aussi probablement oublié des choses que je connais) dans ma page de discussion, voire à ajouter directement.
- ; : séparateur de commandes dans de nombreux langages (C/C++, Perl, shell)
- ' : constantes caractères en C/C++; chaînes de caractères en shell, Perl...; italique et gras en Wiki
- " : chaînes de caractères dans la plupart des langages (C/C++, shell, Perl...)
- # : commentaires en shell, Perl... et dans la plupart des fichiers de configuration sous Unix
- $ : préfixe d'une variable en shell et en Perl, borne dans les expressions rationnelles
- ^ : borne d'une expression rationnelle
- ~ : accès au répertoire utilisateur sous Unix et dans les URL
- @ : adresses de courriel, préfixe d'un tableau en Perl
- : : suffixe du protocole dans les URL, partie de l'opérateur ternaire en C/C++, terminateur des conditions en Python
- ? : joker en shell; expressions rationnelles; préfixe les paramètres d'une requète de type get dans les URL, partie de l'opérateur ternaire en C/C++
- % : opérateur modulo, préfixe d'un tableau associatif en Perl
- ( et ) : paramètres de fonctions dans la plupart des langages de programmation, définition de priorités dans une expression, listes en Lisp et en Perl; expressions rationnelles
- { et } : blocs de commandes en C/C++, Perl, shell...; indices des tableaux associatifs en Perl
- [ et ] : indices des tableaux dans de nombreux langages de programmation; expressions rationnelles
- < et >: éléments HTML et XML, redirection des entrées/sorties en shell, comparaison numérique en programmation
- = : affectation et comparaison (doublé ou accompagné d'un autre signe dans l'un des deux cas) dans de nombreux langages
- - : options des commandes en shell Unix, opérateur moins
- + : addition; expressions rationnelles
- * : multiplication dans la plupart des langages; joker en shell; expressions rationnelles; éléments de liste en Wiki
- / : séparateur des éléments de chemin sous Unix et dans les URL, options de commandes en DOS, division dans la plupart des langages, délimiteur habituel des expressions rationnelles en Perl
- \ : séparateur des éléments de chemin sous DOS; caractères spéciaux dans les chaînes de caractères en C/C++, Perl...; désactivation de l'interprétation d'un caractère spécial dans les expressions rationnelles et en shell; catégories dans les expressions rationnelles Perl
- ! : négation logique dans certains langages;
- & : lancement d'une commande en tâche de fond en shell, “et” arithmétique et/ou logique dans de nombreux langages
- | : chaînage de deux commandes (la sortie de la première étant l'entrée de la seconde) en shell, “ou” arithmétique et/ou logique dans de nombreux langages
- ` : exécute une commande et retourne sa sortie en shell et en Perl;
- . : accès aux membres d'une structures, ou aux méthodes ou attributs d'un objet en C/C++, concaténation en Perl
- _ : sert de séparateur dans les noms de variables ou de constantes
Accessibilité des caractères utilisés en informatique
AZERTY (pour référence)
- 12 en accès direct : & " ' ( _ ) = , ; : ! <
- 3 en accès direct sur des touches mal placées : - $ *
- 8 accessibles avec un modificateur : ~ # { [ % > ? . /
- 1 accessible avec un modificateur sur une touche mal placée : |
- 7 accessibles avec un modificateur uniquement du mauvais côté : ` \ ^ @ ] + }
BÉPO 0.6.4
- 12 en accès direct : " ( ) + - / * = % , . '
- 2 en accès direct sur des touches mal placées : $ _
- 16 accessibles avec un modificateur : < > [ ] @ | & ` ! ? ~ \ { : } ;
- 1 accessible avec un modificateur sur une touche mal placée : #
- 0 accessible avec un modificateur uniquement du mauvais côté
On constate une amélioration par rapport à l'AZERTY, grâce au placement préférentiel du côté opposé à AltGr.
BÉPO 0.6.5 (estimation en l'état actuel des votes, le 2008-02-09)
- 12 en accès direct : " ( ) + - / * = % , . '
- 2 en accès direct sur des touches mal placées : $ _
- 14 accessibles avec un modificateur : < > [ ] @ | & ! ? ~ \ { : } ;
- 2 accessibles avec un modificateur et une double frappe ! : ` ~
- 1 accessible avec un modificateur sur une touche mal placée : #
- 0 accessible avec un modificateur uniquement du mauvais côté
On constate une dégradation par rapport au BÉPO 0.6.4 (concernant ` et ~).
- Une légère dégradation, mais une nette amélioration pour ceux qui ont besoin de lettres avec accent grave ou avec tilde. Tohuvabohuo 9 février 2008 à 20:13 (CET)
- Oui, mais autant ` non mort sert un peu, autant ~ non mort sert beaucoup dès qu'on utilise le shell. Cela dit, rien n'empêcherait de mettre ˜ mort et ~ non mort en AltGr... sur deux touches différentes. Enfin surtout quand on aura l'AltGr symétrique. (Bon, si on continue à discuter sur cette page, ça va la rendre fouillis, je vais peut-être déplacer ma remarque initiale et la discussion sur la page “discussion”.) --Laurent 11 février 2008 à 03:15 (CET)
« et » en accès indirect mais directement avec espace insécable
L'argument le plus fort contre < et > en accès direct (bien pratiques pour du HTML ou du XML), c'est que si « et » étaient en AltGr, leur enchaînement avec l'espace insécable serait pénible. Pourquoi ne pas tout simplement les coupler avec l'espace insécable ? AltGr-[2] serait plus léger que Maj-Espace [2] !
Ci-dessous une solution pour Xorg :
Dans le fichier xkb :
key <AE02> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ less, 2, Ufbcb, twosuperior ] }; // < 2 « ² key <AE03> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ greater, 3, Ufbcc, threesuperior ] }; // > 3 » ³
Dans le fichier Compose général :
<Ufbcb> : "« " <Ufbcc> : " »"
ou comme fichier .XCompose de l'utilisateur :
include "%L" <Ufbcb> : "« " <Ufbcc> : " »"
Pour l'espéranto
ˆ mort + v → ŭ
Solution pour Xorg et sur le compte utilisateur : créer un fichier .XCompose avec comme contenu :
include "%L" <dead_circumflex> <v> : "ŭ" U016D <dead_circumflex> <V> : "Ŭ" U016C