Exploitez votre souris 5 boutons + roulette à 100%

Grâce à ce how-to vous pourrez profiter pleinement de votre souris 5 boutons + roulette [size=75](IntelliMouse Optical dans mon cas)[/size] dans toutes les applications telles que Firefox, Nautilus, Konqueror & co.

:arrow_right: 1. Configurer Xorg

cp /etc/X11/xorg.conf /etc/X11/xorg.conf.bak gedit /etc/X11/xorg.conf
(avec privilèges root)

===== Xorg < 6.9 =====

  • Modifier le protocole à ExplorerPS/2
  • Définir le nombre de boutons à 7
  • Réagencer ZAxisMapping en se basant sur le texte ci-dessous …

Section à modifier dans xorg.conf:

Section "InputDevice" Identifier "Configured Mouse" Driver "mouse" Option "CorePointer" Option "Device" "/dev/input/mice" Option "Protocol" "ExplorerPS/2" Option "Buttons" "7" Option "ZAxisMapping" "6 7" EndSection

Votre section peut être différente, l’important est de modifier le Protocol, Buttons & Zaxismapping.
===== Xorg < 6.9 =====

===== Xorg >= 6.9 =====

  • Modifier le protocole à ExplorerPS/2
  • Définir le nombre de boutons à 9
  • Réagencer ButtonMapping en se basant sur le texte ci-dessous …

Section à modifier dans xorg.conf:

Section "InputDevice"
	Identifier	"Configured Mouse"
	Driver		"mouse"
#	Option		"CorePointer"
	Option		"Device"		"/dev/input/mice"
	Option		"Protocol"	"ExplorerPS/2"
	Option		"Buttons"	"9"
	Option		"ButtonMapping"	"1 2 3 8 9 4 5 6 7"
EndSection[/code]

Votre section peut être différente, l'important est de modifier le [i]Protocol[/i], [i]Buttons[/i] & [i]ButtonMapping[/i].
[i][b]===== Xorg >= 6.9 =====[/b][/i]

:arrow_right: [b][u]2. Installer & configurer [i]imwheel[/i][/u][/b]

[u]Premièrement:[/u]
[code]apt-get install imwheel[/code]
[i](avec privilèges root)[/i]

[u]Deuxièmement:[/u]
[code]gedit ~/.imwheelrc[/code]
et y ajouter le code suivant: 
[code]".*"
None, Up, Alt_L|Left
None, Down, Alt_L|Right

"(null)"
None, Up, Alt_L|Left
None, Down, Alt_L|Right

Troisièmement:

cp /etc/X11/imwheel/startup.conf /etc/X11/imwheel/startup.conf.bak gedit /etc/X11/imwheel/startup.conf
(avec privilèges root)

remplacer le contenu du fichier par:

===== Xorg < 6.9 =====

IMWHEEL_START=1 #IMWHEEL_PARAMS="-k -b "6 7""
===== Xorg < 6.9 =====

===== Xorg >= 6.9 =====

IMWHEEL_START=1 IMWHEEL_PARAMS="-k -b "8 9"" #si ne fonctionne pas, remplacer le contenu de /etc/X11/Xsession.d/60imwheel_start-imwheel par /usr/bin/imwheel -k -b "8 9"
===== Xorg >= 6.9 =====

:arrow_right: 3. Configurer xmodmap (Xorg < 6.9)

===== Xorg < 6.9 =====

(avec privilèges root)

y ajouter ce qui suit:

killall imwheel xmodmap -e "pointer = 1 2 3 6 7 4 5" BINARY=$(which imwheel) $BINARY -k -b "6 7"

et enfin définir les permissions du fichier:

(avec privilèges root)
===== Xorg < 6.9 =====

===== Xorg >= 6.9 =====
Rien à faire (cfr. ButtonMapping introduit avec Xorg >=6.9) si ce n’est de s’assurer de ne plus avoir le fichier /etc/X11/Xsession.d/63xmodmap si vous avez déjà appliqué ce how-to avant de passer à Xorg 6.9 ou supérieur! =>

(avec privilèges root)
===== Xorg >= 6.9 =====

:arrow_right: 4. Redémarrer X & tester!

[u]/![/u] Avant de redémarrer X, assurez vous de fermer tous vos documents & applications en cours (vous pouvez vous déloguer par prudence).

