找到给定窗口的 X Atom?

找到给定窗口的 X Atom?

使用密集波管理作为我的窗口管理器ArchLinux我没有任何补丁来处理上下文菜单或“右键单击”功能。

既然如此我决定写一篇简洁的重击运行的别名xclip(我稍后可以使用它重新映射到鼠标按钮)库输入等等)。

我现在的问题是,我正在尝试将我的选择重定向xclip到特定窗口,但我没有找到如何获取X 原子到目前为止的任何命令。

我已经尝试过xpropxwininfo但返回的数据均不匹配原子

任何帮助或见解表示赞赏。

答案1

xprop(1)当将原子的名称作为参数给出时,返回原子。例如,执行

xprop WM_PROTOCOLS

并单击英石窗口返回:

WM_PROTOCOLS(ATOM): protocols  WM_DELETE_WINDOW

做同样的事情,然后点击 Ungoogled Chromium 窗口给出

WM_PROTOCOLS(ATOM): protocols  WM_DELETE_WINDOW, _NET_WM_PING, _NET_WM_SYNC_REQUEST

要以编程方式返回给定其名称的原子,可以使用 Xlib 函数X内部原子(3)

中的一个X.Org 应用程序xlsatoms,其中列出了 X 服务器上定义的所有原子。正如 @meuh 提到的,有一个用 Python 编写的版本,包含在包中python-xlib在目录中例子

相关内容