linux中如何使用微軟鼠標(biāo)的第4、5鍵
雖說使用linux的人大都對微軟沒什么好感,但不能否認(rèn)微軟確實(shí)也出了不少好東西呀,比如微軟鼠標(biāo)(IE系列) icon_smile.gif IE 2.0和以上版本都有5個(gè)按鈕,除了正常的左中右外,兩側(cè)還各有一個(gè),在windows中可用來支持瀏覽器的前進(jìn)/后退功能很是方便。其實(shí)在linux中稍加配置也能完成同樣的功能,為什么不呢?
本文引用地址:http://butianyuan.cn/article/148081.htm(一)先解釋一下linux中對鼠標(biāo)按鈕和滾輪的處理。
在linux中,滾輪被當(dāng)作兩個(gè)按鈕來處理,向上滾是一個(gè),向下滾是另一個(gè)。所以以IE2.0為例,一共有7個(gè)按鈕:左中右三個(gè),兩側(cè)各一個(gè),加上滾輪兩個(gè)。
(二)修改X配置
首先我們考慮你的機(jī)器只有一個(gè)鼠標(biāo)的情況,因?yàn)槲业膶?shí)驗(yàn)是在IBM筆記本上進(jìn)行的,微軟鼠標(biāo)是我的第二個(gè)鼠標(biāo)(別忘了,筆記本自己還有一個(gè)呢),這種多于一個(gè)的情況有些復(fù)雜,稍后再敘述。
需要修改的配置文件 /etc/X11/XF86Config,或者 /etc/X11/XF86Config-4,如果兩個(gè)都有就改第二個(gè)。
找到關(guān)于鼠標(biāo)的一段,一般是下面這樣的。
代碼:
Section InputDevice
Identifier Mouse0
Driver mouse
Option Device /dev/mouse
Option Protocol IMPS/2
Option Emulate3buttons no
Option ZAxisMapping 4 5
Option Buttons 5
EndSection
其中 Identifier 和 Device字段各人的機(jī)器會不一樣,我們也不用管它。我們需要修改的是其他字段,修改后的配置如下:
代碼:
Section InputDevice
Identifier Mouse0
Driver mouse
Option Device /dev/mouse
Option Protocol ExplorerPS/2
Option Emulate3Buttons no
Option ZAxisMapping 6 7
Option Buttons 7
EndSection
說明:
Option Device 字段說明鼠標(biāo)的類型,這里改成微軟鼠標(biāo)的類型,如果是其它型號的鼠標(biāo),比如邏技,只要型號代碼填寫正確也應(yīng)可行。至于普通的5鍵鼠標(biāo),用IMPS/2行不行,我沒試過;
Option Buttons 字段說明鼠標(biāo)的按鈕個(gè)數(shù),計(jì)算方法前面說過了;
Option ZAxisMapping 字段說明將滾輪映射成哪兩個(gè)按鍵,這里也是比較有意的地方,無論你的鼠標(biāo)有幾個(gè)按鈕,正常的情況應(yīng)該是 4 5??墒荴只能認(rèn)識最后的兩個(gè)按鈕為鼠標(biāo),所以必須改成6 7,而造成的后果就是:左右兩側(cè)的按鈕成了滾輪,滾輪成了兩側(cè)的按鈕,不過不要害怕,下面自有辦法解決icon_smile.gif
(三)重新啟動(dòng)X
配置修改好了,重新啟動(dòng)X,看看我們的成果。在命令行下輸入 xev 進(jìn)行測試。
把鼠標(biāo)移到那個(gè)小窗口中,分別按鼠標(biāo)的各個(gè)按鈕和上下滾動(dòng)滾輪,窗口中應(yīng)該出現(xiàn)button 1,button 2, ... button 7的字樣。(注意:按下去時(shí)沒有,必須釋放才有,這是鼠標(biāo)的工作原理,呵呵)
如果你能看到button 1 ... button 7,恭喜即將大功告成了。
現(xiàn)在我們還要解決滾輪和兩側(cè)按鈕倒置的問題。在命令行中輸入
代碼:
xmodmap -e pointer = 1 2 3 6 7 4 5
將倒置的按鈕順序重新“正”過來!至此所有的設(shè)置完成,找個(gè)支持4、5鍵的流覽器來看看,比如 Firefox 。
怎么樣,在linux下面,你也能方便的“前進(jìn)”,“后退”了吧。
下面再談?wù)勂渌膯栴}。
(一)由于每次啟動(dòng)X后都需要手工執(zhí)行xmodmap -e pointer = 1 2 3 6 7 4 5,怎么才能自動(dòng)執(zhí)行呢?
這個(gè)本不屬于本文討論的范圍,可考慮到使用的方便還是,我還是來寫一點(diǎn)吧。
由于這個(gè)命令必須在每次啟動(dòng)X后執(zhí)行,將它寫在.bashrc等文件中是沒有用的。有的系統(tǒng).xinitrc或者.xsession也不行。似乎問題很復(fù)雜,不同的linux發(fā)型版本和桌面系統(tǒng)都不一樣。
我以RedHat為例來說一下。
如果你使用Gnome,這么做:在自己的目錄下建一個(gè)可執(zhí)行腳本,比如叫mouse.sh
代碼:
#!/usr/bin/bash
xmodmap -e pointer = 1 2 3 6 7 4 5
保存后別忘了chmod +x mouse.sh
進(jìn)入gnome,在設(shè)置-〉其它設(shè)置 中找到session,把mouse.sh加到啟動(dòng)程序中即可。
如果你使用KDE,在自己的目錄下建一個(gè).kdestart文件,同樣寫上
代碼:
#!/usr/bin/bash
xmodmap -e pointer = 1 2 3 6 7 4 5
即可。
(二)如何在多于一個(gè)鼠標(biāo)的系統(tǒng)上(比如IBM筆記本)正確配置呢?
配置其實(shí)是一樣的,可問題在于xmodmap似乎只支持CorePointer,即第一個(gè)鼠標(biāo),這樣默認(rèn)的配置,你的微軟鼠標(biāo)滾輪是左右兩側(cè)鍵,“正”不過來了。
我的解決辦法是人工的禁止筆記本上自帶的那個(gè)鼠標(biāo),(不知道將USB鼠標(biāo)設(shè)置成CorePointer行不行,我沒試過,嘿嘿)。
linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)
linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)linux相關(guān)文章:linux教程
評論