Русский man ratpoison

Как не лениво было оформлять, но раз обещал выложить на этой неделе, то встречайте. Некоторые вещи перевести не осилил, поэтому все замечания, дополнения и исправления приветствуются.


ИМЯ
ratpoison - оконный менеджер независимый от мыши

ОБЗОР
ratpoison --help | --version
ratpoison [-d дисплей] [-s номер] [-f file]
ratpoison [-d дисплей] [-s номер] [-i] -c команда [-c команда ... ]

ОПИСАНИЕ
Ratpoison — это оконный менеджер без зависимости от уймы библиотек, рюшечек и зависимости от крысы.
Экран может быть разбит на несколько не перекрывающихся фреймов. Все окна находятся внутри фреймов и имеют размер фрейма.
Все взаимодействия с оконным менеджером осуществляются путем нажатия клавиш. ratpoison имеет префикс для ключевой клавиши



ОПЦИИ


-h, --help
Показывает общую информацию

-v, version
Показывает версию программы

-d, --display номер дисплея
Устанавливает X дисплей

-s, --screen номер
Только для использования специального экрана

-f, --file имя_файла
Указание альтернативного конфигурационного файла. Если параметр не указан ratpoison сначала пробует использовать $HOME/.ratpoisonrc и если он не найден то /etc/ratpoisonrc и выполняет команды в нем при старте.

-i, --interactive
Используется вместе с параметром -c или --command в интерактивном режиме. Равносильно запуску C-t : и написанию в нем команды

-c, --command
Выполнение команды ratpoison. Необходимо что бы ratpoison был запущен как оконный менеджер на необходимом дисплее/экране.
Пример:
ratpoison -c "echo hallo word"



КЛАВИАТУРНЫЕ СОЧЕТАНИЯ
Что бы не конфликтовать с другими программами в ratpoison предусмотрен префикс клавиш (escape key), по умолчанию C-t (Control-t). Некоторые клавиши по умолчанию:


C-t q
Выход из ratpoison

C-t ?
Вывод на экран списка клавиатурных сочетаний

C-t c
Запуск X терминала

C-t n
Переключение на следующее окно

C-t p
Переключение на предыдущее окно

C-t 1|2|3|4|5|6|7|8|9
переключение на окно под номером 1|2|...

C-t k
Закрыть текущее окно

C-t K
XKill на текущее приложение

C-t s|S
разбивка текущего фрейма на два вертикальных|горизонтальных.

C-t
Tab|Left|Up|Right|Down Переключится на следующий|левый|верхний|правый|нижний фрейм

C-t Q
Удалить все фреймы кроме текущего

C-t :
запуск команды ratpoison


Больше клавиатурных сочетаний можно найти в описании команд в следующей секции.



КОМАНДЫ И ПСЕВДОНИМЫ


abort (C-t C-g)
Ничего не делать. (Используется если по ошибке нажали C-t)

addhook событие команда

Добавить "хук": запуск команды после определенного события. Возможные события:

deletewindow
Запускается после удаления окна
key
Запускается каждый раз после нажатия префикса клавиш (по умолчанию C-t)
quit
Запускается перед выходом
restart
Запускается перед перезагрузкой ratpoison
switchgfarme
Запускается после переключения фрейма, но до того как окно поподет в фокус
switchgroup
Запускается перед выбором новой группы
switchwin
Запускается после выбора окна (Он может быть неактивным если он был введен не в том фрейме)


alias псевдоним
Добавляет псевдоним для команды

bind key command
Псевдоним для "definekey root key command"

banish (C-t b)
Перемещает курсор мыши в нижний правый угол экрана

chdir [директория]
Эта опция задает своим аргументом директорию ratpoison. Если опция не задана, то используется переменная окружения "HOME"

clrunmanaged
Отчищает список окон от неправляемых

cnext
Как и следующая команда, но перейти к следующему окну с иным классом ресурса, чем нынешний. (В общем это означает следующее окно принадлежит к другому приложения)

cprev
Как и предыдущая команда, но перейти к предыдущему окну с иным классом ресурса, чем нынешний. (В общем это означает следующее окно принадлежит к другому приложения)

colon команда (C-t :)
Запускает команду интерактивно (Т.е. просит возможные отсутсвующие аргументы)

compat
Добавить псевдоним на набор (set) команд, начиная с def для поддержки скриптов

cother
Как и other, но переключает на окно текущей группе, что в последний раз обращались и имеющих другой класс ресурсов, но в настоящее время не видимы.

curframe (C-t F)
Показывает панель на текущем фрейме

definekey keymap key command
Добавить новую клавишу (key) обязательной раскладке (keymap) для выполнения команды command. По умолчанию раскладка является, как правило в начале содержащая С-t, в котором указывается клавиша от корня, содержащего все нормальные команд.
Заметим, что у вас есть для описания ":" для "colon", "!" для "exclam" и так далее. Если вы не знаете имя клавиши, попробуйте либо ввести "C-t клавиша" и посмотреть на сообщение об ошибке, либо :describekey root и нажмите клавишу

def..
When compat was called there are some aliases starting with def, which alias the new form with set. I.e. instead of defresizeunit better use the new set resizeunit and so on...

dedicate [0|1]
Consider the current frame dedicated/chaste (1) or promiscuous (0).
A dedicated frame will not accept new windows. When new windows are to be focused, they will be opened in a non-dedicated frame instead.
If no argument is given, toggle the current dedicateness. By default no windows are dedicated.

delete (C-t k)
закрыть текущее окно
delkmap keymap
Удаление раскладки keymap созданной с помощью newkmap. Раскладки top (или был указан set topkmap) и root не могут быть удалены

describekey раскладка
Взять следующую клавишу. Подобно readkey, describekey показывает только команду раскладки (keymap), которая будет осуществляться readkey

echo текст
Показывает текст как сообщения ratpoison

escape key
Изменяет префикс на вызов команда на клавишу key
Строго говоря, он обновляет readkey root команду раскладку top на key, другие привязанные в root клавиши, и мета привязки в root без модификаторов или C-клавиша остаются без изменения. (Если set topkmap было вызвано с отличным от top аргументом который будет использоваться вместо top)

exchangedown (C-t C-Down)
Перемещает текущее окно из активного фрейма в нижний фрем замещая (меняясь) с окном в этом фрейме.

exchangeleft (C-t C-Left)
Перемещает текущее окно из активного фрейма в левый фрейм замещая (меняясь) с окном в этом фрейме.

exchangeright (C-t C-Right)
Перемещает текущее окно из активного фрейма в правый фрейм замещая (меняясь) с окном в этом фрейме.

exchangeup (C-t C-Up)
Перемещает текущее окно из активного фрейма в верхний фрем замещая (меняясь) с окном в этом фрейме.

exec command (C-t !)
Запускает команду шела command

execa command
Запускает команду шела command, не запоминая фрейм, так что _NET_WM_PID запускаемой программы будут переданы в активный фрейм, когда на нем открыто окно она замещается запускаемой программой.

execf frame command
Запускает команду шела command, в нужный номер фрейма frame

fdump [screenno]
Показывает данные для всех фреймов открытых в настоящее время на экране номер screenno, если он указан.

focus (C-t Tab)
Перемещает фокус на следующий фрейм.

focuslast
Перемещает фокус на последний активный врейм.

focusleft (C-t Left)
Переключает фокус на один фрем влево.

focusdown (C-t Down)
Переключает фокус на один фрем вниз.

focusright (C-t Right)
Переключает фокус на один фрем вправо.

focusprev
Перемещает фокус на предыдущий фрем.

focusup (C-t Up)
Переключает фокус на один фрем вверх.

frestore frames
Заменяет текущие фреймы (frames) фреймами со специфекацией аналогичное сгенерированной с помощью fdump.

fselect [frameno] (C-t f)

Если аргумент задан то перемещает на фрейм с номером frameno
Если аргумент не задан то показываются все номера фреймов и ожидается нажатия клавиши. Если клавиша указывает на существующий фрейм, то фокус переходит на этот фрейм
Выбор фреймов по умолчанию начинается с нуля, но это поведение можно изменить установив framesels (set framesels).

gdelete [group]
Если аргумент задан то удалит группу group. В противном случае удалите текущую группу. Если последняя группа будет удалена, новая группа с именем по умолчанию будет создана. Эта группа должна быть пустой, иначе она не может быть удалена

getenv variable
Выводит значение переменной окружения variable.

getsel
Вывод текущего буфер обмена X.

gmerge group
Перемещает все окно текущей группы group в текущую группу

gmove group
Перемещает текущее окно в группу group.

gnew group
Создает группу с именем group и выбирает её. Большинство команд (такие как select, consider next, previous или last) работают только для активной группы.

gnewbg group
Создает группу c именем group, но не выбирает её

gnext
Выбор следующей группы. Большинство команд работают только для активной группы.

gprev
Выбор предыдущей группы. Большинство команд работают только для активной группы.

groups
Показывает список групп с номерами выделяя текущую.

gselect group
Выбрать группу с именем group.

help [keymap]
Если задан аргумент, то показывает привязки клавиш указанной раскладки, иначе раскладки root

hsplit [l/p|left|right] (C-t S)
Разбить текущий фрейм вертикально на два. Если параметр не указан то делит ровно пополам. Если указаны два числа с разделителем "/" то указывает в каком отношении по размеру будут левый и правый фреймы (l и p соответственно).
  left это число пикселей для левого фрейма
  -right соответсвенно для правого
inext
Перейти к следующему окну с таким же ресурсом

info (C-t i)
Выводит информацию, такую как ширина, высота номер и имя текущего окна (Если задано, к примеру, с помощью set winname.)

iprev
Аналогично inext, только к переходит к предыдущему окну.

iother
Как и other, но переключается на окно группы с таким же ресурсом к которому в последний раз обращались, и которое является незаметным в текущий момент

kill (C-t K)
Закрыть соединение к X для текущего окна. Равносильно xkill

lastmsg (C-t m)
Показать последнее сообщение выводившееся ratpoison

license (C-t V)
Показать лицензию ratpoison

link key [keymap]
Do what key is bound to in the keymap keymap if supplied. Otherwise what key is bound to in keymap root.

listhook event
Показывает все команды добавленные с помощью addhook для указанного события event

meta [key] (C-t t)
Послать ескейп последовательность(префикс клавишу) (по умолчанию С-t) в текущее окно. Учтите что некоторые приложения игнорируют такие клавише, считая их небезопасными. Xterm является одним из таких приложений
msgwait [seconds]
Устанавливает время в секундах для вывода окон сообщения. Если указано 0, то ждать бесконечно.

newkmap keymap
Создает новую раскладку с именем keymap. Эта раскладка может быть использована для создания клавиатурных сочетаний отображается с помощью definekey и может быть вызвана с readkey.
next (C-t Return|C-t n|C-t space)
Переключится на следующее окно в текущей группе.

nextscreen
Переключится на следующий физический экран.

number new [old]
Задает новый номер new для окна со старым номером old или текущего.

newwm оконный менеджер
Выходит из ratpoison и запускает указанный оконный менеджер вместо него.

only (C-t Q)
Удаляет все фреймы кроме текущего, изменяя его на весь размер экрана

other (C-t C-t)
Переключение на последнее видимое окно в текущей группе.

prev (C-t p)
Перейти на предыдущее окно текущей группы

prevscreen
Переключится на предыдущий физический экран.

