有没有办法找到应用程序使用的所有 X 资源?

bbu*_*ser 10 xorg x11 resources

我正在寻找一种方法来自动列出应用程序中使用的所有X 资源。给你举个例子,对xterm我期望类似于以下,但与列表全部由使用的资源 xterm

 background
 foreground
 cursorColor
 vt100.geometry
 scrollBar
 scrollTtyOutput
 ...
Run Code Online (Sandbox Code Playgroud)

该方法可以在应用程序的源代码上工作,但如果可以仅使用应用程序二进制文件来完成,那也会很有趣。

Gil*_*il' 15

您可以使用editres探索现有窗口的资源。这是一个交互式程序,可让您浏览资源树,并通过单击应用程序中的小部件来查找该小部件在该树中的位置。如果应用程序支持,您甚至可以修改资源。然而,这要求应用程序支持 Editres 协议,即使在使用 X 资源的应用程序比例越来越低的情况下,这种协议也不常见。此外,GUI editres 客户端是我所知道的唯一知道如何发送 Editres 查询的应用程序,因此没有命令行列表。

您可以使用appres查看为特定应用程序定义的资源设置 。该应用程序可能支持其他设置。这与xrdb -query仅列出用户明确重载的设置不同(appres 还列出系统默认值)。