Comparison of tiling window managers (Русский)

From ArchWiki
Состояние перевода: На этой странице представлен перевод статьи Comparison of tiling window managers. Дата последней синхронизации: 20 января 2023. Вы можете помочь синхронизировать перевод, если в английской версии произошли изменения.

Эта статья предусматривает объективное сравнение наиболее популярных фреймовых (тайловых) оконных менеджеров (в отличие от стековых оконных менеджеров).

Таблица сравнения

Для краткого обзора в таблице перечислены наиболее популярные тайловые оконные менеджеры, с примечательными особенностями.

Оконный менеджер (WM) Написан на Настраивается с помощью Стиль управления Поддержка системного трея Перезагрузка на лету Информационный бар Композитинг Разметка по умолчанию Pixel usage Внешнее управление Библиотека Многомониторный (n) режим ICCCM/EWMH совместимый Состояние
Awesome C Lua Динамический Встроенный Да Встроенный, изображения и текст Внешний max, nh-stack (and invert), nv-stack (and invert), free Variable borders, optional h-tab titles dbus (если включен) XCB n-tags (рабочие пространства). По умолчанию включено 9. Пример Да Активный
bspwm C Чего угодно Гибридный Нет Да Может записывать внутреннее состояние в FIFO Внешний v-split, h-split Variable borders через bspc XCB Рабочие столы привязаны к мониторам Да Активный
dwm C C (перекомпиляция) Динамический Дополнительный патч Опционально Встроенный, считывает имя корневого окна Внешний v-stack, max через dwmfifo Xlib n regions, 9 workspaces fixed to each region Нет Активный
FrankenWM C C (перекомпиляция) Динамический Нет Нет Нет, выводит информацию на stdout, которая может быть легко обработана и отображена на внешнем мониторе или панели (dzen2, conky и т.д.) Внешний v-stack (and invert), h-stack (and invert), dual-v/h-stack, grid, fibonacci (vh-stack), rows, columns, max, free Variable borders XCB Нет Активный
herbstluftwm C++ Текстовый файл Ручной Нет Да строки, столбцы 1-pix borders commands via herbstclient Xlib n regions, 9 workspaces visible in any region Активный
i3 C Текстовый файл Ручной i3bar Да (разметка сохраняется) текст передаётся в i3bar (можно использовать i3status/conky и другие) Внешний tree, v-split, h-split, stacked, tabbed, max, can be nested infinitely None, 1-pix or 2-pix, optional titlebars, can hide edge borders commands via ipc (or i3-msg, which uses ipc) XCB n regions Да Активный
LeftWM Rust RON (настройки) / Что угодно (темы) Динамический Нет Да Да, много вариантов через систему управления темами Внешний v-stack, columns, rows Variable based on theme supports _NET_ACTIVE_WINDOW and sending commands to a named pipe Xlib Workspaces and monitors are not tied. Many workspaces for monitor or many monitors for workspace Да Активный
Notion C, Lua Lua, совместимо с Ion3 Ручной trayion, stalonetray Да Настраивается ? h-tab, max Configurable borders and titlebars/tabs EWMH, arbitrary Lua scripts which have access to the rich internal API Xlib n workspaces on each monitor. Supports on-the-fly changes in topology Активный
qtile Python Python Динамический Да Да Да Внешний tree, v-split, h-split, stacked, tabbed, max No borders, although customizable Hooks, Server mode XCB Активный
Ratpoison C Текстовый файл Ручной Нет Да Да Внешний max Нет Активный
Snapwm C Reloadable Text Динамический Нет Да Встроенный, считывает имя корневого окна Внешний nVertical, Fullscreen, nHorizontal, Grid, Center Stacking Variable borders, no titles Xlib Number of desktops distributed evenly between monitors Активный
Spectrwm C Текстовый файл Динамический Нет Да Встроенный, считывает вывод пользовательского скрипта Нет nv-stack, nh-stack, max 1-pix borders, no titles XCB n regions, 10 workspaces visible in any region Нет Активный
Stumpwm Lisp Lisp Ручной Нет Да Да Нет Xlib Нет Активный
xmonad Haskell Haskell Динамический Нет Да Нет Да, с xmonad-contrib и внешним менеджером nv-stack, nh-stack, max Variable borders, no titles via XMonad-Hooks-ServerMode Xlib n regions, 9 workspaces visible in any region Да / ? Активный
Оконный менеджер (WM) Написан на Настраивается с помощью Стиль управления Поддержка системного трея Перезагрузка на лету Информационный бар Композитинг Разметка по умолчанию Pixel usage Внешнее управление Библиотека Многомониторный (n) режим ICCCM/EWMH совместимый Состояние
Совет: Внешний контроль может быть достигнут с помощью таких программ, как xdotool имитирующих нажатие клавиш.

Стиль управления

Динамическое управление выделяет лёгкость и скорость автоматического управления оконных слоёв. Ручное управление выделяет ручную регулировку расположения и размера окна. Более точный контроль, и большую трату времени на перемещение и изменение размеров окна.

Слои

Ряд общих типов компоновки доступен в нескольких тайловых WM, хотя терминология может несколько меняться.

  • max: Показать одно окно во весь экран (со статусбаром, заголовком и границами или без них). Также: monocle (dwm, monsterwm).
  • h-stack: Основная область в верхней половине, другие окна располагаются горизонтально в нижней половине. Основная область может быть изменяемого размера. Может быть инвертирована вверх-вниз (wmfs). Также: bottom stack (dwm), bstack (monsterwm).
  • v-stack: Основная область в левой половине, другие окна располагаются вертикально в правой половине. Основная область может быть изменяемого размера. Может быть инвертирована влево-вправо(wmfs). Aka: tile (dwm, monsterwm).
  • nh-stack: h-stack позволяет >=1 окно(а) в мастер-области. Также: nbstack (dwm).
  • nv-stack: v-stack позволяет >=1 окно(а) в мастер-области. Также: ntile (dwm).
  • mirror-h: nh-stack со стеками выше и ниже главной области.
  • mirror-v: nv-stack со стеками слева и справа от главной области.
  • h-tab: одно окно показано на весь экран, со всеми названиями окон, указанными по горизонтали (как вкладки браузера).
  • v-tab: одно окно показано на весь экран, со всеми названиями окон, указанными по вертикали. Также: stack (wmii).
  • h-split: назначенным сочетанием клавиш разбивается окно по горизонтали, создавая пространство для другого.
  • v-split: назначенным сочетанием клавиш разбивается окно по вертикали, создавая пространство для другого.
  • columns: ручной стиль слоёв, который воспринимает окна как столбцы по вертикали.
  • rows: ручной стиль слоёв, который воспринимает окна как горизонтальные ряды.
  • grid: размеры и позиции окон, основанные на регулярной сетке NxM. Может быть автоматическим (как в wmfs, monsterwm) или ручным (как в Subtle).

Назначение клавиш

Тайловые оконные менеджеры ориентированы, как правило, на использование исключительно с клавиатурой или с клавиатурой и мышью. Для быстроты и простоты использования оконного менеджера используются горячие клавиши (с помощью мыши результат будет достигнут медленнее). Разумные назначения горячих клавиш делают работу быстрой и эффективной. Некоторые сочетания клавиш по умолчанию хороши, но их можно изменить под свои нужды.

Смотрите также