Content-Type: text/x-zim-wiki
Wiki-Format: zim 0.6
Creation-Date: 2021-11-18T13:05:01+08:00

====== Openbox ======
Создан Четверг 18 ноября 2021

	Для изменения настроек openbox нужно редактировать файл (сохранив исходную копию):
''featherpad /home/vvv/.config/openbox/rc.xml''
	После изменения перезагрузить сеанс. Или, если настроена комбинация клавиш, выполнить Reconfigure.
	Если при редактировании допущены ошибки, Openbox об этом сообщит.

	[[./rc.xml|Мой файл для LXQt]]
	
	[[./lxde-rc.xml|Мой файл для LXDE]]

	[[http://openbox.org/wiki/Help:Actions#Window_actions|Источник]]

	[[./Help_Actions - Openbox.html|Сохраненный HTML]]

	Мой перевод:

=== Старые версии ===
Эта страница описывает Openbox 3.6.

=== Вступление ===
Действия используются как в привязках клавиш и мыши, так и в меню.

=== Синтаксис действий ===
Действия указываются с помощью тега <action> следующим образом:

__<action name="NAME">__
__OPTIONS__
__</action>__
NAME - это имя действия, как указано ниже, OPTIONS - это набор тегов, специфичных для каждого действия, также определенного ниже..

===== Global actions =====
Эти действия не используются для управления окнами. Таким образом, они работают независимо от того, находится ли окно в фокусе в данный момент или нет.

=== Execute ===
Запускает программу.

**Option	Default Value	Description**
__<command>	""__	Строка, которая представляет собой команду, которая должна быть выполнена, вместе с любыми аргументами, которые должны быть ей переданы. Символ тильды "~" будет преобразован в ваш домашний каталог, но никакие другие расширения оболочки или синтаксис сценария не могут использоваться в команде, если они не переданы команде sh. Кроме того, символ & должен быть записан как &amp; для правильного анализа. <execute> - устаревшее имя для <command>.
__<prompt>	none__	Строка, которую Openbox будет отображать во всплывающем диалоговом окне вместе с кнопками "Yes" и "No". Действие будет запущено только в том случае, если вы выберете кнопку "Yes" в диалоговом окне.

=== Startup notification ===
Вы можете использовать протокол уведомления о запуске, чтобы сообщить всем, что приложение запускается. Это можно использовать с большинством приложений, но не следует использовать с терминалами старого стиля типа xterm, urxvt, aterm и т.п., если вы не включите команду unset DESKTOP_STARTUP_ID в ваш сценарий запуска оболочки ~/.zshrc, ~/.bashrc или другой.

В уведомлении о запуске есть следующие параметры, которые включены в действие Execute в теге <startupnotify>:

**Option	Default Value	Description**
__<enabled>	no__	Логическое значение (yes/no), которое говорит, следует ли использовать протокол уведомления о запуске для уведомления других программ о запуске приложения. По умолчанию отключено, чтобы избежать его использования для терминалов старого стиля.
__<wmclass>	none__	Строка, определяющая одно из значений, которое будет в свойстве WM_CLASS окна приложения, когда оно появится. Это не требуется для приложений, поддерживающих протокол уведомления о запуске.
__<name>	none__	Имя запускаемого приложения. Если этот параметр не используется, то в качестве имени будет использоваться сама команда.
__<icon>	none__	Значок запускаемого приложения. Если этот параметр не используется, для выбора значка будет использоваться сама команда.

Примеры:

__<keybind key="W-t">__
__  <action name="Execute">__
	__<command>urxvt</command>__
__  </action>__
__</keybind>__

__<keybind key="W-space">__
__  <action name="Execute">__
	__<startupnotify>__
	__  <enabled>yes</enabled>__
	__  <name>Terminal</name>__
	__  <icon>konsole</icon>__
	__</startupnotify>__
	__<command>gnome-terminal</command>__
__  </action>__

  __<action name="Execute">__
	__<prompt>Are you sure you want to run a calculator!?</prompt>__
	__<startupnotify>__
	__  <enabled>yes</enabled>__
	__  <name>Calculator</name>__
	__  <wmclass>xcalc</wmclass>__
	__</startupnotify>__
	__<command>xcalc</command>__
__  </action>__
__</keybind>__

=== ShowMenu ===
Показать меню.

**Option	Default Value	Description**
__<menu>	""__	Имя отображаемого меню. Имена меню указываются в файле меню в атрибуте id тега <menu>.
__<position>__		Показать меню в указанной позиции на указанном мониторе, см. ниже.
Тег позиции имеет три вложенных тега, которые аналогичны тому, как работает тег позиции для каждого приложения. <x> и <y> определяют позицию и принимают либо значение в пикселях, либо строку «center», которая будет центрировать меню в этом положении, либо относительное значение, указанное в процентах или соотношении. Относительное значение интерпретируется с точки зрения монитора, на котором будет отображаться меню, и будет относиться к левому / верхнему краю окна меню и монитора для положительных значений и к правому / нижнему краю для отрицательных значений. Тег <monitor> может принимать одно из следующих значений: default, которое является значением по умолчанию, это также то же самое, что и указание основного в настоящее время, и означает, что меню будет отображаться на основном мониторе; мышь - это монитор, на котором находится указатель мыши; active - это монитор, на котором находится сфокусированный клиент, или основной монитор, если ни один из клиентов не сфокусирован; all заставит позиции относиться к всей рабочей области; любое целое число от 1 до количества имеющихся у вас мониторов поместит меню на монитор с этим номером.

Openbox предоставляет ряд встроенных меню:

* __client-list-combined-menu__ - Список всех окон на всех рабочих столах
* __client-list-menu__ - Список всех окон, разделенных на подменю рабочим столом
* __client-menu__ - Меню для управления окном, например, для его максимального увеличения или уменьшения
	Это меню будет отображаться с привязкой клавиш, если только окно приложения сфокусировано, и для привязок мыши, если событие мыши было в окне приложения (или его декорациях).
* __client-send-to-menu__ - Список рабочих столов. Когда один из них выбран, окно отправляется на рабочий стол.
	Это меню будет отображаться с привязкой клавиш, если только окно приложения сфокусировано, и для привязок мыши, если событие мыши было в окне приложения (или его декорациях).
* __client-layer-menu__ - Меню для выбора слоя наложения для окна, например, чтобы поместить его "always on top", например.
	Это меню будет отображаться с привязкой клавиш, если только окно приложения сфокусировано, и для привязок мыши, если событие мыши было в окне приложения (или его декорациях).
Кроме того, конфигурация по умолчанию предоставляет это меню в файле menu.xml:
* __root-menu__ - Пример меню, содержащего некоторые приложения и параметры для управления Openbox
Примеры:

__<keybind key="A-space">__
__  <action name="ShowMenu">__
	__<menu>client-menu</menu>__
__  </action>__
__</keybind>__

__<mousebind button="Right" action="Press">__
__  <action name="Activate"/>__
__  <action name="ShowMenu">__
	__<menu>client-menu</menu>__
__  </action>__
__</mousebind>__

__<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>__

__<keybind key="W-x">__
__  <action name="ShowMenu">__
	__<menu>programs</menu>__
	__<position>__
	__  <x>center</x>__
	__  <y>center</y>__
	__  <monitor>1</monitor>__
	__</position>__
__  </action>__
__</keybind>__

=== NextWindow ===
Циклически переключает фокус на следующее окно.

**Option	Default Value	Description**
__<dialog>	list__	Задает тип диалогового окна, отображаемого на экране, со значками для всех окон, на которых можно сфокусироваться. Возможные варианты: "list", "icons", or "none". Если выбрано "none", то диалоговое окно отображаться не будет.
__<bar>	yes__	Логическое значение (yes/no), которое указывает, отображается ли индикатор фокуса, выделяющий окно, на которое будет установлен фокус.
__<raise>	no__	Логическое значение (yes/no), которое указывает, поднимаются ли окна временно выше при циклическом перемещении по ним.
__<allDesktops>	no__	Логическое значение (yes/no), которое при включении позволяет переключать фокус между окнами на всех рабочих столах, а не только на текущем рабочем столе.
__<panels>	no__	Логическое значение (yes/no), которое при включении позволяет переключать фокус между окнами панели, такими как панель задач. Это можно комбинировать с <desktop>.
__<desktop>	no__	Логическое значение (yes/no), которое при включении позволяет переключать фокус на окно рабочего стола, если оно существует (например, в GNOME или KDE). Это можно комбинировать с <panels>.
__<linear>	no__	Логическое значение (yes/no), которое при включении вызывает циклическое переключение фокуса в фиксированном порядке, а не в том порядке, в котором окна были сфокусированы в последний раз.
__<interactive>	yes__	Логическое значение (yes/no), которое при отключении заставляет действие немедленно переключать фокус на следующую цель.
__<finalactions>	Focus, Raise, Unshade__	Список действий для запуска в окне, которые пользователь, в результате, выбирает с помощью этого действия.

Примеры:

__<keybind key="A-Tab">__
__  <action name="NextWindow"/>__
__</keybind>__
__<keybind key="C-A-Tab">__
__  <action name="NextWindow">__
	__<panels>yes</panels>__
	__<desktop>yes</desktop>__
__  </action>__
__</keybind>__

__<keybind key="W-Tab">__
__  <action name="NextWindow">__
	__<finalactions>__
	__  <action name="Focus"/>__
	__  <action name="Raise"/>__
	__  <action name="Unshade"/>__
	__  <action name="MoveResizeTo">  <!-- центрировать окно, на котором устанавливается фокус -->__
		__<x>center</x>__
		__<y>center</y>__
	__  </action>__
	__</finalactions>__
__  </action>__
__</keybind>__

=== PreviousWindow ===
Циклический переход к предыдущему окну. Принимает те же параметры, что и NextWindow.

=== DirectionalCycleWindows ===
Циклически переключает фокус на окно в направлении, указанном для текущего окна с фокусом.

**Option	Default Value	Description**
__<direction>	north__	В каком направлении следует переключать фокусировку. Может быть "north", "northeast", "east", "southeast", "south", "southwest", "west" или "northwest".
__<dialog>	yes__	Логическое значение (yes/no), которое указывает, отображается ли на экране диалоговое окно с именем и значком окна, на которое будет сфокусирован фокус.
__<bar>	yes__	Логическое значение (yes/no), которое указывает, отображается ли индикатор фокуса, выделяющий окно, на которое будет сфокусирован фокус.
__<raise>	no__	Логическое значение (yes/no), которое указывает, поднимаются ли окна временно выше при циклическом перемещении по ним.
__<finalactions>	Focus, Raise, Unshade__	Список действий для запуска в окне, которые пользователь, в результате, выбирает с помощью этого действия.
__<panels>	no__	Логическое значение (yes/no), которое указывает, должны ли окна панели быть выбираемыми.
__<desktops>	no__	Логическое значение (yes/no), которое указывает, следует ли выбирать окна рабочего стола.

Примеры:

__<keybind key="W-Up">__
__  <action name="DirectionalalCycleWindows"><direction>north</direction><dialog>yes</dialog></action>__
__</keybind>__
__<keybind key="W-S-Down">__
__  <action name="DirectionalFocus">__
	__<direction>south</direction>__
	__<finalactions>__
	__  <action name="Focus"> <!-- сфокусировать, не поднимая окна -->__
	__  <action name="Unshade">__
	__</finalactions>__
__  </action>__
__</keybind>__

=== DirectionalTargetWindow ===
Перемещает фокус на окно в направлении, указанном для текущего окна с фокусом. Это похоже на действие DirectionalFocusCycle, но оно перемещает фокус мгновенно, а не позволяет вам интерактивно выбирать окно. Принимает те же параметры, за исключением <dialog> и <bar>.

Примеры:

__<keybind key="W-Up">__
__  <action name="DirectionalTargetWindow"><direction>north</direction></action>__
__</keybind>__
__<keybind key="W-S-Down">__
__  <action name="DirectionalTargetWindow">__
	__<direction>south</direction>__
	__<finalactions>__
	__  <action name="Focus"> <!-- сфокусировать, не поднимая окна -->__
	__  <action name="Unshade">__
	__</finalactions>__
__  </action>__
__</keybind>__

=== GoToDesktop ===
Изменяет видимый рабочий стол.

**Option	Default Value	Description**
__<to>	current__	Рабочий стол, на который нужно переключиться, начиная с 1 или одного из следующих специальных значений: "current", "next", "previous", "last", "north" или "up", "south" или "down", "west" или "left", "east" или "right".
__<wrap>	yes__	Логическое значение (yes/no), которое при включении позволяет переходить от последнего рабочего стола к первому, west к east, north к south и т.д., и наоборот.
Значение "last" для опции <to> означает переход к рабочему столу, на котором вы были до текущего. Запоминается только один рабочий стол, но есть тайм-аут, поэтому, если вы пройдете мимо нескольких рабочих столов, вы перейдете к тому, на котором действительно были раньше. Это полезно, если вы переключаетесь между двумя рабочими столами, переходя к следующему или предыдущему рабочему столу несколько раз, например, с помощью колеса прокрутки. Тайм-аут составляет 750 мс и не может быть настроен в настоящее время.

Примеры:

__<keybind key="W-F1">__
__  <action name="GoToDesktop"><to>1</to></action>__
__</keybind>__

__<keybind key="W-BackSpace">__
__  <action name="GoToDesktop"><to>last</to></action>__
__</keybind>__

__<keybind key="W-A">__
__  <action name="GoToDesktop"><to>next</to><wrap>no</wrap></action>__
__</keybind>__

=== AddDesktop ===
Создает новый рабочий стол в указанном месте.

**Option	Default Value	Description**
__<where>	last__	Может быть "current" (добавить новый рабочий стол перед текущим и перетасовать рабочие столы после его завершения) или "last" (добавить новый рабочий стол после последнего).

Примеры:

__<keybind key="W-F12">__
__  <action name="AddDesktop">__
	__ <where>current</where>__
__  </action__
__</keybind>__

=== RemoveDesktop ===
Удалить рабочий стол в указанном месте и переместить окна на нем на следующий после него (или до него, если удаленный рабочий стол является последним).

**Option	Default Value	Description**
__<where>	last__	Может быть "current" (удалить текущий рабочий стол и перетасовать рабочие столы после его завершения) или "last" (удалить последний рабочий стол).

Примеры:

__<keybind key="W-F11">__
__  <action name="RemoveDesktop"/>__
__</keybind>__

=== ToggleShowDesktop ===
Скрывает все окна, чтобы рабочий стол был виден, и дает фокус окну рабочего стола, если оно существует (например, в GNOME и KDE). Вы также можете использовать действие еще раз, чтобы снова отобразить окна, чтобы они стали видимыми.

**Option	Default Value	Description**
__<strict>	"no"__	Логическое значение (yes/no), которое указывает, разрешено ли окнам показывать себя в режиме «Показать рабочий стол». В режиме strict - не могут.

Примеры:

__<keybind key="W-d">__
__  <action name="ToggleShowDesktop"/>__
__</keybind>__

=== ToggleDockAutohide ===
Временно переключает настройку автоматического скрытия на док-панели. Это фактически означает, что вы можете показать / скрыть док-панель с помощью привязки клавиш.

Примеры:

__<keybind key="C-A-d">__
__  <action name="ToggleDockAutohide"/>__
__</keybind>__

=== Reconfigure ===
Предлагает Openbox перезагрузить файл конфигурации, меню и тему.

Примеры:

__<!-- Reconfigure Openbox -->__
__  <keybind key="W-S-r">__
__    <action name="Reconfigure"/>__
__  </keybind>__

=== Restart ===
Перезапускает Openbox. Это запускает новую копию Openbox, и ее можно использовать для обновления до новой установленной версии без выхода из сеанса X. Его также можно использовать для запуска другого оконного менеджера.

**Option	Default Value	Description**
__<command>	""__	Строка, которая представляет собой команду, которая должна быть выполнена в качестве нового оконного менеджера, вместе с любыми аргументами, которые должны быть ей переданы.

Примеры:

__<keybind key="W-F12">__
__  <action name="Restart"/>__
__</keybind>__
__<keybind key="W-F11">__
__  <action name="Restart"><command>firebox</command></action>__
__</keybind>__

=== Exit ===
Выход из Openbox.

Если Openbox построен с поддержкой сеансов и работает внутри диспетчера сеансов (например, gnome-session, ksmserver), то Openbox попросит диспетчер сеанса выйти из системы. В противном случае Openbox просто выйдет, завершив текущий сеанс X.

**Option	Default Value	Description**
__<prompt>	true__	Логическое значение (yes/no), которое указывает, должен ли Openbox отображать диалоговое окно с запросом, действительно ли вы хотите выйти, прежде чем действительно выйти.

Примеры:

__<keybind key="C-A-S-F12">__
__  <action name="Exit">__
	__<prompt>yes</prompt>__
__  </action>__
__</keybind>__

=== SessionLogout ===
Это синоним действия Exit.

=== Debug ===
Распечатывает строку в выводе Openbox для целей отладки.

**Option	Default Value	Description**
__<string>	""__	Строка, которую нужно распечатать.

Примеры:

__<keybind key="W-F10">__
__  <action name="Debug">__
__   <string>-------------------------------</string>__
__  </action>__
__</keybind>__

===== Window actions =====
Эти действия используются для управления окнами. Для привязок клавиш они работают с текущим фокусным окном. Для привязки мыши они работают с окном, которое кликают / перетаскивают.

=== Focus ===
Фокусирует окно.

Примеры:

__<mousebind button="A-Left" action="Press">__
__  <action name="Focus"/>__
__  <action name="Raise"/>__
__</mousebind>__

=== Raise ===
Поднимает окно над другими окнами в своем слое (их 3, см. ниже).

Примеры:

__<mousebind button="A-Left" action="Press">__
__  <action name="Focus"/>__
__  <action name="Raise"/>__
__</mousebind>__

=== Lower ===
Опускает окно ниже других окон в своем слое.

Примеры:

__<mousebind button="A-Middle" action="Press">__
__  <action name="Lower"/>__
__  <action name="FocusToBottom"/>__
__  <action name="Unfocus"/>__
__</mousebind>__

=== RaiseLower ===
Поднимает окно, если оно в данный момент находится за другими окнами в своем слое. Опускает окно, если оно находится над всеми остальными окнами в своем слое.

Примеры:

__<keybind key="C-A-r">__
__  <action name="RaiseLower"/>__
__</keybind>__

=== Unfocus ===
Сдвинуть фокус с окна. Обычно используется вместе с FocusToBottom.

Примеры:

__<mousebind button="A-Middle" action="Press">__
__  <action name="Lower"/>__
__  <action name="FocusToBottom"/>__
__  <action name="Unfocus"/>__
__</mousebind>__

=== FocusToBottom ===
Перемещает окно в конец списка недавно использованных окон. Это означает, что другим окнам будет отдано предпочтение при выборе окна для фокусировки. Обычно используется вместе с Unfocus.

Примеры:

__<keybind key="A-Escape">__
__  <action name="Lower"/>__
__  <action name="FocusToBottom"/>__
__  <action name="Unfocus"/>__
__</keybind>__

=== Iconify ===
Минимизирует (сворачивает) окно.

Примеры:

__<mousebind button="Left" action="Click">__
__  <action name="Iconify"/>__
__</mousebind>__

=== Close ===
Закрывает окно.

Примеры:

__<keybind key="A-F4">__
__  <action name="Close"/>__
__</keybind>__

=== ToggleShade ===
Свернуть окно в заголовок. Если было свернуто, развернуть его.

Примеры:

__<mousebind button="Left" action="Click">__
__  <action name="ToggleShade"/>__
__</mousebind>__

=== Shade ===
Свернуть окно в заголовок.

Примеры:

__<mousebind button="Up" action="Click">__
__  <action name="Shade"/>__
__  <action name="FocusToBottom"/>__
__  <action name="Unfocus"/>__
__</mousebind>__

=== Unshade ===
Развернуть окно, если оно было свернуто в заголовок.

Примеры:

__<mousebind button="A-Left" action="Click">__
__  <action name="Unshade"/>__
__</mousebind>__

=== ToggleOmnipresent ===
Сделать окно видимым на всех рабочих столах, если это еще не сделано. В противном случае сделать его видимым только на текущем рабочем столе.

Примеры:

__<mousebind button="Left" action="Click">__
__  <action name="ToggleOmnipresent"/>__
__</mousebind>__

=== ToggleMaximize ===
Развернуть окно, чтобы заполнить весь экран в указанных направлениях. Если оно уже развернуто, вернуть ему исходные размеры.

**Option	Default Value	Description**
__<direction>	both__	Направления для разворачивания окна м.б. "both", "horizontal" или "vertical".

Примеры:

__<mousebind button="Left" action="Click">__
__  <action name="ToggleMaximize"/>__
__</mousebind>__

__<mousebind button="Middle" action="DoubleClick">__
__  <action name="ToggleMaximize"><direction>horizontal</direction></action>__
__</mousebind>__

=== Maximize ===
Развернуть окно, чтобы заполнить весь экран в указанных направлениях.

**Option	Default Value	Description**
__<direction>	both__	Направления для разворачивания окна м.б. "both", "horizontal" или "vertical".

Примеры:

__<keybind key="A-F6">__
__  <action name="Maximize"/>__
__</keybind>__

=== Unmaximize ===
Выводит окно из развернутого состояния в указанном направлении и возвращает его к прежним размерам.

**Option	Default Value	Description**
__<direction>	both__	Направления для возврата из режима разворачивания окна м.б. "both", "horizontal" или "vertical".

Примеры:

__<keybind key="A-F7">__
__  <action name="Unmaximize"/>__
__</keybind>__

=== ToggleFullscreen ===
Сделать окно полноэкранным, заполняя весь монитор, без каких-либо декораций. Если окно уже развернуто в полноэкранном режиме, оно возвращается к исходным размерам, которые были до полноэкранного режима.

Примеры:

__<keybind key="A-F12">__
__  <action name="ToggleFullscreen"/>__
__</keybind>__

=== ToggleDecorations ===
Удалить декорации окна. Если опция конфигурации <keepBorder> включена (как в конфигурации по умолчанию), тогда рамка будет оставлена как единственная декорация вокруг окна. Если с окна уже были удалены декорации, это их восстановит.

Примеры:

__<keybind key="A-S-d">__
__  <action name="ToggleDecorations"/>__
__</keybind>__

=== Decorate ===
Придать окну его обычные декорации.

Примеры:

__<keybind key="C-S-d">__
__  <action name="Decorate"/>__
__</keybind>__

=== Undecorate ===
Удалить декорации окна. Если опция конфигурации <keepBorder> включена (как в конфигурации по умолчанию), тогда рамка будет оставлена как единственная декорация вокруг окна.

Примеры:

__<keybind key="C-S-d">__
__  <action name="Undecorate"/>__
__</keybind>__

=== SendToDesktop ===
Переместить окно на другой рабочий стол

**Option	Default Value	Description**
__<to>	current__	Рабочий стол, на который нужно отправить окно, начиная с 1 или одного из следующих специальных значений: "current", "next", "previous", "last", "north" или "up", "south" или "down", "west" или "left", "east" или "right".
__<wrap>	yes__	Логическое значение (yes/no), которое при включении позволяет переходить от последнего рабочего стола к первому, от west к east, от north к south и т.д., и наоборот.
__<follow>	yes__	Логическое значение (yes/no), которое при включении также переключит на указанный рабочий стол.

Примеры:

__<keybind key="W-S-F1">__
__  <action name="SendToDesktop"><to>1</to></action>__
__</keybind>__

__<keybind key="W-S-BackSpace">__
__  <action name="SendToDesktop"><to>last</to></action>__
__</keybind>__

__<!-- Прокруть все окна и сфокусировать выбранное на текущем рабочем столе. -->__
__<keybind key="W-S-Tab">__
__  <action name="NextWindow">__
	__<allDesktops>yes</allDesktops>__
	__<finalactions>__
	__  <action name="SendToDesktop"><to>current</to></action>__
	__  <action name="focus"/>__
	__  <action name="raise"/>__
	__</finalactions>__
__  </action__
__</keybind>__

См. также GoToDesktop.

=== Move ===
Начать интерактивное перемещение окна. Как только движение началось, вы можете перемещать окно указателем мыши или используя клавиши со стрелками. Перемещение завершится, когда вы отпустите кнопку мыши или нажмете клавишу Enter. Нажатие Escape отменит перемещение.

Примеры:

__<mousebind button="A-Left" action="Drag">__
__  <action name="Move"/>__
__</mousebind>__

=== Resize ===
Начать интерактивное изменение размеров окна. После начала изменения размера вы можете изменить размер окна указателем мыши или используя клавиши со стрелками. Перемещение завершится, когда вы отпустите кнопку мыши или нажмете клавишу Enter. Нажатие Escape отменит изменение размеров.

Если изменение размера привязано к кнопке мыши, то угол / край окна, размер которого изменяется, выбирается ближайшим к указателю мыши. Вы можете использовать параметр <edge>, чтобы переопределить это и указать, какой именно угол / край следует использовать.

**Option	Default Value	Description**
__<edge>	none__	Одно из значений: "top", "left", "right", "bottom", "topleft", "topright", "bottomleft", "bottomright". Это указывает, какой угол / край следует использовать, и отменяет динамическое определение края, ближайшего к указателю мыши.

Примеры:

__<mousebind button="A-Right" action="Drag">__
__  <action name="Resize"/>__
__</mousebind>__

=== MoveResizeTo ===
Перемещение и / или изменение размера окна.

**Option	Default Value	Description**
__<x>	current__	Положение, в которое нужно переместить окно. current определяет текущую x-позицию окна. center перемещает окно в центр экрана по горизонтали. Число указывает абсолютную позицию, в которую нужно переместить окно. Отрицательное значение указывает расстояние от правого края экрана (например, -2 - это 2 пикселя от правого края). Используйте + -, чтобы указать отрицательное положение относительно левого края (например, + -10 - это 10 пикселей от экрана с левой стороны), и -, чтобы указать отрицательное положение относительно правого края (например, --5 равно 5. пикселей за пределами экрана с правой стороны).
__<y>	current__	Положение, в которое нужно переместить окно. current определяет текущую y-позицию окна. center перемещает окно в центр экрана по вертикали. Число указывает абсолютную позицию, в которую нужно переместить окно. Отрицательное значение указывает расстояние от нижнего края экрана (например, -2 - это 2 пикселя от нижнего края). Используйте + -, чтобы указать отрицательное положение относительно верхнего края (например, + -10 - это 10 пикселей от верхнего края экрана), и -, чтобы указать отрицательное положение относительно нижнего края (например, --5 это 5 пикселей. в нижней части экрана).
__<width>	current__	Ширина, на которую нужно изменить размер окна. current определяет текущую ширину окна. Число указывает желаемую ширину окна. Вы также можете указать ширину в виде дроби или процента, например, 50% или 7/8. Если client = "yes" указан как атрибут, то размер определяет размер окна приложения внутри декораций. По умолчанию декорации включены в размер.
__<height>	current__	Высота, на которую нужно изменить размер окна. current определяет текущую высоту окна. Число указывает желаемую высоту окна. Вы также можете указать ширину в виде дроби или процента, например, 50% или 7/8. Если client = "yes" указан как атрибут, то размер определяет размер окна приложения внутри декораций. По умолчанию декорации включены в размер.
__<monitor>	current__	Монитор, на который нужно переместить окно (в настройках Xinerama / TwinView с несколькими мониторами). current указывает текущий монитор окна. all указывает использовать все мониторы вместе. next указывает, что окно нужно переместить на следующий монитор относительно того, на котором оно находится в данный момент. prev указывает, что окно нужно переместить на предыдущий монитор относительно того, на котором оно находится в данный момент. Число указывает желаемый монитор (начиная с 1).

Примеры:

__<keybind key="W-2">__
__  <action name="MoveResizeTo">__
	__<!-- move the window to the second monitor -->__
	__<monitor>2</monitor>__
__  </action>__
__</keybind>__

__<keybind key="W-F10">__
__  <action name="MoveResizeTo">__
	__<!-- put the window in the bottom right corner -->__
	__<x>-0</x>__
	__<y>-0</y>__
__  </action>__
__</keybind>__

__<keybind key="W-c">__
__  <action name="MoveResizeTo">__
	__<!-- center the window on the first monitor -->__
	__<x>center</x>__
	__<y>center</y>__
	__<monitor>1</monitor>__
__  </action>__
__</keybind>__

__<keybind key="C-A-1">__
__  <action name="MoveResizeTo">__
	__<!-- adjust a window's height -->__
	__<width client="yes">1/2</width>__
	__<height>300</height>__
__  </action>__
__</keybind>__

=== MoveRelative ===
Перемещать окно на величину приращения относительно его текущего положения.

**Option	Default Value	Description**
__<x>	0__	Величина перемещения окна в горизонтальном направлении. Положительное значение перемещает его вправо, а отрицательное значение - влево.
__<y>	0__	Величина перемещения окна в вертикальном направлении. Положительное значение сдвигает его вниз, а отрицательное - вверх.

Примеры:

__<keybind key="W-Right">__
__  <action name="MoveRelative">__
	__<x>5</x>__
	__<y>0</y>__
__  </action>__
__</keybind>__

__<keybind key="W-Up">__
__  <action name="MoveRelative">__
	__<x>0</x>__
	__<y>-5</y>__
__  </action>__
__</keybind>__

=== ResizeRelative ===
Изменить размер окна на величину приращения относительно его текущего размера.

**Option	Default Value	Description**
__<left>	0__	Величина, на которую нужно изменить размер левого края окна. Положительное значение перемещает левый край влево, увеличивая окно. Отрицательное значение перемещает край вправо, уменьшая окно.
__<right>	0__	Величина, на которую нужно изменить размер правого края окна. Положительное значение перемещает правый край вправо, увеличивая окно. Отрицательное значение перемещает край влево, уменьшая окно.
__<top>	0__	Величина, на которую нужно изменить размер верхнего края окна. Положительное значение перемещает верхний край вверх, увеличивая окно. Отрицательное значение сдвигает край вниз, уменьшая окно.
__<bottom>	0__	Величина, на которую нужно изменить размер нижнего края окна. Положительное значение сдвигает нижний край вниз, увеличивая окно. Отрицательное значение сдвигает край вверх, уменьшая окно.

Примеры:

__<keybind key="W-Down">__
__  <action name="ResizeRelative">__
	__<bottom>5</bottom>__
__  </action>__
__</keybind>__

__<keybind key="W-S-Down">__
__  <action name="ResizeRelative">__
	__<bottom>-5</bottom>__
__  </action>__
__</keybind>__

=== MoveToEdge ===
Перемещает окно к ближайшему краю в указанном направлении. Края - это внешние края других окон, края монитора в настройках с несколькими мониторами или границы рабочего стола.

**Option	Default Value	Description**
__<direction>	north__	Направления перемещения окна м.б. "north", "south", "west" или "east".

Примеры:

__<keybind key="W-Left">__
__  <action name="MoveToEdge"><direction>west</direction></action>__
__</keybind>__

=== GrowToEdge ===
Увеличивает окно, пока оно не коснется ближайшего края в указанном направлении. Края - это внешние края других окон, края монитора в настройках с несколькими мониторами или границы рабочего стола. Если край окна уже находится на краю экрана, вместо этого оно уменьшается.

**Option	Default Value	Description**
__<direction>	north__	Направления перемещения окна м.б. "north", "south", "west" или "east".

Примеры:

__<keybind key="C-Right">__
__  <action name="GrowToEdge"><direction>west</direction></action>__
__</keybind>__

=== GrowToFill ===
Увеличивает окно во всех направлениях, но не пересекает края, пока все края не коснутся чего-то другого.

=== ShrinkToEdge ===
Сжимает окно, пока оно не коснется ближайшего края в указанном направлении. Края - это внешние края других окон, края монитора в настройках с несколькими мониторами или границы рабочего стола. Если края не обнаружены, размер окна уменьшается вдвое.

**Option	Default Value	Description**
__<direction>	north__	Направления сжатия окна м.б. "north", "south", "west" или "east".

Примеры:

__<keybind key="C-Right">__
__  <action name="GrowToEdge"><direction>west</direction></action>__
__</keybind>__

=== If ===
Это действие позволяет вам делать разные вещи в зависимости от различных условий. Базовая структура:

__<action name="If">__
__  <query target="default">__
	__<somecondition>value of condition</somecondition>__
	__<someothercondition>value of condition</someothercondition>__
__  </query>__
__  <then>__
	__... список действий для выполнения, если true__
__  </then>__
__  <else>__
	__... список действий для выполнения, если false__
__  </else>__
__</action>__

Целью тега запроса может быть"default" или "focus", и в одном действии If может присутствовать несколько тегов запроса. "default" означает проверку условий для любого окна, в то время как "focus" всегда проверяет соответствие с окном, которое в настоящее время имеет фокус. Они отличаются, например, во время циклического переключения фокуса или когда используется действие ForEach.

Список условий:

**Condition	Description**
__<shaded>	yes/no__: окно свернуто в заголовок или нет
__<maximized>	yes/no__
__<maximizedhorizontal>	yes/no__
__<maximizedvertical>	yes/no__
__<iconified>	yes/no__: окно свернуто в панель или нет.
__<focused>	yes/no__: окно - это окно в фокусе или нет. Может быть неверно во время циклического переключения фокуса или в заключительных действиях цикла фокусирования.
__<urgent>	yes/no__: в окне установлен флаг urgent (также известный как DEMANDS_ATTENTION).
__<undecorated>	yes/no__: скрыты декорации или нет.
__<omnipresent>	yes/no__: окно видно на всех раб.столах или нет.
__<activedesktop>__	Рабочий стол, который в данный момент активен. Это может быть только число.
__<desktop>__	Рабочий стол, на котором в данный момент находится клиент. Это может быть номер рабочего стола или специальные значения "current" или "other".
__<monitor>__	Соответствует монитору, на котором в данный момент находится клиент (большая часть области выигрывает, если захватывает несколько мониторов).
__<title> or <title type="pattern">__	A wildcard pattern to match against the window title, like "* - Mozilla Firefox".
__<title type="regex">__	Шаблон подстановки для сопоставления с заголовком окна, например "- Mozilla Firefox$".
__<title type="exact">__	То же, что и выше, но строка должна точно совпадать (с учетом регистра).
__<class>, <name>, <role>, <type>__	Работает как тег <title> и принимает параметр type, but но сопоставляется с параметрами окна class, name, role и type, соответственно.

Примеры:

__<!-- это соответствует действиям ShadeLower и UnshadeRaise из Openbox 3.4. -->__
__<mousebind button="Up" action="Click">__
__  <action name="If">__
	__<query>__
	__  <shaded>yes</shaded>__
	__</query>__
	__<then>__
	__  <action name="Lower"/>__
	__</then>__
	__<else>__
	__  <action name="Shade"/>__
	__</else>__
__  </action>__
__</mousebind>__

__<mousebind button="Down" action="Click">__
__  <action name="If">__
	__<query>__
	__  <shaded>no</shaded>__
	__</query>__
	__<then>__
	__  <action name="Raise"/>__
	__</then>__
	__<else>__
	__  <action name="Unshade"/>__
	__</else>__
__  </action>__
__</mousebind>__

=== ForEach ===
Это действие имеет тот же синтаксис, что и действие If, но выполняется для каждого клиентского окна на каждом рабочем столе, а не только для текущего окна.

=== Stop ===
Начиная с Openbox 3.6.1: Stop завершит выполнение только родительского элемента, который непосредственно содержит Stop. Если существует родительский элемент (через иерархическое вложение через If или ForEach), выполнение этого родительского элемента будет (что удивительно!) продолжаться. Кроме того, если ForEach содержит If (или несколько вложенных If), и если одно из этих If содержит Stop, то этот Stop вызовет выход этого ForEach после завершения текущей итерации.

Начиная с Openbox 3.6.1: если родительский ForEach содержит дочерний ForEach, содержащий Stop, Openbox может навсегда заблокироваться и зависнуть. Это баг.

Stop не требует аргументов.

Один из способов - использовать Stop в конце ForEach. В этом шаблоне действия в ForEach будут применяться только к первому клиенту, который соответствует запросу ForEach.

=== ToggleAlwaysOnTop ===
Сделать окно всегда над другими окнами в слое "always on top". Если окно уже было настроено так, чтобы оно было выше других окон, возвращает окно в порядок наложения с обычными окнами.

Примеры:

__<keybind key="W-F8">__
__  <action name="ToggleAlwaysOnTop"/>__
__</keybind>__

=== ToggleAlwaysOnBottom ===
Сделать окно всегда ниже других окон в слое"always on bottom". Если окно уже было настроено так, чтобы оно находилось ниже других окон, возвращает окно в порядок наложения с обычными окнами.

Примеры:

__<keybind key="W-F5">__
__  <action name="ToggleAlwaysOnBottom"/>__
__</keybind>__

=== SendToLayer ===
Перемещает окно на указанный слой.

**Option	Default Value	Description**
__<layer>	normal__	Слой, в который будет помещено окно. Это может быть слой "top", который появляется поверх всех других окон, кроме полноэкранных окон, слой "normal" или слой "bottom", который появляется под всеми другими окнами.

Примеры:

__<keybind key="W-F7">__
__  <action name="SendToLayer"><layer>top</layer></action>__
__</keybind>__

