目标:将Super_L
或Super_R
键分配为叠加菜单的触发器。
环境:Gnome 3.26.2,Fedora 27,戴尔XPS 9550,Kinesis Advantage2
为什么:对于工作,我单独使用笔记本电脑或与外接显示器,键盘和鼠标配合使用。笔记本电脑键盘有一个左超级(windows)键,没有右超级(windows)键。但是,外部键盘有一个右超级(Windows)键,但没有左超级(窗口)键。
目前,每次我在单独使用笔记本电脑或使用笔记本电脑切换时,我必须打开gnome-tweak-tool
或dconf-editor
才能在Super_L
和Super_R
键之间切换外部设备(或执行gsettings
等效项:gsettings set org.gnome.mutter overlay-key 'Super_{L/R}'
)。
状态:
我试图通过基于GUI的Super_L
工具(以及通过CLI驱动的{{1})为Super_R
值分配org.gnome.mutter.overlay-key
和dconf-editor
使用许多不同的语法策略,但没有成功。
可以通过以下命令输出所有gsettings的列表:gsettings
。根据此文件,多键值的适当语法如下:gsettings list-recursively > gsettings.txt
。但是,尝试根据此格式(['value1', 'value2']
)设置值会产生gsettings set org.gnome.mutter overlay-key ['Super_L', 'Super_R']
用法菜单,这意味着命令格式无效。
我不太关心最终使用基于GUI的gsettings
,我将使用配置管理软件为我执行配置(通过dconf-editor
)(我使用{{1}构建和配置我的笔记本电脑。)
问题:
如何使用gsettings
配置工具启用Chef
或Super_L
来触发Fedora叠加层菜单?
我试过的格式不起作用:
Super_R
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']
任何提示,提示或建议都将不胜感激!
- Informatician
P.S。 - 我没有明确提到它,但我确实搜索了如何通过gsettings输入多值键绑定,但无法找到一个我可以无错误地复制的例子。
参考:
'Super_L','Super_R'
确保我的超级密钥'Super_L', 'Super_R'
适当。 https://askubuntu.com/questions/5095/typing-using-key-combinations。答案 0 :(得分: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
但是自定义键绑定数组可以解决问题!
您可以在键盘快捷方式用户界面中找到它,并使用amixer -D pulse sset Master 5000+
之类的命令设置另一个键来调高音量。
请注意,如果我可以使用百分号,则这样做会更容易,但是由于某些原因而无法使用,而必须使用5000之类的大数字。尝试一下。
(我怀疑您可以使用gsettings
来做到这一点,但不确定如何。)
答案 1 :(得分:0)
以下过程让两个超级按钮都可以打开主面板菜单(虽然我在 Pop!_OS v20.10
上使用 Gnome v3.38.2
):
Keyboard & Mouse
,并将 Overview Shortcut
设置为 Left Super
(如果尚未设置)。gsettings set org.gnome.desktop.wm.keybindings panel-main-menu "['Super_R']"
请注意,这会对快捷键产生一些影响:此时,我的左侧超级键在与其他字符组合时起作用(例如:Super+m
以最大化),而右侧将始终只显示面板主菜单,无论组合键。您显然可以使用上述步骤扭转这种情况。