Redémarrer X avec la combinaison de touche Control+Alt+Backspace, se loguer à nouveau (Gnome, KDE, Fluxbox, …) et finallement tester la roulette (défilement vertical) et les boutons du côté (précédent/suivant) dans FireFox, Nautilus, Konqueror, etc.

:arrow_right: 5. En vrac

  • xmodmap -pp (Xorg < 6.9)
  • xev
  • cat /etc/X11/Xsession.d/60imwheel_start-imwheel

merci pour ce petit tuto simple et efficace
mais j’arrive a avoir un probleme:

les boutons speciaux de gauche et droit ont un bug, enfin voila par exemple pour le gauche avec xev:

[code]ButtonRelease event, serial 28, synthetic NO, window 0x2c00001,
root 0x102, subw 0x0, time 416213, (168,1), root:(842,31),
state 0x800, button 4, same_screen YES

ButtonRelease event, serial 28, synthetic NO, window 0x2c00001,
root 0x102, subw 0x0, time 416405, (168,1), root:(842,31),
state 0x0, button 6, same_screen YES
[/code]
quand j’appuie, ca fait comme un coup de molette (bouton4),
et quand je relache, ca fait le bouton special de gauche (bouton6)

le truc que je comprends pas, c’est qu’il prend 4 et 5 pour la molette,
ca c’est quand j’actionne la molette:

[code]ButtonRelease event, serial 28, synthetic NO, window 0x3600001,
root 0x102, subw 0x0, time 1139480, (137,2), root:(811,32),
state 0x1010, button 5, same_screen YES

ButtonPress event, serial 28, synthetic NO, window 0x3600001,
root 0x102, subw 0x0, time 1140087, (137,2), root:(811,32),
state 0x10, button 4, same_screen YES
[/code]
si j’ai bien compris, ca devrait etre 6 et 7
enfin elle marche la molette en tous cas

alors je comprends pas
voila ce que j’ai dans mon xf86config-4:

Section "InputDevice"
        Identifier      "Configured Mouse"
        Driver          "mouse"
        Option          "CorePointer"
        Option          "Device"                "/dev/input/mice"
        Option          "Buttons"               "7"
        Option          "Protocol"              "ExplorerPS/2"
        Option          "ZAxisMapping"          "6 7"
EndSection

est-ce que t’as une idée du probleme ?
la j’ai une idée d’un coup, fo peut etre que je branche sur le port ps/2 et non usb.
jvais tester ca

edit: ben non, enfin j’ai une souris usb avec adaptateur vert usb >> ps/2
logitech mx310

qu’as-tu en executant cette commande?

moi, ça me donne:

[code]There are 7 pointer buttons defined.

Physical        Button
 Button          Code
    1              1
    2              2
    3              3
    4              6
    5              7
    6              4
    7              5[/code]

==========================================================================================

cherche pas, jette un coup d’oeuil ici:

gentoo-wiki.com/HOWTO_Mouse_Nav_Buttons

[quote]If you have a Logitech MX310, change the /etc/X11/XF86Config Or /etc/X11/xorg.conf file to read:

... Section "InputDevice" Identifier "Mouse1" Driver "mouse" Option "Protocol" "ExplorerPS/2" Option "Device" "/dev/input/mice" Option "Buttons" "9" Option "Emulate3Buttons" "false" Option "ZAxisMapping" "6 7" EndSection ...

[…]

Note: the imwheel daemon is unecessary for the Logitech MX310. Just tell X that you have other buttons (see above) and it will work.
[/quote]

quote=“ghostintheshell”]qu’as-tu en executant cette commande?

moi, ça me donne:

[code]There are 7 pointer buttons defined.

Physical        Button
 Button          Code
    1              1
    2              2
    3              3
    4              6
    5              7
    6              4
    7              5[/code]

j’ai pareil que toi

ben en fait, c’est le guide que j’ai suivi dans un premier temps

mais ca marche pas, en fait, les boutons speciaux avaient la même fonction
que la souris

[quote]File: ~/.kde/Autostart/xmodmap
When using KDM and KDE, your .xinitrc may be ignored. To automatically call xmodmap, you can use the Autostart folder of kde

#!/bin/sh
xmodmap /etc/X11/xinit/.Xmodmap
[/quote]

donc là le dossier autostart n’existait pas je l’ai créé, ainsi que Xmodmap, et
ajouté #!/bin/sh
xmodmap /etc/X11/xinit/.Xmodmap dedans.

