如何测试X窗口管理器

6

我曾尝试为X Window System编写自己的(简单但具有一些重要功能的)窗口管理器。但在完成了基础(非常简陋)之后,我遇到了测试的问题。我尝试在虚拟机上进行测试,但这种方式很不方便。那么,如何在不注销当前会话的情况下测试窗口管理器呢?


我无法在我的机器上运行两个X服务器(这可能吗?)。(VT是虚拟终端吗?) - drmgc
将“vt08”传递给X服务器,然后您就可以使用alt-ctrl-F8切换到它。 - Guntram Blohm
@DrMGC,拥有多个Xserver是完全可能的,我已经很久没有涉及这方面了,但是它们应该可以通过alt+ctrl+F8-9-10-11-12来使用,并且它们将获得自己特定的DISPLAY。 - Loïc Faure-Lacroix
2
我不明白为什么那个问题被关闭,理由是太宽泛了。要求已经清晰说明(如何在当前会话中测试窗口管理器而无需登出/登入),问题也很明显,可能的答案并不多,而且答案也不需要太长。 - jlliagre
3个回答

7

您可以在嵌套的 X 服务器中测试窗口管理器。Xnest 已经被 Xephyr 取代,因此我建议您使用后者进行实验。


@IgnacioVazquez-Abrams 我没有这样做是因为他不想要。Xephyr已经是一个X服务器了。楼主想要测试一个X窗口管理器。窗口管理器是一个X客户端,需要独占使用X服务器,但本身并不是X服务器。 - jlliagre
那会教训我不读书的。打卡下班回家 - Ignacio Vazquez-Abrams

1
另一种选项是在您的计算机上启动vnc服务器,并将您的DISPLAY变量设置为指向该服务器,以运行您的实验性窗口管理器。

0

你可以使用Xnest(似乎不是默认安装的,但至少有一个Debian软件包)。这允许你在当前显示器上的窗口中运行独立的X服务器。

过去,我曾经使用它来尝试或解决窗口管理器配置问题(只需启动Xnest,启动指向新X显示器的窗口管理器,你就可以在那里进行故障排除或实验,而不会危及你当前的会话)。


@IgnacioVazquez-Abrams 是的,我知道它是一个X服务器。它所“允许”的(比如“使可能”)是在X窗口中运行一个X服务器,而不是在帧缓冲区中运行。 - Vatine

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接