Ubuntu 在哪里存储其键盘快捷键配置?

Jam*_*mes 38 keyboard shortcut-keys key-binding

“Ubuntu”中是否有一个地方可以存储键/组合/快捷键绑定到什么的完整列表?

Unity 的键盘和鼠标快捷键是什么?列出 Dash、Launcher 等的一些“Unity”快捷方式以及如何列出正在使用的 Compiz 键绑定?显示了一种列出 compiz 绑定的方法,但我正在寻找更多(不仅仅是仅限于 Unity 或 Compiz 的几个键绑定),尽管这是一个开始。

是否有使用中的键绑定/键组合/键盘快捷键的全局列表,它存储在 Ubuntu 中的某个地方,或者有没有办法编译和列出它们?一种适用于 Ubuntu 及其中运行的东西(Unity、Compiz、程序的快捷方式等)。

当然,Ubuntu 必须将它存储在某个地方,以便将键盘上按下的组合键定向到它所连接的对象?如果 Ubuntu 中没有这样的地方,那么发布一个答案,这样未来的用户,那个搜索,就会知道。

des*_*gua 23

自 Ubuntu 17.10

在这条路上

dconf dump /org/gnome/desktop/wm/keybindings/
dconf dump /org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/  # Custom
Run Code Online (Sandbox Code Playgroud)

您还可以使用dconf-editor(GUI) 或gsettings(CLI)。

从 Ubuntu 12.10-17.04 开始

~/.config/dconf/user(在 dconf-editor 中:(org.gnome.settings-daemon.plugins.media-keys.custom-keybindings自定义快捷方式)

~/.config/compiz-1/compizconfig

直到 Ubuntu 12.04

根据您使用的女巫桌面(gnome/unity、kde、xfce、lxde 等),快捷方式的放置方式不同。

对于 gnome,它们位于
~/.gconf/desktop/gnome/keybindings(自定义快捷方式)下

和下
~/.gconf/apps/metacity


Lak*_*lar 12

您的窗口管理器在应用程序之前获取任何关键事件,因此如果它想使用这些事件,它会这样做并且您的应用程序将永远不会收到它们。如果窗口管理器不想对按键事件本身做出反应,它会将它们传递给应用程序。

您可以通过以下方式自行验证:

  1. 启动终端。
  2. 开始xev | grep KeyPress,X 事件查看器。
  3. Alt,请注意xev显示它在其终端窗口中获​​得了关键事件。
  4. Ctrl,再次注意xev得到了事件。记下终端窗口现在的样子。
  5. Left arrow转到另一个工作区。(我假设您将其用作窗口管理器快捷键。)
  6. Right arrow返回到您正在跑步的地方xev。请注意,它从未收到您通过向左和向右箭头键切换工作区的任何关键事件——输出与第 4 步中的输出相同。

所以你会看到窗口管理器在实践中获取所有关键事件,如果它不想捕获它们,它会将它们传递给应用程序。然后,该应用程序对其自己的小部件执行相同的操作(例如,您可以Enter在 Web 浏览器中整天按,但直到您将光标放在地址栏或某些可以输入文本的字段中,它才会执行任何操作) .

由应用程序设置自己的快捷方式,应用程序彼此独立配置。

在 KDE 3.x 中,如果我没记错的话,您可以Ctrl-s在 KDE 控制中心设置默认快捷方式(例如用于保存),它将适用于所有使用 Qt 工具包编写的应用程序,但我不知道这是否仍然可能自从他们切换到 KDE 4。