Bonjour,
Ça fait un moment que je réfléchis à une modification du Bépo. Il est évident que si je le fais, c’est que je ne suis satisfait d’aucune disposition jusqu’à présent créée.
Cette disposition est créée depuis le départ pour être publier et diffusée, ce qui influencera bien sûr la disposition. Par exemple, je n’utilise pas les espaces insécables mais je ferais en sorte de faciliter son usage (et même plus en mettant «» en maj par exemple), et j’essaierais de supporter toutes les langues qui le sont actuellement par le Bépo même si je ne les utilisent pas.
Buts
Voici la liste des buts que je me suis fixé (il y en a pas mal qui sont repris des principes fondateurs du Bépo):
Général:
– Facile: modifier le moins possible le placement des lettres en Bépo.
– Difficile voire impossible: conserver des raccourcis azerty/qwerty (ça fonctionne dans GTK2 et GTK3 mais pas dans les applications Qt). Je vais sans doute faire un rapport de bug, mais à mon avis tout le monde va s’en foutre parce que ça sera pas considéré comme important. Mais rassurez-vous, grâce au système de raccourcis de KDE je peux implémenter les raccourcis clavier bépo-azerty et bépo-qwerty (voire juste ajouter Couper/Copier/Coller/Sauvegarder — pour ceux qui font du graphisme par exemple). Un autre problème est que
la méthode demande de rajouter un niveau, mais vu qu’on dirait que je ne peux pas avoir plus de huit niveaux, ça me demandera d’en sacrifier (voir plus bas pour les multiples modificateurs).
– Facile: fonctionner sur un maximum de claviers. Ça implique surtout des restrictions sur les modificateurs et le changement de rangée de repos. Je ferais sans doute une version à part pour le TMx car comme dit plus haut, je compte modifier le Verr. maj. Je ne pense pas prendre en compte les claviers états-uniens, mais on ne sait jamais.
Langue:
– Facile: optimiser le Bépo pour le français (réforme de 1990) (ce qui consiste seulement à déclasser l’accent circonflexe).
– Moyen: améliorer légèrement le support de l’anglais et de l’allemand (déplacer le w pour que wh soit facile à faire et qu’il soit facile à enchainer avec des voyelles, ainsi que z).
Modificateurs:
– Moyen: pavé numérique sur une couche à part (peut-être AltGr) avec +-/*=%() et probablement !<>= (groupement pratique pour la programmation).
– Facile: supprimer Verr. Maj., on peut verrouiller n’importe quel modificateur en tapant les deux en même temps (c’est déjà le cas pour Maj avec Neo, et on peut faire la même chose avec les autres très facilement sauf bug de xkb).
– Moyen: AltGr symétrique (moyen parce que je dois trouver où mettre Alt…).
Symboles:
– Difficile: optimiser la disposition pour les langages informatiques (déclasser les touches mortes et symboles de langues peu utilisées, meilleur placement de (), faciliter les digrammes <= >= </ />, etc).
– Facile: plus de symboles que le Bépo: rajouter quelques symboles typographiques (je pense notamment à ⸮ • ⁂, ← ↑ → ↓ sur les flèches).
– Moyen: conserver un placement logique des symboles (choses que j’apprécie énormément chez le Bépo, ce qui n’est pas le cas sur certaines de ses dérivées et d’autres dispositions ergonomiques).
Pistes
– Il est évident que w doit être placé ailleurs, mais je ne vois pas trop où le placer. L’échanger avec ^ serait selon moi une grave erreur car wh est presque toujours aussi difficile.
– La pavé numérique oblige à prendre presque toutes les touches du côté droit, du coup on est obligé de tout prendre du côté gauche pour les symboles de programmation. Tout ça c’est très bien, mais où dois-je placer mon ù et mon æ? Je pense faire comme le Neo, avoir trois modificateurs (mais sûrement placés de façon plus logique), ce qui me permettrait d’avoir un accès facile aux symboles utilisés en informatique
et aux symboles utiles pour taper le français (ç, ù, etc).
Trois modificateurs: plus de détails
– Couche 1 (accès direct) et 2 (maj): les lettres et caractères utilisés en français.
– Couche 3 (AltGr): tout ce qui est utilisé dans les langages informatiques mais pas en français + pavé numérique.
– Couche 5 (3e modificateur): couche de langues, tous les symboles exclusifs au français qui ne sont pas assez fréquent pour mériter un accès direct, les symboles typographiques utilisés dans d’autres langues („“”¡¿ etc), les lettres spéciales (þßæ etc) ainsi que des tonnes de touches mortes.
L’idée est que l’on est que la première couche est commune, et que si on tape en français ou dans une autre langue on utilise également la couche 5, et que si on fait de la prog c’est la couche 4 (et du coup c’est plutôt simple de se rappeler ce qu’il y a sur telle couche).
Je pense également introduire une couche avec les flèches, entrée, supprimer, retour arrière etc mais je ne sais pas encore comment faire puisque je n’ai que AltGr+maj qui pourrait aller mais ça me laisse pas tant de place que ça… En tout cas c’est à mon avis indispensable, parce que le nombre de clavier normalisés est bien supérieur au nombre de claviers ergonomiques.
Les raccourcis clavier sous GNU/Linux, ça peut être marrant
Pour moi GNU/Linux est le meilleur système d’exploitation pour ordinateur de bureau/portable et de
très loin. Néanmoins il faut bien admettre que la diversité dans ce monde est parfois un problème.
– Pour GTK2/GTK3 il faut modifier le fichier xkb et introduire un nouveau niveau avec pour modificateur «Ctrl». Ça fonctionne plutôt pas mal.
– Pour Qt le seul moyen que j’ai trouvé est de configurer plusieurs dispositions et de mettre celle dont on veut les raccourcis clavier en premier (ça fonctionne dans toutes les applications KDE et Qt en général). Dans la boite de dialogue pour ajouter un raccourcis, taper Ctrl+y me fait bien Ctrl+x mais le raccourcis ne fonctionne pas dans l’application (Qt4) ou alors ça me donne directement Ctrl+y (et du coup c’est carrément pas le résultat attendu).
– Pour les applications qui utilisent la xlib directement: ça fonctionne comme dans GTK.
– Pour les applications utilisant les EFL, ça fonctionne aussi.
Le plus simple et le plus logique finalement, ça reste de mettre sur la couche des symboles (ou en tout cas sur une couche accessible) les codes spéciaux XF86Cut, XF86Copy, XF86Paste et Undo (couper, copier, coller et annuler). Sans oublier les classiques lanceurs d’applications génériques, qui correspondent aux lanceurs d’application XF86Launch0, XF86Launch1, etc (jusqu’à F — c’est de l’hexadécimal).
À quel stade j’en suis?
Pour le moment, j’ai rien de fixé, mais comme vous le voyez j’y ai pas mal réfléchi. La plupart des tâches prises séparément sont plutôt simple, mais il va falloir que je bosse pas mal pour intégré tout ça et surtout réussir à faire une disposition qui fonctionne. N’hésitez pas à me donner votre avis et à me dire ce que vous aimeriez bien voir dessus, je suis sûr que vous avez de super idées en stock. 😉
Je ne pense pas faire la disposition pour Windows et Mac, car le Bépo de base est
très largement suffisant pour l’usage que j’en ai (c’est à dire quasiment nul).