Scroll to navigation

SPECTRWM(1) General Commands Manual SPECTRWM(1)

НАЗВАНИЕ

spectrwmОконный менеджер для X11

ИСПОЛЬЗОВАНИЕ

spectrwm

ОПИСАНИЕ

spectrwm это минималистичный менеджер окон, ставящий своей целью не мешать вам и не занимать ценное пространство экрана. Его настройки по-умолчанию разумны и, кроме того, он не требует знания языков программирования для работы с конфигурационным файлом. Он написан хакерами для хакеров и старается быть легким, компактным и быстрым.
Когда spectrwm запускается, он читает настройки из своего конфигурационного файла, spectrwm.conf. Смотрите секцию КОНФИГУРАЦИОННЫЕ ФАЙЛЫ ниже.
На этой странице используются следующие обозначения:
M
Мета-клавиша
S
Shift
Name
Имя клавиши
M1
Кнопка мыши 1
M3
Кнопка мыши 3
spectrwm должен быть понятным и очевидным. Большинство действий выполняется комбинациями клавиш. Смотрите секцию ПРИВЯЗКИ ниже, чтобы узнать о стандартных настройках.

КОНФИГУРАЦИОННЫЕ ФАЙЛЫ

spectrwm пытается прочитать файл в домашнем каталоге, ~/.spectrwm.conf. В случае, если он недоступен, происходит обращение к глобальному файлу настроек, /etc/spectrwm.conf.
Формат файла следующий: <ключ> = <значение>. Например:
color_focus = red
Однозначное включение и выключение задается значениями 1 и 0.
Поддерживаются следующие ключевые слова:
color_focus
Цвет рамки окна в фокусе.
color_unfocus
Цвет рамки окон не в фокусе.
bar_enabled
Включение статусной строки.
bar_border[x]
Цвет рамки статусной строки x.
bar_color[x]
Цвет статусной строки x.
bar_font_color[x]
Цвет шрифта статусной строки x.
bar_font
Тип шрифта статусной строки.
bar_action
Внешний файл скрипта для статусной строки, выводящий туда информацию, например, уровень заряда батарей.
bar_delay
Частота выполнения внешнего скрипта статусной строки, секунды.
stack_enabled
Включить отображение способа укладки окон в статусной строке.
clock_enabled
Включить часы в статусной строке. Можно отключить, установив 0, и Вы сможете использовать собственные часы из внешнего скрипта.
dialog_ratio
Ряд приложений имеет слишком маленькие диалоговые окна. Это значение - доля размера экрана, к которой они будут приведены. Например, значение 0.6 будет соответствовать 60% от реального размера экрана.
region
Выделяет область экрана на Ваше усмотрение, уничтожает все перекрытые области экрана, определенные автоматически. Формат: screen[<idx>]:WIDTHxHEIGHT+X+Y, например screen[1]:1280x800+0+0.
term_width
Установить минимальную допустимую ширину эмулятора терминала. Если это значение больше 0, spectrwm попытается отмасштабировать шрифты в терминале, чтобы ширина была больше этого значения Поодерживается только xterm(1) Также xterm(1) не может быть с setuid или setgid, хотя это так на многих системах. Возможно необходимо задать program[term] (Смотрите секцию ПРОГРАММЫ ) чтобы использовалась другая копия xterm(1) без заданного бита setgid.
title_class_enabled
Отображать класс окна в статусной строке. Обычно выключено
title_name_enabled
Отображать заголовок окна в статусной строке. Обычно выключено
modkey
Назначить Мета-клавишу, клавишу-модификатор. Mod1 соответствует клавише ALT, а Mod4 соответствует клавише WIN на PC.
program[p]
Добавить пользовательскую программу для назначения привязки p. Смотрите секцию ПРОГРАММЫ ниже.
bind[x]
Назначить привязку на действие x. Смотрите секцию ПРИВЯЗКИ ниже.
quirk[c:n]
Добавить костыль для окон с классом c и именем n. Смотрите секцию КОСТЫЛИ ниже.
Цвета задаются с помощью XQueryColor(3) А шрифты задаются с использованием XQueryFont(3)

