keyboard-shortcuts - Ubuntu 17.10 gnome 键盘快捷键 Super-F1 无法重置为其他 GUI 操作

标签 keyboard-shortcuts gnome-3 ubuntu-17.10

我在我的 thinkpad x230i 记事本上安装了一个新的 Ubuntu 17.10。我将登录方法更改为 x11org gnome。登录后,如果我按 Super-F1,将启动 gnome 帮助窗口。我想将此键盘快捷方式更改为其他 GUI 操作。我做了什么:

  1. 我尝试通过“设置”-“设备”-“键盘”-“自定义”快捷方式进行更改, 但未能将 Super-F1 分配给自定义快捷方式项。

  2. 我也厌倦了通过编辑中的自定义快捷方式项来重置它 dconf 路径为/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0/binding 的编辑器, 虽然可以成功更改值,但当我按 Super-F1,gnome帮助仍然可以启动。

  3. 即使我删除了 gnome求救,快捷方式Super-F1还是不能分配给其他 GUI 操作。

最佳答案

简短的回答是:无法重新分配 <Super>+<F1>在 Gnome v3.21.9x+ 中。

长答案:从 Gnome 版本 3.21.90 开始,有一个硬编码 Super+F1 分配给 Gnome Help,所以如果不重新编译 gnome-settings-daemon 就不能重新分配这个组合键。 (更具体地说,是 gsd-media-keys 插件)。

根据 gnome-settings-daemon changelog :

===============
Version 3.21.90
===============
...
 Media keys:
    - Add Super+F1 as a hardcoded shortcut for launching Help
...


查看源代码(文件 .../plugins/media-keys/shortcuts-list.h )您会发现:

...
  { HELP_KEY, NULL, N_("Help"), "<Super>F1", GSD_ACTION_MODE_LAUNCHER },
...

我能够成功地重新编译 gnome-settings-daemon 二进制文件,但是我花了几个小时才让一切正常。我写了一个detailed step-by-step ,但这里有一个总结:

  1. 下载并安装Gnome Builder

  2. “克隆”位于 https://gitlab.gnome.org/GNOME/gnome-settings-daemon 的官方仓库

  3. 转到您下载 repo 的目录,并使用 git checkout tag/GNOME_SETTINGS_DAEMON_3_28_1 检查您的特定版本(确保这与您的版本相匹配;使用 gnome-shell --version 检查您运行的 Gnome 版本,并使用 git tag -l 检查所有可用的标签)。

  4. 安装依赖:

    apt install libcolord-dev, \
                libgeocode-glib-dev, \
                gnome-desktop3-data, \
                libgweather-3-dev, \
                libcanberra-gtk3-dev, \
                libgeoclue-2-dev, \
                libnotify-dev, \
                libpulse-mainloop-glib0, \
                libpulse-dev, \
                gobject-introspection, \
                libupower-glib-dev, \
                libpolkit-gobject-1-dev, \
                libasound2-dev, \
                libgudev-1.0-dev, \
                libwacom-dev, \
                libnss3-dev, \
                libcups2-dev, \
                libnm-dev
    
  5. 修补文件./gnome-settings-daemon/plugins/media-keys/shortcuts-list.h ,通过在带有 Super+F1 的行前面添加注释(在第 69 行附近,对于 v3.28.x)

  6. 使用Builder重新编译

  7. 找到已编译的 gsd-media-keys二进制并在您的系统中替换(不要忘记在继续之前制作原始副本,以防您需要还原)

  8. 注销或重启,大功告成!

现在您可以正常地将 Super+F1 键重新分配给您想要的任何东西。

关于keyboard-shortcuts - Ubuntu 17.10 gnome 键盘快捷键 Super-F1 无法重置为其他 GUI 操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49685845/

相关文章:

Mac 上的 Eclipse : replace dialog - shortcut for replace all action

javascript - IE11的快捷键实现

macos - 在 Mac OS Big Sur 中从代码窗口切换到终端的 VS code 快捷方式

c++ - qt5.5不显示系统托盘

ubuntu - 事件概览未使用 xbindkeys 关闭

ubuntu - 如何在 gnome shell 的 libnotify 中自动隐藏错误消息?

ubuntu 17.10 上 rgdal 安装错误

android - 无法在 Android Studio 3.0.1 (Ubuntu 17.10 x64) 中使用 "Start a new Android project"

flash - 如何让 flex 仅在有用时才消耗鼠标滚动和键盘事件,否则将其传递给浏览器?

package - 在 Ubuntu 17.10 上安装 OpenMPI