我决定我想让我的大写锁定键表现为 ctrl 键,所以我添加XKBOPTIONS="caps:ctrl_modifier"
到我的/etc/defaults/keyboard
文件中。到目前为止,该文件具有以下内容:
XKBMODEL="pc105"
XKBLAYOUT="us"
XKBVARIANT="nodeadkeys"
XKBOPTIONS="caps:ctrl_modifier"
BACKSPACE="guess"
此外,重新启动后$ setxkbmap -query
返回
rules: evdev
model: pc105
layout: us
variant: nodeadkeys
options: caps:ctrl_modifier
正如预期的那样(pc105
因为它最初是德语键盘)。
但是,无论出于何种原因,这都没有按照我的意愿设置大写行为......如果我尝试手动运行,$ setxkbmap -option "caps:ctrl_modifier"
我会得到
Error loading new keyboard description
;无论我写什么选项,我都会遇到同样的错误。我还注意到,如果我$ setxkbmap -layout us
之后自己跑步,然后$ setxkbmap -option "caps:ctrl_modifier"
再次工作,现在 caps 可以按预期工作。
问题:我做错了什么,我该如何做对?
好的,我找到了问题的根源:它使用了一个额外的键盘(也许这与它是无线的事实有关,不确定)。
如果按照描述手动解决问题后,我会重新插入键盘 - 我会遇到同样的情况,
$ setxkbmap -option
但无法正常工作且大写无法正常工作。显然,在检测到键盘或类似的东西之前读取了配置。现在的问题是如何解决这个问题,但我想谷歌搜索会有所帮助。
现在我可以写一个小脚本
里面,并在重新启动后运行它(或者甚至可以将它放入
.bashrc
)。