Настройку быстрых клавиш для управления окнами мы закончили. К тому же, определились с тем, как обеспечить быстрый запуск программ. Следующий шаг - закрепить приложения на нужных местах.
Подобную настройку мы использовали для терминала sakura
. Ее нужно было вставить в файл ~/.config/openbox/rc.xml
в раздел <applications>
. Сама настройка определялась следующим xml-кодом:
<application name="sakura" type="normal">
<desktop>1</desktop>
<maximized>yes</maximized>
<focus>yes</focus>
<layer>below</layer>
</application>
Мы уже разбирались, что означают различные опции из фрагмента выше, поэтому здесь я повторять их расшифровку не буду. Главное, что для нас сейчас имеет значение, - терминал оказывается закреплен за первым рабочим столом. Однако это не означает, что мы не сможем перенести его на другой рабочий стол. Но он всегда будет появляться при запуске именно там.
Но не спешите закреплять все приложения как попало. Сначала подумайте. Например, я распределил рабочие столы по их функциональному наполнению:
По аналогии с терминалом закрепим браузер на втором рабочем столе, добавив следующий xml-код в ~/.config/openbox/rc.xml
:
<application class="Chromium" role="browser">
<desktop>2</desktop>
<focus>yes</focus>
<maximized>yes</maximized>
<layer>below</layer>
</application>
Обратите внимание, что для идентификации окна приложения можно использовать атрибуты class
, role
, type
и другие. Узнать эти значения можно с помощью утилиты xprop
. Запустите ее в консоли, а затем щелкните на окне, для которого хотите получить информацию.
Для запуска chromium
я использую комбинацию клавиш Win + b
:
<keybind key="W-b">
<action name="Execute">
<command>find_app.sh chromium</command>
</action>
</keybind>
В качестве клиента мгновенных сообщений я использую pidgin
. Возможно, вам это приложение и не понадобится, но на его примере рассмотрим одну интересную особенность: не будем максимизировать его размер. Закрепим его следующим образом:
<application class="Pidgin">
<desktop>3</desktop>
<layer>below</layer>
<position force="yes">
<x>+0</x>
<y>+0</y>
</position>
</application>
<application class="Pidgin" role="conversation">
<desktop>3</desktop>
<layer>below</layer>
<position force="yes">
<x>+15%</x>
<y>+0</y>
</position>
</application>
Определение состоит из двух частей. В первой мы говорим, что хотим, чтобы pidgin
был закреплен на 3-ем рабочем столе к левому верхнему краю. Это определение будет относиться к любым всплывающим диалоговым окнам приложения. Но для окна с ролью conversation
используем особую конфигурацию, сдвинув его вправо. В результате окно беседы не перекрывает список собеседников:
Этот прием вы можете использовать для любых многооконных приложений.
Для запуска pidgin
я использую комбинацию клавиш Win + p
:
<keybind key="W-p">
<action name="Execute">
<command>find_app.sh pidgin</command>
</action>
</keybind>
Приложение для работы с электронной почтой я также закрепил на 3-ем рабочем столе, но на втором мониторе:
<application class="Thunderbird">
<maximized>yes</maximized>
<desktop>3</desktop>
<layer>below</layer>
<position force="yes">
<monitor>2</monitor>
<x>+0</x>
<y>+0</y>
</position>
</application>
Если у вас только один монитор, то советую задуматься о подключении второго. Это может сильно увеличить вашу продуктивность (см. Пять способов повышения продуктивности для программиста).
Для thunderbird
я использую комбинацию Win + k
:
<keybind key="W-k">
<action name="Execute">
<command>find_app.sh thunderbird</command>
</action>
</keybind>
Но не для всех приложений подходит жесткая привязка. Например, при использовании gmrun
уместен "плавающий" режим. Сам gmrun
- лончер других приложений. Вполне естественно ожидать, что если запустить его на 1-ом рабочем столе, а затем перейти на 2-ой, то он не останется на 1-ом, а последует за вами. Вот как это сделать:
<application name="gmrun">
<desktop>all</desktop>
<layer>above</layer>
<position force="yes">
<x>center</x>
<y>center</y>
</position>
</application>
Для запуска самого лончера также обязательно нужно выделить комбинацию клавиш. Я использую Win + ]
:
<keybind key="W-0x23">
<action name="Execute">
<command>find_app.sh gmrun</command>
</action>
</keybind>
Внешний вид gmrun
:
Периодически возникают ситуации, когда терминал нужен здесь и сейчас, а не на первом рабочем столе (или каком-то конкретном). В этом случае подойдет выпадающая консоль. Я для этого использую приложение tilda
. В его настройках я выбрал комбинацию клавиш Win + g
для "выпадания", а в rc.xml
закрепил его на втором мониторе в левом верхнем углу:
<application name="tilda">
<position force="yes">
<monitor>2</monitor>
<x>+0</x>
<y>+0</y>
</position>
</application>
При этом tilda
сама перемещается при переходе с одного рабочего стола на другой, поэтому от нас никаких дополнительных действий не требуется.
Например, так выглядит tilda
с эффектом прозрачности над firefox
:
Мы рассмотрели основные возможности привязки окон в среде Openbox. Распределите свои приложения по связанным группам, и закрепите их по соответствующим рабочим столам. А если приложение не относится к какой-то конкретной группе, то сделайте его "плавающим".
В следующий раз мы поработаем над визуальной частью - займемся оформлением Openbox…
Алексей:
Не мешало бы добавить скриншоты.
Спасибо за комментарий. Да, думаю, что скриншоты могут упростить восприятие некоторых пунктов. Добавлю в ближайшем будущем.
Алексей
Не мешало бы добавить скриншоты.