Автоматическое расположение окон при загрузке

/www/pages/modesco/ubuntovod

Задача: Ubuntu Precise, Compiz Wall, несколько приложений в автостарте и желание не раскидывать их по рабочим столам вручную каждый раз при логине.

Решение найдет только очень внимательный, что и стало причиной для поста. Оказалось, что задачу можно решить силами самого compiz`a без каких-либо ухищрений. Все что нужно, это плагин "Place Windows", который есть в поставке по умолчанию.

На второй вкладке есть три секции, нам нужна последняя - "windows with fixed viewport". Задаем идентификатор, лучше всего самый общий - class, окна/приложения, и координаты рабочего стола вида (x, y):

Как раскидать окна по рабочим столам после загрузки

Попутно можно зафиксировать другие свойства окон - положение и режим размещения (на нетбуке с небольшим экраном самое актуальное - развернуть на весь экран). При задании идентификатора есть пикер, так что можно просто ткнуть в интересующее вас приложение. Также доступны логические операции над фильтром (and/or/not).

Теперь при открытии любого окна, подпадающего под фильтры, оно будет размещаться в соответствии с указанными правилами.

P.S. Если вы все таки еще на Gnome то у вас сработает такая приблуда, как DevilsPie2:

  • Установим её:
    sudo apt-get install devilspie2 && mkdir ~/.config/devilspie2 && cd ~/.config/devilspie2 && touch ./rules.lua && nano ./rules.lua
  • Для каждого окна задайте правило вида, где "3" - абсолютный номер рабочего стола:
    if (get_window_name() == "Calculator") then
     set_window_workspace(3)
    end
  • Затем:
    devilspie2 &
  • Если все ок - можно поставить его в автозагрузку

Что бы узнать windows/application name поместите в скрипт следующие правила:

debug_print("Window Name: " .. get_window_name());
debug_print("Application name: " .. get_application_name())

И запустите в отладочном режиме:

devilspie2 -d
Переезжаете? Нужно перевезти что то большое, что не вместится в стандартную машину и даже в грузовик? Тогда, получается, ваши вещи - негабарит. Но не переживайте, есть компания ЕвроСпецТранс, которая поможет вам перевезти негабаритный груз. Обращайтесь на сайт eurospectrans.ru.

У меня техническое образование и всю свою сознательную жизнь связан с техникой. Это и работа, и хобби.
Подробнее