Disper: быстрое переключение внешних дисплеев на Linux
Зачем использовать Disper
Использование Linux на ноутбуке иногда осложняется проприетарным или плохо документированным железом. Тем не менее, сообщество и некоторые производители сделали шаги навстречу, и сейчас Linux поддерживает многие ноутбуки и нетбуки. Когда вы подключаете внешний дисплей — монитор, телевизор или проектор — Disper позволяет быстро переключаться между вариантами отображения без долгой настройки в графических утилитах.
Кратко: Disper — консольная утилита, но после пары команд её удобно запускать через сочетание клавиш или простые скрипты.
Установка
Сайт Disper содержит бинарные пакеты для Ubuntu, ArchLinux и OpenSUSE — устанавливайте через стандартный менеджер пакетов вашей дистрибуции. Для остальных дистрибутивов Disper написан на Python и легко ставится из исходников.
Шаги для установки из архива:
- Скачайте последний релиз.
- Откройте терминал.
- Распакуйте архив:
tar zxvf disper_0.2.3.tar.gz- Перейдите в каталог с исходниками:
cd trunk/src- Установите:
make installАльтернативно можно запускать без установки прямо из каталога src:
./cli.pyВажно: если у вас нет прав для make install, используйте sudo или установите для текущего пользователя, не трогая системные каталоги.
Первичная настройка
Disper обычно сразу распознаёт VGA, DVI или HDMI. Первое, что полезно сделать — посмотреть, какие дисплеи видит система:
disper --listПример вывода:
display DFP-0: HannStar Display Corp HSD121PHW1
resolutions: ...960x540, 832x624, 1024x768, 1366x768
display DFP-1: SONY TV
resolutions: ...1400x1050, 1600x1024, 1680x1050, 1280x720, 1920x1080Примечание: здесь опущены более низкие разрешения — команда покажет полный список.
Базовое использование
Клонирование экрана (идентичное изображение на обоих дисплеях):
disper -c
Если у устройства нестандартное разрешение (например, нетбук 1366×768), клонирование может перевести оба экрана на более низкое значение (например, 1024×768). Для проекторов это допустимо, но при просмотре видео или игр лучше явно задать нужное разрешение.
Выбор внешнего дисплея в 720p:
disper -S -r 1280x720Здесь заглавная S означает «внешний дисплей» (external). Чтобы вернуться к встроенному дисплею, используйте строчную s:
disper -sКоманда автоматически определит и применит стандартное разрешение встроенного дисплея.
Показ текущих настроек:
disper -pПример вывода:
backend: nvidia
associated displays: DFP-0
metamode: DFP-0: 1366x768 @1366x768 +0+0
scaling: aspect-scaledРасширение рабочего стола с помощью TwinView (Nvidia):
disper -e -r 1366x768,1920x1080 -t topЭто разместит ТВ-экран над экраном ноутбука и выставит разрешения 1366×768 и 1920×1080.

