Forum bépo

Forum des utilisateurs du bépo

Vous n'êtes pas identifié(e).

#1 29/7/2016 22:08:33

Milton
Membres
Lieu : Paris
Inscription : 21/1/2016
Messages : 51

[Linux/X] Permuter les keycodes de deux touches

Problème résolu.

Hello!

Je tente désespérément de bidouiller ma configuration pour pouvoir profiter d’un AltGr à gauche sans lequel je suis bien malheureux…

Je possède un TM2030. Je n’utilise jamais la touche CTRL de droite (keycode 105), et peu la touche Super = home = Windows (keycode 133) de gauche. J’aimerais donc faire de la touche 105 un Super et de la 133 un AltGr.

J’ai donc tenté de mettre:

keycode 105 = Super_L NoSymbol ISO_Level5_Shift
keycode 133 = ISO_Level3_Shift NoSymbol ISO_Level3_Shift NoSymbol ISO_Level3_Shift

dans mon .xmodmap.conf, et de le prendre en compte avec xmodmap ~/.xmodmap.conf.

Premier problème: pour une raison que j’ignore, une fois cette commande exécutée, la touche 105 devient bien un Super_L comme attendu, mais n’a plus aucun effet, appuyer dessus n’affiche plus le menu, et mes raccourcis utilisant Super ne sont plus.

Mais surtout, à chaque changement de mappage de clavier (si je passe en QWERTY notamment), les modifications disparaissent. En fait, j’ai l’impression que le changement fait avec xmodmap est fait au-dessus du mappage.

Je voudrais pour ma part simplement que les codes de ces deux touches soient simplement échangés, et que toute l’interprétation qui en est faite après reste inchangée. Est-ce possible sans tournevis ni fer à souder? tongue

D’avance, merci. smile

Dernière modification par Milton (30/7/2016 21:48:16)

Hors ligne

#2 30/7/2016 19:45:51

Mimoza
Olivaw
Lieu : Terre
Inscription : 19/9/2012
Messages : 862

Re : [Linux/X] Permuter les keycodes de deux touches

Pour avoir démonté plusieurs TM ce n'est pas avec un fer a souder que tu pourras faire ta bidouille de manière matériel, mais plutôt avec de la peinture conductrice/argent big_smile

Hors ligne

#3 30/7/2016 21:47:47

Milton
Membres
Lieu : Paris
Inscription : 21/1/2016
Messages : 51

Re : [Linux/X] Permuter les keycodes de deux touches

Ah. Himmelgott, c’est donc encore plus compliqué…

J’ai trouvé comment faire, finalement ! Dans mon /usr/share/X11/xkb/symbols/level3, j’ai remplacé :

default  partial modifier_keys
xkb_symbols "ralt_switch" {
  key <RALT> {
    type[Group1]="ONE_LEVEL",
    symbols[Group1] = [ ISO_Level3_Shift ]
  };
  include "level3(modifier_mapping)"
};

Par :

default  partial modifier_keys
xkb_symbols "ralt_switch" {
  include "level3(modifier_mapping)"
  key <RALT> {
    type[Group1]="ONE_LEVEL",
    symbols[Group1] = [ ISO_Level3_Shift ]
  };
  key <LWIN> {
    type[Group1]="ONE_LEVEL",
    symbols[Group1] = [ ISO_Level3_Shift ]
  };
  key <RCTL> {
    type[Group1]="ONE_LEVEL",
    symbols[Group1] = [ Super_L ]
  };
};

Et j’obtiens exactement le comportement attendu. Une autre façon sans doute plus propre serait de faire le changement directement dans la définition de la disposition BÉPO.

Hors ligne

#4 30/7/2016 21:58:15

damien thiriet
Membres
Lieu : Varsovie
Inscription : 2/9/2010
Messages : 133
Site Web

Re : [Linux/X] Permuter les keycodes de deux touches

xmodmap est obsolète, il faut passer par xkb pour passer ce genre de manip.
Je ne fais que citer le wiki, malheureusement je ne peux pas en dire beaucoup plus. Il faut peut-être bidouiller dans un evdev-10.conf, comme indiqué dans dans le wiki


TM 2030, bépo depuis 2010
Open BSD - pdksh - ratpoison + dmenu + tmux + st - Vim - zathura - xombrero - sxiv
ma page du wiki

Hors ligne

#5 7/8/2016 22:04:57

Yahyalexandre
Membres
Inscription : 7/8/2016
Messages : 11

Re : [Linux/X] Permuter les keycodes de deux touches

Milton a écrit :

Une autre façon sans doute plus propre serait de faire le changement directement dans la définition de la disposition BÉPO.

Oui, et c'est plus simple à écrire d'ailleurs.
Voilà par exemple comment faire pour mettre AltGr à la place du verrou majuscule, et faire que les deux Shift en même temps produise l'effet du verrou :

include "shift(both_capslock)"
include "level3(caps_switch)"

Si tu veux simplement le Alt  et Windows de gauche :

include "level3(lalt_switch)"
include "level3(lwin_switch)"

Il suffit de mettre cela e à la ligne juste avant le « }; » de la section bépo.

Hors ligne

#6 7/8/2016 23:46:44

Milton
Membres
Lieu : Paris
Inscription : 21/1/2016
Messages : 51

Re : [Linux/X] Permuter les keycodes de deux touches

Merci ! smile

Hors ligne

Pied de page des forums