在 Ubuntu 13.10 中,使用 setxkbmap 所做的更改会在一两分钟后重置。多年来,我一直使用 setxkbmap 修改 Ubuntu 的键盘设置,升级到 13.10 后,更改不会持续超过几分钟。
这不是重复的。我特别想问为什么在 Ubuntu 13.10 中使用 setxkbmap 所做的更改会在一两分钟后重置。我不是问如何使用其他程序(如 xmodmap、xbindkeys 等)切换密钥。
答案1
侏儒
Gnome 保留 xkb 选项。
使用
dconf-editor
→ 跟随路径/org/gnome/desktop/input-sources
将需要的布局放入
sources
,例如:[('xkb','us'),('xkb','ara')]
添加
setxkbmap
选项到xkb-options
,例如:['grp:rshift_toggle', 'grp:rctrl_switch']
Unity 与 Gnome
xkb 设置似乎被 Unity/Gnome 设置守护进程重置(定期或单击更改布局时)或当使用布局切换快捷方式时。
上述方法可能不起作用。因此,这应该完全禁用设置守护进程布局控制功能。在 Ubuntu Unity 15.10 上测试。
重命名设置守护进程的键盘插件以禁用它。
sudo mv /usr/lib/unity-settings-daemon-1.0/libkeyboard.so /usr/lib/unity-settings-daemon-1.0/libkeyboard.so.disabled
重新启动设置守护进程
restart unity-settings-daemon
笔记:
- Ubuntu <= 13.10,Gnome 和 Unity 使用相同的守护进程(
gnome-settings-daemon
)。 - Ubuntu >=14.10,Gnome 有
gnome-settings-daemon
,Unity 有unity-settings-daemon
答案2
我尝试了所有方法但都没有用,然后我发现我使用的键盘布局指示器(gxkb
)有它自己的配置~/.config/gxkb/gxkb.cfg
!
[xkb config]
group_policy=2
default_group=0
never_modify_config=false
model=pc105
layouts=us,ru
variants=,
toggle_option=grp:shift_caps_switch,nbsp:none,shift:both_capslock
compose_key_position=
所以对我来说这不是 Gnome/Unity 的问题,而是 gxkb 的配置问题。