i3 (программа)

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску

I3
Логотип программы I3
Скриншот программы I3
Тип Фреймовый оконный менеджер X Window System
Автор Michael Stapelberg
Написана на Си[3]
Операционные системы GNU/Linux[4], BSD[вд][4] и macOS[4]
Первый выпуск 16 марта 2009[1]
Последняя версия
Репозиторий github.com/i3/i3
Лицензия модифицированная лицензия BSD[вд][4]
Сайт i3wm.org (англ.)
Логотип Викисклада Медиафайлы на Викискладе

i3 — фреймовый оконный менеджер для X11, созданный под влиянием другого оконного менеджера wmii. Конфигурируется с помощью простого текстового файла. Позволяет значительно расширить свою функциональность благодаря возможности межпроцессного взаимодействия с помощью UNIX-сокетов[5]. Существует также форк i3-gaps, основной особенностью которого является возможность управлять отступами окон.

Как и wmii, i3 в основном управляется через клавиатуру, причём клавиатурные сокращения похожи на те, которые используются в текстовом редакторе vi. Например, смена текущего окна производится нажатием клавиши Win/Alt и одной из клавиш (J/K/L/;), а для перемещения текущего окна нужно зажать ещё и клавишу Shift (Alt+Shift+J/K/L/;).

Дизайн оконного менеджера

[править | править код]
  • Предлагает хорошо написанный, документированный код, что уменьшает порог вхождения для новых разработчиков[6].
  • Корректно работает с несколькими мониторами.
  • Подобно редактору vi, позволяет иметь несколько рабочих режимов. Таким образом одни и те же горячие клавиши могут иметь разные функции, в зависимости от того, в каком режиме сейчас находится менеджер.
  • Использует деревья в качестве абстракции для управления окнами. Для каждого поддерева отдельно можно изменить режим разбиения (горизонтальный/вертикальный), а для каждого контейнера — режим расположения окон (фреймовый/стековый/вкладками).
  • Поддержка кодировки UTF-8.
  • Реализует интерфейс для межпроцессного взаимодействия[5]. Это позволяет другим программам посылать команды оконному менеджеру, а также получать уведомления об определённых событиях.

Сравнение с другими фреймовыми оконными менеджерами

[править | править код]
  • i3 конфигурируется с помощью простого текстового файла, поэтому его можно настроить без знания программирования.
  • В отличие от других подобных оконных менеджеров (awesome, dwm, xmonad), в i3 пользователь сам должен настраивать свои окна: разделять их по горизонтали или вертикали, изменять размеры и режим их расположения.

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

[править | править код]

Хоть i3 и является фреймовым оконным менеджером, у него существует возможность создания «плавающих» окон — они появляются поверх фреймов и могут перемещаться и свободно менять размер также, как в популярных средах рабочего стола, таких как GNOME или KDE.

Разработчики i3 рекомендуют использовать их только для всплывающих окон[7].

Примечания

[править | править код]
  1. https://github.com/i3/i3/releases/tag/3.a
  2. https://github.com/i3/i3/releases/tag/4.24 — 2024.
  3. The i3_wm Open Source Project on Open Hub: Languages Page — 2006.
  4. 1 2 3 4 Free Software Directory
  5. 1 2 Stapelberg, Michael i3: интерфейс межпроцессного взаимодействия. Дата обращения: 26 февраля 2015. Архивировано 6 января 2018 года.
  6. Домашняя страница i3. Дата обращения: 26 февраля 2015. Архивировано 24 декабря 2017 года.
  7. Stapelberg, Michael "floating" workspace. Дата обращения: 26 февраля 2015. Архивировано 10 июля 2015 года.