Xmodmap

如何使用 Xmodmap 可移植且冪等地將 Caps Lock 映射為撰寫鍵?

  • October 8, 2014

我似乎找不到Caps Lock正確用作撰寫鍵的方法。有些方法是不可移植的,因為它們要求您xev在每個主機上使用類似的東西來檢測密鑰編號。其他方法會導致 a ~/.Xmodmapwhich 不能xmodmap多次傳遞而不會出現bad keysym類似錯誤。這使得很難測試對文件的更改。有沒有辦法做到這一點~/.Xmodmap

您遇到冪等性問題,因為您使用keysym的是keycode. 可以將keycode其視為對功能的鍵分配,而keysym只是從功能名稱到實際功能的連結。

當您按如下方式使用keysym時:

keysym Caps_Lock = Multi_key

你基本上刪除了名字Caps_Lock。因此,下次您執行xmodmap並在同一行中引用Caps_Lock時,它會變得混亂。

正確的做法是直接重新分配鍵碼,如下所示:

keycode 66 = Multi_key

例如,您可以從xev命令中獲取密鑰程式碼。

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