xsetwacom - impossible de lier un bouton à des crochets

0

J'essaie de relier les touches de mon Wacom Intuos Pro à divers raccourcis pratiques que je ferais normalement avec le clavier.

Mon système d'exploitation s'appelle Xubuntu 15.04, mais je suis cette section du wiki Arch Linux xsetwacom. (Je sais que ce sont des distributions différentes, mais je trouve les articles d'Arch Wiki vraiment utiles pour des choses non spécifiques à la distribution.)

Quelques-uns d’entre eux ont très bien fonctionné pour définir les fonctions spacePanoramique, Annuler et Refaire:

xsetwacom --set "Wacom Intuos Pro S Pen pad" Button 1 'key +space'
xsetwacom --set "Wacom Intuos Pro S Pen pad" Button 8 'key +ctrl z -ctrl'
xsetwacom --set "Wacom Intuos Pro S Pen pad" Button 2 'key +ctrl +shift z -ctrl -shift'

Cependant, lorsque j'ai essayé de me lier aux crochets:

xsetwacom --set "Wacom Intuos Pro S Pen pad" Button 11 'key ]'
xsetwacom --set "Wacom Intuos Pro S Pen pad" Button 9 'key ['

cela n'a pas fonctionné. En appuyant sur ces touches, il suffit de saisir 9et 8.

Mon sentiment est que c'est un problème avec les dispositions de clavier (ma disposition par rapport à celle xsetwacomutilisée par les développeurs ), mais je ne sais pas trop où aller à partir de là.

Edit: en cours xmodmap -pk|grep -i bracketd' exécution selon le commentaire donne:

 17     0x0038 (8)  0x002a (asterisk)   0x0038 (8)  0x002f (slash)  0x005b (bracketleft)    0x0ac9 (trademark)  0x1000300 (U0300)   0x1000301 (U0301)   
 18     0x0039 (9)  0x0028 (parenleft)  0x0039 (9)  0x0aaa (endash) 0x005d (bracketright)   0x00b1 (plusminus)  
 34     0x005b (bracketleft)    0x007b (braceleft)  0x06c3 (Cyrillic_tse)   0x06e3 (Cyrillic_TSE)   0xfe57 (dead_diaeresis) 0xfe58 (dead_abovering) 
 35     0x005d (bracketright)   0x007d (braceright) 0x003b (semicolon)  0x00a7 (section)    0xfe53 (dead_tilde) 0xfe54 (dead_macron)    
 49     0x0060 (grave)  0x00ac (notsign)    0x0028 (parenleft)  0x0029 (parenright) 0x007c (bar)    0x007c (bar)    0x005b (bracketleft)    0x005d (bracketright)
Andrey
la source
]n'apparaît sur la même touche que 9mais décalée? La xmodmap -pk|grep -i bracketparenthèse et la parenthèse sont-elles affichées dans la première colonne?
Meuh
@meuh a mis à jour mon message avec le résultat de cette commande.
Andrey
Peut-être pertinent: une disposition de clavier bulgare est activée, ce qui représente les troisième et quatrième entrées de cette sortie. Je ne sais pas pourquoi bracketleftet bracketrightapparaître ensuite.
Andrey

Réponses:

1

Il y a donc une ambiguïté dans les tables de mappage pour brackleft et bracketright. Peut-être que si vous supprimez ceux que vous ne voulez pas assortir, tout ira bien. Par exemple, pour le code clé 17, faites:

xmodmap -e 'keycode  17 = 8 asterisk 8 slash trademark trademark U0300 U0301'

où je viens de remplacer la colonne 5 par un duplicata de la colonne 6. Soit dit en passant, xmodmap -pkele mappage sera imprimé dans un format que vous pourrez réutiliser -e.

meuh
la source
Sucré! Ça fait l'affaire.
Andrey
Est-ce quelque chose que je dois exécuter au démarrage ou les paramètres sont-ils conservés?
Andrey
@Andrey vous devez l'exécuter à chaque fois. Mais il doit y avoir quelque part un fichier contenant cette configuration, que vous pouvez copier, éditer, puis fournir au serveur.
Meuh
Ouais, pas de problème - je vais mettre tout mon contenu spécifique à wacom dans un script shell qui s'exécute au démarrage. Merci de votre aide!
Andrey
0

Vous devez faire quelque chose comme:

xsetwacom --set "Wacom Intuos Pro S Pen pad" Button 11 'key +altgr 9 -altgr'

xsetwacom --set "Wacom Intuos Pro S Pen pad" Button 9 'key +altgr 8 -altgr'

Je ne suis pas sûr que ce soit tout à altgrfait correct, vous aurez besoin de comprendre l'abréviation de la Alt Grclé.

Les pages de manuel disent:

Le pilote ne peut simuler que des événements de clé physiques, mais pas de keysyms et xetwacom traduit la séquence de mappage en tels événements. Ainsi, les symboles sur la même clé physique généreront le même événement. Par exemple, '1' et '!' sont sur la même touche d’un clavier américain et ont donc le même code de touche). Pour accéder aux touches d'un niveau de travail supérieur, la séquence doit être entrée telle qu'elle serait saisie sur un clavier physique. Par exemple, un point d'exclamation est entré par la séquence "touche + décalage 1-décalage".

Josef
la source