d’ailleurs dans le dossier /etc/X11/xinit/ ya pas de .Xmodmap

[quote]Alternatively, you can add the following line to ${kdedir}/share/config/kdm/Xstartup to remap your mouse buttons/wheel:
File: ${kdedir}/share/config/kdm/Xstartup

exec /usr/bin/xmodmap -e “pointer = 1 2 3 6 7 4 5”[/quote]

pareil, pas de share/config/kdm

mais directement kdm dans le dossier kde

donc j’ai créé et edité les fichiers dans ces deux dossiers, mais rien n’y fait.

apres j’ai trouvé ton tuto, et c’est avec cette solution que ca marche le mieux

quote=“ouabi”

apres j’ai trouvé ton tuto, et c’est avec cette solution que ca marche le mieux[/quote]

tu dois pas etre tres loin de la solution …

essaye de jouer avec

en enlevant -k ou -b ou les deux …

bonne chance et tiens nous au courant si tu trouves!

[quote=“ghostintheshell”]
essaye de jouer avec

en enlevant -k ou -b ou les deux …

bonne chance et tiens nous au courant si tu trouves![/quote]

eh ben merci beaucoup, ca marche parfaitement, pour info, j’ai supprimé -k et -b

mais pour ma culture générale, j’aimerais savoir ce que c’est.
ca correspond a quoi ?

[quote=“ouabi”][quote=“ghostintheshell”]
essaye de jouer avec

en enlevant -k ou -b ou les deux …

bonne chance et tiens nous au courant si tu trouves![/quote]

eh ben merci beaucoup, ca marche parfaitement, pour info, j’ai supprimé -k et -b

mais pour ma culture générale, j’aimerais savoir ce que c’est.
ca correspond a quoi ?[/quote]

lol, et bien, super!

plus d’aide en tapant:

ou encore

au fait, ça serait sympa pour les suivants que tu résumes les différences avec le how-to original pour l’appliquer à une logitech mx310 :smiley:

je ferai ca, mais a priori ya que l’histoire des -b -k
je vais essayer de virer ce que j’ai fait avec l’autre tuto, histoire de voir
si avec imwheel seul ca marche.

Je viens de récupérer une souris MS avec plein de boutons, et je viens de tester ton mode opératoire : ça mache Nickel, merci ghostintheshell :laughing:

