DWM тайлінг
Ну чим можна зайнятися лінуксоїду, у якого в системі все, все рішуче працює? Звичайно ж, довести до ладу свій віконний менеджер. Або спробувати новий.
Наприклад, dwm – динамічний фреймовий віконний менеджер. Написаний мовою C. Налаштування проводиться за допомогою редагування заголовного файлу, для чого необхідно мати вихідні коди dwm. Якщо вас не лякає перспектива витратити годину-другу на налаштування цієї штуки під свої потреби, то приступимо.
Тут поміняємо каталог /var/abs на якийсь інший. Можна залишити за замовчуванням, але тоді всі вихідники ляжуть в директорію /var, що не є добре, якщо під розділ розділу виділено мало місця.
Синхронізуємо дерево abs:
Якщо вам не потрібна вся колекція abs, можна отримати лише dwm:
Чудово. Тепер знаходимо dwm і починаємо розбиратися з його налаштуванням. Перейдіть у потрібну директорію
Вносимо потрібні редагування (про це нижче) і збираємо пакет для встановлення. Але заждіть! Адже ми порушимо цілісність файлу, змінивши його, відповідно, не пройдемо перевірку на контрольні суми. Що ж, відключимо цю перевірку. Отже, встановлення:
Додайте у ваш .xinitrc запис
І заходьте по startx - ласкаво просимо!
Можна приступати до налаштування, але... спочатку дозвольте розпалити ваш апетит. Погляньмо, що ми можемо отримати в результаті. Насамперед тайлові wm проповідують принцип “нічого зайвого”:

Як налаштувати ?
Подивимося, що можна змінити у файлі config.h
Насамперед це шрифт. Тут потрібно трохи змінити налаштування, оскільки в іншому випадку у статус-барі будуть кумедні “кракозябри” замість кирилиці.
Для визначення підтримки тим чи іншим шрифтом кирилиці, використовуйте утилітуxfontsel.
Вам може знадобитися явно вказати шляхи до шрифтів у файлі /etc/X11/xorg.conf :
Далі йде налаштування кольорів статус-бару:
- normbordercolorp[] = колір меж вікна
- normbgcolor[] = колір тла
- normfgcolor[] = колір тексту в статус-барі
- selbordercolor[] = колір меж активного вікна
- selbgcolor[] = колір фону заголовка вікна
- selfgcolor[] = колір тексту заголовка вікна
- borderpx = ширина меж вікна
Налаштуємо як нам подобається наші теги (це щось на зразок робочих столів в інших менеджерах вікон)
Тепер замість цифр ми маємо зрозумілі позначення для кожного тега.
Як і у всіх – мені відомих – віконних менеджерах, dwm використовує клавішу-модифікатор. За замовчуванням це Mod1Mask - клавіша Alt . Щоб змінити її на клавішу super (там, де логотип windows) - змінимо запис #define MODKEY :
Налаштування гарячих клавіш. З наведеного нижче коду ясно, що натискання кнопки-модифікатора + p викличе dmenu , натискання кнопки-модифікатора + Return (Enter) викличе емулятор терміналу, ну і так далі. В принципі, стандартні позначення цілком зручні і навряд чи вам захочеться їх змінювати. Ми повернемося до цього трохи пізніше, далі буде наведено повніший перелік гарячих клавіш.
Налаштування правил для додатків
0 - програма буде запускатися відразу на всіх тегах. Це може бути зручно для будь-якого док-бару, трею та інших.
1 "0 - запуск на першому тезі 1" 2 - запуск на третьому тезі 1 "3 - запуск на четвертому тезі і так далі
isfloating вказує на те, чи будуть вікна програми плаваючими
Розташування вікон. Гарячі клавіші
За замовчуванням DWM підтримує три режими розташування вікон, плитковий []= , монокль [M] , плаваючий><>. Як правило, цього досить.
За замовчуванням під час запуску dwm відображається режим плитки вікон. Щоб поставити замість нього свій улюблений режим, просто знайдіть вказані нижче рядки і поставте потрібний режим на перше місце:

Поєднання гарячих клавіш з модифікацією MODKEY у нас вийшло таким:
Super + M - монокль
Super + T - плитка
Super + F - плаваючі вікна
Super + N – перейти на тег, N – номер тега
Super + p – dmenu, якщо встановлено
Super + Shift + q - вихід із dwm
Super + Shift + N - перенести вікно на відповідний тег
Super + Shift + C - закрити вікно
Super + K – перехід на неактивне вікно
Super + J - те саме, загалом переміщення між вікнами
Alt + Tab - перехід до наступного/попереднього тега
Додаткові плюшки та запуск
Dwm не має спеціальних налаштувань для запуску додатків. Все, що запускав ваш openbox (вірно?) з файлу autostart, прописується просто в .xinitrc
Звичайно, якщо ви захочете відображати інформацію з conky, потрібно буде зробити його коротшим ;) Так, щоб він вміщався в статус бар dwm.