Mis à Jour le date du document

Notre chère mondialisation met au quotidien sur la table le très ancien sujet des claviers informatiques qui concerne mécaniquement de plus en plus de monde... Voici ici une petite réflexion résultant d'années d'agacement sur le sujet des claviers internationaux. Depuis les années 70 et la naissance de la micro-informatique, nous avons été confronté au fait que le clavier "national" "légal" avait SA disposition, et les machines que nous achetions made in ailleurs en proposaient une toute autre. Pire même, les organismes de normalisations divers et variés tentent continuellement, chacun de leur coté, d'affirmer LEUR versions locales à l'opposé d'un besoin d'uniformisation.

La petite histoire explique que les contraintes de distribution statistiques des caractères de la langue anglaise et mécaniques de "non-enchevêtrement" des marteaux des machines à écrire auraient guidé Christopher Latham Sholes à inventer sa disposition qwerty en 1873. (puis qwertz, azerty, ... ). Vrai ou faux, malgré l'efficacité toute relative de la disposition du clavier ayant résulté d'une telle disposition, le résultat est là, cette nature de clavier est là depuis un siècle eet demi, et durera probablement encore des décennies.
Pour la suite du propos, gardons dans un coin de la tête le principe par lequel les machines à écrire mécaniques permettaient la frappe des accents et autres caractères alternatifs...
En 1907, une tentative de disposition ZHJAY apparut... et disparut ...
En 1932, la disposition DVORAK apparait sur une même base de distribution statistique de la langue anglaise, allégé des contraintes d'enchevêtrement de marteaux, aboutissant à un clavier totalement différent. L'argument est là, la frappe est beaucoup plus rapide avec cette disposition de claviers... Ce clavier réunit cependant des dizaines de milliers d'aficionados, très actifs, et on trouve ainsi relativement facilement des claviers. Cette disposition clavier permet certes une frappe plus rapide une fois appris, mais présente un sévère revers de la médaille puisqu'il existe un dvorak pour chaque langue. Ainsi, un dvorak US est encore plus différent d'un dvorak français que le qwerty ne l'est de l''azerty... Des problèmes de droits on même conduit une communauté d'utilisateurs de tous horizons a se pencher à nouveau sur le dvorak du clavier français, conduisant à figer la disposition bepo en 2008.
Même si nous passons souvent des heures devant sur nos claviers, la cadence de frappe n'est plus aussi critique qu'autrefois. Combien d'utilisateurs sont réellement handicapés par la vitesse de frappe de leur clavier ? Nous ne sommes plus à l'ère des dactylos qui agissaient comme imprimantes ou photocopieuses pour reproduction de masse
Il est par contre pénible de voir des claviers tous différents d'une machine à l'autre, et d'un pays à l'autre... particulièrement s'agissant des accents et altérations de chaque caractère. On est plus ralenti par la recherche du caractère spécial a taper que par la disposition des touches pour les quelques lignes a taper ... Chaque organisme de normalisation y va régulièrement de sa démarche visant à forcer des caractères à des emplacements figés, n'engendrant finalement qu'une nouvelle race de claviers différents des voisins à chaque variation de ces "normes".
N'oublions pas enfin que l'usine du monde ne s'embarrasse pas des formats divers. Ce sera qwerty, avec parfois une localisation, modulo un supplément de prix...

