Keyboard-Shortcuts

將右 alt 映射到左控制項

  • March 23, 2020

我想讓我的關鍵right alt工作像左控制一樣工作。所以我像這樣編輯了我的 evdev 文件:left control``left control

<LALT> = 64;
<LCTL> = 37; // original binding 37
<SPCE> = 65;
<RCTL> = 105;
<RALT> = 37; // original binding: 108

但是這不起作用,現在兩個鍵都不能作為ctrl. 我怎樣才能使這項工作?

您更改的鍵碼文件是一個 XKB 映射,它定義了在 XKB 佈局 ( <FOO>) 中使用的符號程式碼,由核心鍵盤驅動程序在按下鍵時發出的鍵碼。更改那裡的程式碼不會更改密鑰生成的程式碼,它會更改 XKB 佈局在看到更改後的符號時認為它正在處理的程式碼。

假設您可以將系統 XKB 文件恢復到其原始狀態,那麼 XKB 執行您想要的操作的方法是載入一個將覆蓋標準佈局的選項。現有的選項 ( ctrl:ralt_rctrl) 與您想要的很接近:

 # definition in /usr/share/X11/xkb/rules/evdev
 ctrl:rctrl_ralt       =       +ctrl(rctrl_ralt)
 # similar rule for swapped option?
 ctrl:ralt_rctrl       =       +ctrl(ralt_rctrl)

您可以使用以下命令載入setxkbmap

$ setxkbmap -option ctrl:ralt_rctrl

.xprofile如果這符合您的要求,您可以通過將該命令添加到或.xinitrc或您的視窗管理器的autorun腳本中使其永久化。在 GNOME 中,您可能需要其他步驟。

如果您仍然希望Alt_R重新映射 asCtrl_L而不是Ctrl_R,則需要創建一個本地覆蓋子句。使用現有選項作為起點;它在/usr/share/X11/xkb/symbols/ctrl。請參閱我關於 XKB 修改和一些其他資源的超級使用者回答:

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