ubuntu 17.10 gnome键盘快捷键Super-F1无法重置为其他gui动作

时间:2018-04-06 05:19:06

标签: 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,     虽然可以成功更改值,但是当我按下时     超级F1,侏儒帮助仍然可以启动。
  3. 即使我删除了     侏儒帮助,快捷方式Super-F1仍然无法分配给其他人     gui action。
  4. 请帮助我,谢谢你提前!

1 个答案:

答案 0 :(得分:1)

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

答案很长:从Gnome版本3.21.90开始,有一个硬编码分配Super + F1到Gnome帮助,因此如果不重新编译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. 上的官方回购
  4. 转到您下载回购的目录,并使用git checkout tag/GNOME_SETTINGS_DAEMON_3_28_1检查您的特定版本(确保这与您的版本匹配;请检查您使用gnome-shell --version运行的Gnome版本,以及git tag -l)提供的所有标签。

  5. 安装依赖项:

    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
    
  6. 修补文件./gnome-settings-daemon/plugins/media-keys/shortcuts-list.h,方法是在Super + F1的前面添加注释(第69行,v3.28.x)

  7. 使用Builder重新编译

  8. 找到已编译的gsd-media-keys二进制文件并替换您的系统(在继续操作之前,请不要忘记复制原始文件,如果您需要还原)

  9. 退出或重新启动,您就完成了!

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