我正在使用LXDE
并且在我的.config/openbox/lxde-rc.xml
操作中ALT-F4定义了:
<keybind key="A-F4">
<action name="Close"/>
</keybind>
Run Code Online (Sandbox Code Playgroud)
正如预期的那样,这适用于所有应用程序。当ALT-F4按下时,窗口被关闭。
我有一个应用程序,我们称之为foo
,我希望它不受ALT-F4. 即当ALT-F4按下时,我希望窗口保持打开状态(应该完全忽略该操作)。
是否可以创建这样的规则?
编辑:根据@Michael Homer
我在我的回答中添加了以下内容.config/openbox/lxde-rc.xml
:
<keybind key="A-F4">
<action name="If">
<title>foo</title>
<then>
<!-- Do nothing for foo -->
</then>
<else>
<action name="Close"/>
</else>
</action>
</keybind>
Run Code Online (Sandbox Code Playgroud)
这很好用,但我需要匹配foo
或bar
。
实现这一目标的最简单解决方案是什么?
可以使用If 操作:
<keybind key="A-F4">
<action name="If">
<title>* foo</title>
<then><!-- Do nothing for foo --></then>
<else>
<action name="Close" />
</else>
</action>
</keybind>
Run Code Online (Sandbox Code Playgroud)
该<title>
条件将匹配以“foo”结尾的窗口标题。有变化<title type="regex">
和<title type="exact">
其他类型的匹配。当窗口匹配时,操作什么也不做,当它不匹配时(对于每个其他窗口),它会像往常一样关闭。
Openbox 3.6 和更新版本包含额外的选择器标签<class>
, <name>
,<role>
如果标题不是唯一的,它们可以帮助更准确地识别您的窗口。它们支持与 相同的type
属性和内容<title>
,但会针对相关的 X 属性进行测试。
如果您使用的是较早版本的 Openbox 并且无法通过标题识别您的窗口,那么您的运气就不那么好了,但是可以通过以下方式破解某些内容xdotool
:将 A-F4 操作绑定到识别窗口的脚本更准确地说,然后发送一个密钥组合,如果不匹配,该组合将绑定到实际关闭操作。
归档时间: |
|
查看次数: |
3149 次 |
最近记录: |