X 正在使用 Xmonad 将我的两台显示器连接成一个大屏幕 - 如何避免它?

blu*_*ino 5 linux x11 xmonad

当我使用 i3 或 Gnome 时,每个显示器都有一个工作区/桌面,但在 XMonad 下,我的笔记本电脑屏幕和外接显示器连接为一个大屏幕(如图所示xdpyinfo

如何配置 X 使用两个屏幕而不是一个?

Ed *_*imm 0

感谢您告诉我有关 XMonad 的信息。它看起来是一个值得尝试的有趣的窗口管理器。正如我刚刚在您昨天发帖时才了解到的那样,而且我没有双显示器配置,我通常不会回答这个问题,但已经过去一天了,所以我想我至少会有一些答案。

在https://wiki.haskell.org/Xmonad/Frequently_asked_questions查阅其文档,我找到了https://hackage.haskell.org/package/xmonad-contrib-0.15/docs/XMonad-Layout-IndependentScreens.html的链接这显然告诉你如何真正做你想做的事。

您需要将类似以下内容添加到您的~/.xmonad/xmonad.hs文件中:

import XMonad.Layout.IndependentScreens
myConfig = def { workspaces = withScreens 2 ["name1", "name2"] }
Run Code Online (Sandbox Code Playgroud)

之后,该页面进一步解释如何设置键绑定以引用各个工作区。显然,默认配置文件中有一行用于键绑定:

    [((m .|. modm, k), windows $ f i)
Run Code Online (Sandbox Code Playgroud)

这需要更改为

    [((m .|. modm, k), windows $ onCurrentScreen f i)
Run Code Online (Sandbox Code Playgroud)

这就是我在没有实际使用过该页面的情况下所能了解到的全部内容。