ПРОГРАММЫ

spectrwm позволяет Вам добавлять Ваши собственные действия для запуска программ и делать к ним привязки как ко всем остальным действиям Смотрите секцию ПРИВЯЗКИ ниже.
Стандартные программы:
term
xterm
screenshot_all
screenshot.sh full
screenshot_wind
screenshot.sh window
lock
xlock
initscr
initscreen.sh
menu
dmenu_run -fn $bar_font -nb $bar_color -nf $bar_font_color -sb $bar_border -sf $bar_color
Ваши собственные программы задаются следующим образом:
program[<name>] = <progpath> [<arg> [... <arg>]]
⟨name⟩ это любой идентификатор, не мешающийся с уже существующими, ⟨progpath⟩ это собственно путь к программе, ⟨arg⟩ это список передаваемых аргументов или оставьте пустым.
Следующие переменные можно получать из spectrwm (Смотрите секцию КОНФИГУРАЦИОННЫЕ ФАЙЛЫ выше), и их можно использовать как ⟨arg⟩ (в момент запуска программы будет выполнена подстановка значений):
$bar_border
 
$bar_color
 
$bar_font
 
$bar_font_color
 
$color_focus
 
$color_unfocus
 
Например:
program[ff] = /usr/local/bin/firefox http://spectrwm.org/ 
bind[ff] = Mod+f # Значит Mod+F запускает firefox
Чтобы отменить назначение:
bind[] = Mod+f 
program[ff] =

ПРИВЯЗКИ

spectrwm предоставляет доступ к действиям с помощью клавиатурных комбинаций.
Установленные привязки для мыши:
M1
Сфокусироваться на окне
M-M1
Переместить окно
M-M3
Изменить размер окна
M-S-M3
Изменить размер окна, удерживая его в центре
Стандартные клавиатурные привязки:
M-S-Return
term
M-p
menu
M-S-q
quit
M-q
restart spectrwm
M-Space
cycle_layout
M-S-Space
reset_layout
M-h
master_shrink
M-l
master_grow
M-,
master_add
M-.
master_del
M-S-,
stack_inc
M-S-.
stack_del
M-Return
swap_main
M-j, M-TAB
focus_next
M-k, M-S-TAB
focus_prev
M-m
focus_main
M-S-j
swap_next
M-S-k
swap_prev
M-b
bar_toggle
M-x
wind_del
M-S-x
wind_kill
M-n
ws_n
M-S-n
mvws_n
M-Right
ws_next
M-Left
ws_prev
M-S-Right
screen_next
M-S-Left
screen_prev
M-s
screenshot_all
M-S-s
screenshot_wind
M-S-v
version
M-t
float_toggle
M-SDelete
lock
M-S-i
initscr
Описания действий перечислены ниже:
term
Запустить эмулятор терминала (Смотрите секцию ПРОГРАММЫ выше)
menu
Меню (Смотрите секцию ПРОГРАММЫ выше)
quit
Выйти spectrwm
restart
Перезапустить spectrwm
cycle_layout
Менять укладку окон
reset_layout
Стандартная укладка
master_shrink
Сжать область главного окна
master_grow
Расширить область главного окна
master_add
Добавить окна в главную область
master_del
Убрать окна из главной области
stack_inc
Увеличить число столбцов или рядов в текущей укладке
stack_del
Уменьшить число столбцов или рядов в текущей укладке
swap_main
Отправить текущее окно в главную область, сделать главным
focus_next
Фокусироваться на следующем окне
focus_prev
Фокусироваться на предыдущем окне
focus_main
Фокусироваться на главном окне
swap_next
Поменять со следующим окном
swap_prev
Поменять со предыдущим окном
bar_toggle
Выключить статусную строку на всех рабочих столах
wind_del
Закрыть фокусированное окно
wind_kill
Грохнуть фокусированное окно
ws_n
Переключиться на рабочий стол n, где n от 1 до 10
mvws_n
Переместить фокусированное окно в рабочий стол n, где n от 1 до 10
ws_next
Перейти к следующему не пустому рабочему столу
ws_prev
Перейти к следующему не пустому рабочему столу
screen_next
Переместить указатель в следующую область
screen_prev
Переместить указатель в следующую область
screenshot_all
Сделать снимок всего экрана (если возможно) (Смотрите секцию ПРОГРАММЫ выше)
screenshot_wind
Сделать снимок окна (если возможно) (Смотрите секцию ПРОГРАММЫ выше)
version
Показать версию в статусной строке
float_toggle
Переключить окно в фокусе в плавающий режим, float
lock
Заблокировать экран (Смотрите секцию ПРОГРАММЫ выше)
initscr
Инициализировать экран еще раз (Смотрите секцию ПРОГРАММЫ выше)
Собственные привязки назначаются следующим образом:
bind[<action>] = <keys>
⟨action⟩ это действие из списка программ ⟨keys⟩ это не более одной клавиши-модификатора (MOD, Mod1, Shift, и.т.п.) и обычные клавиши (b, space, и.т.п.), разделенные "+". Например:
bind[reset] = Mod4+q # назначить WIN + q на действие reset 
bind[] = Mod1+q # снять все действия с Alt + q
На одно действие можно назначить несколько комбинаций.

