Как быстро переключить ориентацию монитора с помощью сочетания клавиш?

Установите максимальный размер для виртуального экрана.

Создайте файл /etc/X11/xorg.conf, если он еще не существует, и добавьте контент

Section "Screen"
Identifier "Default Screen"
Device "Default Video Device"
SubSection "Display"
Virtual 2720 1024
EndSubSection
EndSection

В Virtual X Y, X и Y должны быть размером экрана или больше, чем указано в сообщении об ошибке.

1
задан 8 March 2018 в 04:24

1 ответ

Я использую скрипт Джейкоба. Однако теперь я использую адаптер, поэтому хочу иметь возможность переключать ориентацию, подключен ли монитор к HDMI или через адаптер. Для этого я модифицировал сценарий Явоба и заимствовал другую функцию, которую он написал:

import subprocess

def screens():
    '''
    get connected screens
    '''
    output = [l for l in subprocess.check_output(["xrandr"]).decode("utf-8").splitlines()]
    return [l.split()[0] for l in output if " connected " in l]

# --- set the name of the screen and the rotate direction below
# screen = "HDMI-1" # run "xrandr" to get the screen
rotate = "left" # the desired orientation

if "HDMI-1" in screens():
    screen = "HDMI-1"
elif "DP-1" in screens():
    screen = "DP-1"
else:
    pass
# ---

# only run if screen is declared (i.e. either HDMI-1 or DP-1 are connected)
if screen:

    matchline = [
        l.split() for l in subprocess.check_output(["xrandr"]).decode("utf-8").splitlines()\
        if l.startswith(screen)
        ][0]
    s = matchline[
        matchline.index([s for s in matchline if s.count("+") == 2][0])+1
        ]

    rotate = "normal" if s == rotate else rotate
    subprocess.call(["xrandr", "--output", screen, "--rotate", rotate])
0
ответ дан 23 May 2018 в 13:23

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

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