Une fois ce petit historique très simplifié de la genese des claviers (d'autres sites, tels wikipedia, seront plus détaillé...), peut-on trouver des solutions astucieuses pour passer les frontières ?

Cahier des Charges

Pourrions nous donc demander à un clavier basé sur des caractères latins d'être un peu plus polyvalent et multi-compatible, sans réinventer l'eau-chaude ? Un tel clavier devrait donc :
- couvrir autant que possible un maximum de langues écrites en caractères latins… (au moins 2 milliards d'utilisateurs) et même au delà avec quelques caractère similaires dans d'autres alphabets ;
- rester directement compatible avec un maximum d'Operating Systems, sans (trop) d'effets de bord, y compris les plus anciens ou spécialisés : (vous le voyez venir le socle QWERTY...) ;
- rester compatible avec des systèmes qui ne comprendraient pas cette "extension" (la méthode doit être ignorée des vieux OS) ;
- permettre une composition des caractères visuellement par un repérage facile et rapide des combinaisons ;
- prendre en compte la composition avant qu'une éventuelle répétition de caractère ne se mette en oeuvre ;
- remplacer directement n'importe quel clavier local, modulo un temp réduit de ré-accoutumance ;
- soutenir les développeurs qui rament avec les caractères de développement mal placés dans les claviers localisés par des gens ne les utilisant pas (vous le voyez venir le socle QWERTY... suite) ;
- ne pas changer le nombre de touches du clavier, leur disposition, leur géométrie, leur sens actuel ;
- être basé sur un mécanisme pouvant s'implémenter sur d'autres disposition que la disposition de référence (il n'y a tout de même pas que le QWERTY dans la vie...) ;
- être visualisable par des stickers autocollants additionel, des petites marques ou autres greffes sur des claviers existants. Le moins possible... et aucun si possible.

j'ai forcément oublié quelques pré-requis fondamentaux qui vous paraissent importants -> hop -> mon email, en bas...

Démarche Visuelle

Un tour du monde des alphabets de souches latine (et voisines) permet de constater que les caractères de base peuvent être accentués, cédillés, ou plus généralement altérés de n'importe quelle manière. Chaque langue dispose au final de ses propres caractères "ludiques".
L'approche consiste donc à séparer l'accent (l'altération) de son caractère socle sous-jacent. Dit autrement, un accent est une altération comme une autre du caractère tapé, et on peut finalement envisager de taper l'accent en maintenant le caractère sous-jacent.
Au final, chaque caractère peut être "altéré", et nombre d'autres caractères peuvent constituer "l'altération".

Un petit tour des alphabets de base latine amène quelques exemples illustrés ici :
- Un é n'est finalement qu'une combinaison de e et d'un accent aigu, que l'on peut comprendre comme le ' se trouvant sur la touche 2 (en qwerty). Le e / peut être acceptable également. Un \ ferait également un bon accent grave.
- pour un Œ, même méthode avec O et E. Ici, on constate que le caractère E est l'altération du caractère O , le Ø danois, avec O et / , un Ł avec L et / , le Ð aver D et E, ou même D et -
- on peut même pousser l'exercice pour 1/4 avec 1 et 4 ou ± avec + et -

Implémentations Existantes Comme rappelé en tout début du propos, une telle réflexion n'est vraiment pas nouvelle, et a déjà donné lieu à diverses implémentations, dont les plus connues sont rappelées ici.

ALT Codes
- MS Dos et Windows ont retenu depuis l'origine la méthode Alt Code,en maintenant ALT et le code décimal du caractère requis.
Facilement implémentée, cette approche nécessite néanmoins de retenir sa table des codes. Peu utilisable par l'utilisateur standard...

Alternate layers
- Apple propose de maintenir la touche, affichant un petit popup présentant les options possibles à choisir pour remplacer le caractère initial. Très visuel, et utilisable facilement avec une interface graphique, celà reste néanmoins dans le monde Apple.
A noter qu'une alternative directe est également proposée (sur Mac), utilisant ici aussi les diverses dead-keys, qui permettent l'affichage d'un caractère parfois, mais non systématiquement, visuellement lié à la touche pressée.
Dans ces deux cas de figure, on est dans une logique de substitution visuelle et non d'une composition graphique.
- Android propose une solution similaire en maintenant la touche principale pressée, et en choisissant un caractère dans le popup présenté.
- Blackberry OS dispose(ait) également d'une démarche voisine, en affichant une barre des options possibles après pression maintenue de la touche concernée.

Compose Keys
L'univers open-source propose diverses options, donc celle de X-Org. En pressant deux dead-keys simultanées, on permet la combinaisons des touches suivantes, de manière essentiellement graphique telle qu'évoquée au paragraphe "démarche visuelle". Cette option est la plus séduisante, car non liée spécialement à un environnement graphique. Elle est non exclusive des autres méthodes, pour ceux qui décideraient de connaitre tout de même certains raccourcis "maison" On maintient une touche a "altérer", et la touche pressée immédiatement après est l'altération de ce premier caractère

Les approches précédentes ci-avant utilisent principalement les "dead keys", présentant soit un plan alternatif de caractères, soit une composition plus ou moins visuelle.
Cependant, chaque approche ayant sa propre sauce et son jeu de dead keys, personne n'utilise vraiment bien ceci au final.

Qwert-X
Qwert-x ne vise nullement à réinventer l'eau chaude, mais essaye d'ajuster et compléter certaines options, tout en rendant plus direct l'approche de composition de caractères.
Par exemple, pour une approche totalement visuelle de la composition des caractères, il manque quelques symboles ou fractions de caractères dans les différents claviers actuels,
La démarche de présentation des diacritiques de l'alphabet latin ont déjà été travaillé et retravaillé par de nombreuses personnes. Ces tables synthétiques sont par exemple disponible ici.

Voici donc une première tentative d'organisation d'un clavier Qwert-X sur un socle qwerty :



Un minimum d'ajouts sur un qwerty de base permet une compatibilité avec l'historique (que les développeurs sauront apprécier) tout en autorisant une importante quantité de caractères "altérés". Ces ajouts visuels peuvent s'obtenir aisément par des petit stickers sur les touches requises.

Références - Liens

Le Dvorak'zine explique de manière très didactique la genêse des claviers... pour aboutir au dvorak ;-)
Une autre réflexion sur ce même sujet est proposée par David L Norris, qui a résolu le problème de manière matérielle.
L'excellent site Lexilogos propose, alphabet par alphabet, de jouer avec les divers jeux de caractères... sans l'approche qwert-x...
Une table détaillée des séquences de compositions par David Monniaux
Next...

Il restera à mettre les mains dans le cambouis, et livrer le code ad-hoc... un jour ;-)

Des avis ? Des ajouts ? -> hop -> mon email, en bas...