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

From ArchWiki
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.
Состояние перевода: На этой странице представлен перевод статьи Comparison of tiling window managers. Дата последней синхронизации: 5 января 2016. Вы можете помочь синхронизировать перевод, если в английской версии произошли изменения.

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

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

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

Сравнение тайловых оконных менеджеров
Оконный менеджер (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. Example Да Активный
bspwm C Anything Гибридный Нет Да Can write internal state to a FIFO внешний v-split, h-split Variable borders via bspc XCB Рабочие столы привязаны к мониторам Да Активный
dswm Lisp Lisp Ручной Нет Да Да Нет Активный
dwm C C (recompile) Динамический Дополнительный патч Optional Built-in, reads from root window name внешний v-stack, max Xlib n regions, 9 workspaces fixed to each region Активный
echinus C Text Динамический Нет Да ouricoAUR внешний v-stack, b-stack, max Variable borders & optional titles Xlib Да Неизвестно
euclid-wm C Text Гибридный Нет Да внешний(dzen) строки, столбцы 1-pix borders Xlib Бездействующий
FrankenWM C C (recompile) Динамический Нет Нет No, outputs information to stdout, which can easily be parsed and displayed by an внешний monitor or panel (dzen2, conky, etc) внешний v-stack (and invert), h-stack (and invert), dual-v/h-stack, grid, fibonacci (vh-stack), строки, столбцы, max, free Variable borders XCB Активный
herbstluftwm C Text Ручной Нет Да строки, столбцы 1-pix borders commands via herbstclient Xlib and Glib n regions, 9 workspaces visible in any region Активный
i3 C Text Динамический i3bar Да(Layout is preserved) text piped to i3bar (i3status/conky and others can be used) внешний 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 Да Активный
Ion3 C Lua Ручной trayion Да configurable ? h-tab, max Заброшенный
monsterwm C C (recompile) Динамический Нет Optional, but windows are lost No, outputs information to stdout, which can easily be parsed and displayed by an внешнийmonitor or panel (dzen2, conky, etc) внешний h-stack, v-stack, grid, max supports _NET_Активный_WINDOW, so внешнийcontrol can be supplied by xdotool and similar tools Xlib primary and XCB fork[ссылка недействительна: раздел не найден] n workspaces per monitor Активный
Musca C Text, own command set, C(recompile) Ручной Нет No, but allows running of musca commands on the fly Нет Нет h-split, v-split, max commands, hooks Xlib Заброшенный
Notion C, Lua Lua, compatible with Ion3 configs Ручной trayion, stalonetray Да configurable ? 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 Нетborders, although customizable Hooks, Server mode XCB Активный
Ratpoison C Text Ручной Нет Да Да внешний max Нет Активный
Snapwm C Reloadable Text Динамический Нет Да Built-in, reads from root window name внешний nVertical, Fullscreen, nHorizontal, Grid, Center Stacking variable borders, Нетtitles Xlib Number of desktops distributed evenly between monitors Активный
Spectrwm C Text Динамический Нет Да Built-in, reads from user script Нет nv-stack, nh-stack, max 1-pix borders, Нетtitles XCB n regions, 10 workspaces visible in any region Да Активный
Stumpwm Lisp Lisp Ручной Нет Да Да Нет Нет Активный
subtle C Ruby Ручной Built-in Да Built-in (Ruby), внешнийcan be used as well внешний Variable grid Variable borders, Нетtitles Hooks (Ruby), subtler (CLI), subtlext (Ruby extension) Xlib One workspace (view) per monitor (screen), placement on views via tags and per runtime Да Активный
Wingo Go Text Динамический Нет Да Нет внешний floating, nv-stack, nh-stack, max title bars in floating, skinny borders in tiling via wingo-cmd or UNIX sockets in any programming language X Go Binding n regions, workspaces visible in any region Да Активный
WMFS C Text Динамический Built-in Да Built-in, set with command, color text, images внешний nh-stack (and invert), nv-stack (and invert), mirror-v, mirror-h, grid, free, max variable borders, titles or Нетtitles commands Xlib Up to 36 tags(workspaces) per screen Да Активный
xmonad Haskell Haskell Динамический Нет Да Нет Да, с xmonad-contrib и внешним менеджером nv-stack, nh-stack, max variable borders, Нетtitles via XMonad-Hooks-ServerMode Xlib n regions, 9 workspaces visible in any region Да/ ? Активный
Оконный менеджер (WM) Написан на Настраивается с помощью Стиль управления Поддержка системного трея Перезагрузка на лету Информационный бар Композитность Слои по умолчанию Pixel usage Внешнее управление Библиотека Многомониторный (n) режим ICCCM/EWMH compliant Состояние
Совет: Внешний контроль может быть достигнут с помощью таких программ, как 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).

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

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

Внешние ссылки