我的電腦: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)
linux鍵盤按鍵驅動
1.先來介紹以下幾個結構體使用和函式,下面 中會用到 1 input dev驅動裝置結構體中常用成員如下 struct input dev2.然後開始寫 1 向核心申請input dev結構體 2 設定input dev的成員 3 註冊input dev 驅動裝置 4 初始化定時器和中斷 5 寫中斷...
模擬鍵盤按鍵
模擬全域性按鍵可以用keybd event,sendinput來完成,下面是模擬一次caps lock 按鍵時兩個api函式的實現方法 keybd event keybd event vk capital,0,keyeventf extendedkey 0,0 key down keybd even...
模擬鍵盤按鍵
textbox1.focus sendkeys.send v 模擬鍵盤按鍵ctrl v 貼上 鍵 backspace 或或break caps lock del或delete 或向下鍵 endenter 或 esc help home ins或insert 或向左鍵 num lock page do...