Vous n'êtes pas identifié(e).
Bonjour à tous,
nouveau bépoiste convaincu ( développeur ) et par la même occasion nouvel adepte de la frappe à l’aveuglette, une nouvelle contrainte me fait péter les plombs :
Quelle horreur de devoir bouger sa main jusqu’aux flèches… (quelle joie ces trois petits points…) J’aimerai donc rentabiliser ma touche super ( je suis sous GNU/linux + gnome sur RHEL & ubuntu ) conjointement avec les touches dtsr pour remplacer mes flèches. Mais je ne sais pas comment faire ^^.
Que ceux qui me répondraient « vim » ou « typematrix » sachent que je suis d’accord avec eux !
merci d’avance et bonne journée.
Hors ligne
J'avais commencé à essayer de faire un truc équivalent il y a deux mois, mais j'ai dû arrêter en cours et n'ai pas eu le temps d'approfondir depuis. Cette page devrait pouvoir t'aider. Si mes souvenirs sont bons, il faut définir un nouveau « level » avec la touche modificatrice voulue, ce qui se fait en créant un fichier dans /usr/share/X11/xkb/types (toujours si mes souvenirs sont bons, mais encore une fois je n'ai pas pu aller au bout, donc c'est peut-être une fausse piste, je sais juste que j'ai un fichier custombepo modifié au 7 juin dans ce dossier… ), en s'inspirant des autres exemples, et ensuite l'intégrer au fichier /usr/share/X11/xkb/symbols/fr.
Si ça peut t'inspirer, voici où je m'étais arrêté :
/usr/share/X11/xkb/types/custombepo :
partial default xkb_types "custombepo" {
virtual_modifiers LevelThree,LevelFive;
type "CUSTOMBEPO" {
modifiers = Shift+Lock+LevelThree+LevelFive;
map[None] = Level1;
map[Shift] = Level2;
map[Lock] = Level2;
map[LevelThree] = Level3;
map[Shift+LevelThree] = Level4;
map[LevelFive] = Level5;
map[Lock+LevelThree] = Level3;
map[Lock+Shift+LevelThree] = Level4;
map[Lock+LevelFive] = Level5;
preserve[Lock+LevelThree] = Lock;
preserve[Lock+Shift+LevelThree] = Lock;
level_name[Level1] = "Base";
level_name[Level2] = "Shift";
level_name[Level3] = "Alt Base";
level_name[Level4] = "Shift Alt";
level_name[Level5] = "Win";
};
};
/usr/share/X11/xkb/symbols/fr : copie de la disposition bépo (pour avoir un backup si la disposition plante…) avec en plus la ligne
include "custombepo(win_switch)"
et modifiée de sorte que
key <AD08> { type[group1] = "CUSTOMBEPO", [ d, D, eth, ETH, Up ] }; // d D ð Ð
Je crois que je m'étais arrêté là, je ne suis pas sûr que le Up corresponde bien au code de la flèche du haut, il me semble que c'était ce que j'étais en train de chercher quand j'ai arrêté.
Hors ligne
J'ai fait la même sous win. avec pkl, donc je ne peux qu'abonder dans ton sens.
Dernière modification par fabien (30/7/2010 23:10:39)
Hors ligne
Il faut trouver jofo (et si ce n’est lui, c’en est un autre) qui a testé un clavier avec 6 couches différentes.
Hors ligne
Et sinon regarder du coté des allemands de neo qui en ont plein de couches aussi.
Hors ligne
Bonjour à tous,
merci de vos réponses. j’essaie tout ça dès que possible et vous fait un petit retour ! ça fait déjà de bonne piste à suivre.
bonne fin de dimanche.
Hors ligne
Bonjour a tous,
( cd /usr/share/X11/xkb/ )
j'ai un petit peu de temps pour tester la méthode de skippy. mais ça bloque lors de l'include ( include "custombepo(win_switch)" dans la partie bepo de ./symbols/fr) quelque soit l'endroit ou je le place. ça ne marche pas non plus si j'essaie d'inclure un autre type déja présent dans ./types/.
sortie de setxkbmap fr bepo -v :
Warning! Multiple definitions of keyboard layout
Using command line, ignoring X server
Warning! Multiple definitions of layout variant
Using command line, ignoring X server
Trying to build keymap using the following components:
keycodes: xfree86+aliases(azerty)
types: complete
compat: complete
symbols: pc(pc105)+fr(bepo)+inet(pc105)+compose(rwin)+compose(menu)
geometry: pc(pc105)
Error loading new keyboard description
notons que les warning s'affichent aussi avec le keymap basic.
pour info, ./types/custombepo :
partial default xkb_types "custombepo" {
virtual_modifiers LevelThree,LevelFive;
type "CUSTOMBEPO" {
modifiers = Shift+Lock+LevelThree+LevelFive;
map[None] = Level1;
map[Shift] = Level2;
map[Lock] = Level2;
map[LevelThree] = Level3;
map[Shift+LevelThree] = Level4;
map[LevelFive] = Level5;
map[LWin] = Level5;
map[Lock+LevelThree] = Level3;
map[Lock+Shift+LevelThree] = Level4;
map[Lock+LevelFive] = Level5;
preserve[Lock+LevelThree] = Lock;
preserve[Lock+Shift+LevelThree] = Lock;
level_name[Level1] = "Base";
level_name[Level2] = "Shift";
level_name[Level3] = "Alt Base";
level_name[Level4] = "Shift Alt";
level_name[Level5] = "Win";
};};
merci d'avance à tous.
PS; j'ai changé my mind depuis le message de wally et utiliserais les touches suivantes ( a la vim décalé d'une touche sur la droite ) ; t (left ) s (down) r (up) n (right)
Hors ligne