星期五, 12月 07, 2007

設定 Logitech G5 in Linux(xwindow)

因為lloyd大大說他可愛的老婆說, 『不要因為便宜而買,然後嫌棄壞掉,還不如買好一點,用久一點來的划算』,於是就買了一支logitech的g5滑鼠, 但是linux下沒有windows上的setpoint driver, 所以就自己來了.

一插上就會自動有的功能包括左右中鍵滾輪上下跟硬體dpi設定,
不過滾輪向左向右水平滾動的功能未啟動,
另外大姆指鍵要自己做一些設定以符合自己的需求.

首先是/etc/X11/xorg.conf的基本配置


Section "ServerLayout"
Identifier "Default Layout"
Screen 0 "Screen0" 0 0
InputDevice "G5" "CorePointer"
InputDevice "Keyboard0" "CoreKeyboard"
EndSection

Section "InputDevice"
Identifier "G5"
Driver "evdev"
Option "Name" "Logitech USB Gaming Mouse"
Option "ZAxisMapping" "4 5"
Option "Emulate3Buttons" "no"
EndSection

再來是啟動大姆指鍵,將Xwindow中鍵貼上(2)功能bind在大姆指鍵(8), 此外預設的滾輪左右(67)是顛倒的(括號中的數字表按鍵編號):
~/.xmodmap

pointer = 1 8 3 4 5 7 6 2 9 10 11 12 13 14 15 16 17 18 19 20

最後則是啟動滾輪向左跟向右,讓他可以直接在我慣用的gnome terminal跟firefox裡移動分頁. 並在gnome-terminal裡將滾輪中鍵貼上的功能換成剪貼簿的貼上(即一般的Ctrl+V而非大姆指key的xwindow中鍵貼上)

~/.xbindkeysrc.scm

(xbindkey '("b:6") "/usr/bin/xvkbd -xsendevent -text '\\[Control_L]\\[Page_Up]'")
(xbindkey '("b:7") "/usr/bin/xvkbd -xsendevent -text '\\[Control_L]\\[Page_Down]'")
(xbindkey '("b:8") "/usr/bin/xvkbd -window gnome-terminal -xsendevent -text '\\[Control_L]\\[V]'")


另外還有在firefox中調整滾輪的速度, 首先先在網址頁輸入about:config,
然後找到mousewheel.withnokey.sysnumlines 設為false
mousewheel.withnokey.numlines則設為6行或你喜歡的數字.

如果以下3個套件沒裝的話要另外裝:
x11-misc/xbindkeys x11-misc/xvkbd x11-drivers/xf86-input-evdev
(xbindkeys最好將guile的use flag打開, 若需要預設設定檔可以用xbindkeys -dg > ~/.xbindkeysrc.scm 來初始化 真的看不習慣scheme/lisp的人可以考慮使用基本的config: xbindkeys -d > ~/.xbindkeysrc, 當然scheme設定檔會稍微彈性一點)

另外xmodmap ~/.xmodmap跟xbindkeys要設成在打開xwindows時啟動.

2 則留言:

使徒提姆 !? 提到...

將我的x11-drivers/xf86-input-evdev更新至2.1.2後,預設滾輪向左跟滾輪向右顛倒的bug就解決了, 反而我的.xmodmap要更改成pointer = 1 8 3 4 5 6 7 2 9 10 11 12 13 14 15 16 17 18 19 20, 否則會是剛好相反.

使徒提姆 !? 提到...

G5控制+跟-兩個DPI buttons的作法可以參考這篇~~