НАЗВАНИЕ¶
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
- Внешний
файл
скрипта
для
статусной
строки,
выводящий
туда
информацию,
например,
уровень
заряда
батарей.
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
- x-terminal-emulator
screenshot_all
- screenshot.sh full
screenshot_wind
- screenshot.sh window
lock
- xscreensaver-command -lock
initscr
- initscreen.sh
- 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⟩ (в
момент
запуска
программы
будет
выполнена
подстановка
значений):
Например:
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
- Изменить
размер
окна,
удерживая
его в
центре
Стандартные
клавиатурные
привязки:
Описания
действий
перечислены
ниже:
Собственные
привязки
назначаются
следующим
образом:
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.