КОСТЫЛИ

spectrwm позволяет настроить костыли, нужные для специальной работы spectrwm с рядом приложений, который вы определяете сами. То есть, Вы можете принудительно установить способ тайлинга для какого-нибудь приложения
Список стандартных костылей:
Firefox-bin:firefox-bin
TRANSSZ
Firefox:Dialog
FLOAT
Gimp:gimp
FLOAT + ANYWHERE
MPlayer:xv
FLOAT + FULLSCREEN
OpenOffice.org 2.4:VCLSalFrame
FLOAT
OpenOffice.org 3.1:VCLSalFrame
FLOAT
pcb:pcb
FLOAT
xine:Xine Window
FLOAT + ANYWHERE
xine:xine Panel
FLOAT + ANYWHERE
xine:xine Video Fullscreen Window
FULLSCREEN + FLOAT
Xitk:Xitk Combo
FLOAT + ANYWHERE
Xitk:Xine Window
FLOAT + ANYWHERE
XTerm:xterm
XTERM_FONTADJ
Описание:
FLOAT
Такое окно не нужно тайлить вообще, разрешить ему float
TRANSSZ
Тразиентое окно (Смотрите секцию КОНФИГУРАЦИОННЫЕ ФАЙЛЫ).
ANYWHERE
Позволить окну самостоятельно выбрать местоположение
XTERM_FONTADJ
Изменять шрифты xterm при изменении размеров окна
FULLSCREEN
Позволить окну запускаться в полноэкранном режиме
Назначать костыли можно следующим образом:
quirk[<class>:<name>] = <quirk> [+ <quirk> ...]
⟨class⟩ и ⟨name⟩ определяют к какому окну будет применяться костыль, а ⟨quirk⟩ один из вышеперечисленных способов. Например:
quirk[MPlayer:xv] = FLOAT + FULLSCREEN # mplayer настроен 
quirk[pcb:pcb] = NONE  # убрать существующий костыль
Вы можете узнать ⟨class⟩ и ⟨name⟩ запустив xprop и нажав в интересующее окно. Вот как будет выглядеть вывод для Firefox:
$ xprop | grep WM_CLASS 
WM_CLASS(STRING) = "Navigator", "Firefox"
Обратите внимание, класс и имя меняются местами, правильный костыль будет выглядеть так:
quirk[Firefox:Navigator] = FLOAT

ФАЙЛЫ

~/.spectrwm.conf
spectrwm Личные настройки пользователя.
/etc/spectrwm.conf
spectrwm Глобавльные настройки.

ИСТОРИЯ

spectrwm идейно основан на dwm и xmonad

АВТОРЫ

spectrwm написан: Marco Peereboom ⟨marco@peereboom.us⟩, Ryan Thomas McBride ⟨mcbride@countersiege.com⟩ and Darrin Chandler ⟨dwchandler@stilyagin.com⟩.

БАГИ

При вызове меню с помощью M-p, необходима корректная работа dmenu.
June 7, 2017 Debian