C'est un défi intéressant, et je suis d'accord sur celui auquel xinput ne semble pas être parfaitement adapté. J'ai passé un peu de temps bidouiller avec les capacités de xmodmap, et est venu si frustrante près de réaliser ce que vous voulez faire ... sans véritablement gérer pour y arriver.
En utilisant xmodmap, il est possible d'affecter parenleft comme symbole de touche décalé sur la touche de décalage gauche:
xmodmap -e 'keysym Shift_L = Shift_L parenleft Shift_L parenleft'
quel sorta fonctionne, au moins dans les tests sur ma boîte Fedora 17, mais pas de manière satisfaisante. J'ai trouvé que, avec ce mappage en place, la touche Maj fonctionnait toujours normalement et ne rendait pas de parens parasites, mais (frustrant), elle ne produisait pas non plus de manière fiable les parens gauches. Pour une raison quelconque, la clé ne semble pas modifier de manière fiable lui - même , qui brise sa mission décalée ... au départ. Pour une raison quelconque, frapper plusieurs fois de suite à gauche entraînerait éventuellement la production de parens à gauche, mais seulement après la quatrième ou la cinquième pression.
Un comportement que je l' ai avis, cependant, que vous pourriez être en mesure de travailler avec un « assez proche » analogique: je trouve que , après la cartographie parenleft et parenright sur Shift_L et Shift_R, je pourrais sûrement taper parens par « rouler » sur les deux touches de déplacement - en d'autres termes, avec cette cartographie:
xmodmap -e 'keysym Shift_L = Shift_L parenleft Shift_L parenleft'
xmodmap -e 'keysym Shift_R = Shift_R parenright Shift_R parenright'
appuyer sur Shift_L suivi de Shift_R, puis relâcher les deux, produirait une parenthèse droite ou une parenthèse gauche dans l'autre sens. (Les mappings de paren pourraient être inversés, bien sûr; je ne pouvais pas vraiment décider de quelle manière me semblait plus "naturelle".)
C'était aussi près que je suis arrivé à atteindre le comportement exact que vous recherchez; il ne semble pas possible d'utiliser xmodmap seul.
J'étais à moitié convaincu que ce n'était tout simplement pas possible, point final, mais j'ai réalisé qu'il y avait au moins une touche qui fonctionnait exactement comme vous le décrivez: la touche Super ("Windows"). Sous Gnome Shell, il s'agit d'une touche de modification (mod4), qui produit un effet différent (déclenchement de l'aperçu) lorsqu'elle est enfoncée seule. Ainsi, au moins en théorie, il peut être possible d'implémenter la surcharge de la touche Maj souhaitée de la même manière.
... Mais, je n'ai absolument aucune idée de la façon dont cela serait fait, ou à quel point il serait envahissant de s'embourber dans le traitement nécessaire chaque fois que vous appuyez sur la touche Maj. :-)