目标:将Super_L
或Super_R
键分配为覆盖菜单的触发器。
环境:Gnome 3.26.2,Fedora 27,Dell XPS 9550,Kinesis Advantage2
原因:为了工作,我可以单独使用笔记本电脑,也可以与外部显示器,键盘和鼠标一起使用笔记本电脑。笔记本电脑键盘具有左超级键(Windows)和右超级键(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驱动的Super_R
替代方法)使用许多不同的语法策略来为org.gnome.mutter.overlay-key
值分配dconf-editor
和gsettings
,但是没有成功。
可以通过以下命令输出所有gsetting的列表: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_L
配置工具启用Super_R
或gsettings
来触发Fedora覆盖菜单?
我尝试过的格式不起作用: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'
任何提示,提示或建议,将不胜感激!
-信息学家
附言-我没有明确提及它,但是我确实详尽搜索了如何通过gsettings输入多值键绑定,但是无法找到我可以正确复制的示例。
参考文献:
通过mod4
确保我的超级键为xmodmap -pm
。 https://askubuntu.com/questions/5095/typing-using-key-combinations。
最佳答案
我认为如果键配置为字符串类型而不是字符串数组,则无法使用:
$ 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
进行此操作,但不确定如何操作。)