Je veux émuler le défilement horizontal lorsque j'utilise ma molette de défilement (verticale) et que j'appuie sur Shift.
Dans certaines applications (Chrom {e, ium}), cela fonctionne déjà, mais je cherche une solution générique pour les applications X.
Le plus proche que j'ai obtenu jusqu'à présent est xbindkeys+ xdotool.
# ~/.xbindkeysrc
"xdotool click 6"
shift + b:4
"xdotool click 7"
shift + b:5
Le problème est qu'il xbindkeyssemble manquer certains événements, et parfois un défilement vertical "passe". C'est très ennuyeux. Il semble xbindkeysutiliser une sorte de sondage?
Je n'aime pas non plus générer des centaines de commandes shell par seconde.
J'ai un petit écran et je dois beaucoup faire défiler horizontalement.
Comment réaliser un défilement horizontal générique?
MISE À JOUR:
Il y a une autre façon qui fait surtout ce que je veux avec xbindkeyset xmodmap.
"xmodmap -e 'pointer = 1 2 3 6 7 4 5 8 9 10'"
c:50
"xmodmap -e 'pointer = default'"
release + shift + c:50
Lorsque Shiftest maintenu enfoncé, les boutons de pointeur 4 et 5 sont mappés sur 6 et 7. (Les boutons 4/5 sont pour le défilement vertical et 6/7 pour le défilement horizontal). c:50est la Shifttouche gauche . Lors de la libération de la touche, le mappage du pointeur par défaut est restauré.
Cela résout bien le problème des «trop d'événements». Cependant, la touche Maj ne fonctionne plus comme modificateur normal. J'ai essayé de ré-émettre les Shiftévénements de presse / communiqué avec xdotoolcomme ceci:
"xmodmap -e 'pointer = 1 2 3 6 7 4 5 8 9 10'; xdotool keydown Shift_L"
c:50
"xmodmap -e 'pointer = default'; xdotool keyup Shift_L"
release + shift + c:50
Selon xevles Shiftévénements, je pense que ce n'est plus reconnu comme un modificateur. Par exemple, appuyer sur Shift+ Ane produira pas de majuscule A.