OpenBox Action

Материал из Викиучебника — открытых книг для открытого мира

Глобальные действия (Global actions)
[править]

Эти действия не используются для манипуляции окнами. Как таковые они выполняются вне зависимости от того сфокусировано окно или нет.


Execute
Запуск программ (команд)
{прим. изложенса; Сразу определимся, я не могу назвать это переводом оригинала, это то как я понимаю оригинал, и то как у меня получилось его пересказать на русский язык. В фигурных скобках, {}, я буду выражать свои замечания, и обзову всё это дело примечанием изложенса :). Вот оригинальные обозначения и моя интерпретация их:
Option — Параметр
Default Value — Значение, по умолчанию
Description — Описание
Ну, остальное по ходу}

Параметр Значение, по умолчанию Описание
<command> "" Строка, представляющая собой исполняемую команду, а также любые аргументы передаваемые ей. Символ тильда "~" будет означать Ваш домашний каталог. Разрешено использовать синтаксис и команды исключительно Bourne shell (sh). А также символ & должен быть записан в виде «&amp»; для корректной обработки.

<execute> - это устаревшее название <command>.

<prompt> none Строка, которую OpenBox будет отображать в сплывающем диалоге (popup dialog), вместе с кнопками "Yes" и "No". Действие будет выполнено лишь в том случае, если Вы выберите в диалоге, кнопку "Yes". (начиная с версии 3.4.7)



Startup notification

Уведомления о запуске

Вы можете использовать протокол уведомлений о запуске, для оповещения (информирования) кого угодно о запуске программы. Его можно использовать с большинством приложений, но не следует использовать с X-терминалами старого стиля (old-style xterminals), такими как xterm, urxvt, aterm, и тому подобных, за исключением {прим. изложенца. я не совсем уверен в правильности перевода этого предложения}, если у Вас включена команда unset DESKTOP_STARTUP_ID в параметрах оболочки shell's ~/.zshrc, ~/.bashrc или эквивалентном стартовом скрипте.

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

Параметр Значение, по умолчанию Описание
<enabled> no A boolean (yes/no), определяет следует ли использовать протокол уведомления о запуске {прим.изложенца. Остальную часть предложения я посчитал тавтологией}. Отключено, для избежания использования с x-терминалами старого стиля.
<wmclass> none Строка определяющая одно из значений свойств окна приложения WM_CLASS, при его появлении. Этот параметр, не требуется приложениям поддерживающим протокол уведомления о запуске (т. е. это нужно x-терминалам старого стиля). (С версии 3.4.6)
<name> none Название запущенного приложения. Если этот параметр не используется, то сама команда будет использоваться в качестве имени.
<icon> none Значок запущенного приложения. Если этот параметр не используется, то сама команда будет использоваться для выбора значка (will be used to pick the icon).

Пример:

<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

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

Параметр Значение, по умолчанию Описание
<menu> "" Имя меню, которое следует отобразить. Имя меню, указывается в файле меню, следующим образом: <menu id=my-menu label=personal>. Где id — это имя меню, а label — это то название, которое будетотображено.

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

client-list-combined-menu — Список всех окон, на всех рабочих столах. http://www.imageup.ru/img57/client-list-combined-menu261026.jpg.html

client-list-menu - список всех окон, разделённый на подпункты (подменю) по рабочим столам. http://www.imageup.ru/img57/client-list-menu-1261027.jpg.html http://www.imageup.ru/img57/client-list-menu-2261028.jpg.html

client-menu — меню управления окнами, например: свернуть и максимилизировать.

Это меню будет показано, только для привязки клавиш, если окно приложения сфокусировано, а для привязки мыши, если указатель находится на окне (или на декорациях) http://www.imageup.ru/img57/client-menu261029.jpg.html

client-send-to-menu — Список рабочих столов. Если выбрать один из них, то активное окно будет перемещено на соответствующий рабочий стол.

Это меню будет показано при привязке клавиш, если фокус на окне приложения, и для привязки мыши, если мышь на окне приложения (или его декорациях). http://www.imageup.ru/img57/client-send-to-menu261030.jpg.html

client-layer-menu - Меню для выбора положения (слоя) окна, например «всегда наверху»

Это меню будет показано, только при привязке клавиш, если окно приложения сфокусировано, а для привязки мыши, если указатель находится на окне (или на декорациях) http://www.imageup.ru/img57/client-layer-menu261031.jpg.html

