我的 Dell Latitude 上有這種鍵盤佈局
Home
和End
鍵映射到複合鍵確實讓我很苦惱Fn
。所以我設法通過添加這個來交換PageUp
withHome
和PageDown
with (實際上,這是一個德語變體)End
/usr/share/X11/xkb/symbols/de
xkb_symbols "basic" {
...
key <HOME> { [ Prior ] };
key <PGUP> { [ Home ] };
key <END> { [ Next ] };
key <PGDN> { [ End ] };
...
}
它按預期工作。然而,我經常在筆記型電腦和辦公桌之間切換,使用擴充座和完整的鍵盤,這種駭客行為很煩人。
操作此 xkb 符號檔案需要重新啟動(或至少重新啟動桌面環境)。是否有可能在運行時切換行為?甚至可能是自動化的,就像 udev 鉤子看到 USB-C 底座一樣?
答案1
您可以使用 在佈局之間切換setxkbmap
。例如,我使用 Dvorak 佈局,我將您的變更套用到我的本地
/usr/share/X11/xkb/symbols/de
並切換到德語佈局:
setxkbmap de
我檢查了 PGUP 是否作為 Home 工作,確實如此。然後我又切換回德弗札克:
setxkbmap dvorak
如果您想在原始佈局和自訂佈局之間切換,我認為最好的方法是從原始佈局文件中刪除您在問題中顯示的 4 行de
並創建一個新的自訂佈局文件,例如/usr/share /X11/ xkb/symbols/de-modified 新增了修改。在兩種佈局之間切換無需重新啟動,也無需重新啟動 X:
setxkbmap de # PGUP wouldn't work as home
setxkbmap de-modified # PGUP would work as home