Gnome 3 - dconf / gsettings - 如何分配多个键绑定?

Inf*_*ian 6 gnome fedora gnome-3 gsettings

目标:将Super_LSuper_R键都指定为覆盖菜单的触发器。

环境:Gnome 3.26.2、Fedora 27、Dell XPS 9550、Kinesis Advantage2

原因:工作时,我单独使用笔记本电脑或与外接显示器、键盘和鼠标一起使用。笔记本电脑键盘有一个左超级 (windows) 键,没有右超级 (windows) 键。但是,外接键盘有一个右超级(windows)键,但没有左超级(windows)键。

目前,每次在单独使用笔记本电脑或使用外部设备(或执行等效操作:)之间切换时,我都必须打开gnome-tweak-tooldconf-editorSuper_LSuper_R键之间切换。gsettingsgsettings set org.gnome.mutter overlay-key 'Super_{L/R}'

状态:我尝试使用许多不同的语法策略,通过基于 GUI 的工具(以及通过 CLI 驱动的替代方案)分配 theSuper_LSuper_Rfororg.gnome.mutter.overlay-key值,但没有成功。dconf-editorgsettings

可以通过以下命令输出所有 gsettings 的列表:gsettings list-recursively > gsettings.txt. 根据此文件,多键值的适当语法如下:['value1', 'value2']. 但是,尝试根据此格式 ( gsettings set org.gnome.mutter overlay-key ['Super_L', 'Super_R'])设置值会产生gsettings用法菜单,暗示命令格式无效。

我不太关心使用基于 GUI 的dconf-editor最终,我将使用配置管理软件gsettings为我执行配置(通过)(我Chef用来构建和配置我的笔记本电脑)。

问题:如何使用配置工具启用两者Super_LSuper_R触发 Fedora 覆盖菜单gsettings

我尝试过的格式不起作用:

  • dconf write /org/gnome/mutter/overlay-key
  • gsettings set org.gnome.mutter overlay-key

  • "['Super_L','Super_R']"
  • "['Super_L', 'Super_R']"
  • ['Super_L','Super_R']
  • ['Super_L', 'Super_R']
  • 'Super_L','Super_R'
  • 'Super_L', 'Super_R'

任何提示、提示或建议将不胜感激!

-- 信息员

PS - 我没有明确提到它,但我确实详尽地搜索了如何通过 gsettings 输入多值键绑定,但无法发现我可以毫无错误地复制的示例。

参考资料

Jim*_*ker 0

我认为如果将键配置为字符串类型而不是字符串数组,则这不起作用:

$ gsettings range org.gnome.settings-daemon.plugins.media-keys volume-up
type s
$ gsettings range org.gnome.settings-daemon.plugins.media-keys custom-keybindings
type as
Run Code Online (Sandbox Code Playgroud)

但是自定义键绑定数组可以解决这个问题!

您可以在键盘快捷键 UI 中找到它,并设置另一个键以使用诸如 之类的命令调高音量amixer -D pulse sset Master 5000+

请注意,如果我可以使用百分号,这会更容易,但由于某种原因这不起作用,您必须使用像 5000 这样的大数字。尝试一下。

(我怀疑你可以用 来做到这一点gsettings,但我不确定如何做。)