[Mini-Howto] Profiter à fond de son Logitech Optical Cordless Desktop

bon, ça a pas trop l’air de vous interesser mon post’ … je continue quand même (sait-on jamais)

donc j’ai testé le prog cité ci-dessus, un peu chaud à maitriser, mais tout (sauf bien sur ce que je veux) marche

en fait, j’arrive aps à envoyer 2 touches système, je peu en envoyer une, une touche système et 1 ou pl. lettres, mais pas Alt + Left par exemple, ça me fais un “4” à la place …

si si moi ça m’intéresse :oui:
continue t’es bien parti

:smiley: [:patlenul] [:knaland]

un chtit up au cas ou [:patlenul]

perso j’essai aussi de configurer les boutons de ma souris, j’ai une logitech mx700 du pack cordless MX, pour l’instant j’ai rien trouvé me permettant d’avoir mes boutons faisant des choses différentes, les 2 boutons situés près du pouce effectuant les mêmes opérations que le clic droit et la molette, en fait c’est juste une répétition des touches 2 et 3… pas top comme configuration.
j’ai le classique xmodmap -e “pointer = 1 2 3 6 7 4 5” & dans mon ~/.xinitrc et la configuration habituelle pour une souris 7 boutons dans mon XF86Config :
[cpp] Identifier “MX700”
Driver “mouse”
Option “Protocol” “IMPS/2”

Option “Protocol” “Auto”

Option "Device"      "/dev/usbmouse"
Option "Buttons"    "7"
Option "ZaxisMapping" "6 7"

[/cpp]

Je l’ai branché en usb, j’ai essayé de voir d’autres possibilités que “mouse” pour driver (genre si il n’y avait pas qqchose de plus proche pour une logitech) mais rien n’y fait, les boutons 4 et 5 sont toujours de bêtes reproductions des boutons 2 et 3 comme me l’indique xev… c’est que j’ai fait une couille avec xfree mais je vois pas laquelle…

en cherchant cette soluce pour ma nouvellement acquise MX 500, j’ai trouvé ça :
http://routes-linux.scooba.org/article.php?sid=54
qui devrait marcher, mais hélas, il est apparment impossible d’avoir d’autres fonctions que 2 et 3 à ces fameux boutons si la souris est branchée en USB …

en tout cas, pour mon optical cordless desktop, avec
[cpp]
Section “InputDevice”
Identifier “Mouse1”
Driver “mouse”
Option “Protocol” “MouseManPlusPS/2”
Option “Device” “/dev/mouse”
Option “ZAxisMapping” “5 6”
Option “Buttons” “6”
EndSection
[/cpp]
Dans XF86Config-4 et le reste du tutorial à peu près identique (xmodmap -e “pointer = 1 2 3 6 4 5”) j’ai enfin mon bouton 4 qui fait “précédent” sous FireBird, et ça c’est bon !!!

Avec ça en plus pour la souris USB, ça marche
[cpp]
Section “InputDevice”
[…]
Option “CorePointer”
Option “SendCoreEvents” “true”
EndSection
[/cpp]

le bouton 4 pour “précédent” :super:

par contre [:wolfseal] [:wolfseal] je scroll plus [:wolfseal]

j’ai ~/.xinitrc

[cpp]
/usr/X11R6/bin/xmodmap -e “pointer = 1 2 3 6 4 5”
BINARY=$(which imwheel)
$BINARY -k -p -b “56”
[/cpp]

XF86Config-4
[cpp]
Section “InputDevice”
Identifier “Mouse1”
Driver “mouse”
Option “Protocol” “IMPS/2”
Option “Device” “/dev/psaux”
Option “ZAxisMapping” “5 6”
Option “Buttons” “6”
EndSection
[/cpp]

~/.imwheelrc
[cpp]
“.*”
None, Up, Alt_L|Left
None, Down, Alt_L|Right
[/cpp]

c’est où que j’ai faux ?

:lol: moi non plus :sarcastic: :cry:

:lol:

attend je progresse !!!

bon apparement mon pb est qu’il lance imwheel au démarage avant mon propre script …

~/.xinitrc :

killall imwheel
xmodmap -e “pointer = 1 2 3 6 7 4 5”
imwheel -p -b “67”

à mon avis tous se passe là dedans

~/.imwheelrc
avec ça j’ai le scrolling mais les boutons sous le pouces c’est pareil que clic molette sous firebird

[cpp]

IMWheel Configuration file ($HOME/.imwheelrc or /etc/imwheelrc)

(GPL)Jon Atkins jcatki@jonatkins.org

Please read the README and/or imwheel(1) manpage for info

and this is best operated on using vim (as I said: It’s crunchy)

This is only for demonstration of the priority command…

See the other global Exclude command below for the one you want to use!

If this is activated it will only apps that have a lower priority

priority is based first on the priority command, then the position in this

file - the higher the line is in a file the higher in a priority class it is

thus for a default priority you can see that the position in the file is

important, but the priority command CAN appear anywahere in a window’s list

of translations, and the priority will be assigned to all translations below