Упрощение через скрипты и сочетания клавиш
Чтобы не вводить команды вручную, создайте простой сценарий. Пример для переключения на Sony TV в 720p:
#!/bin/sh
disper -S -r 1280x720Сделайте файл исполняемым:
chmod a+x script-name
Вы можете привязать скрипт к сочетанию клавиш в DE (в KDE — через настройки → сочетания клавиш или kmenuedit). Также удобно создать несколько скриптов для разных сценариев и запускать их из диалога «Выполнить» (Alt+F2).
Шпаргалка команд (cheat sheet)
- disper –list — показать доступные дисплеи и разрешения
- disper -c — клонировать оба экрана
- disper -S -r WIDTHxHEIGHT — включить только внешний дисплей с указанным разрешением
- disper -s — вернуться к встроенному дисплею (авто-разрешение)
- disper -p — показать текущие параметры
- disper -e -r WX1,WX2 -t top|left|right|bottom — расширить рабочий стол с указанием расположения
Примеры:
# Клонировать и установить 1024x768 (если это поддерживается обоими):
disper -c -r 1024x768
# Расширить: ноутбук слева, телевизор справа (1080p):
disper -e -r 1366x768,1920x1080 -t rightКогда Disper может не сработать
- Драйвер видеокарты не поддерживает режимы, которые требует Disper (например, некоторые проприетарные режимы без TwinView).
- Устаревший или кастомный стек графики (особые сборки X или Wayland) — Disper рассчитан на Xorg и XrandR/Nvidia.
- Проблемы с EDID у телевизора/проектора — система может не увидеть корректные разрешения.
Если вы используете Wayland, Disper работать не будет — он ориентирован на X-сервер.
Альтернативные подходы
- xrandr — стандартный инструмент для управления X-сервера, даёт полный контроль, но требует больше знаний о режиме и позиционировании.
- nvidia-settings — графическая утилита для карт Nvidia, позволяет сохранять профиль, но переключение вручную занимает несколько кликов.
- Утилиты оболочки рабочего стола (например, GNOME Display Settings, KDE System Settings) — удобны для редких изменений, но медленнее при частых переключениях.
Выбор зависит от частоты переключений: для презентаций и постоянной смены экранов Disper даёт лучшее сочетание скорости и гибкости.
Методика выбора настроек (микро-процесс)
- Запустите disper –list и проверьте имена дисплеев и доступные разрешения.
- Решите режим: клонирование, расширение или только внешний.
- При клонировании выберите разрешение, поддерживаемое обоими экранами.
- При расширении укажите разрешения для каждого экрана через запятую и позиционирование (-t top/left/…).
- Сохраните команду в скрипт и привяжите к клавише.
Рекомендации для ролей
- Для обычного пользователя: создайте два скрипта — «только ноутбук» и «только ТВ 720p», привяжите их к сочетаниям клавиш.
- Для докладчика/презентера: добавьте скрипт «клонировать в 1024×768» для совместимости с проекторами, а также «вернуть».
- Для администратора: храните скрипты в /usr/local/bin с соответствующими правами и документируйте имена дисплеев.
Критерии приёмки
- Команда disper –list корректно показывает все подключённые дисплеи.
- Сценарий переключения запускается без ошибок и применяет ожидаемое разрешение.
- Привязанное сочетание клавиш запускает сценарий в активной сессии пользователя.
Отладка и распространённые ошибки
- Нет вывода от disper или ошибка backend: проверьте, что установлен Xorg и вы работаете под X-сессией.
- Не найдено разрешение: используйте xrandr, чтобы проверить EDID телевизора; возможно, потребуется вручную добавить режим.
- При использовании Nvidia и наличии проблем с TwinView проверьте nvidia-settings и соответствие версий драйвера.
Полезная команда для диагностики:
xrandr --verboseКороткий глоссарий
- EDID — данные, которые дисплей передаёт об поддерживаемых разрешениях.
- TwinView — технология Nvidia для объединения двух дисплеев в один логический.
- Backend — подложка/драйвер, который управляет выводом (nvidia, intel, ati и т.д.).
Кантры/когда не подходит Disper
- Использование Wayland вместо Xorg.
- Необходимость тонкой настройки масштабирования и композитинга, где предпочтительнее GNOME/KDE настройки.
Итог и рекомендации
Disper — удобный инструмент для динамического переключения дисплеев на Xorg. Если вы часто подключаете ноутбук к ТВ или проектору, потратьте 10–15 минут на создание скриптов и привязку сочетаний клавиш — это сэкономит время и избавит от рутины.
Важно: если вы используете Wayland, ищите аналоги в экосистеме вашего окружения рабочего стола.
Ключевые действия прямо сейчас:
- Запустите disper –list и посмотрите распознанные дисплеи.
- Создайте 2–3 простых скрипта для ваших типичных сценариев.
- Привяжите их к горячим клавишам через настройки DE.
Notes: Для сложных случаев используйте xrandr и nvidia-settings совместно с Disper или как альтернативу.
Похожие материалы
Несколько аккаунтов Skype: Multi Skype Launcher
Журнал для работы: повысить продуктивность
Персональные звуки уведомлений на Android
Скачивание шоу Hulu для офлайн‑просмотра
Microsoft Start: персонализированная новостная лента