prompt [prompt]
Ratpoison will ask the user for input, showing prompt (or a single colon, if no argument is given) and output the input the user has made.
Note that this command probably does not make much sense in interactive mode.

putsel текст
Заменяет буфер обмена X на текст.

quit
Выход из ratpoison

ratwrap x y
Перемещает курсор мыши на координату (x,y)

ratrelwarp x y
Переместить курсор относительно текущей позиции на (x,y)

ratclick [button]
Нажать клавишу мыши button (button 1=левая кнопка, если не указано иное)

rathold up|down [button]

Имитация нажатия|отпускания кнопки мыши button (button 1=левая кнопка, если не указано иное)
Захват следующего нажатия клавиши и выполнение команды с ней ассоциированной в указанной keymap.
Отображает маленький квадрат на месте курсора мыши, что бы показать что ожидает ввода
Эту команду, пожалуй, проще всего описать с её использованием в конфигурации по умолчанию: Нажав C-t, мы вызываем "readkey root" и следующая клавиша выполняет ассоциированную с ней команду.

redisplay (C-t l)
Увеличить текущее окно на весь размер фрейма.

redo (C-t U)
Отменить последнее изменения фреймов

remhook event команда
Удаляет команду из списка команд вызываемых с событием event. Используйте "listhook hook" для получения всех комманд события

remove (C-t R)
Удаляет текущий фрейм.

resize [x y] (C-t r)

Если указаны x y то изменения фрейма на эти значения.
Если не указаны то изменения фрейма происходит в интерактивном режиме:

Return
закончить изменения

C-g or Escape
отменить изменения

C-n or Down or j
растянуть по вертикали

C-p or Up or k
сжать по вертикали

C-f or Right or l
растянуть по вертикали

C-b or Up or h
сжать по вертикали

s:
Сократить до размера текущего окна


При интерактивном изменения, изменение количество пикселей всегда равно переменной resizeunit (по умолчанию 10, используйте set resizeunit для того что бы изменить это число)

restart
Перезапуск ratpoison без перезапуска приложенией

rudeness [rudeness]
Показывает или устанавливает каким окнам разрешено быть на переднем плане.
  1 Transient windows may rais
  2 Обычные окна могут поднимаются
  4 New transient windows end up in the foreground.
  5 Новые нормальные окна на переднем плане
По умолчанию все включено, т.е. переменная равна 15
sdump
Выводит список всех экранов. Экраны разделены запятыми. Каждый экран отображается как 6 значений: номер, x-координату, y-координата, ширина, высота, и активность (1=активен, 0=неактивен)

