6

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

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

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

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

状态:我尝试通过基于 GUI 的工具(以及通过 CLI 驱动的替代方法)使用许多不同的语法策略来分配值Super_LSuper_R值,但没有成功。org.gnome.mutter.overlay-keydconf-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 输入多值键绑定,但无法找到一个我可以复制而不会出错的示例。

参考资料

4

2 回答 2

1

以下过程使两个超级按钮都可以打开主面板菜单(尽管我正在Pop!_OS使用Gnome v3.38):

首先,打开 Gnome Tweaks(您可能需要安装它),导航到Keyboard & Mouse,然后将其设置Overview ShortcutLeft Super.

在此处输入图像描述

接下来,使用dconf editor或您的终端设置以下选项之一(同时设置两者将导致其中一个被忽略):

# Worked on Pop!_OS v20.10 with Gnome v3.38.2
gsettings set org.gnome.desktop.wm.keybindings panel-main-menu "['Super_R']"

# OR (don't set both)

# Worked on Pop!_OS v21.04 with Gnome v3.38.5
gsettings set org.gnome.settings-daemon.plugins.media-keys search "['Super_R']"

请注意,这将对快捷方式产生一些影响:此时,我的左侧超级键在与其他字符组合时起作用(例如:Super+m最大化),而右侧将始终只显示面板主菜单(或应用程序搜索菜单),无论组合键。您显然可以使用上述步骤来逆转这一点。

于 2020-12-21T02:00:10.197 回答
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

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

您可以在键盘快捷键 UI 中使用它并设置另一个键以使用类似amixer -D pulse sset Master 5000+.

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

(我怀疑你可以用 来做到这一点gsettings,但我不知道怎么做。)

于 2020-02-21T14:37:05.483 回答