Pull to refresh

Uinux: фреймовые оконные менеджеры

Lumber room
Сегодня хочу предложить повосхищаться такой темой, как фреймовые
оконные менеджеры. Фреймовые они потому, что распологают окна, если
их несколько так, чтобы они не перекрывались, а кроме того занимали
максимально полезную площадь рабочего стола.


Основные представители данного семейства оконных менеджеров, это: wmii,
xmonad, dwm, ion3. Есть еще несколько Ratpoison, Larswm, Stumpwm, TrsWM,
XWEM, GridMove, Awesome, но их я упоминать не буду.
Для начала немного о каждом из них, а потом более подробно о wmii

xmonad

xmonad screenshot

Написан на Haskell, что уже делает его интересным. Имеет поддержку
xinerama (это такое расширение Xorg, позволяющее работать с
несколькими мониторами одновременно). Задумывался он как клон dwm, но
перерос своего родителя и обзавелся рядом интересных возможностей,
среди которых: отельная статусная строка для каждого экрана; отдельные
алгоритмы расположения окон для рабочих пространств; поддержка
компоузинга.

dwm

dwm screenshot
Самый маленький и изящный из всех фреймовых менеджеров. Разработка
началась после того, как wmii стал казаться его автору слишком
большим. Очень интересный способ конфигурирования — вы просто
перекомпилируете его. И это не бред, так как его автор придерживается
принципа, что исходный код dwm не должен превышать 2000 строк
кода. Так что компиляция dwm занимает нано-секунды. Никаких наворотов
не присутствует, программа просто выполняет свою работу. Идеальный
вариант для минималистов.

ion3

ion3 screenshot
Достаточно извесный представитель, появился в 2000 году и может
считаться прародителем всех теперешних фреймовых менеджеров. Тяжел, по
сравнению с другими, имеет множество интересных и полезных
возможностей. Конфигурациооный файл представляет собой скрипт на Lua.

А теперь wmii

wmii screenshot

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

Управление


Для запуска программы неоходимо нажать Alt+p
(все представленные в тексте комбинации клавиш имеют значение по
умолчанию), после чего в статусной строке отоброзится список имеющихся
программ. Для фильтрации списка необходимо набрать несколько первых
букв названия программы. Открывшееся приложение займет все доступное
на экране место. Если непереключаясь на другой экран запустить еще
одну программу, то они поделят с первой доступное место
пополам. Переключение между окнами одного экрана происходит по
аналогии с редактором Vi (Alt+h, Alt+j, Alt+k. Alt+l), но можно
переключиться и мышкой, клацнув по соответствующему фрейму. По
умолчанию, новые фреймы появляются друго под другом. Если нам
необходимо поделить экран вертикально, то нажатием клавиши Alt+Shift+l
окно переместится вправо. Для открытия пового экрана пользуемся
комбинацией клавиш Alt+0Alt+9. Для перемещения активного фрейма
на другой экран используем Alt+Shift+0Alt+Shift+9. Для закрытия
фрейма Alt+Shift+c, для выхода из X вызываем меню wmii, активизируемое
сочетанием Alt+a.

Плавающие окна


Может возникнуть вопрос, как обстоят дела с такими
приложениями, как Gimp, Pidgin и им подобным… Дела обстоят хорошо,
по умочанию, все модальные окна, а также те приложения, которые
специально описаны в конфигурационном файле будут иметь плавающий тип
поведения, т.е не будут отличаться своим поведением от привычного нам
и вам.

Настройка


В комплекте с wmii идет примерный файл настроек, написанный на sh, но
для конфигурирования можно использовать любой знакомый язык, Python,
Ruby, какой хотите. Это возможно, благодаря тому, что wmii имеет
9p интерфейс, привнесенный из мега-интересной операционной системы Plan9.
Это значит, что для настройки надо просто записать определенную
информацию в соответствующий файл. Файл этот виртуальный, но запись
в него возможна благодаря специальной утилитке. которая идет вместе
с wmii. Я уверен, что вы ничего не поняли зи последней фразы,
если раньше ничего подобного не встречали, это моя вина, не могу
донести красивую концепцию понятным языком, потому отошлю к документации.

Заключение


Описание сочетания клавиш не позволяет насладится
красотой концепции, для этого надо попробовать пользоваться
фреймовиками. Это не красивая задумка, этим действительно можно и
удобно пользоваться, просто вначале не очень привычно, после тягания
окон мышкой по экрану. Необходимо желание и немного терпения, через
некоторое время, приобретенная с годами привычка падет и вы сможете
наслодиться минимализмом и эфективностью этих оконных менеджеров.

Совет для начинающих: для привыкания к новому окружению, надо
поработать с ним несколько больше, чем поставить «напосмотреть» и
выложить скриншот на ЛОР. Если концепция вас зацепит, приложите усилия
и все будет хорошо.
Еще один совет для начинающих: Сразу
переопределите основную клавишу, которой по умолчанию является Alt на
Win, если такая присутствует на вашей клавиатуре, это освободит Alt
для его привычного применения и задействует незадействованную Win.

Ссылки


Домашняя страница wmii: www.suckless.org/wiki/wmii
Библиотека для работы с wmii из Python: downgra.de/articles/python-wmii
Домашняя страница dwm: www.suckless.org/wiki/dwm
Домашняя страница ion3: modeemi.fi/~tuomov/ion
Домашняя страница xmonad: www.xmonad.org

UPD:
Приближенное к идеалу описание wmii, как оконного менеджера: vonderer.blogspot.com/2006/12/wmii.html
Более подробно о внутренностях wmii: my-cellar-door.blogspot.com/2005/08/window-managers-wmi-wmii.html
Tags:
Hubs:
Total votes 38: ↑36 and ↓2 +34
Views 1.7K
Comments Comments 24