В дополнение, конфигурация по умолчанию, предоставляет root-menu, в файле menu.xml:

root-menu — меню (по умолчанию, образец) содержащее некоторые приложения и параметры управления Openbox http://www.imageup.ru/img57/root-menu261032.jpg.html

Пример:

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



NextWindow

Передать фокус на следующее окно.

Параметр Значение, по умолчанию Описание
<dialog> yes (yes/no) определяет должно ли быть показано диалоговое окно с иконками всех окон, которым можно передать фокус (сфокусироваться).
<bar> yes (yes/no), определяет, следует ли показывать индикатор фокуса, с выделением того окна, на которое будет передан фокус. (As of version 3.4.6)
<raise> no (yes/no), определяющее, должно ли окно временно поднято вверх во время прохождения цикла, через него {прим. изложенса; будет показано то окно, на которое будет передан фокус} . (As of version 3.4.6)
<allDesktops> no (yes/no), при включённом параметре, позволяет осуществлять фокус-цикл между окнами на всех рабочих столах, а не только на текущем рабочем столе. {прим. изложенса; лучше использовать с <dialog>}
<panels> no (yes/no), при включённом параметре, позволяет осуществлять Вам цикл между панелью окон, например Вашей панелью задач (taskbar). Этот параметр может быть объединён с <desktop>.
<desktop> no (yes/no), при включённом параметре, позволяет осуществлять фокус-цикл окон рабочего стола, если оно существует, если оно существует (например в GNOME или KDE). Этот параметр может быть объединён с <panels>. {прим. изложенса; не пробовал}
<linear> no (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">  <!-- center the window which we're focusing -->
        <x>center</x>
        <y>center</y>
      </action>
    </finalactions>
  </action>
</keybind>



PreviousWindow

Фокус-цикл previous window (предыдущего окна) имеет те же параметры, что и NextWindow.



DirectionalFocusNorth Передать фокус окну, находящемуся к северу, от ныне сфокусированного окна.

Параметр Значение, по умолчанию Описание
<dialog> yes (yes/no) определяет должно ли быть показано диалоговое окно с иконками всех окон, которым можно передать фокус (сфокусироваться).
<bar> yes (yes/no), определяет, следует ли показывать индикатор фокуса, с выделением того окна, на которое будет передан фокус. (As of version 3.4.6)
<raise> no (yes/no), определяющее, должно ли окно временно поднято вверх во время прохождения цикла, черезнего {прим. изложенса; будет показано то окно, на которое будет передан фокус} . (As of version 3.4.6)
<finalactions> Focus, Raise, Unshade Список действие, которые следует выполнить при передачи фокуса окну.


Пример:

<keybind key="W-Up">
  <action name="DirectionalFocusNorth"><dialog>yes</dialog></action>
</keybind>
<keybind key="W-S-Up">
  <action name="DirectionalFocusNorth">
    <finalactions>
      <action name="Focus"> <!-- give focus without raising the window -->
      <action name="Unshade">
    </finalactions>
  </action>
</keybind>

{прим. изложенса; я думаю тут всё понятно. Система координат отсчитывается от сфокусированного, в данный момент окна. North — Север (вверх)
South — Юг (низ)
West — Запад (право)
East — Восток (лево)
}


Ряд остальных действий имеет такие же параметры, как DirectionalFocusNorth, и их описание аналогично, поэтому я просто их перечислю: DirectionalFocusSouth

DirectionalFocusEast

DirectionalFocusWest

DirectionalFocusNorthWest

DirectionalFocusNorthEast

DirectionalFocusSouthWest

DirectionalFocusSouthEast



DirectionalTargetNorth

Передать фокус окну, находящемуся к северу, от ныне сфокусированного окна. Это схоже с действием DirectionalFocusNorth, но оно мгновенно перемещает фокус, не позволяя Вам интерактивно выбрать окно.

Параметр Значение, по умолчанию Описание

?-

<finalactions> Focus, Raise, Unshade Список действие, которые следует выполнить при передачи фокуса окну.

Ряд остальных действий имеет такие же параметры, как DirectionalTargetNorth, и их описание аналогично, поэтому я просто их перечислю:

DirectionalTargetSouth

DirectionalTargetEast

DirectionalTargetWest

DirectionalTargetNorthWest

DirectionalTargetNorthEast

DirectionalTargetSouthWest

DirectionalTargetSouthEast



Desktop Изменить видимый (текущий) рабочий стол

Параметр Значение, по умолчанию Описание
<desktop> 1 Номер рабочего стола, на который следует переключится, которым начиная с 1.


Пример:

<keybind key="W-F1">
  <action name="Desktop"><desktop>1</desktop></action>
</keybind>
<keybind key="W-F2">
  <action name="Desktop"><desktop>2</desktop></action>
</keybind>



DesktopNext

Сделать видимым следующий рабочий стол (перейти на рабочий стол).

Параметр Значение, по умолчанию Описание
<wrap> yes (yes/no), будучи включённым, позволяет Вам переключаться по столам, начиная с первого и до последнего, и наоборот.

Пример:

<mousebind button="A-Down" action="Click">
  <action name="DesktopNext"/>
</mousebind>

<keybind key="C-A-Right">
  <action name="DesktopNext"><wrap>no</wrap></action>
</keybind>


Ряд остальных действий имеет такие же параметры, как и DesktopNext, и их описание аналогично, поэтому я просто их перечислю:

DesktopPrevious

DesktopLeft

DesktopRight

DesktopUp

DesktopDown

{прим. изложенса; я не пробовал Up и Down, и не совсем понимаю их на практике}

DesktopLast

Перемещает, на посещаемый последним, рабочий стол. Запоминает только один рабочий стол.

Пример:

<keybind key="W-space">
  <action name="DesktopLast"/>
</keybind>



AddDesktopLast

Создать новый рабочий стол, после всех (после последнего) имеющихся рабочих столов.

Пример:

<keybind key="W-F12">
  <action name="AddDesktopLast"/>
</keybind>



RemoveDesktopLast

Удалить последний рабочий стол.

Пример:

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



AddDesktopCurrent

Добавить новый рабочий стол на месте текущего рабочего стола, сместив рабочие столы.

Пример:

<keybind key="W-F12">
  <action name="AddDesktopCurrent"/>
</keybind>



RemoveDesktopCurrent

Удалить текущий рабочий стол.

Пример:

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



ToggleShowDesktop

Спрятать (свернуть) все окна, текущего рабочего стола, и наоборот. (and gives focus to the desktop window if one exists (such as in GNOME and KDE) )

Пример:

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



ToggleDockAutohide

Toggles the autohide setting on the dock temporarily. This effectively means you can show/hide the dock with a keybinding.

Пример:

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




Reconfigure

Запрос OpenBox'а на перезагрузку конфигурационного файла, меню и темы.

Пример:

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




Restart

Перезапуск OpenBox'а. Это действие запускает новую копию OpenBox, и может быть использоо для обновления WM без выхода из сеанса X. А также может использоваться для запуска другого оконного менеджера.

Параметр Значение, по умолчанию Описание
<command> "" команда для запуска нового оконного менеджера, а также любые передаваемые ему аргументы.

Пример:

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




Exit

Выйти из Openbox.

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

Параметр Значение, по умолчанию Описание
<prompt> true (yes/no) определяет должно ли быть Openbox показывать всплывающий диалог, спрашивая действительно ли Вы хотите выйти, прежде фактически выйти (As of version 3.4.7)

Пример:

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




SessionLogout

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



Debug

Выводит строку в выводе Openbox's для процесса отладки.

Параметр Значение, по умолчанию Описание
<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

Поднять (Raises) окно поверх остальных окон своего слоя.

Пример:

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




Lower

Опустить (Lowers) окно относительно других окон своего слоя.

Пример:

<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

Сворачивание (Iconify) (a.k.a. minimize) окна.


Пример:

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



Close

Закрытие окна.


Пример:

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



ToggleShade

Затенить (a.k.a. Roll up | свернуть) окно, так что остаётся видим лишь заголовок. Если окно уже свёрнуто, то развернуть Unshade (a.k.a. Roll down) окно.

Пример:

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



Shade

Затенить (a.k.a. Roll up | свернуть) окно, так что остаётся видим лишь заголовок.


Пример:

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



Unshade

Unshade (a.k.a. Раскрутить) скрученное окно.


Пример:

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



ToggleOmnipresent

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


Пример:

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



ToggleMaximizeFull Развернуть окно на весь экран, если оно уже развёрнуто (максимилизировано), вернуть его в исходный размер.


Пример:

<mousebind button="Left" action="Click">
  <action name="ToggleMaximizeFull"/>
</mousebind>



MaximizeFull

Развернуть окно на весь экран.


Пример:

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



UnmaximizeFull

Если окно максимально (горизонтали, вертикали, или на весь экран), вернуть окно к размером до максимилизации.


Пример:

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




ToggleMaximizeVert

Развернуть (максимализировать) окно по вертикали на весь экран, но не по горизонтали. Если окно уже максимализировано по вертикали, то вернуть в оригинальный размер.

Пример:

<mousebind button="Middle" action="Click">
  <action name="ToggleMaximizeVert"/>
</mousebind>



MaximizeVert

Развернуть (максимализировать) окно по вертикали на весь экран, но не по горизонтали.


Пример:

<keybind key="A-F8">
  <action name="MaximizeVert"/>
</keybind>




UnmaximizeVert

Если окно уже максимализировано по вертикали, то вернуть в оригинальный размер.


Пример:

<keybind key="A-F9">
  <action name="UnmaximizeVert"/>
</keybind>




ToggleMaximizeHorz

Развернуть (максимализировать) окно по горизонтали на весь экран, но не по вертикали. Если окно уже максимализировано по горизонтали, то вернуть в оригинальный размер.


Пример:

<mousebind button="Right" action="Click">
  <action name="ToggleMaximizeHorz"/>
</mousebind>



MaximizeHorz

Развернуть (максимализировать) окно по горизонтали на весь экран, но не по вертикали.


Пример:

<keybind key="A-F10">
  <action name="MaximizeHorz"/>
</keybind>



UnmaximizeHorz

Если окно уже максимализировано по горизонтали, то вернуть в оригинальный размер.


Пример:

<keybind key="A-F11">
  <action name="UnmaximizeHorz"/>
</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

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

Параметр Значение, по умолчанию Описание
<desktop> 1 номер рабочего стола, на который следует переместить окно, отсчитывая с 1.
<follow> yes (yes/no) при включённом параметре, Вы перемещаетесь на рабочий стол, вслед за окном.

Пример:

<keybind key="W-S-F1">
  <action name="SendToDesktop"><desktop>1</desktop></action>
</keybind>
<keybind key="W-S-F2">
  <action name="SendToDesktop"><desktop>2</desktop></action>
</keybind>




SendToDesktopNext

Переместить окно на следующий рабочий стол.

Параметр Значение, по умолчанию Описание
<follow> yes (yes/no) при включённом параметре, Вы перемещаетесь Вы перемещаетесь на рабочий стол, вслед за окном.
<wrap> yes (yes/no) при включённом параметре, позволяется перемещаться с последнего рабочего стола на первый, и наоб


Пример:

<keybind key="S-A-Right">
  <action name="SendToDesktopNext"><wrap>no</wrap></action>
</keybind>


Ряд остальных действий имеет такие же параметры, как и SendToDesktopNext, и их описание аналогично, поэтому я просто их перечислю:

SendToDesktopPrevious

SendToDesktopLeft

SendToDesktopRight

SendToDesktopUp

SendToDesktopDown




SendToDesktopLast

Переместить окно на последний рабочий стол.

Параметр Значение, по умолчанию Описание
<follow> yes (yes/no) при включённом параметре, Вы перемещаетесь на рабочий стол, вслед за окном.

Смотрите также DesktopLast.


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

Пример:

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



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

Параметр Значение, по умолчанию Описание
<edge> none Одно из значений: "top", "left", "right", "bottom", "topleft", "topright", "bottomleft", "bottomright". Это определяет в каком угле/краю должен быть resized, и and overrides having the edge determined dynamically который определяет автоматически ближайшее место, по отношению к мыши.

Пример:

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




MoveToCenter
Переместить окно в центр экрана. MoveResizeTo может это и многое другое.

Example:

<keybind key="W-m">
  <action name="MoveToCenter"/>
</keybind>



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

Параметр Значение, по умолчанию Описание
<x> current Позиция, по горизонтали, куда следует переместить окно. Current указывает текущую x-position окна. center переместит окно в центр экрана, по горизонтали. Число даёт абсолютную позицию для перемещения. Положительные значения указывает дистанцию от левого края экрана. Отрицательное значение указывает дистанцию от правого края экрана. (т.е. -2 это 2 pixels от правого края). Используйте специальные негативные ± значения позиции, для указания значения от левого края налево (т.е. +-10 это 10 с левого края экрана), и — для указания отрицательных значений по отношению к правому краю, на право (т.е. --5 это 5 pixels экрана с правой стороны).
<y> current Позиция, по вертикали, куда следует переместить окно. Current указывает текущую y-position окна. center переместит окно в центр экрана, по вертикали. Число даёт абсолютную позицию для перемещения. Положительные значения указывает дистанцию от верхнего края экрана. Отрицательное значение указывает дистанцию от нижнего края экрана. (т.е. -2 это 2 pixels от нижнего края). Используйте специальные негативные ± значения позиции, для указания значения от верхнего края вверх (т.е. +-10 это 10от верхнего края экрана), и — для указания отрицательных значений по отношению к нижнему краю, вниз (т.е. --5 это 5 pixels экрана с нижнего края).
<width> current Ширина окна. Current — текущая, для изменения задайте желаемое значение.
<height> current Высота окна. Current — текущая, для изменения задайте желаемое значение.
<monitor> current Монитор, на который следует переместить окно (с настроенным Xinerama/TwinView, используя несколько мониторов). Current — текущий монитор. All specifies to use all monitors together. next specifies to move the window to the next monitor relative to the one it is currently on. prev specifies to move the window to the previous monitor relative to the one it is currently on. A number specifies the desired monitor (starting from 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 -->
    <height>300</height>
  </action>
</keybind>



MoveRelative
Значение позиции, на которую следует переместить окно от текущей позиции.

Параметр Значение, по умолчанию Описание
<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
Изменение размера окна, относительно текущего размера.

Параметр Значение, по умолчанию Описание
<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>



MoveToEdgeNorth
Переместить окно на север, до соприкосновения с верхним краем экрана.

Пример:

<keybind key="W-Up">
  <action name="MoveToEdgeNorth"/>
</keybind>


Ряд остальных действий имебт такой же синтаксис, как и SendToDesktopNext, и их описание аналогично, поэтому я просто их перечислю: MoveToEdgeSouth
MoveToEdgeWest
MoveToEdgeEast


GrowToEdgeNorth
Изменить размер окна, растянув верхний край окна на север, до соприкосновения с верхним краем экрана.

Пример:

<keybind key="C-Up">
  <action name="GrowToEdgeNorth"/>
</keybind>


Ряд остальных действий имебт такой же синтаксис, как и GrowToEdgeNorth, и их описание аналогично, поэтому я просто их перечислю: GrowToEdgeSouth
GrowToEdgeWest
GrowToEdgeEast


ShadeLower
Если окно не затенено, то это действие его затенит (a.k.a. Rolls up | свернёт ), так что будет виден лишь один заголовок. Если окно уже затенено, то оно будет опущено ниже других окон своего слоя.

Пример:

<keybind key="W-l">
  <action name="ShadeLower"/>
</keybind>



UnshadeRaise
Если окно затенено, то его раскрутят (a.k.a. Rolls up | свернёт ), так что оно будет полностью видимо Если окно не затенено, то оно будет поднято выше других окон своего слоя.

Пример:

<keybind key="W-r">
  <action name="UnshadeRaise"/>
</keybind>



ToggleAlwaysOnTop
Задать окну положение (слой) «всегда наверху». Если окно уже имеет положение (слой) «всегда наверху», задать ему обычное положение (слой).
Пример:

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



ToggleAlwaysOnBottom
Задать окну положение (слой) «всегда внизу». Если окно уже имеет положение (слой) «всегда внизу», задать ему обычное положение (слой).
Пример:

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



SendToTopLayer
Задать окну положение (слой) «всегда наверху».

Пример:

<keybind key="W-F7">
  <action name="SendToTopLayer"/>
</keybind>



SendToBottomLayer
Задать окну положение (слой) «всегда внизу».

Пример:

<keybind key="W-F6">
  <action name="SendToBottomLayer"/>
</keybind>



SendToNormalLayer
Задать окну положение (слой) «обычное».

Пример:

<keybind key="W-F10">
  <action name="SendToNormalLayer"/>
</keybind>

http://ru.wikibooks.org/wiki/OpenBox_Bindings
http://ru.wikibooks.org/wiki/OpenBox_rc.xml