我想镜像两个显示器(笔记本电脑和左显示器)并扩展第三个显示器(右显示器)。
如果这还不清楚,我发现了一个基本相同的问题如何在 GNOME Wayland 中“覆盖”/克隆显示其中包括一些方便的图像,显示两个显示器是镜像的并且一个是扩展的。
遗憾的是,唯一的答案是尝试手动操作。在 Xorg 下,这很容易做到,xrandr
所以我很失望在 Wayland / Ubuntu 22.04 中找不到简单的解决方案。
我找到了一个“手动”且相当丑陋的解决方案,但我希望有更好的方法。如果没有更好的选择,我最终会详细发布手动解决方案。简而言之,我~/.config/monitors.xml
在更改配置时多次保存,推断出哪个配置处于活动状态以及如何镜像两个显示器,编辑一个<logicalmonitor>
包含<monitor>
镜像的两个实例的单个配置,然后重新启动。
答案1
我在办公室又要这么做了,所以这里有一个(痛苦的)过程,可以作为一种解决方法。首先生成差异来找到要编辑的配置(我的monitors.xml
有 8 个配置,所以不容易发现要编辑什么)。为了使这更容易,最好将主显示器放在正确的位置。否则,很容易意外删除<primary>yes</primary>
,这会破坏解决方法。
cd ~/.config
cp monitors.xml monitors.xml.before
gnome-control-center # move a display and apply the changes
diff monitors.xml monitors.xml.before # to confirm/locate the change
成功更改 后<configuration>
,您可以查看差异以确定<configuration>
需要编辑哪个块。请注意,大多数diff
工具都不支持 xml,因此您可能会看到差异在 xml 块中间开始和结束(<x>...</logicalconfiguration></configuration><configuration><logicalconfiguration>
而不是<configuration><logicalconfiguration><x>...</logicalconfiguration></configuration>
)
编辑如下:
- 打开 ~/.config/monitors.xml
- 查找已编辑的部分
- 注意各
<logicalmonitor>
部分的偏移,并使用此信息找到放置错误的显示器。就我而言,我有两个显示器位于我想要的位置(在<x>0</x>
/<y>0</y>
和<x>1980</x>
/处<y>0</y>
),第三个显示器位于错误的位置(在<x>3840</x>
/处<y>830</y>
) <logicalmonitor>...</logicalmonitor>
剪切错误位置的整个部分并将其粘贴到第二个文档中(将其删除monitors.xml
并保留在下一步可访问的位置)- 仅复制
<monitor>...</monitor>
第二个文档中的部分 - 将从 #5 复制的内容粘贴到
<monitor>...</monitor>
您想要镜像的部分中现有行之前或之后。 - 确认其中一个部分(且只有一个部分)
<logicalmonitor>
包含<primary>yes</primary>
。 - 备份
monitors.xml
,因为错误会导致 Gnome 擦除文件,从而丢失所有其他配置(如果它是笔记本电脑并且您使用多个外接显示器)。 - 重新启动,登录 Gnome,希望您能看到新的配置。
注意:您可以粘贴到包含主显示的部分<primary>yes</primary>
并镜像主显示。如果您从包含此部分的部分剪切,您也需要复制/粘贴它。此行位于该部分中<scale>1</scale>
第一行之后(或无论您的比例是多少)和之前。<monitor>
<logicalmonitor>