- Comparison of tiling window managers
- Contents
- Comparison table
- Management style
- Layouts
- Key bindings
- Windows tile window manager
- Тайловый оконный менеджер — Tiling window manager
- СОДЕРЖАНИЕ
- История
- Xerox PARC
- Различные поставщики
- Тайловые оконные менеджеры
- Майкрософт Виндоус
- История
- Список тайловых оконных менеджеров для Windows
- X Window System
Comparison of tiling window managers
This article provides an unbiased comparison of the most popular tiling window managers (as opposed to floating window managers).
Contents
Comparison table
The following table lists the most popular tiling window managers alongside notable features, providing readers with a quick overview.
Window Manager | Written in | Configured with | Management style | System tray support | On-the-fly reload | Information bars | Compositing | Default layouts | Pixel usage | External control | Library | Multiple (n) monitor behavior | ICCCM/EWMH compliant | Maintenance |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
alopex | C | C (recompile) | Hybrid | None | No | Built-in; call script/program as first argument | External | max, h-stack, v-stack, h-tab | Variable borders, titles in-statusbar | Xlib | six tags, two views available by default | Abandoned | ||
Awesome | C | Lua | Dynamic | Built-in | Yes | Built-in, images and text | External | max, nh-stack (and invert), nv-stack (and invert), free | Variable borders, optional h-tab titles | dbus (if enabled) | XCB | n-tags (workspaces). Per default 9 are enabled. Example | Yes | Active |
bspwm | C | Anything | Hybrid | None | Yes | Can write internal state to a FIFO | External | v-split, h-split | Variable borders | via bspc | XCB | Monitors hold Desktops | Yes | Active |
dwm | C | C (recompile) | Dynamic | Optional Patch | Optional | Built-in, reads from root window name | External | v-stack, max | via dwmfifo | Xlib | n regions, 9 workspaces fixed to each region | Active | ||
echinus | C | Text | Dynamic | None | Yes | ourico AUR | External | v-stack, b-stack, max | Variable borders, optional titles | Xlib | Yes | Abandoned | ||
euclid-wm | C | Text | Hybrid | None | Yes | External (dzen) | rows, columns | 1-pix borders | Xlib | Dormant | ||||
FrankenWM | C | C (recompile) | Dynamic | None | No | No, outputs information to stdout, which can easily be parsed and displayed by an external monitor or panel (dzen2, conky, etc) | External | v-stack (and invert), h-stack (and invert), dual-v/h-stack, grid, fibonacci (vh-stack), rows, columns, max, free | Variable borders | XCB | Active | |||
herbstluftwm | C++ | Text | Manual | None | Yes | rows, columns | 1-pix borders | commands via herbstclient | Xlib | n regions, 9 workspaces visible in any region | Active | |||
i3 | C | Text | Dynamic | i3bar | Yes (Layout is preserved) | text piped to i3bar ( i3status / conky and others can be used) | External | 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 | Yes | Active |
LeftWM | Rust | toml (user settings) / Anything (themes) | Dynamic | None | Yes | Yes, many options through theme system | External | 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 tide. Many workspaces for monitor or many monitors for workspace | Yes | Active |
Notion | C, Lua | Lua, compatible with Ion3 configs | Manual | trayion, stalonetray | Yes | 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 | Active | |
qtile | Python | Python | Dynamic | Yes | Yes | Yes | External | tree, v-split, h-split, stacked, tabbed, max | No borders, although customizable | Hooks, Server mode | XCB | Active | ||
Ratpoison | C | Text | Manual | None | Yes | Yes | External | max | No | Active | ||||
Snapwm | C | Reloadable Text | Dynamic | None | Yes | Built-in, reads from root window name | External | nVertical, Fullscreen, nHorizontal, Grid, Center Stacking | Variable borders, no titles | Xlib | Number of desktops distributed evenly between monitors | Active | ||
Spectrwm | C | Text | Dynamic | None | Yes | Built-in, reads from user script | No | nv-stack, nh-stack, max | 1-pix borders, no titles | XCB | n regions, 10 workspaces visible in any region | Yes | Active | |
Stumpwm | Lisp | Lisp | Manual | None | Yes | Yes | No | Xlib | No | Active | ||||
subtle | C | Ruby | Manual | Built-in | Yes | Built-in (Ruby), external can be used as well | External | Variable grid | Variable borders, no titles | Hooks (Ruby), subtler (CLI), subtlext (Ruby extension) | Xlib | One workspace (view) per monitor (screen), placement on views via tags and per runtime | Yes | Active |
Wingo | Go | Text | Dynamic | None | Yes | No | External | 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 | Yes | Dormant |
WMFS | C | Text | Dynamic | Built-in | Yes | Built-in, set with command, color text, images | External | nh-stack (and invert), nv-stack (and invert), mirror-v, mirror-h, grid, free, max | Variable borders, titles or no titles | commands | Xlib | Up to 36 tags(workspaces) per screen | Yes | Active |
xmonad | Haskell | Haskell | Dynamic | None | Yes | No | Yes, with xmonad-contrib and an external manager | nv-stack, nh-stack, max | Variable borders, no titles | via XMonad-Hooks-ServerMode | Xlib | n regions, 9 workspaces visible in any region | Yes / ? | Active |
Window Manager | Written in | Configured with | Management style | System tray support | On-the-fly reload | Information bars | Compositing | Default layouts | Pixel usage | External control | Library | Multiple (n) monitor behavior | ICCCM/EWMH compliant | Maintenance |
Management style
Dynamic management emphasizes automatic management of window layouts for speed and simplicity. Manual management emphasizes manual adjustment of layout and sizing with potentially more precise control, at the cost of more time spent moving and sizing windows.
Layouts
A number of common layout types appear in several tiling WMs, although the terminology varies somewhat.
- max: one window shown fullscreen (with or without a status bar, title and borders). Aka: monocle (dwm, monsterwm).
- h-stack: master area in top half, other windows stack up horizontally in the bottom half. The master area may be resizable. May be inverted top-bottom (wmfs). Aka: bottom stack (dwm), bstack(monsterwm).
- v-stack: master area in left half, other windows stack up vertically in the right half. The master area may be resizable. May be inverted left-right (wmfs). Aka: tile (dwm, monsterwm).
- nh-stack: h-stack allowing >=1 windows in master area. Aka: nbstack (dwm)
- nv-stack: v-stack allowing >=1 windows in master area. Aka: ntile (dwm)
- mirror-h: nh-stack with stacks above and below the master area
- mirror-v: nv-stack with stacks to the left and right of the master area
- h-tab: one window shown fullscreen with all window titles shown horizontally (like browser tabs)
- v-tab: one window shown fullscreen with all window titles shown vertically. Aka: stack (wmii).
- h-split: a keybinding splits the current window horizontally creating space for another
- v-split: a keybinding splits the current window vertically creating space for another
- columns: manual layout style which treats windows as belonging to vertical columns
- rows: manual layout style which treats windows as belonging to horizontal rows
- grid: window positions and sizes based on a regular NxM grid. May be automatic (like wmfs, monsterwm) or manual (like Subtle).
Key bindings
Tiling window managers are usually designed to be used entirely with the keyboard or with keyboard & mouse. This is for speed (reaching for and moving a mouse is slow) and ease of use. Sensible key bindings are crucial to making workflow fast and efficient. Some default sets are better than others, but generally the keys can be rebound as desired by the user.
Windows tile window manager
bug.n – Tiling Window Management
bug.n is a tiling window manager add-on for the Explorer shell of Microsoft Windows. It is written in the scripting language AutoHotkey.
- Provide layouts for resizing and moving windows, utilizing all available screen estate and customizable to your specific needs and workflow
- Provide views (i. e. virtual desktops) for showing only those windows, which you need to do your work.
- Dynamically resize and move your windows, applying a specified layout, without you having to care about moving them all by mouse
- Increase the available screen estate by hiding and therewith freeing up the space occupied by the Microsoft Windows Taskbar and the title bar for every single window and replacing all with a single slim status bar (— but bug.n is not a shell replacement)
- Show window management information in the status bar: active window title, active layout, overview of the views used
- Show system information in the status bar: time and date, CPU and memory usage, disk and network load, battery and volume level
- Store your settings, i. e. which windows and layout were set on a specific view
- Support multiple monitors
What it enables you to do
- You can resize and move windows specified by the active layout and initialized by hotkey.
- You can toggle the visibility of the Windows Taskbar.
- You can toggle the visibility of the Windows title bar of the active window.
- You can change the layout for the tiling window management suitable to your needs.
- Tile: Lay out all windows like tiles on a master area, which can be further split up, and a stacking area, where remaining windows can be stacked or shown side by side.
- Monocle: All windows are maximized and only one is shown at any time.
- Floating: Windows are not dynamically tiled.
- You can further customize the layouts for each view.
- You can move windows to another view (virtual desktop) by tagging them with a number.
- You can share windows between views by tagging them with more than one number.
- You can move between views, hiding the windows, you do not want to see, and showing those, you want to see, by pressing a simple hotkey.
What it can look like
Installing and running bug.n
- Microsoft Windows 2000 or higher
- AutoHotkey 1.1.10 or higher (if running bug.n from source as a script)
You may either download the stable version of bug.n from the repository, or download the current development version as the repository itself. Either way, you will have a zip file including an executable ( bugn.exe ), the source ( src\* ) and documentation ( doc\* ) files.
There is no installation process for bug.n. Unpack the zip file, and you should be able to run either the executable as it is or the main script ( src\Main.ahk ) with AutoHotkey.
Please see the documentation for more information on installing and running, customizing and using bug.n and for a list of changes made with the current version, in particular the changes in the user interface (configuration variables and hotkeys).
Please see the CREDITS file for a list of people and projects, which contributed to bug.n.
bug.n is licensed under the GNU General Public License version 3. Please see the LICENSE file for the full license text.
Currently, there are two branches:
- master , the current stable version (v9), which is no longer actively developed or maintained;
- X , a development version (v10), which is a rewrite of bug.n and in alpha stage, but development is dormant.
Тайловый оконный менеджер — Tiling window manager
В вычислениях мозаичный оконный менеджер — это оконный менеджер с организацией экрана во взаимно неперекрывающиеся фреймы, в отличие от более популярного подхода на основе координатного стекирования перекрывающихся объектов ( окон ), который пытается полностью имитировать метафору рабочего стола. .
СОДЕРЖАНИЕ
История
Xerox PARC
Первая система Xerox Star (выпущенная в 1981 году) делала окна приложений мозаичными, но позволяла перекрывать диалоговые окна и окна свойств. Позже Xerox PARC также разработал CEDAR (выпущенный в 1982 году), первую оконную систему, использующую плиточный оконный менеджер.
Различные поставщики
Следующим в 1983 году появился Andrew WM, полная мозаичная оконная система, позже замененная X11 . Microsoft «s Windows 1.0 (выпущена в 1985 году) также используется черепицу (см разделы ниже). В 1986 году пришел Digital Research «s GEM 2.0, оконной системы для CP / M , который используется облицовочная по умолчанию. Один из ранних (создано в 1988) черепице Wms был Сименс » РТЛ , до сегодняшнего дня хрестоматийного примера из его алгоритмов автоматизированного масштабирования окна, размещения и расположения, и (де) iconification. RTL работал на X11R2 и R3, в основном на «родных» системах Siemens, например, SINIX . Его особенности описаны в рекламном ролике. Andrew Project (AP или tAP) был настольной клиентской системой (как ранний GNOME) для X с мозаичным и перекрывающимся оконным менеджером.
В MacOS X 10.11 El Capitan, выпущенной в сентябре 2015 года, представлены новые функции управления окнами, такие как создание полноэкранного разделенного представления, ограниченного двумя окнами приложений рядом друг с другом в полноэкранном режиме, удерживая кнопку полноэкранного режима в верхнем левом углу. окна.
Тайловые оконные менеджеры
Майкрософт Виндоус
Встроенный оконный менеджер Microsoft Windows , начиная с Windows 95 , по умолчанию следует традиционному стекированию . Он также может действовать как элементарный оконный менеджер.
Чтобы расположить окна мозаикой, пользователь выбирает их на панели задач и использует контекстное меню « Пометить вертикально» или « Плитка по горизонтали» . При выборе « Плитка по вертикали» окна будут располагаться по горизонтали, но принять вертикальную форму, а при выборе « Плитка по горизонтали» окна будут располагаться вертикально, но приобретут горизонтальную форму. Позднее в Windows Vista эти параметры были изменены на « Отображать окна рядом» и « Отображать окна в стеке» соответственно. В Windows 7 добавлена возможность перетаскивать окна по обе стороны экрана, чтобы создать простой мозаичный макет бок о бок, или в верхнюю часть экрана для максимального увеличения .
В графическом интерфейсе пользователя Windows 8 появился новый базовый диспетчер мозаичных окон. В Windows 10 пользователи могут располагать окна мозаикой по кварталам. Его функция Snap Assist имеет настройку для одновременного изменения размера соседнего окна в полную высоту при изменении размера привязанного окна.
История
Первая версия ( Windows 1.0 ) содержала тайловый оконный менеджер, отчасти из-за судебного разбирательства со стороны Apple, претендовавшей на владение метафорой рабочего стола с перекрывающимся окном . Но из-за жалоб следующая версия ( Windows 2.0 ) последовала метафоре рабочего стола. Все более поздние версии операционной системы придерживались этого подхода как поведения по умолчанию.
Список тайловых оконных менеджеров для Windows
- AquaSnap — производится компанией Nurgo Software. Бесплатное ПО с дополнительной лицензией «Professional».
- bug.n — настраиваемый оконный менеджер с открытым исходным кодом, построенный как сценарий AutoHotKey и лицензированный под GNU GPL .
- MaxTo — настраиваемая сетка, глобальные горячие клавиши. Работает с приложениями с повышенными привилегиями, 32-битными и 64-битными приложениями и несколькими мониторами.
- WS Grid + — перемещайте и / или изменяйте размер окна, используя систему выбора сетки, сочетающую преимущества плавания, наложения и мозаичного размещения. Он предоставляет сочетания клавиш и мыши для мгновенного перемещения и изменения размера окна.
- Стек — настраиваемая сетка (XAML), глобальные горячие клавиши и / или средняя кнопка мыши. Поддерживает HiDPI и несколько мониторов.
- Plumb — легкий тайлинг-менеджер с поддержкой нескольких версий Windows. Поддерживает мониторы HiDPI, горячие клавиши клавиатуры и настройку горячих клавиш (XAML).
- workspacer — лицензированный MIT оконный менеджер для Windows 10, который стремится быть быстрым и совместимым. Написано и настраивается с использованием C # .
- dwm-win32 — перенос общих функций dwm на win32. Имеет лицензию MIT и настраивается путем редактирования заголовка конфигурации в том же стиле, что и dwm.
X Window System
В системе X Window диспетчер окон — это отдельная программа. X сам по себе не применяет никакого специального подхода к управлению окнами и остается работоспособным даже без оконного менеджера. Текущая версия протокола X X11 явно упоминает возможность мозаичного размещения оконных менеджеров. Siemens RTL Tiled Window Manager (выпущенный в 1988 г.) был первым, кто реализовал стратегии автоматического размещения / определения размеров. Еще одним тайловым оконным менеджером того периода был Cambridge Window Manager, разработанный группой IBM Academic Information System.
В 2000 году и larswm, и Ion выпустили первую версию.