1) 偵測您要停用的鍵盤按鍵的鍵碼:

1) 偵測您要停用的鍵盤按鍵的鍵碼:

我的鍵盤損壞了,鍵盤鍵 [é] 總是被按下,這使我無法工作。在 Windows 上,我發現軟體 Sharpkey 可以停用 [é] 按鈕,但在 Ubuntu 上我找不到任何解決方案。在許多論壇上,他們談論 Xmodmap,但我無法在終端上工作,因為 [é] 按鈕經常被按下。請你給我一個解決這個問題的方法。謝謝

答案1

我會嘗試什麼:

  1. 連接 USB 鍵盤,或使用 ssh 進入機器。

  2. 打開終端,然後運行xev -event keyboard.它將在螢幕上顯示一些內容。如果省略參數,您會發現如果您移動滑鼠,它也會顯示更多內容。

  3. 然後,按您想要停用的組合鍵 [é]。螢幕上的信息會發生變化,您必須查找該keycode值。

  4. 運行類似這樣的操作,更改為您在上一個步驟中<value>獲得的值:keycode

    xmodmap -e 'keycode <value>='
    

    例如,如果我想停用該~鍵( Shift + ` ),我必須運行:

    xmodmap -e 'keycode 49='
    

我只嘗試過更多標準鍵,例如大寫鎖定……但我想它也應該適用於此。我希望這有幫助!

答案2

供我個人使用的簡單 bash 腳本已上傳至https://github.com/anitaggu/ikbdop

若要停用筆記型電腦的內部鍵盤,

./ikbdop.sh detach

再次啟用鍵盤

./ikbdop.sh attach

簡短的操作方法也上傳於Youtube

答案3

上述方法在 Wayland 上都不起作用。我不確定其他桌面環境,但禁用 sway-wm 上特定鍵盤上的特定鍵的最簡單方法是使用 keyd。然而,它需要終端,我建議您在移除實體鍵盤後使用 USB 鍵盤,直到完成為止。

  1. 從 GitHub 克隆 keyd,建立它並啟動守護程序。
git clone https://github.com/rvaiya/keyd
cd keyd
make && sudo make install
sudo systemctl enable keyd && sudo systemctl start keyd
  1. 找出有問題的按鍵和鍵盤的名稱。運作sudo keyd monitor得到這樣的東西:
device added: 0fac:0ade keyd virtual keyboard (/dev/input/event20)
device added: 03f0:5341 PIXART HP Wireless Keyboard and Mouse Consumer Control (/dev/input/event18)
device added: 03f0:5341 PIXART HP Wireless Keyboard and Mouse (/dev/input/event17)
device added: 03f0:5341 PIXART HP Wireless Keyboard and Mouse (/dev/input/event7)
device added: 06cb:7f13 Synaptics TM3253-001 (/dev/input/event5)
device added: 0001:0001 AT Translated Set 2 keyboard (/dev/input/event0)
keyd virtual keyboard   0fac:0ade   enter up
keyd virtual keyboard   0fac:0ade   kp5 down

我連接了兩個鍵盤。一個是PIXART HP Wireless03f0:5341,一個 是AT Translated Set 2 keyboard0001:0001。 keyd 使用這些代碼來識別您的鍵盤。因此,請記下下一步的程式碼和金鑰名稱。最後一列給出了鍵名稱。說到這裡,我離開enter並按下去kp5

  1. 將文件編輯/etc/keyd/default.conf為:
[ids]
0001:0001 #code of attached keyboard from earlier
[main]
kp5 = noop #Ignore the key 'kp5'
  1. 最後,sudo keyd reload

停用所有鍵盤上的特定鍵。將上面提到的編輯default.conf

[ids]
*
[main]
kp5 = noop

答案4

1) 偵測您要停用的鍵盤按鍵的鍵碼:

方法一:

此方法僅在您嘗試停用常規鍵而不是 F1、F2、F3...等時有效

當您閱讀此答案時,請右鍵單擊我的答案上的任意位置 -> 單擊檢查元素或者檢查,將此程式碼貼到安慰選項卡並按 Enter 鍵:

window.addEventListener('keypress', (e) => console.log(e.keyCode) )

用滑鼠左鍵再次點擊我的答案,然後按您要停用的鍵,您會注意到列印在安慰瀏覽器的。

複製該號碼並執行下一步。

方法B:

此方法應該適用於鍵盤上的每個鍵 打開終端xev,並如下使用該實用程式:

$ xev -event keyboard

將打開一個小窗口,按下鍵盤上要停用的鍵,然後關閉小窗口,您會注意到終端上的輸出,在這些輸出中,您會看到類似的內容keycode 93。複製該鍵盤按鍵的鍵碼並執行下一步。

2)停用該鍵:

打開終端xmodmap,並如下使用該實用程式:

xmodmap -e 'keycode <value>='
  • 代替上面的內容<value>,將其替換為關鍵程式碼您從步驟 1 中獲得了方法 A 或 B。

相關內容