it until either a new window is defined or the priority is set again.

#".*"
#@Priority=-1000 #the default priority is zero, higher numbers take precedence
#@Exclude
#@Repeat

This one rule can send button events, as if you used ZAxisMapping “4 5”

Make sure your XF86Config allows for the max buttons needed…

otherwise the events will NOT even be generated…

“.*”
#, Up, Button4
#, Down, Button5
#, Left, Button6
#, Right, Button7
#, Thumb1, Button6
#, Thumb2, Button7

#Thanks to Mathias Weyland mathias@weyland-wtal.de
“^mutt.*”
None, Up, Up
None, Down, Down
Control_L, Up, Page_Up
Control_L, Down, Page_Down

#Thanks to Mathias Weyland mathias@weyland-wtal.de
“^aterm”
None, Up, Shift_L|Page_Up
None, Down, Shift_L|Page_Down
Control_L, Up, Up
Control_L, Down, Down

#Thanks to Mathias Weyland mathias@weyland-wtal.de
“^Xplns”
None, Up, Left
None, Down, Right
Control_L, Up, Up
Control_L, Down, Down

“^kvt”
None, Up, Shift_L|Page_Up
None, Down, Shift_L|Page_Down

“^Konsole”
None, Up, Shift_L|Page_Up
None, Down, Shift_L|Page_Down

“^XMcd”
None, Up, C
None, Down, Shift_L|C

“^XMMS_Player”
None, Up, Right
None, Down, Left

“^XMMS_Playlist”
Control_L, Up, Up
Control_L, Down, Down

“^xmms”
Alt_L, Up, Z
Alt_L, Down, B
Control_L, Up, V
Control_L, Down, C

“^XATITV-GATOS”
None, Down, KP_Subtract
None, Up, KP_Add

“^Xman”
None, Down, F
Shift_L, Down, 3
None, Up, B

“^Gvim”
Shift_L, Up, Control_L|Y
Shift_L, Down, Control_L|E
None, Up, Page_Up
None, Down, Page_Down

“^VIM”
Shift_L, Up, Control_L|Y
Shift_L, Down, Control_L|E
None, Up, Page_Up
None, Down, Page_Down

“^Eterm”
Alt_L, Up, Shift_L|Page_Up
Alt_L, Down, Shift_L|Page_Down

“^GnomeTerminal”
@Exclude
@Repeat
None, Up, Shift_L|Page_Up
None, Down, Shift_L|Page_Down

“^NXTerm”
None, Up, Shift_L|Page_Up
None, Down, Shift_L|Page_Down

“^rxvt”
Alt_L, Up, Shift_L|Page_Up
Alt_L, Down, Shift_L|Page_Down

“^XTerm”
Alt_L, Up, Shift_R|Page_Up
Alt_L, Down, Shift_R|Page_Down
Alt_L, Left, Control_L|A
Alt_L, Right, Control_L|E
#Shift_L, Down, Shift_L|1

“^konqueror.*”
None, Up, Alt_L|Left
None, Down, Alt_L|Right

“^Mozilla.*”

If you want to scroll by a few lines then uncomment these 4 lines

and comment out the paging 4 lines below these!

#Shift_L, Down, Page_Down, 1, 1000, 1000
#Shift_L, Up, Page_Up, 1, 1000, 1000
#None, Down, Down, 7, 1000, 1000
#None, Up, Up, 7, 1000, 1000

If you don’t like page scrolling then comment these out and uncomment above!

None, Up, Alt_L|Left
None, Down, Alt_L|Right
Shift_L, Down, Down, 7,
Shift_L, Up, Up, 7,
None, Down, Page_Down, 1,
None, Up, Page_Up, 1,

Left/Right & Thumb stuff

None, Left, Left, 7,
None, Right, Right, 7,
#None, Thumb1, Down, 7,
#Shift_L, Thumb1, Up, 7,
#None, Thumb2, Up, 7,
#Shift_L, Thumb2, Down, 7,

“^SDL_App”
, Up, Button4
, Down, Button5
, Thumb1, Home #many apps don’t understand Button > 5
, Thumb2, End #many apps don’t understand Button > 5

Thanks to shewp shewplx@pblx.net

“^Opera”
#@Repeat # let qt do it
None, Down, Down, 4, 100, 100
None, Up, Up, 4, 100, 100
None, Thumb1, Right
None, Thumb2, Left

“^Netscape”

If you want to scroll by a few lines then uncomment these 4 lines

and comment out the paging 4 lines below these!

#Shift_L, Down, Page_Down, 1, 1000, 1000
#Shift_L, Up, Page_Up, 1, 1000, 1000
#None, Down, Down, 7, 1000, 1000
#None, Up, Up, 7, 1000, 1000

If you don’t like page scrolling then comment these out and uncomment above!

Shift_L, Down, Shift_L|Down, 7, 1000, 1000
Shift_L, Up, Shift_L|Up, 7, 1000, 1000
None, Down, Page_Down, 1, 1000, 1000
None, Up, Page_Up, 1, 1000, 1000

