Использование разных обоев на нескольких мониторах (Gnome 2 + Compiz)
Это кажется простым вопросом, но я не смог найти удовлетворительного ответа с помощью Google или Ask Ubuntu.
Итак, у меня есть установка с тремя мониторами. По сути, я просто хочу иметь различный фон для каждого из трех мониторов. Сейчас я не говорю о различных виртуальных рабочих столах (или рабочих пространствах) здесь. Большинство решений, которые я гуглил, были о разных фонах в разных рабочих пространствах. У меня только одно рабочее пространство, но три монитора, вот так:
Монитор 1 (сверху) - это мой большой телевизор, который прикреплен к стене над моими двумя обычными мониторами.
Я использую Gnome 2 с Compiz (он же gnome-session-fallback, он же Gnome Classic (с эффектами) в раскрывающемся списке менеджера входа в систему) в Ubuntu 13.04.
Я попробовал следующие методы, пытаясь установить различный фон для каждого монитора:
ccsm
(compiz-config-settings-manager), то есть настройка фона через диспетчер окон (Compiz). Точнее, я использовал плагин обоев Compiz.gnome-control-center
настройка фона с помощью настроек системы Gnome. Точнее, я использовал фоновую панель в Системных настройках Gnome.XDG_CURRENT_DESKTOP=Unity gnome-control-center
то есть установление фона с помощью настроек системы Gnome, но имитация поведения Unity. Точнее, я использовал панель " Внешний вид" в настройках системы Gnome.
Тем не менее, ни один из этих методов, кажется, не позволяет мне выбрать различный фон для каждого монитора. В каждом случае я могу установить только один фон (или, возможно, несколько, которые затем можно периодически циклически использовать или использовать для разных рабочих пространств) для всех трех мониторов. Затем у меня обычно есть параметры, такие как центр, мозаика, обрезка или масштаб, которые управляют тем, как этот единственный фон отображается на трех мониторах.
Обходной путь, который я использовал до сих пор, заключается в использовании Gimp для создания одного "большого" фона, который охватывает все виртуальное разрешение всех трех мониторов вместе. По сути, я создаю одно большое фоновое изображение размером 3840x2160, в которое я вставляю три фона в нужных местах. Затем я установил этот большой фон в качестве единственного фона для трех мониторов, используя возможности (1) или (3) выше, и использовал параметр span, чтобы охватить этот большой фон для всех трех мониторов. Это дает три разных фона на трех мониторах, при условии, что три меньших фона были правильно размещены на большом фоновом изображении (Примечание: возможность (2) не предлагает опцию пролета).
Тем не менее, это кажется ужасным взломом для достижения такой простой вещи, как установка различного фона для каждого из моих мониторов. У этого также есть несколько недостатков:
- Когда я хочу изменить расположение мониторов (большой телевизор сверху можно двигать влево или вправо, и мне нравится соответствующим образом регулировать положение мониторов, используя
xrandr
или связанный графический интерфейс, такой как панель " Дисплеи" в настройках системы Gnome, чтобы держать движения мыши интуитивно понятным), очевидно, верхний фон не скользит вместе с монитором, на котором он должен отображаться, что означает, что я вижу только часть верхний фон. - Большой фон имеет несколько серых областей (мертвое пространство) в верхних углах, которые бесполезно загружаются во время входа в систему Compiz или Gnome при загрузке большого фона.
- Хуже всего то, что когда я хочу изменить один из трех фонов, мне приходится редактировать весь большой фон. Это слишком много работы, учитывая, что я просто хочу изменить один фон (да, я знаю о слоях Gimp, но все же) - это должно быть возможно с помощью нескольких щелчков мыши и без тяжелой программы для работы с изображениями.
Первый пункт означает, что этот обходной путь не является надежным. Второе означает, что это не эффективно. И третье означает, что это боль в заднице:)
Итак, мой вопрос заключается в следующем:
Есть ли какой-нибудь способ - с помощью Gnome 2 или Compiz - просто сказать системе, что я хочу различный фон для каждого монитора? Это было бы логичным подходом для меня, поскольку оно фактически сообщало бы системе, каково мое намерение. Это также было бы более эффективным.
Действительно, такое чувство, что это не может быть таким необычным сценарием. Я думаю, что многие люди имеют несколько мониторов; и, по крайней мере, некоторые из них должны иметь разные фоны на этих мониторах. Так может ли быть правдой, что не существует простого решения, и от пользователей ожидают придумать ужасные хаки, такие как создание собственных пользовательских фонов с тяжелыми программами, чтобы заставить это работать?
7 ответов
Ты можешь использовать nitrogen
Чтобы установить его, выполните в терминале следующую команду:
sudo apt-get install nitrogen
Так как nitrogen
не установлен файл рабочего стола по умолчанию, когда установлен, вам нужно запустить следующую команду из терминала, чтобы запустить его:
nitrogen
Как это использовать?
В разделе " Настройки" добавьте папку своих обоев, затем в нижней части выберите [...] Экран 1, 2 и т. Д., Чтобы установить разные обои для каждого монитора:
Чтобы иметь возможность устанавливать разные обои для каждого монитора, вы должны отключить файловый менеджер для обработки рабочего стола. Это означает, что у вас больше не будет папок на рабочем столе.
В GNOME / Unity установите GNOME Tweak Tool:
sudo apt-get install gnome-tweak-tool
Затем откройте GNOME Tweak Tool и в разделе " Рабочий стол " установите " Значки на рабочем столе" (ранее файловый менеджер обрабатывал рабочий стол) в положение " ВЫКЛ".
И, наконец, чтобы обои восстанавливались при каждом входе в систему, добавьте следующую команду:
nitrogen --restore
в ваши приложения запуска.
Источник: UBUNTU MULTI-MONITOR TWEAKS (ПОЛНЫЕ ФИКСЫ ЭКРАНА, ОБОИ ПРОКЛАДКИ ПО МОНИТОРАМ, БОЛЬШЕ)
С webupd8.org кажется, что есть 2 варианта. (копия с сайта плюс некоторые дополнительные вещи, добавленные мной):
Настройки внешнего вида Ubuntu по умолчанию не позволяют разделить один большой фоновый рисунок на оба монитора или использовать разные фоновые рисунки для каждого монитора, но есть два приложения, которые вы можете использовать для этого.
Первый - это SyncWall. Установите его в Ubuntu, используя следующие команды:
sudo add-apt-repository ppa:nilarimogard/webupd8 sudo apt-get update sudo apt-get install syncwall
Вот как выглядят мои рабочие столы после использования SyncWall:
Текущие Особенности
- Планирование: вы можете изменить обои при запуске, через интервал или в фиксированное время
- Возможность использовать / определять системные горячие клавиши для смены обоев вручную.
- Базовая поддержка нескольких мониторов для обмена обоями на разных экранах
- Возможность добавить некоторые специальные эффекты (тиснение, край, размытие,...) на отображаемые обои.
- Возможность оценивать изображения для их более частого отображения (если выбран случайный порядок)
- Несколько методов изменения размера и заливки фона
- Сетевая синхронизация смены обоев путем определения сервера и клиентов. Параметры отображения являются общими для всей сети (одинаковый тип изменения размера на всех рабочих столах)
- Поддерживаемые файлы:SyncWall использует плагины Qt для загрузки изображения, поэтому по умолчанию он может читать основные форматы как BMP, PNG, JPG. При необходимости вы можете добавить больше форматов, используя подключаемые модули для библиотек FreeImage или Devil.
- Для платформы Linux поддерживаются общие диспетчеры окон (Gnome, Gnome3, KDE3, KDE4, XFCE, ...).
Другой такой инструмент - азот Кроме того, что можно установить одинаковые обои для разных экранов, их также можно использовать для установки разных обоев для каждого монитора.
Азот доступен в официальных репозиториях Ubuntu, поэтому для его установки найдите его в Ubuntu Software Center или используйте следующую команду:
sudo apt-get install nitrogen
У азота нет файла рабочего стола, поэтому запустите его из командной строки:
nitrogen
Чтобы иметь возможность устанавливать разные обои для каждого монитора, вы должны отключить файловый менеджер для обработки рабочего стола. Это означает, что у вас больше не будет папок на рабочем столе.
В GNOME / Unity установите GNOME Tweak Tool:
sudo apt-get install gnome-tweak-tool
Затем откройте GNOME Tweak Tool и в разделе "Рабочий стол" установите "Отключить управление файловым менеджером на рабочем столе".
И, наконец, чтобы обои восстанавливались при каждом входе в систему, добавьте "азот --restore" в свои автозагрузки.
Вот как выглядит мой рабочий стол с разными обоями для каждого монитора:
Особенности:
- Поддержка Multihead и Xinerama.
- Режим Recall для восстановления обоев с помощью скрипта запуска.
- Использует стандарт freedesktop.org для миниатюр.
- Можно установить фон GNOME.
- Командная строка устанавливает режимы для использования скрипта.
- Inotify мониторинг просмотренных каталогов.
- Ленивая загрузка миниатюр - экономит память (новое в 1.3).
- "Автоматический" режим установки - определяет лучший режим для установки изображения в зависимости от его размера. (новое в 1.4).
- Предварительный просмотр изображений в виде мозаичного значка (новое в версии 1.5).
Азот, кажется, лучший вариант. Syncwall, похоже, использует описанный вами хак (большое изображение, разделенное на несколько мониторов.
Плагин XFCE Desktop Manager (входит в пакет xubuntu-desktop) позволяет редактировать каждый дисплей отдельно, сохраняя при этом папки на рабочих столах.
Скриншот моих 2 рабочих столов с открытым менеджером:
в желтом поле написано "Переместите этот диалог на экран, для которого вы хотите изменить настройки".
Извините, я не могу больше помочь с инструкцией о том, как установить его, и как называется сам плагин (я пытался найти его, но вместо этого решил переустановить весь пакет) - но, надеюсь, это приведет вы или кто-то на правильном пути, и этот ответ может быть улучшен путем редактирования.
Я был рад видеть, что на самом деле был ответ Гнома / Единства.
Тем не менее, я все еще чувствую, что переход на KDE может предложить более последовательный опыт.
Встроенный менеджер настроек KDE не только позволяет использовать несколько обоев на нескольких мониторах, но и позволяет устанавливать их по-разному для каждого виртуального рабочего стола и активности. (Активность похожа на виртуальные рабочие столы, которые содержат виртуальные рабочие столы и могут быть настроены на разные параметры, такие как экранная заставка после 5 минут неподвижности в одном действии, но без тайм-аута при переключении на другое, например, для презентаций или фильмов.)
Более того, он без проблем обрабатывает сложение и вычитание мониторов (через подключение и отключение HDMI)!!
sudo apt-get install feh
feh --bg-center <path_to_big_image> --no-xinerama
Не нужно прятать свои значки с рабочего стола
Я ищу метод командной строки для этого. С Hyrdapaper все в порядке, но я не хочу запускать графический интерфейс для выбора изображений. У меня есть скрипт, который уже обрабатывает все это, устанавливая изображения через заранее определенные интервалы. Мне просто нужно знать, как настроить каждый монитор отдельно и/или объединить изображение. feh выглядел так, как будто это может быть решением, однако на самом деле он не устанавливает обои. Или, скорее, он говорит это, но не показывает его до тех пор, пока терминал, в котором я набираю команду, не потеряет фокус (у меня есть фокус указателя). Затем фон меняется на секунду, а затем возвращается к моему текущему фону.
Обратите внимание, что я использую Mate с Compiz, если это имеет значение.