linux修改鍵盤按鍵

2021-06-20 08:49:36 字數 1836 閱讀 5828

我的電腦: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...