select -|имя|номер (C-t ')
Выбрать окно. Если номер задан то переключится на него. Если задано имя то переключится на окно с этим именем. - делает текущий фрейм пустым

set [variable [value]]

Если аргументы не заданы, то ratpoison выводит список всех своих переменных.
Если задан только первый аргумент то ratpoison выводит его значения
Если заданы оба аргумента, то ratpoison устанавливает переменной variable значение value. Все значения переменных и их значения можно посмотреть в секции ПЕРЕМЕННЫЕ.

setenv variable value
Устанавливает переменной окружения variable значение value. (Переменная окружения будет доступна всем программам запущенным из ratpoison)

sfdump
Выводит параметры всех фреймов аналогично fdump, но не ограничивается текущим экраном. Показывает номер экрана после параметров каждого фрейма.

sfrestore
Заменяет текущие фреймы на фреймы спецификация которых задана в формате cгенерированном sfdump.

shrink
Сжать текущий фрейм до размеров текущего окна.

split [split] (C-t s)
псевдоним для vsplit

source файл
Считывает указанный файл и выполняет каждую строку как команду ratpoison

sselect номер
Переключается на экран с указанным номером

startup_message on|off
Устанавливает показывать или нет приветсвенное сообщения при старте ratpoison

swap [dest-frame [src-frame]] (C-t x)
Поменять окно src-frame (или текущее) на окно dest-frame (без параметров спрашивает окно назначения и меняет с ним текущее)

time (C-t a)
Показывает текущую дату и время.

title newname (C-t A)
Дает текущему окну новое имя указанное в newname

tmpwm tmpwm
Временно передать управление дргому оконному менеджеру под именем tmpwm.

unalias alias
Удаляет псевдоним alias.

unbind key
Псевдоним для "undefinekey root key"

undefinekey keymap key
Удаляет привязку клавиши key из раскладки keymap

undo (C-t _ или C-t u)
Отменяет последнее изменение фрейма (такие как разбивка, изменения размера, удаление, ...)
Запоминает определенное количество шагов указанных в переменной maxundos

unmanage [name]
Добавляет окно с именем name в список неуправляемых окон. Т.е. разрешит окнам выбирать свою позицию самостоятельно.
В неинтерактивном режиме вызов без аргументов выведет список неуправляемых окон.
Списао таких окон может быть отчищен командой clrunmanaged

unsetenv variable
Удалить переменную variable из списка переменных окружения
verbexec cmdline
Запускает команду cmdline после чего выводит сообщение о команда

version (C-t v)
Показывает версию и время сборки ratpoison.

vsplit [l/p|top|-bottom] (C-t s)
Разбить текущий фрейм горизонтально на два на два. Если параметр не указан то делит ровно пополам. Если указаны два числа с разделителем "/" то указывает в каком отношении по размеру они будут относится друг к другу
  top это число пикселей для верхнего фрейма
  -bottom соответственно для нижнего

warp [on|off]
Нужно ли при активации окна перемещать курсор мыши в то же место, на котором он находился, когда данное окно было последний раз активно.

windows [format] (C-t w)

В интерактивном режиме показывает список всех окон в текущей группе. Если msgwait равна нули, то не показывается
Сообщение отображается в зависимости от настройки winliststyle в формате установленном набором winfmt:
  %a имя приложения (имя ресурса),
  %c ресурс,
  %f номер фрейма,
  %g положение окна
  %h высота окна,
  %H еденица измерения для изменения размера окна по вертикали.
  %i X Window ID,
  %l by the last access number,
  %n номер окна,
  %s статус окна (* активное, + может быть выбрано с помощью other, - в другом фрейме)
  %S номер экрана
  %t имя окна (смотрите set winname),
  %T by the string Transient, if it is a transient window
  %w ширина окна
  %W еденица измерения для изменения размера окна по горизонтали by the unit to resize the window horizontally (width_inc)
  %% сигнал %
Кроме этого, между знаком процента и строкой формата может присутствовать целое положительное число для ограничения длины значения (более длинные значения будут обрезаны). Например: %20t
В не интерактивном режиме выводит список окон в текущей группе, каждое окно на отдельной строке. Строка формата может быть переопределена с помощью дополнительного параметра format.


C-t p
ПЕРЕМЕННЫЕ. Переменные ratpoison могут быть показаны и установлены с помощью директивы set. Вот эти переменные:


resizeunit шаг
Размер шага для изменения размеров фреймов, по умолчанию равно 5
maxundos количество
Количество шагов которые запоминает ratpoison для использования команды undo

maxsizegravity nw|w|sw|n|c|s|ne|e|se
Set the default gravity new self-maximised windows will get. Возможные значения те же что и в команде gravity: изменяется важность окон от 1 до 9
По умолчанию по центру (c)

transgravity nw|w|sw|n|c|s|ne|e|se
Расположение дочерних окон по умолчанию. Возможные значения те же что и в команде gravity: изменяет важность окон от 1 до 9
По умолчанию по центру (c)

bargravity nw|w|sw|n|c|s|ne|e|se
Место отображение панелей.
По умолчанию северо-запад (ne)

font font
Выбор шрифта ratpoison.
padding left top right bottom
Свободное место вокруг всех окон, т.е. неиспользуемая часть экрана.
По умолчанию 0 0 0 0

border число
Размер рамки вокрук окон в пикселях
По умолчанию 1

barborder число
Выбирает размер рамки вокрук строки ввода и сообщений в пикселях
По умолчанию 1

inputwidth число
Ширина строки ввода ratposison в пикселях
По умолчанию 200

barinpadding 0|1
Определяет появляется ли панель ratpoison на краю экрана (1) или на краю области (0)
По умолчанию 0

topkmap kmap
Делает kmap главной раскладкой. По умолчанию переменная установлена в top

waitcursor 0|1
Определяет изменять ли курсор мыши при ожидании ввода клавиши. 1 - ожидать, 0 - нет.
По умолчанию 1

winfmt format
С помощью этой переменной определяется формат вывода команды windows
По умолчанию %n%s%t.

winname title|name|class
Выбирает вид заголовков окон:
  title - Заголовок окна
  name - имя ресурса окна
  class - клас ресура, т.е. имя приложения
По умолчанию title

fgcolor color
Цвет переднего плана создоваемых окон
По умолчанию черный (black)

bgcolor color
Фон окон создоваемых ratpoison
По умолчанию белый (white)

barpadding x y
Устанавливает горизонтальный отступ окна ratposion в x и вертикальный в y
По умолчанию 4 0

winliststyle row|column
Определяет как показывать окна. row - строки, column - колонками (по умолчанию)

framesels selectors
Заменяет выбор фреймов с помощью fselect. Первый символ это первый фрем, второй это второй и так далее.
Используюйте эту переменную что бы выбирать клавишами любой из более 10 фреймов
По умолчанию пустая строка, эквивалент "0123456789"

АВТОРЫ
Главные автор Shawn Betts <sabetts@vcn.bc.ca>.
Смотрите /usr/share/doc/ratpoison/AUTHORS где другие авторы.
Страница экранной документации написана Bernhard R. Link <brlink@debian.org>.
Перевод экранной документации Мищенков Михаил aka muhas <muhas.ru> при помощи сообщества (отдельное спасибо Антону за помощь)
Перевод немного неполноценен, поэтому все замечания, дополнения и исправления приветствуются


мимо_проходил 09-04-2009
* "Ratpoison это оконный менеджер" (не хватает тире перед "это")

* "рющечек" (должно быть ш вместо щ)

И запятые по мелочи. Удачи!
muhas 09-04-2009
Спасибо, подправил что смог.

/me задумался над исправлением ошибок, дать что ли нашим копирайтерам почитать
Booley 09-04-2009
Здорово :) но dwm все-таки легче
Бормалей 09-04-2009
Вот спасибо!
ozo 10-04-2010
lixense (C-t V)
Показать лицензию ratpoison

license :)
muhas 10-04-2010
столько висит, а ты первый кто заметил. сразу видно кто как читает =)
nleo 12-01-2012
Spabo za perevod. Probyu, kak zabindit perekluchenie yazyka na WinKey?
I want to try "setxkbmap ru" command.

definekey top s-o exec opera
Work well, but I don't know how use just WinKey here.
nleo 12-01-2012
А да, и еще, чтобы он циклично переключал расскладки, если можете подскажите)

Пока забиндил на Win+1 Win+2
muhas 12-01-2012
setxkbmap -layout us,ru -variant ,winkeys -option grp:caps_toggle,grp_led:scroll,terminate:ctrl_alt_bksp
иксами будет переключится циклически по капсу (caps_toggle, меняем на winkey или как там правильно), можно назначить на что-нить другое (grp_led - индикатор, terminate ибо три волшебных клавиши по дефолту с какой-то версии иксы не прибивают)

извиняюсь что так долго, праздники =)
nleo 12-01-2012
Спасибо! lwin_toggle
ka 14-09-2014
как направить .ratpoison_history в нужный каталог?
muhas 14-09-2014
-f только на конфиг, но историю вроде никак. разве что костылями в виде rewritefs