大寫輸入定期打開
我有一些問題。每 3-5 秒,我從鍵盤輸入的所有內容都變成了大寫字母。我還有兩種鍵盤佈局:us和ua。當發生大寫時 - 我無法切換我的鍵盤佈局(我使用 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 Enabled
和xinput set-prop 'AT Translated Set 2 keyboard' 'Device Enabled' 0
或使用 idxinput 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
輸出如何偏離您的預期。