Тайловый менеджер i3wm – первые впечатления

Я являюсь довольно давним пользователем *nix систем. Начинал с FreeBSD 6, которую заказывал в коробочной версии у Линуксцентра. Дисков в коробке было шесть, насколько я помню. Три диска из них были базовой системой, а остальные – часть зеркала репозитория пакетов. Однако некоторых пакетов всё же недоставало, а выкачивать их было дорого – тогда интернет у меня был только через сотовый телефон, и – чертовски дорогой (да-да, GPRS-EDGE и старая добрая опера на движке Presto). Помнится, заказывал у того же Линуксцентра Mandriva Linux на двух DVD (система + доп.пакеты). Позже уже выкачивал дистрибутивы сам, всё подряд, ставил, смотрел, изучал… Перепробовал тогда самые разные оконные менеджеры – некоторое время использовал KDE, потом надолго ушёл на Gnome 2, далее – полгода на XFCE. И, со временем, находил каждый из них избыточным, с кучей редко полезных, но существующих вещей. Получался такой перманентный дрейф в сторону функционального минимализма.

Последние два года я подсел на LXDE. Отличный оконный менеджер, лёгкий, быстрый, почти не содержит ненужных вещей. Не без глюков, но с этим можно мириться. Но и он, со временем, стал казаться не совсем тем, что я искал. Появились мысли о том, а не посмотреть ли в сторону WM, имеющих иной принцип взаимодействия с пользователем, а именно – тайловые оконные менеджеры.

На одном из предыдущих мест работы у меня перед глазами был реальный пример использования тайлового WM моим коллегой. Кроме того, что он является большим любителем автоматизации всего и вся, он ещё и плотно сидит на Awesome DE. Собственно тогда я впервые увидел тайловый менеджер в реальной жизни, и мог наблюдать его достаточно длительное время, задавать вопросы и получать ответы.

Awesome меня заинтересовал. Смущало разве что использование Lua в качестве языка написания скриптов, так как подобный функционал мне пока не был нужен (избыточная гибкость).

И, где-то месяца два назад, я наткнулся на i3 WM, который меня “зацепил”. Настолько, что в итоге я решил всё же уйти со старого доброго LXDE.

Факторы определившие мой выбор:

  • Очень быстрый, с высочайшей отзывчивостью (Awesome по отзывам работал немного медленнее, чему виной были скрипты, работающие в рантайме, в то время как у i3 WM используются обычные текстовые конфиги).
  • Небольшого размера, минималистичный, а потому расширять его можно по своему вкусу.
  • Исходный код мал по размеру (https://github.com/i3/i3), написан на чистом Си и неплохо документирован, а потому найти и исправить/добавить что-то своё можно достаточно быстро.
  • Очень качественная и подробная документация на официальном сайте. Есть практически всё, что может понадобиться как пользователю, так и разработчику.
  • Поддержка layouts в виде древовидной иерархии окон. Возможность сохранять и загружать конфигурации для различных workspaces.
  • Наличие IPC, что делает возможным прямую работу с i3 WM из скриптов. Для меня это очень полезная фича, которая является хорошей альтернативой скриптованию внутри WM.
  • Поддержка функциональности tray и float-режима окон “из коробки”.
  • Возможность замены стандартной информационной панели (которая сама по себе неплоха для вывода системной информации) на любую другую, в том числе Conky (по интеграции Conky и i3 WM думаю написать отдельную статью).
  • Динамическое меню dmenu с поиском приложений через автодополнение (есть готовый вариант dmenu для поиска по .desktop-файлам, что даёт замену графическому Main Menu)

Вообще, i3 WM в дефолтной конфигурации уже готов к использованию, так что если у кого-то есть желание попробовать – можно делать это смело, без сомнений (только при первом старте замените Mod key с Alt на Win, чтобы не возникло конфликтов с хоткеями программ).

Понятно, что дело не только в каких-то технических характеристиках. Тайловый менеджер мне видится серьёзной возможностью ускорить навигацию по рабочему пространству и таким образом косвенно сократить время решения задач. Связка i3 WM + zsh + oh-my-zsh + SCM Breeze дают возможность практически не пользоваться мышью, то есть минимизируется перемещение руки между мышью и клавиатурой. Далее, хоткеи переключения между workspaces и между окнами внутри workspace ускоряют самые разные последовательности действий, так как задействование хоткеев доведено до автоматизма, и смена содержимого экрана происходит не раздумывая, как это cделать.

Установка очень простая: sudo apt-get install i3wm . При первом старте установщик предлагает задать служебную кнопку Mod key, и далее всё – можно сразу начинать работу.

Расписывать настройку не буду (там всё тривиально), да к тому же на официальном сайте всё это подробно расписано. Лишь замечу, что в конфиге ~/.i3/config будет полезным раскомментировать строчку c i3-desktop-menu и добавить к дефолтному $mod+d модификатор Shift (для удобства), что даст возможность вести поиск по названию и запускать .desktop-элементы главного меню:

Итог – после трёх месяцев на i3 WM у меня сложилось ощущение лёгкого, цельного, очень качественного и в высшей степени быстрого продукта. Всем доволен, всё отлично. Настоятельно рекомендую к использованию для всех, кто хочет поднять свою продуктивность в повседневной работе за клавиатурой.

Ссылки по теме (всё на английском):

Если возникнут вопросы – пишите в комментариях, буду рад помочь.

  • dikun

    Есть ещё dwm – он типа ещё шустрее, но ещё более минималистичен (для кого плюс, а для кого и минус).

    • Да, тоже интересный WM, но тогда он меня как-то не зацепил. А с i3 всё сразу ясно стало – это оно самое. 🙂