不同屏幕上的不同窗口管理器?

Ano*_*ous 7 xorg window-manager

是否可以在不同的屏幕上运行不同的窗口管理器?

例如,我想在一个屏幕上运行一个平铺窗口管理器(例如 awesome),然后我想在另一个屏幕上运行一个堆叠窗口管理器(例如 Compiz)。

Gil*_*il' 6

是的,这是可能的。它需要窗口管理器的配合。窗口管理器应该在其命令行或配置文件中有一个选项来告诉它要管理哪个屏幕。例如,fvwm -s 0告诉 Fvwm 仅管理屏幕 0(默认情况下,Fvwm 与我所知道的每个窗口管理器一样,管理所有屏幕)。

如果您的窗口管理器没有提供不管理所有屏幕的方法,我认为没有办法从外部强制它。您需要修改源代码。关键的变化涉及这样的一行:

XSelectInput(dpy, RootWindow(dpy, screen_num), SubstructureRedirectMask);
Run Code Online (Sandbox Code Playgroud)

您只需要在一个屏幕上而不是在所有屏幕上执行这一行。根据窗口管理器的体系结构,这可能是一个微不足道的更改,也可能涉及大量额外的编码。

请注意,我假设您指的是 X Window 系统技术意义上的屏幕。如果您想要可以使用Ctrl+ Alt+在多个显示器之间切换,那就完全是另一回事了。此外,X 显示器上拥有多个屏幕的情况也相当罕见。我不会在这个答案中讨论为什么或如何做到这一点。Fn