`xcalib -i -a` контролирует только один из двух экранов - может ли он контролировать оба?

Я использую 2 экрана и хочу инвертировать цвета на обоих из них без использования compiz (я использую оболочку gnome).

Я могу использовать xcalib -invert -alter, как предложено в этого вопроса , но он инвертирует только один из экранов. Есть ли способ указать оба из них, или даже какой из них, используя xcalib? Есть ли другой способ?

С помощью xcalib вы можете указать, какой экран изменять, с помощью опций -d (-display) или -s (-screen), но, увы, X Кажется, известно только об одном экране: когда я использую команду w , я вижу только один (обычно ": 0")

пс: этот вопрос был изначально опубликован [ 1116] k0pernikus в качестве комментария здесь .

--- edit ---

Это вывод xrandr:

Screen 0: minimum 320 x 200, current 3200 x 1200, maximum 8192 x 8192
VGA-0 connected 1280x1024+0+0 (normal left inverted right x axis y axis) 376mm x 301mm
1280x1024 60.0*+ 75.0
1280x960 60.0
1152x864 75.0
1024x768 75.1 70.1 60.0
832x624 74.6
800x600 72.2 75.0 60.3 56.2
640x480 72.8 75.0 66.7 60.0
720x400 70.1
DVI-0 connected 1920x1200+1280+0 (normal left inverted right x axis y axis) 518mm x 324mm
1920x1200 60.0*+
1600x1200 60.0
1280x1024 75.0 60.0
1280x960 60.0
1152x864 75.0
1024x768 75.1 70.1 60.0
832x624 74.6
800x600 72.2 75.0 60.3 56.2
640x480 72.8 75.0 66.7 60.0
720x400 70.1

Я могу использовать -s DVI-0 или -s VGA-0, но они делают то же самое как -s :0

11
задан 13 April 2017 в 15:25

3 ответа

Обратите внимание, что на дату последнего тестирования (2014, xcalib версия 0.8) xcalib не был способен инвертировать цвета на всех мониторах в конфигурации с несколькими мониторами, поскольку все мониторы представлены сервером X11 как один экран. Таким образом, это ограничение исходит от сервера X11. xrandr-invert-colors не имеет этого ограничения, поскольку использует API XRandR, который корректно обрабатывает все подключенные мониторы.

отсюда: https://github.com/zoltanp/xrandr-invert-colors

0
ответ дан 13 April 2017 в 15:25

Отображаемые идентификаторы в X имеют вид :<screen>.<display>. Вопреки интуиции, все мониторы в конфигурации с несколькими мониторами совместно используют <screen>, но имеют различные значения <display>. Экран «первый» в настройке - :0.0, другие - :0.1, :0.2 и т. Д. Последняя команда - xcalib -invert -alter -display :0.1

0
ответ дан 13 April 2017 в 15:25

Параметр xcalib -screen принимает целочисленный индекс экрана, равный нулю, т.е. в вашем случае 0 для VGA-0 и 1 для DVI-0.

0
ответ дан 13 April 2017 в 15:25

Другие вопросы по тегам:

Похожие вопросы: