Эмуляция дополнительных дисплеев


14

У меня есть система с одним монитором, я хотел бы протестировать конфигурацию xmonad, предназначенную для нескольких мониторов. Есть ли способ эмулировать систему с 3 мониторами, используя что-то вроде Xephyr для проверки моей конфигурации?

Ответы:


7

Я нашел решение, используя Xephyr и Xdmx

Сначала создайте дисплеи Xephyr

Xephyr -screen 1920x1080 -ac :1
Xephyr -screen 1920x1080 -ac :2
Xephyr -screen 1920x1080 -ac :3

Это создает 3 окна 1920x1080, каждое из которых будет выступать в качестве монитора

Затем добавьте слой xinerama на эти виртуальные дисплеи

Xdmx +xinerama -xinput local -display :1 -display :2 -display :3 -ac :4

Затем создайте новый терминал и запустите ваш оконный менеджер или приложение, например, так

DISPLAY=:4.0
xmonad

или если вы просто хотите протестировать поддержку приложения xinerama вместо того, xmonadчтобы запустить xtermили thunar.


5

Вам нужен только один экземпляр Xephyr.

Xephyr +xinerama -screen 1920x1080 -screen 1920x1080 -screen 1920x1080 -ac :1

Если вам нужно расширение RANDR, добавьте +extension RANDRаргументы.

Xephyr +extension RANDR +xinerama -screen 1920x1080 -screen 1920x1080 -screen 1920x1080 -ac :1


1
Если я хочу, чтобы оконный менеджер сказал Xfwm4, чтобы использовать все виртуальные дисплеи?
user877329

1
Это на самом деле не работает (хотя и не дает сбоя.) Вы можете проверить, запустив xrandrего и увидев, что он показывает только один монитор. bugs.debian.org/cgi-bin/bugreport.cgi?bug=918457, кажется, содержит некоторые детали
Фрю Шмидт

1

Хотя это и отвечает на вопрос, это не полномасштабное решение. Эти решения размещают три экрана в горизонтальном ряду (ну, по крайней мере, в соответствии с xinerama ( xdpyinfo -ext XINERAMA -display :1), фактическое размещение окна будет позаботиться о диспетчере окон). Если вы хотите иметь другое размещение экранов, это не поможет.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.