我创建了一个 udev 规则来设置 USB 键盘的布局:
ACTION=="add", ATTRS{idVendor}=="0e6a", ATTRS{idProduct}=="030c", ENV{XKBMODEL}="pc105", ENV{XKBLAYOUT}="us", ENV{XKBVARIANT}="dvorak", ENV{XKBOPTIONS}=""
它在仅启动终端的 X 调试会话中工作。USB 键盘获得布局,而笔记本电脑键盘没有。
它在 Gnome(非 Unity)会话中不起作用。外接键盘的布局dk
与笔记本电脑键盘相同。
我都试过了
gsettings set org.gnome.settings-daemon.plugins.keyboard active false
和
gsettings set org.gnome.desktop.input-sources sources '[]'
正如很多人所建议的那样,但没有成功。
答案1
(更新,这仅在 Xorg 会话中有效,在 Wayland 会话中无效)
它和Unity 1 版中的设置守护进程,现在它已随 Gnome(设置守护进程版本 3)一起改变
有时,我认为开发人员只是在与那些不想改变或需要低级定制的用户作斗争。Gnome 已经创建了额外的层。
禁用 Gnome 设置守护进程的键盘插件
只需移动
/usr/lib/gnome-settings-daemon/gsd-keyboard
或(在较新的版本中)到/usr/libexec/gsd-keyboard
其他地方即可禁用它。如果有人正在寻找其他插件,请检查:
dpkg -L gnome-settings-daemon
gnome-settings-daemon
需要重新启动或者只是重启。
副作用:Gnome 布局 GUI/快捷方式不起作用。可能最好使用较旧的 X 切换应用程序或setxkbmap ...
命令快捷方式。