Keyboard

大寫輸入定期打開

  • March 16, 2012

我有一些問題。每 3-5 秒,我從鍵盤輸入的所有內容都變成了大寫字母。我還有兩種鍵盤佈局:usua。當發生大寫時 - 我無法切換我的鍵盤佈局(我使用 mod4 進行切換)。

這是我的 xmodmap 輸出:

$ xmodmap
xmodmap:  up to 3 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),  Meta_L (0xcd)
mod2        Num_Lock (0x4d)
mod3      
mod4        Super_R (0x86),  Super_L (0xce),  Hyper_L (0xcf)
mod5        ISO_Level3_Shift (0x5c),  Mode_switch (0xcb)

我試過xmodmap -e "clear lock"了,但大寫輸入仍然會定期打開。我試圖以“硬體方式”禁用 Caps Lock 鍵,在鍵盤觸點之間放置絕緣體。但我沒有幫助。

*== 更新 ==*對於A#1

看,有粘性 Caps_Lock:

KeyPress event, serial 40, synthetic NO, window 0x2a00001,
   root 0xaa, subw 0x0, time 30893676, (-254,229), root:(384,359),
   state 0x2, keycode 39 (keysym 0x53, S), same_screen YES,
   XLookupString gives 1 bytes: (53) "S"
   XmbLookupString gives 1 bytes: (53) "S"
   XFilterEvent returns: False

我在做什麼?首先,我執行florence(Virtual Keyoards) 並關閉 Caps_Lock 鍵。其次,我輸入:xmodmap -e "clear lock"。但這是非常骯髒的 hack :),你知道的。它可以工作幾分鐘或幾個小時。

我插入了USB鍵盤。在 GRUB 菜單中,我添加到核心字元串中:(i8042.nokbd在 之後quiet)。

另外,如果您需要在工作時關閉筆記本鍵盤,請使用xinput

  • 首先執行xinput list,然後查找行與AT Translated Set 2 keyboard.
  • 然後xinput list-props 'AT Translated Set 2 keyboard'或使用 id (例如 14) xinput list-props 14
  • 查找Device Enabledxinput set-prop 'AT Translated Set 2 keyboard' 'Device Enabled' 0或使用 id xinput set-prop 14 134 0

您的Shift密鑰很可能被卡住了。嘗試按下並釋放您的Shift鍵(如果您有左鍵和右鍵,則兩者都可以)。如果您沒有註意到其他鍵卡住,這很可能是硬體問題。

發生問題時,執行xterm -e xev(您可能希望準備好圖示或菜單項,以便xev只需點擊滑鼠即可啟動)。當您在xev視窗中按下一個鍵時,您會看到如下輸出

KeyPress event, serial 32, synthetic NO, window 0x3000001,
   root 0xa5, subw 0x0, time 201838723, (221,316), root:(232,403),
   state 0x0, keycode 38 (keysym 0x61, a), same_screen YES,
   XLookupString gives 1 bytes: (61) "a"
   XmbLookupString gives 1 bytes: (61) "a"
   XFilterEvent returns: False

state 0x0表示沒有修飾符。使用Shift修飾符 down,您會看到state 0x1. (Lock又名 Caps Lock)修飾符是state 0x2; 更一般地說,當幾個修飾符被按下時,你會看到修飾符的位遮罩(例如state 0x5,如果你同時按下Shift(1) 和Ctrl(4))。如果問題仍然存在,請告訴我們xev輸出如何偏離您的預期。

引用自:https://unix.stackexchange.com/questions/23600