En partant d’un autre sujet (http://forum.debian-fr.org/viewtopic.php?p=48157#48157), j’ai trouvé une erreur due à imwheel dans mon fichier .xsession-errors :

INFO: imwheel started (pid=9190) imwheel: the -p option is deprecated. INFO: imwheel(pid=9190) killed. INFO: imwheel started (pid=9196) Unrecognized wheel action in config. Ignoring action. DownCela m’interpelle car :

  • Mes boutons souris marchent tous correctement (bon d’accord, à quoi sert de se poser ce genre de question si ça marche, mais j’aime bien essayer de comprendre)
  • J’ai beau cherché où je pourrai lancer la commande imwheel -p, et nulle part, je n’en trouve trace :cry:

C’est grave docteur ?

Bin chez moi tout marche à merveille!! Merci pour ce tuto très clair et très bien fait :wink:

Section "InputDevice" Identifier "Configured Mouse" Driver "mouse" Option "CorePointer" Option "Device" "/dev/input/mice" Option "Protocol" "ExplorerPS/2" Option "Buttons" "7" Option "ButtonMapping" "1 2 3 6 7 4 5" Option "Emulate3Buttons" "false" Option "ZAxisMapping" "4 5" EndSection

en fait, j’ai fait de multiples tests et après avoir essayé méthodiquement, il s’avere que ca marche très bien sans imwheel :open_mouth:

il suffit d’inverser les boutons 4 5 et 6 7 dans le xorg.conf

je suis sous Debian/Etch avec kde+beryl

Moralité, il faut pas essayé bêtement les tutos comme je fais tout le temps, mais d’essayer de comprendre leur logique et de faire pour le mieux :smiley:

cepadugato, je viens de copier ta section, et en effet, c’est nickel ! :stuck_out_tongue:

Merci :wink:

J’ai trouvé plus simple que imwheel (qui est galère pour l’ordre des boutons) et super efficace :

Normalement vous n’avez pas à toucher à votre xorg.conf : juste un petit soft à installer et un fichier caché dans /home/user/ à créer :

Section "InputDevice"
Identifier "Configured Mouse"
Driver "mouse"
Option "CorePointer"
Option “Device” "/dev/input/mice"
Option “Protocol” "ExplorerPS/2"
Option “Emulate3Buttons” "true"
EndSection

Voici le mien au cas où : avec une Logitech MX1000 : epiphanie / firefox / nautilus etc … marchent parfaitement sans aucun paramétrage (sauf firefox pour certains)

Pour certains (essayer ne naviguer avant) dans firefox il faudra changer des paramètres dans about:config

Taper about:config dans la barre d’adresse de firefox et mettre les paramètres comme suit :

mousewheel.horizscroll.withnokey.action en 0
mousewheel.horizscroll.withnokey.sysnumlines en true

Ensuite le soft :

sudo apt-get install xbindkeys
nano ~/.xbindkeysrc (il y a un point entre / et x)

Copier le texte ci-dessous dedans (avec les quillements tel quel et aucun espace devant chaque ligne) :

"/usr/bin/xvkbd -xsendevent -text “[Alt_L][Left]”“
b:8
”/usr/bin/xvkbd -xsendevent -text “[Alt_L][Right]”"
b:9
"echo ButtonPress 4 ButtonRelease 4 | xmacroplay -d 0 :0.0"
b:11
"echo ButtonPress 5 ButtonRelease 5 | xmacroplay -d 0 :0.0"
b:12
"echo ButtonPress 6 ButtonRelease 6 | xmacroplay -d 0 :0.0"
b:13
"echo ButtonPress 7 ButtonRelease 7 | xmacroplay -d 0 :0.0"
b:14

Faites CTRL O + ENTER + CTRL X

Ajouter xbinkeys à Bureau / Préférences / Session // programme de démarage

Pour activer pendant la session active : faire ALT + F2 taper xbindkeys, la prise en charge est immédiate.

Sinon redémarrer X

Et voilà !!!

Je viens apporter ma pierre à ce tuto car je viens de galérer une paire d’heure dans plein de tutos dont celui-ci pour configurer ma super souris à boutons (Logitech Mx900).
Bien sûr, une fois que l’on sait ce qu’il faut faire, ça prend 5 secondes :laughing:

Comme hashess le signale dans ce post, imwheel et xmodmap sont obsolètes depuis la version 7 de xorg.
Tout se configure dans le fichier /etc/X11/xorg.conf. Voilà ma partie souris :

[quote]Section "InputDevice"
Identifier "Configured Mouse"
Driver "mouse"
Option "CorePointer"
Option “Device” "/dev/input/mice"
Option “Protocol” “ExplorerPS/2”
Option “Buttons” "9"
Option “ButtonMapping” "1 2 3 6 7 8 9"
Option “ZAxisMapping” "4 5"

Option “Emulate3Buttons” "false"
EndSection[/quote]
Il n’y a désormais que les 3 lignes en rouge à ajouter.

  • L’option Buttons, c’est le nombre de boutons…
  • Pour ButtonMapping, on ajoute les numéros des boutons sauf les 2 boutons affectés à la roulette qui vont dans l’option “ZAxisMapping”.

Pour connaître ces numéros, xev est notre ami !!
Chez moi les numéros d’affectation de ma souris étaient dans l’ordre, mais il est possible que la votre décide de vous jouer un tour, pour être sûr :

Anatomic, tu utilises xbindkeys quand même ou pas?

Je ne comprend pas avec ta méthode comment tu associes par exemple F5 au bouton 8.

Ma MX1000 attend ardemment ^^

Up

[quote=“nefastkurt”]Anatomic, tu utilises xbindkeys quand même ou pas?

Je ne comprend pas avec ta méthode comment tu associes par exemple F5 au bouton 8.

Ma MX1000 attend ardemment ^^[/quote]
Désolé, j’avais zappé ton post :unamused:

Sorry…

Sinon, non, je n’utilise pas xbindkeys. Quand j’ai configuré ma souris, c’était surtout pour utiliser les boutons sur le côté pour naviguer avec iceweasel, les pages précédents, suivants…
Car avant que je ne fasse les changements dans mon xorg.conf, je n’avais que les boutons droite et gauche + la roulette qui fonctionnaient.
J’avais 4 boutons qui ne fonctionnaient tout simplement pas.

Associer F5 au bouton 8, je ne sais pas comment faire…

Ok merci, je bidouillerais mon xorg.conf ce soir ou demain :smiley: .