Left/Right & Thumb stuff

None, Left, Left, 7, 1000, 1000
None, Right, Right, 7, 1000, 1000
None, Thumb1, Down, 7, 1000, 1000
Shift_L, Thumb1, Up, 7, 1000, 1000
None, Thumb2, Up, 7, 1000, 1000
Shift_L, Thumb2, Down, 7, 1000, 1000

“^Navigator”
#Alt_L, Down, Alt_L|Right
#Alt_L, Up, Alt_L|Left
Alt_L, Down, Right, 10, 1000, 1000
Alt_L, Up, Left, 10, 1000, 1000

Thanks to Paul J Collins sneakums@usa.net

“^emacs”
Shift_L, Up, Page_Up
Shift_L, Down, Page_Down

you may need Alt instead of Meta…

None, Down, Control_L|Meta_L|Shift_L|parenright
None, Up, Control_L|Meta_L|Shift_L|parenleft

Thanks to etienne grossmann etienne@isr.ist.utl.pt

“^Xftp”
, Down, j
, Up, k

Thanks to etienne grossmann etienne@isr.ist.utl.pt

“^gv”
None, Up, Shift_L|space
None, Down, space

“^Event Tester”
@Repeat
@Exclude

“^xv grab”
@Priority=1
@Exclude

“^XV.*”
None, Down, Tab
None, Up, Delete

“^Untitled”

if using wheel fifo, you may switch these.

#, Up, Button4
#, Down, Button5
#with these
, Up, Page_Up
, Down, Page_Down

(end of switch)

, Thumb1, Home
, Thumb2, End

“^No Title”

if using wheel fifo, you may switch these.

#, Up, Button4
#, Down, Button5
#with these
, Up, Page_Up
, Down, Page_Down

(end of switch)

, Thumb1, Home
, Thumb2, End

“(null)”

if using wheel fifo, you may switch these.

#, Up, Button4
#, Down, Button5
#with these
, Up, Page_Up
, Down, Page_Down

(end of switch)

, Thumb1, Home
, Thumb2, End

Uncommment the following to exclude by default.

Then you will have to add new apps all the time, but will retain any built-in

wheel functionality contained in some KDE and other newer programs.

This kinda defeats the original purpose of the program! :wink:

#".*"
#@Priority=-1000
#@Exclude
#@Repeat

These are the defaults, but note that the defaults for the right side of the

keyboard are still handled within the program, unless you add the

combinations desired here. (except for the None modifier of course!)

If this section is deleted then the hardcoded defaults will be used, which

are the same thing.

Modifying these has global effects, but doesn’t override what is above.

“.*”
@Priority=-1001
None, Left, Left
None, Right, Right
None, Up, Page_Up
None, Down, Page_Down
Shift_L, Left, Left
Shift_L, Right, Right
Shift_L, Up, Up
Shift_L, Down, Down
Control_L, Left, Left, 2
Control_L, Right, Right, 2
Control_L, Up, Page_Up, 2
Control_L, Down, Page_Down, 2
Shift_L|Control_L, Left, Left, 5
Shift_L|Control_L, Right, Right, 5
Shift_L|Control_L, Up, Page_Up, 5
Shift_L|Control_L, Down, Page_Down, 5
Alt_L, Left, Left, 10
Alt_L, Right, Right, 10
Alt_L, Up, Left, 10
Alt_L, Down, Right, 10
Shift_L| Alt_L, Left, Left
Shift_L| Alt_L, Right, Right
Shift_L| Alt_L, Up, Left
Shift_L| Alt_L, Down, Right
Control_L|Alt_L, Left, Left. 20
Control_L|Alt_L, Right, Right. 20
Control_L|Alt_L, Up, Left. 20
Control_L|Alt_L, Down, Right. 20
Shift_L|Control_L|Alt_L, Left, Left, 50
Shift_L|Control_L|Alt_L, Right, Right, 50
Shift_L|Control_L|Alt_L, Up, Left, 50
Shift_L|Control_L|Alt_L, Down, Right, 50

vim:ts=4:shiftwidth=4:syntax=sh

[/cpp]

vire imwheel

verifie les fonctions de tes boutons avec xev

molette : 4-5
Boutons du coté : 6-7

ton xmodmaprc est fauxen tout cas
et puis tu devrais avoir 7 boutons
Option “ZAxisMapping” “6 7”
Option “Buttons” “7”

dernière news, j’avais eu beaucoup de problèmes avec le lancement automatique au démarage … alors en fait, imwheel était déja lancé au démarage par un script dans /etc/X11/xinit.d/ , je l’ai modifié en commentant tout, et rajouté un script dans ce même repertoire faisant les xmodmap et imwheel …

dès que je me prends la motiv’, je fais un mini-howto :wink:

La MX 700 est supportée par le noyau 2.6.2 :slight_smile:

j’ai entendu dire ça, mais ça apporte quoi de plus ?

parceque là ele est supportée par le 2.4, il faut juste la configurer

up pour le mini-howto en 1er post’