Debian
在啟動時執行命令以交換大寫鎖定和 ctrl
我有點困惑為什麼這沒有按預期工作。我的目標是將大寫鎖定鍵映射到控制。我正在使用debian。為此,我使用以下命令
/usr/bin/setxkbmap -layout "$(setxkbmap -print | awk -F + '/xkb_symbols/ {print $2}')" -option ctrl:nocaps
如果我通過終端執行它,它工作得很好。但是,我希望在啟動或登錄時完成此操作,並始終手動執行。我嘗試將此命令添加到 XFCE 中的自動啟動會話應用程序中,並將該命令放入我的
~/.profile
. 但是,這兩種選擇似乎都不起作用。我仍然必須手動執行它(在正確映射之後)。我究竟做錯了什麼?
該
setxkbmap
命令在添加後沒有 的原因是該文件僅在登錄shell 啟動~/.profile
時才由您的 shell(可能是 bash)讀取。在終端仿真器中不啟動登錄 shell。如果您使用,則添加到您的,但係統上有更好的方法可用- 修改您的部分,例如:X``setxkbmap``~/.bashrc``Bash``debian``XKBOPTIONS``/etc/default/keyboard
root@debian:/home/ja# cat /etc/default/keyboard # KEYBOARD CONFIGURATION FILE # Consult the keyboard(5) manual page. XKBMODEL="pc105" XKBLAYOUT="us" XKBVARIANT="" XKBOPTIONS="ctrl:nocaps" BACKSPACE="guess"
現在按照以下說明執行此命令
man 7 keyboard
:udevadm trigger --subsystem-match=input --action=change
您甚至不必重新啟動
lightdm
。下次lightdm
啟動時/etc/default/keyboard
將自動應用設置。我剛剛在我的Debian 9.4
.