OpenBox rc.xml
Внешний вид
Очень, очень корявый перевод комментариев стандартного rc.xml файла OpenBox.
<?xml version="1.0" encoding="UTF-8"?>
<!-- Не изменяйте этот файл, он будет перезаписан во время установки.
Скопируйте файл в $HOME/.config/openbox/. -->
<openbox_config xmlns="http://openbox.org/3.4/rc" xmlns:xi="http://www.w3.org/2001/XInclude">
<resistance>
<strength>10</strength>
<screen_edge_strength>20</screen_edge_strength>
</resistance>
<!-- насколько я могу судить, это значение сопротивления - ->
<focus>
<focusNew>yes</focusNew>
<!-- //фокус на новом// всегда стараться сфокусироваться на новых окнах, при их появлении.
Другие правила не применять [игнорировать всё остальные] -->
<followMouse>no</followMouse>
<!-- //следовать за мышью// перемещать фокус на окна, вслед за перемещением мыши
[фокус будет находится на том окне, на которое указывает курсор мыши] -->
<focusLast>yes</focusLast>
<!-- //фокус на последнем// фокусироваться на последнем используемом окне при смене рабочих
столов, вместо того, что находится под мышью. Этот параметр работает,
при включённом параметре <followMouse>
[при переходе с одного рабочего стола на другой, фокусировка будет не
на окне под указателем, а на последнем используемом, на этом рабочем
столе, окне.] -->
<underMouse>no</underMouse>
<!-- //под мышью// переместить фокус под мышь, даже если мышь не двигается -->
<focusDelay>200</focusDelay>
<!-- //задержка фокусировки// при включенном параметре followMouse мышь должна быть внутри
окна в течении стольких мили секунд(1000 = 1 sec), прежде чем фокус будет
передан на это окно -->
<raiseOnFocus>no</raiseOnFocus>
<!-- //фокусировка на поднятом окне// при включённом параметре followMouse, и фокус передаётся
окну — перемещением мыши в него, а также поднятием (повышением, raise) окна -->
</focus>
<placement>
<policy>Smart</policy>
<!-- 'Smart' or 'UnderMouse'
//политика// 'Тут ясно, либо «интерактивная», либо «ПодМышью»'-->
<center>yes</center>
<!-- //центрирование// поместить в окно в центр свободного (найденного) пространства, либо
в левом верхнем углу -->
<monitor>Active</monitor>
<!-- //монитор// При «интерактивной» политике, с несколькими мониторами, стараться размещать новые окна на:
'Any' — любом мониторе, 'Mouse' — на том, где находиться мышь, 'Active' — на том, где активное окно -->
<primaryMonitor>1</primaryMonitor>
<!-- //основной монитор// Монитор, на котором Openbox должен размещать всплывающие диалоги,
такие как focus cycling popup, или сообщение о переключении рабочих столов Это может быть индекс (число),
с указанием конкретного монитора. Или одно из следующих значений:
'Mouse' — там, где находится мышь, или 'Active' — там, где находиться активное окно -->
</placement>
<theme>
<name>Clearlooks</name>
<titleLayout>NLIMC</titleLayout>
<!--
символы NDSLIMC, могут встречаться сколько угодно раз и в любой последовательности.
N: иконка окна
L: название окна (AKA title).
I: свернуть
M: максимализировать
C: закрыть
S: скрыть (свернуть/развернуть, roll up/down)
D: вездесущ (на всех рабочих столах).
-->
<keepBorder>yes</keepBorder>
<animateIconify>yes</animateIconify>
<font place="ActiveWindow">
<!-- параметры шрифтов для активного окна -->
<name>sans</name>
<size>8</size>
<!-- размер шрифта в пунктах -->
<weight>bold</weight>
<!-- 'bold' or 'normal' /\ «жирный» или «нормальный» -->
<slant>normal</slant>
<!-- 'italic' or 'normal' /\ «курсив» или «нормальный» -->
</font>
<font place="InactiveWindow">
<!-- параметры шрифтов для не активного окна -->
<name>sans</name>
<size>8</size>
<!-- размер шрифта в пунктах -->
<weight>bold</weight>
<!-- 'bold' or 'normal' /\ «жирный» или «нормальный» -->
<slant>normal</slant>
<!-- 'italic' or 'normal' /\ «курсив» или «нормальный» -->
</font>
<font place="MenuHeader">
<!-- параметры шрифтов для заголовков меню -->
<name>sans</name>
<size>9</size>
<!-- размер шрифтов в пунктах -->
<weight>normal</weight>
<!-- 'bold' or 'normal' /\ «жирный» или «нормальный» -->
<slant>normal</slant>
<!-- 'italic' or 'normal' /\ «курсив» или «нормальный» -->
</font>
<font place="MenuItem">
<!-- параметры шрифтов для содержимого меню -->
<name>sans</name>
<size>9</size>
<!-- размер шрифтов в пунктах -->
<weight>normal</weight>
<!-- 'bold' or 'normal' /\ «жирный» или «нормальный» -->
<slant>normal</slant>
<!-- 'italic' or 'normal' /\ «курсив» или «нормальный» -->
</font>
<font place="OnScreenDisplay">
<!-- параметры шрифтов для содержимого меню -->
<name>sans</name>
<size>9</size>
<!-- размер шрифтов в пунктах -->
<weight>bold</weight>
<!-- 'bold' or 'normal' /\ «жирный» или «нормальный» -->
<slant>normal</slant>
<!-- 'italic' or 'normal' /\ «курсив» или «нормальный» -->
</font>
</theme>
<desktops>
<!-- этот параметр используется при запуске, и позволяется менять их во время сессии
это значения, по умолчанию, не изменённые каким-либо приложением, либо сохранённой сессией.
Используйте obconf, если Вы хотите изменить эти значения, без выхода (или без сохранности) -->
<number>4</number>
<firstdesk>1</firstdesk>
<names>
<!-- если хотите укажите здесь имена для рабочих столов, например:
<name>desktop 1</name>
<name>desktop 2</name>
-->
</names>
<popupTime>875</popupTime>
<!-- Время задержки всплывающего окна, при переключении рабочих столов, в миллисекундах.
Установите значение 0, для отключения окна -->
</desktops>
<resize>
<drawContents>yes</drawContents>
<popupShow>Nonpixel</popupShow>
<!-- 'Always', 'Never', or 'Nonpixel' (xterms and such) →
<!-- Ясно дело — каогда показывать всплывающие окна: всегда, никогда или 'Nonpixel' (xterms и тому подобное) -->
<popupPosition>Center</popupPosition>
<!-- 'Center', 'Top', or 'Fixed' →
<!-- Ясно дело — в какой области рабочего стола выводить всплывающие окна: центрирование, поверх или неподвижно -->
<popupFixedPosition>
<!-- these are used if popupPosition is set to 'Fixed' -->
<!-- эти параметры используются, лишь если popupPosition установлено в 'Fixed' -->
<x>10</x>
<!-- positive number for distance from left edge, negative number for
distance from right edge, or 'Center' →
<!-- положительное число означает расстояние от левого края, отрицательное число означает расстояние от правого края, либо значение 'Center' -->
<y>10</y>
<!-- позитивное число означает расстояние от верхнего края, отрицательное число означает расстояние от нижнего края, либо значение 'Center' -->
</popupFixedPosition>
</resize>
<!-- Вы можете зарезервировать часть Вашего монитора (для всех рабочих столов),
которую не пудут покрывать окна в режиме «максимилизировать», или при запуске
[т. е. вновь открытое окно не будет перекрывать эту область].
Множество программ автоматически определяют пространство, но Вы можете использовать и этот способ. -->
<margins>
<top>0</top> <!-- сверху -->
<bottom>0</bottom> <!-- снизу -->
<left>0</left> <!-- слева -->
<right>0</right> <!-- справо -->
</margins>
<dock>
<position>TopLeft</position>
<!-- (Top|Bottom)(Left|Right|)|Top|Bottom|Left|Right|Floating →
<!-- (Сверху|Снизу)(Слева|Справа|)|Сверху|Снизу|Слева|Справа|Плавучий -->
<floatingX>0</floatingX>
<floatingY>0</floatingY>
<noStrut>no</noStrut>
<stacking>Above</stacking>
<!-- 'Above', 'Normal', or 'Below' →
<!-- «Спереди», «Нормально» или «Сзади» →
<direction>Vertical</direction>
<!-- 'Vertical' or 'Horizontal' -->
<!-- 'Вертикально' or 'Горизонтально' -->
<autoHide>no</autoHide>
<hideDelay>300</hideDelay>
<!-- в миллисекундах (1000 = 1 second) -->
<showDelay>300</showDelay>
<!-- в миллисекундах (1000 = 1 second) -->
<moveButton>Middle</moveButton>
<!-- 'Left', 'Middle', 'Right' -->
<!-- 'Слева', 'Посередине', 'Справо' -->
</dock>
<keyboard>
<chainQuitKey>C-g</chainQuitKey>
<!-- Keybindings for desktop switching →
<! - Сочетания клавиш для переключения рабочем столе ->
<keybind key="C-A-Left">
<action name="DesktopLeft"><dialog>no</dialog><wrap>no</wrap></action>
</keybind>
<keybind key="C-A-Right">
<action name="DesktopRight"><dialog>no</dialog><wrap>no</wrap></action>
</keybind>
<keybind key="C-A-Up">
<action name="DesktopUp"><dialog>no</dialog><wrap>no</wrap></action>
</keybind>
<keybind key="C-A-Down">
<action name="DesktopDown"><dialog>no</dialog><wrap>no</wrap></action>
</keybind>
<keybind key="S-A-Left">
<action name="SendToDesktopLeft"><dialog>no</dialog><wrap>no</wrap></action>
</keybind>
<keybind key="S-A-Right">
<action name="SendToDesktopRight"><dialog>no</dialog><wrap>no</wrap></action>
</keybind>
<keybind key="S-A-Up">
<action name="SendToDesktopUp"><dialog>no</dialog><wrap>no</wrap></action>
</keybind>
<keybind key="S-A-Down">
<action name="SendToDesktopDown"><dialog>no</dialog><wrap>no</wrap></action>
</keybind>
<keybind key="W-F1">
<action name="Desktop"><desktop>1</desktop></action>
</keybind>
<keybind key="W-F2">
<action name="Desktop"><desktop>2</desktop></action>
</keybind>
<keybind key="W-F3">
<action name="Desktop"><desktop>3</desktop></action>
</keybind>
<keybind key="W-F4">
<action name="Desktop"><desktop>4</desktop></action>
</keybind>
<keybind key="W-d">
<action name="ToggleShowDesktop"/>
</keybind>
<!-- Keybindings for window switching -->
<! - Сочетания клавиш для переключения окон ->
<keybind key="A-Tab">
<action name="NextWindow"/>
</keybind>
<keybind key="A-S-Tab">
<action name="PreviousWindow"/>
</keybind>
<keybind key="C-A-Tab">
<action name="NextWindow">
<panels>yes</panels><desktop>yes</desktop>
</action>
</keybind>
<!-- Keybindings for running applications -->
<! - Сочетания клавиш для запуска приложений ->
<keybind key="W-e">
<action name="Execute">
<startupnotify>
<enabled>true</enabled>
<name>Konqueror</name>
</startupnotify>
<command>kfmclient openProfile filemanagement</command>
</action>
</keybind>
</keyboard>
<mouse>
<dragThreshold>8</dragThreshold>
<!-- число пикселей, которое должна «пройти» мышь, прежде чем начнётся перемещение (окна) -->
<doubleClickTime>200</doubleClickTime>
<!-- в миллисекундах (1000 = 1 second) -->
<screenEdgeWarpTime>400</screenEdgeWarpTime>
<!-- Время паузы до смены рабочего стола, когда указатель касается края экрана, при перемещении окна,
в миллисекундах (1000 = 1 second). Установите значение на 0 отключения warping
[т. е. окна не льзя будет перетаскивать по рабочим столам] -->
<context name="Frame">
<mousebind button="A-Left" action="Press">
<action name="Focus"/>
<action name="Raise"/>
</mousebind>
<mousebind button="A-Left" action="Click">
<action name="Unshade"/>
</mousebind>
<mousebind button="A-Left" action="Drag">
<action name="Move"/>
</mousebind>
<mousebind button="A-Right" action="Press">
<action name="Focus"/>
<action name="Raise"/>
<action name="Unshade"/>
</mousebind>
<mousebind button="A-Right" action="Drag">
<action name="Resize"/>
</mousebind>
<mousebind button="A-Middle" action="Press">
<action name="Lower"/>
<action name="FocusToBottom"/>
<action name="Unfocus"/>
</mousebind>
<mousebind button="A-Up" action="Click">
<action name="DesktopPrevious"/>
</mousebind>
<mousebind button="A-Down" action="Click">
<action name="DesktopNext"/>
</mousebind>
<mousebind button="C-A-Up" action="Click">
<action name="DesktopPrevious"/>
</mousebind>
<mousebind button="C-A-Down" action="Click">
<action name="DesktopNext"/>
</mousebind>
<mousebind button="A-S-Up" action="Click">
<action name="SendToDesktopPrevious"/>
</mousebind>
<mousebind button="A-S-Down" action="Click">
<action name="SendToDesktopNext"/>
</mousebind>
</context>
<context name="Titlebar">
<mousebind button="Left" action="Press">
<action name="Focus"/>
<action name="Raise"/>
</mousebind>
<mousebind button="Left" action="Drag">
<action name="Move"/>
</mousebind>
<mousebind button="Left" action="DoubleClick">
<action name="ToggleMaximizeFull"/>
</mousebind>
<mousebind button="Middle" action="Press">
<action name="Lower"/>
<action name="FocusToBottom"/>
<action name="Unfocus"/>
</mousebind>
<mousebind button="Up" action="Click">
<action name="Shade"/>
<action name="FocusToBottom"/>
<action name="Unfocus"/>
<action name="Lower"/>
</mousebind>
<mousebind button="Down" action="Click">
<action name="Unshade"/>
<action name="Raise"/>
</mousebind>
<mousebind button="Right" action="Press">
<action name="Focus"/>
<action name="Raise"/>
<action name="ShowMenu"><menu>client-menu</menu></action>
</mousebind>
</context>
<context name="BLCorner">
<mousebind button="Left" action="Press">
<action name="Focus"/>
<action name="Raise"/>
</mousebind>
<mousebind button="Left" action="Drag">
<action name="Resize"/>
</mousebind>
</context>
<context name="BRCorner">
<mousebind button="Left" action="Press">
<action name="Focus"/>
<action name="Raise"/>
</mousebind>
<mousebind button="Left" action="Drag">
<action name="Resize"/>
</mousebind>
</context>
<context name="TLCorner">
<mousebind button="Left" action="Press">
<action name="Focus"/>
<action name="Raise"/>
<action name="Unshade"/>
</mousebind>
<mousebind button="Left" action="Drag">
<action name="Resize"/>
</mousebind>
</context>
<context name="TRCorner">
<mousebind button="Left" action="Press">
<action name="Focus"/>
<action name="Raise"/>
<action name="Unshade"/>
</mousebind>
<mousebind button="Left" action="Drag">
<action name="Resize"/>
</mousebind>
</context>
<context name="Client">
<mousebind button="Left" action="Press">
<action name="Focus"/>
<action name="Raise"/>
</mousebind>
<mousebind button="Middle" action="Press">
<action name="Focus"/>
<action name="Raise"/>
</mousebind>
<mousebind button="Right" action="Press">
<action name="Focus"/>
<action name="Raise"/>
</mousebind>
</context>
<context name="Icon">
<mousebind button="Left" action="Press">
<action name="Focus"/>
<action name="Raise"/>
<action name="Unshade"/>
<action name="ShowMenu"><menu>client-menu</menu></action>
</mousebind>
<mousebind button="Right" action="Press">
<action name="Focus"/>
<action name="Raise"/>
<action name="ShowMenu"><menu>client-menu</menu></action>
</mousebind>
</context>
<context name="AllDesktops">
<mousebind button="Left" action="Press">
<action name="Focus"/>
<action name="Raise"/>
<action name="Unshade"/>
</mousebind>
<mousebind button="Left" action="Click">
<action name="ToggleOmnipresent"/>
</mousebind>
</context>
<context name="Shade">
<mousebind button="Left" action="Press">
<action name="Focus"/>
<action name="Raise"/>
</mousebind>
<mousebind button="Left" action="Click">
<action name="ToggleShade"/>
</mousebind>
</context>
<context name="Iconify">
<mousebind button="Left" action="Press">
<action name="Focus"/>
<action name="Raise"/>
</mousebind>
<mousebind button="Left" action="Click">
<action name="Iconify"/>
</mousebind>
</context>
<context name="Maximize">
<mousebind button="Left" action="Press">
<action name="Focus"/>
<action name="Raise"/>
<action name="Unshade"/>
</mousebind>
<mousebind button="Middle" action="Press">
<action name="Focus"/>
<action name="Raise"/>
<action name="Unshade"/>
</mousebind>
<mousebind button="Right" action="Press">
<action name="Focus"/>
<action name="Raise"/>
<action name="Unshade"/>
</mousebind>
<mousebind button="Left" action="Click">
<action name="ToggleMaximizeFull"/>
</mousebind>
<mousebind button="Middle" action="Click">
<action name="ToggleMaximizeVert"/>
</mousebind>
<mousebind button="Right" action="Click">
<action name="ToggleMaximizeHorz"/>
</mousebind>
</context>
<context name="Close">
<mousebind button="Left" action="Press">
<action name="Focus"/>
<action name="Raise"/>
<action name="Unshade"/>
</mousebind>
<mousebind button="Left" action="Click">
<action name="Close"/>
</mousebind>
</context>
<context name="Desktop">
<mousebind button="Up" action="Click">
<action name="DesktopPrevious"/>
</mousebind>
<mousebind button="Down" action="Click">
<action name="DesktopNext"/>
</mousebind>
<mousebind button="A-Up" action="Click">
<action name="DesktopPrevious"/>
</mousebind>
<mousebind button="A-Down" action="Click">
<action name="DesktopNext"/>
</mousebind>
<mousebind button="C-A-Up" action="Click">
<action name="DesktopPrevious"/>
</mousebind>
<mousebind button="C-A-Down" action="Click">
<action name="DesktopNext"/>
</mousebind>
<mousebind button="Left" action="Press">
<action name="Focus"/>
<action name="Raise"/>
</mousebind>
<mousebind button="Right" action="Press">
<action name="Focus"/>
<action name="Raise"/>
</mousebind>
</context>
<context name="Root">
<!-- Menus -->
<mousebind button="Middle" action="Press">
<action name="ShowMenu"><menu>client-list-combined-menu</menu></action>
</mousebind>
<mousebind button="Right" action="Press">
<action name="ShowMenu"><menu>root-menu</menu></action>
</mousebind>
</context>
<context name="MoveResize">
<mousebind button="Up" action="Click">
<action name="DesktopPrevious"/>
</mousebind>
<mousebind button="Down" action="Click">
<action name="DesktopNext"/>
</mousebind>
<mousebind button="A-Up" action="Click">
<action name="DesktopPrevious"/>
</mousebind>
<mousebind button="A-Down" action="Click">
<action name="DesktopNext"/>
</mousebind>
</context>
</mouse>
<menu>
<!-- Вы можете здесь указать более одного файла меню, и все они будут загружены,
только не создавайте меню ids clash or, well, это будет бессмысленно (будет некорректно отображаться) -->
<!-- по умолчанию, меню файлы (или любые другие пользовательские файлы OpenBox хранятся в $HOME/.config/openbox/) -->
<file>menu.xml</file>
<hideDelay>200</hideDelay>
<!-- если press-release длится дольше этих настроек (в миллисекундах), меню вновь скроется -->
<middle>no</middle>
<!-- централизовать подменю вертикально, относительно родительского меню
center submenus vertically about the parent entry -->
<submenuShowDelay>100</submenuShowDelay>
<!-- это просто, время задержки перед показом подменю, после выбора его из родительского меню -->
<applicationIcons>yes</applicationIcons>
<!-- controls, если иконки появятся в client-list-combined-menu -->
<manageDesktops>yes</manageDesktops>
<!-- показывать раздел управления рабочими столами в client-list-combined-menu -->
</menu>
<applications>
<!--
# это пример с комментариями, Вы можете использовать его как
# собственное правило, но разумеется без комментариев.
<application name="the window's _OB_NAME property (see obprop)"
class="the window's _OB_CLASS property (see obprop)"
role="the window's _OB_ROLE property (see obprop)"
type="the window's _NET_WM_WINDOW_TYPE (see obprob)..
(if unspecified, then it is 'dialog' for child windows)">
# можно указать имя или класс, либо и то и другое. Это используется для установки
# свойств окнам, при их появлении. Role устанавливается по желанию, для соотношения с
# определёнными параметрами.
# name, class, и role, используются для простой подстановки соответствующих значений, также,
# как например, в командной строке, используют символ «*», для подстановки любых символов и
# символ «?», для подстановки любого единственного символа.
# type соответствует одному из: normal, dialog, splash, utility, menu, toolbar, dock,
# or desktop # тут ясно, нормальный, диалог, заставка, утилита, меню, панель инструментов.
# если несколько правил соответствуют окну, они будут показаны в списке свойств,
# they will all be applied, in the order that they appear in this list
# каждый элемент можно «опустить» или присвоить значение 'default'
# для запрета на изменение этого элемента в окне
<decor>yes</decor>
# включить или отключить декорации окна
<shade>no</shade>
# сделать окно затенённым (скрутить), при его появлении.
<position force="no">
# position (позиция) используется лишь когда обе координаты x и y указаны
# (при этом не 'default')
# когда указано "yes", то окно будет помещено здесь (в этих координатах), даже если
# Вы захотите поместить его в другое место. Он переопределит buggy
# тех приложений, что откажутся так себя «ввести».
<x>center</x>
# например число 50, или 'center' для центрирования на экране. Используйте отрицательные
# числа для отсчёта с правой стороны (для отсчёта снизу <y>), т.е. -50 это 50 pixels с правой
# стороны (или снизу).
<y>200</y>
<monitor>1</monitor>
# выбрать монитор в xinerama setup.
# 1 начальный (основной), или 'mouse' — там где мышь
</position>
<focus>yes</focus>
# должна ли производится фокусировка на новом (появившимся) окне. Если указано
# да, то это не означает что окну передаться фокус
# могут быть ограничения, но Openbox постарается
<desktop>1</desktop>
# 1 это первый рабочий стол, 'all' все рабочие столы
<layer>normal</layer>
# 'above', 'normal', or 'below' # поверх, нормально, снизу
<iconic>no</iconic>
# сворачивать окна при их появлении, или нет
<skip_pager>no</skip_pager>
# asks to not be shown in pagers
<skip_taskbar>no</skip_taskbar>
# asks не будет показан в taskbars. window cycling actions также
# пропустит прошлые такие окна
<fullscreen>yes</fullscreen>
# запустить окно в полно экранном режиме, при его появлении
<maximized>true</maximized>
# 'Horizontal', 'Vertical' or boolean (yes/no)
</application>
# конец примера
-->
</applications>
</openbox_config>
http://ru.wikibooks.org/wiki/OpenBox_Bindings
http://ru.wikibooks.org/wiki/OpenBox_Action