星期三, 2月 13, 2013

ibus override xmodmap, use xkb options instead

之前寫過一篇關於把 caps lock 重新 map 到 control 的方法,但昨天更新了 ibus 以後突然發現我的 xmodmap 只要切換輸入法引擎的時候就會被覆寫過去,google 了一下,大家似乎是推薦用 xkb 的設定選項來作調整:

Debian 來講的話,就是修改 /etc/default/keyboard
把 XKBOPTIONS 這行加入 ctrl:nocaps (有其他選項的話以逗號分隔)
XKBOPTIONS="ctrl:nocaps"
重新開 X 以後就可以囉!似乎是比 xmodmap 乾淨一些,但缺點就是這樣改到的是整個系統的設定,如果使用者要改就沒辦法了。 若沒有 root 的權限可以改 /etc/default/keyboard, 也可以在 ~/.xsession 加上:
setxkbmap -option "ctrl:nocaps" &
其他的選項可以參考 man xkeyboard-config, /etc/default/keyboard 相關的資訊: man keyboard

沒有留言: