linux修改鍵盤按鍵


我的電腦:Fedora-19

$ uname -a

Linux localhost.localdomain 3.11.10-200.fc19.i686 #1 SMP Mon Dec 2 20:48:22 UTC 2013 i686 i686 i386 GNU/Linux


使用xmodmap工具進行修改,使用man xmodmap,里面就有交換按鍵caplock(大小寫切換鍵)和右ctrl鍵的例子,

如果您的修改不同,可以做相應的替換即可。我就是參考這個例子對我的右Alt鍵和Ctrl鍵進行修改的。

下面先看man自帶的例子

       ! 
       ! Swap Caps_Lock and Control_L
       !
       remove Lock = Caps_Lock
       remove Control = Control_L
       keysym Control_L = Caps_Lock
       keysym Caps_Lock = Control_L
       add Lock = Caps_Lock
       add Control = Control_L

將上面的語句寫入文件,例如keymaprc,然后xmodmap keymaprc即可生效,

因為這個是交換鍵的功能,如果您執行第二次的話,按鍵就又會恢復回來的。

注意:這個修改只對當前有效,電腦重啟會失效,得重新輸入命令。


下面是我自己的修改,把keymaprc命名為隱藏文件: .keymaprc,放在$HOME目錄下。

$ cat ~/.keymaprc 
remove Control = Control_R
remove mod1 = Alt_R
keysym Control_R = Alt_R
keysym Alt_R = Control_R
add Control = Control_R
add mod1 = Alt_R

然后執行 $ xmodmap ~/.keymaprc

這樣就生效了


為了更加修改按鍵,不想很次都輸入xmodmap ~/.keymaprc這么長的命令,可以將命令寫入文本,放到$PATH路徑下,下面是我的做法

$ touch swkey

$ echo "xmodmap ~/.keymaprc" >  swkey

$ chmod +x swkey

$ sudo mv swkey /usr/bin

$ swkey  #現在想交換兩個按鍵就直接輸入這個命令,無論在什么路徑下都可以,也不用記文件路徑,會比較方便


備注:

alt對就MODIFIERNAME為mod1,可以在man文檔中找到其他的MODIFIERNAME,也可以直接xmodmap查看,window鍵應該對應mod4

$ xmodmap 
xmodmap:  up to 4 keys per modifier, (keycodes in parentheses):


shift       Shift_L (0x32),  Shift_R (0x3e)
lock        Caps_Lock (0x42)
control     Control_L (0x25),  Control_R (0x69)
mod1        Alt_L (0x40),  Alt_R (0x6c),  Meta_L (0xcd)
mod2        Num_Lock (0x4d)
mod3      
mod4        Super_L (0x85),  Super_R (0x86),  Super_L (0xce),  Hyper_L (0xcf)
mod5        ISO_Level3_Shift (0x5c),  Mode_switch (0xcb)


 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM