Openbox 中的 XF86 键绑定

Openbox 中的 XF86 键绑定

Lubuntu 使用 Openbox 作为其窗口管理器。~/.config/openbox/lubuntu-rc.xml是一个文件,其中指定了各种命令的键绑定等。

大多数键绑定都lubuntu-rc.xml使用修饰键,例如ControlShiftAltSuper

例如,打开终端窗口的一种方法是同时按下Control++ :AltT

<!-- Launch a terminal on Ctrl + Alt + T-->
<keybind key="C-A-T">
  <action name="Execute">
    <command>lxsession-default terminal</command>
  </action>
</keybind>

但还有这样的:

<!-- Keybinding for terminal button-->
<keybind key="XF86WWW">
  <action name="Execute">
    <command>lxsession-default terminal</command>
  </action>
</keybind>
<keybind key="XF86Terminal">
  <action name="Execute">
    <command>lxsession-default terminal</command>
  </action>
</keybind>

什么是keybind key="XF86WWW"keybind key="XF86Terminal"?如何在笔记本电脑键盘上找到这些键?我的笔记本电脑是 2008 年的戴尔 Inspiron N 1545。

答案1

这些键在 中定义/usr/include/X11/XF86keysym.h

请注意,如果您没有安装各种开发包或需要安装专有图形驱动程序,则 X11 包含文件可能不会安装在您的系统上。您还可以找到XF86keysym.h 在线

根据这个头文件,它们是XFree86 vendor specific keysyms

换句话说,这些键要么是特定键盘的一部分,要么不是。如果您看不到它们,则表示您的键盘没有它们。

这些键已在桌面配置文件中预定义(您可以在 Unity 中看到它们系统设置>>键盘>>快捷键以及,尽管 Unity 稍微重命名了它们)以方便用户,因为否则通常需要一些脚本来将操作附加到它们。

该文件还指出:

X.Org will not be adding to the XF86 set of keysyms, though they have 
been adopted and are considered a "standard" part of X keysym definitions.
XFree86 never properly commented these keysyms, so we have done our
best to explain the semantic meaning of these keys.

这里有两点需要注意。

  1. 这些键符是为了使 XFree86/Xorg 能够与各种硬件兼容而做出的尝试,但有些键符似乎有些过时。例如,计算器键属于名为:

    These are sometimes found on PDA's (e.g. Palm, PocketPC or elsewhere)
    
  2. 这些键符是标准的。它们被编译到各种xkb相关库中,因此无论系统中是否存在包含文件,都可以自动使用。但是,当然,您需要在键盘上物理上已经拥有发出相应键码的键。

如果您没有这些键,您当然可以将操作映射到其他键序列。由于这些键符号已内置于 Xorg 中,而默认操作已内置于 Ubuntu 中(通过lubuntu-rc.xmlupdate-alternatives,或许还有其他方式),因此这很容易做到。

例如,Ubuntu 使用这些键符在 Unity 和 Lubuntu 中提供计算器键,尽管标准桌面键盘极不可能有这个键。

我喜欢计算器按钮的想法,直到我在系统设置中看到这个选项之前我从来没有想过这一点。

在 Unity 中,我将计算器的快捷键更改为Ctrl+ /

在我也使用的 Lubuntu 中,我更改了

<keybind key="XF86Calculator">

<keybind key="C-slash">

XF86WWW您可以对和执行相同的操作XF86Terminal,但您无法为其中一个键分配单个按键(实际上,现在只是键的概念),除非您不想将重新映射的键用于其原始用途,并且您可能没有很多多余的键。

但是,举个例子,我从不使用menu键来右键单击。在 Lubuntu 中,我可以通过更改为 轻松将其变成终端启动器XF86Terminal。 (xml 文件使用 键的名称或键码。您可以在终端中使用,然后按下所需的键来Menu找到它们。)xev

有趣的是,在 Lubuntu 中,浏览器键的默认操作也是启动终端。要重新映射XF86WWW,您需要更改键的名称以及<command>...

相关内容