自 14.04 起默认键盘切换键为Super+Space
我正在准备在数百台电脑上克隆的示例系统,并想分配另一个默认键来使用命令行切换布局。
我找不到此设置在 14.04 中定义的位置。
我搜索了/etc
,,dconf
但gconf
在全新安装的 Ubuntu 14.04 中找不到任何合适的配置。
此外,我希望使用 chef 管理此设置,以便将来支持幂等配置。所以我需要知道它存储在哪里。
帮我找到它存储的地方。
答案1
您可以通过以下方式更改此设置:系统设置 -> 键盘,然后转到快捷方式选项卡并选择打字在左侧。您要查找的设置是切换到下一个源。
此设置由 GSettings 存储。我认为这些设置存储在 中~/.config/dconf/user
,但这是由某些应用程序管理的数据库文件,我不会碰它。dconf
如果您想通过命令行进行更改,最好使用它来更改设置。
您可以使用它dconf watch /
来查看通过 GUI 更改 Ubuntu 系统设置时正在更改的设置。例如,如果我运行此命令,然后通过GUI将键盘切换器更改为Super+ ,则该命令输出:Tab
/org/gnome/desktop/wm/keybindings/switch-input-source
['<Super>Tab']
因此,您可以通过命令行发出以下命令将此开关更改为Super+ (作为示例)Tab
dconf write /org/gnome/desktop/wm/keybindings/switch-input-source "['<Super>Tab']"
答案2
抱歉,但我还需要更多,然后我会发布我自己的完整答案。这是我的完整解决方法:
首先创建一个覆盖文件:
sudo vim /usr/share/glib-2.0/schemas/60_orgname_custom.gschema.override
[org.gnome.desktop.wm.键绑定]
开关输入源=['you_keycode']
切换输入源向后=['you_keycode']
我
<Alt>Shift_L
使用<Alt>Shift_R
you_keycode
重新编译架构:
sudo glib-compile-schemas /usr/share/glib-2.0/schemas/