linux - 将程序的执行传递给另一个窗口管理器

标签 linux xserver x11 xmonad

我目前正在使用 Arch Linux 和 Xmonad,但它似乎不太适合我大学类(class)的 OpenGL 项目。目前,如果我知道我将要使用 OpenGL,我只是切换到另一个运行 Openbox 的 X 服务器并在那里完成我的所有工作,但是我会失去 Xmonad 的所有不错的平铺功能。

考虑到我是登录到两个 X 服务器的用户,有没有办法让我将 OpenGL 程序的执行从 Xmonad X 服务器传递给 Openbox X 服务器?这样,我只需要 Openbox X 服务器就可以正确运行 OpenGL 程序。

最佳答案

在您的 WM 中,环境变量 $DISPLAY 标识显示。不同的 X11 实例将有不同的 $DISPLAY 变量。

要找出您当前的 $DISPLAY:

echo $DISPLAY

例如,打印 :0

现在您可以为特定显示器启动程序:

DISPLAY=":1" someprogram

如果安全允许(引用,例如,man xhost),程序将在指定的 X11 显示器上打开。

关于linux - 将程序的执行传递给另一个窗口管理器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12938873/

相关文章:

c - 如果窗口内容更改,则自动截取 x 服务器的屏幕截图

c++ - 将 ncurses 键事件转发到 X11 窗口

c - "X11/Xlib.h": no such file or directory on mac os x mountain lion

Linux zip命令生成带有两个成功数字密码的归档文件

c - 我的 realloc 函数返回段错误

linux - 如果第一列中缺少一些数字,如何根据 “connectedness” 指标对值进行分组?

linux - 不同进程如何共享文件描述符?

ubuntu - 在 ubuntu 14.04 上默认阻止启动到桌面 GUI

python - 导入禁用图形的 Pandas

c++ - 使用 "X11/Xutil.h"库读取像素时发生内存泄漏(使用 valgrind 输出)