Тайлинговый оконный менеджер
этой статьи Начальный раздел может быть слишком коротким, чтобы адекватно суммировать ключевые моменты . ( февраль 2024 г. ) |
В вычислительной технике тайловый оконный менеджер — это оконный менеджер с организацией экрана во взаимно непересекающиеся кадры, в отличие от более распространенного подхода (используемого штабелируемыми оконными менеджерами ) координатного укладки перекрывающихся объектов ( окна ), который пытается полностью имитировать метафору рабочего стола .
История
[ редактировать ]Ксерокс ПАРК
[ редактировать ]Первая система Xerox Star (выпущенная в 1981 году) располагала окна приложений плиткой, но позволяла диалоговым окнам и окнам свойств перекрываться. [1] Позже Xerox PARC также разработала CEDAR. [2] (выпущена в 1982 году), первая оконная система, использующая плиточный оконный менеджер.
Различные продавцы
[ редактировать ]Следующим в 1983 году появился Andrew WM, полноценная оконная система с плиткой, позже замененная X11 . Microsoft Windows 1.0 (выпущенная в 1985 году) также использовала мозаику (см. разделы ниже). В 1986 году появилась Digital Research 2.0 от GEM , оконная система для CP/M , которая по умолчанию использовала тайлинг. [3] Одним из первых (созданных в 1988 году) мозаичных WM был Siemens от RTL , который до сих пор является хрестоматийным примером из-за его алгоритмов автоматического масштабирования, размещения и расположения окон, а также (де)иконификации. RTL работал на X11R2 и R3, в основном на «родных» системах Siemens, например, SINIX . Его особенности описаны в рекламном видеоролике. [4] [5] Проект Эндрю (AP или tAP) представлял собой настольную клиентскую систему (например, ранний GNOME) для X с плиточным и перекрывающимся оконным менеджером.
В MacOS X 10.11 El Capitan , выпущенном в сентябре 2015 года, представлены новые функции управления окнами, такие как создание полноэкранного разделенного представления, ограниченного двумя окнами приложений, расположенными рядом друг с другом в полноэкранном режиме, путем удержания кнопки полноэкранного режима в верхнем левом углу. окна. [6]
Тайлинговые оконные менеджеры
[ редактировать ]Microsoft Windows
[ редактировать ]Встроенный оконный менеджер Microsoft Windows , начиная с Windows 2.0 придерживается традиционного подхода к стекированию , по умолчанию . Он также может выступать в качестве элементарного тайлового оконного менеджера.
Чтобы расположить окна плиткой, пользователь выбирает их на панели задач и использует пункт контекстного меню «Плитка по вертикали» или «Плитка по горизонтали» . Выбор «Плитка по вертикали» приведет к тому, что окна будут располагаться горизонтально, но примут вертикальную форму, а при выборе « Плитка по горизонтали» окна будут располагаться по вертикали, но примут горизонтальную форму. Позже эти параметры были изменены в Windows Vista на «Показать Windows рядом» и «Показать Windows в стопке» соответственно.
В Windows 7 добавлена функция Aero Snap, которая дает возможность перетаскивать окна в любую сторону экрана, чтобы создать простой мозаичный макет, расположенный рядом, или в верхнюю часть экрана, чтобы развернуть . В Windows 8 появились приложения из Магазина Windows ; в отличие от настольных приложений, они не работали в окне и могли работать только в полноэкранном режиме или «привязываться» к боковой панели рядом с другим приложением или средой рабочего стола. [7]
Наряду с возможностью запуска приложений Магазина Windows в традиционном окне, в Windows 10 улучшены функции привязки, представленные в Windows 7, позволяя размещать окна в квадрантах экрана, перетаскивая их в угол, и добавляя «Snap Assist», который предлагает пользователю для выбора приложения, которое они хотят занять другую половину экрана, когда они привязывают окно к одной половине экрана, и позволяет пользователю автоматически изменять размеры обоих окон одновременно, перетаскивая маркер в центре экрана. [8]
Windows 10 также поддерживает FancyZones, более полный менеджер окон, позволяющий настраивать зоны мозаики и расширять пользовательский контроль, настраиваемый с помощью Microsoft PowerToys .
История
[ редактировать ]В первой версии ( Windows 1.0 ) был представлен тайловый оконный менеджер, отчасти из-за судебного разбирательства со стороны Apple, утверждавшей право собственности с перекрывающимися окнами на метафору рабочего стола . Но из-за жалоб следующая версия ( Windows 2.0 ) последовала метафоре рабочего стола. Все более поздние версии операционной системы придерживались этого подхода как поведения по умолчанию.
Список тайловых оконных менеджеров для Windows
[ редактировать ]- AquaSnap — разработано Nurgo Software. Бесплатная программа с дополнительной «профессиональной» лицензией.
- Amethyst для Windows — динамический тайловый оконный менеджер по типу Amethyst для MacOS.
- bug.n — настраиваемый тайловый оконный менеджер с открытым исходным кодом, созданный в виде сценария AutoHotKey и лицензированный под лицензией GNU GPL . [9]
- MaxTo — настраиваемая сетка, глобальные горячие клавиши. Работает с приложениями с повышенными правами, 32-битными и 64-битными приложениями и несколькими мониторами. [10]
- WS Grid+ — перемещайте и/или изменяйте размер окон с помощью системы выбора сетки, сочетающей в себе преимущества плавающего, штабелированного и мозаичного размещения. Он предоставляет сочетания клавиш клавиатуры и мыши для мгновенного перемещения и изменения размера окна.
- Стек — настраиваемая сетка (XAML), глобальные горячие клавиши и/или средняя кнопка мыши. Поддерживает HiDPI и несколько мониторов. [11] [12]
- Plumb — легкий менеджер листов с поддержкой нескольких версий Windows. Поддерживает мониторы HiDPI, горячие клавиши клавиатуры и настройку горячих клавиш (XAML). [13]
- Workspacer — лицензированный MIT оконный менеджер для Windows 10, который должен быть быстрым и совместимым. Написан и настраивается с использованием C# . [14]
- dwm-win32 — порт общего функционала dwm на win32. Имеет лицензию MIT и настраивается путем редактирования заголовка конфигурации в том же стиле, что и dwm. [15]
- GlazeWM — тайловый оконный менеджер для Windows, вдохновленный i3 и Polybar.
- Komorebi — оконный менеджер для Microsoft Windows SO, написанный на Rust . Как и bspwm, он не обрабатывает привязку клавиш самостоятельно, поэтому пользователям приходится использовать AHK или WHKD для управления сочетаниями клавиш. Komorebi также имеет версию с удобным графическим интерфейсом под названием Komorebi UI.
- Whim — динамический оконный менеджер , созданный с использованием WinUI 3 и платформы .NET.
X оконная система
[ редактировать ]В системе X Window оконный менеджер представляет собой отдельную программу. Сам X не применяет никакого конкретного подхода к управлению окнами и остается пригодным для использования даже без какого-либо оконного менеджера. Текущая версия протокола X X11 явно упоминает возможность мозаики оконных менеджеров. Менеджер окон Siemens RTL Tiled Window Manager (выпущенный в 1988 году) был первым, кто реализовал стратегии автоматического размещения/размера. Еще одним тайловым оконным менеджером того периода был Cambridge Window Manager, разработанный группой IBM Academic Information System.
В 2000 году larswm и Ion выпустили первую версию.
Список тайловых оконных менеджеров для X
[ редактировать ]- Awesome — производная от dwm с мозаикой, плавающими окнами и тегами, написанная на C и настраиваемая и расширяемая на Lua . Это был первый WM, портированный с Xlib на XCB , и поддерживающий D-Bus , pango , XRandR , Xinerama .
- bspwm — небольшой тайловый оконный менеджер, который, как и yabai, представляет окна как листья полного двоичного дерева. Он не обрабатывает привязки клавиш самостоятельно, требуя, чтобы другая программа (например, sxhkd) преобразовывала ввод в X-события.
- Compiz — оконный менеджер композитинга, доступный для использования, не выходя из привычных интерфейсов, таких как GNOME , KDE Plasma или Mate . Один из его плагинов (называемый Grid) позволяет пользователю настраивать несколько сочетаний клавиш для перемещения окон в любой угол пяти разных длин. Также есть возможность настроить размещение по умолчанию для определенных окон. Плагины можно настроить через Диспетчер настроек конфигурации Compiz / CCSM.
- dwm — позволяет переключать макеты плитки, щелкнув текстовый значок ascii art в строке состояния. По умолчанию используется расположение основной области + области стекирования, представленное символом ]= [ . Другие стандартные макеты — это режим «монокля» с одним окном, обозначаемый буквой M , и плавающий макет без плитки, который позволяет перемещать и изменять размеры окон, обозначаемый рыбьим > <> . Существуют сторонние патчи для добавления золотого сечения на основе макета Фибоначчи , горизонтального и вертикального мозаики на основе строк или макета сетки. Утилита управления меню с клавиатуры « dmenu », разработанная для использования с dwm. [16] используется с другими WM для тайлинга, такими как xmonad , [17] а иногда и с другим «легким» программным обеспечением, таким как Openbox. [16] и узбл . [18]
- EXWM — EXWM (Emacs X Window Manager) — это полнофункциональный тайловый X оконный менеджер для Emacs, построенный на базе XELB. Он поддерживает операции, полностью управляемые с помощью клавиатуры, гибридные режимы макета (мозаика и укладка), поддержку динамического рабочего пространства, соответствие требованиям ICCCM/EWMH, поддержку RandR (несколько мониторов) и встроенный системный лоток.
- Herstluftwm — оконный менеджер с ручным разделением листов (аналог i3 или Sway ), который использует концепцию независимых от монитора тегов в качестве рабочих пространств. На мониторе можно просмотреть ровно один тег, причем каждый тег имеет свой собственный макет. Как и i3 и Sway, Herstluftwm настраивается во время выполнения с помощью вызовов IPC из Herstclient. [19]
- i3 – построенный с нуля оконный менеджер, основанный на wmii. Он имеет сочетания клавиш в стиле vi и рассматривает дополнительные мониторы как дополнительные рабочие пространства, а это означает, что окна можно легко перемещать между мониторами. Допускает вертикальное и горизонтальное разделение, макеты с вкладками и стопками, а также родительские контейнеры. Управлять им можно полностью с клавиатуры, но можно использовать и мышь.
- Ion – сочетает в себе тайлинг с интерфейсом табуляции: отображение вручную разбивается на непересекающиеся области (кадры). Каждый фрейм может содержать одно или несколько окон. Видно только одно из этих окон, которое заполняет весь кадр.
- Larswm – реализует форму динамического мозаики: дисплей разделен по вертикали на две области (дорожки). Левая дорожка заполнена одним окном. Правая дорожка содержит все остальные окна, расположенные друг над другом.
- LeftWM — тайловый оконный менеджер, основанный на темировании и поддерживающий большие мониторы, такие как сверхширокие. [20]
- Notion — тайловый оконный менеджер.
- Qtile — тайловый оконный менеджер, написанный, настраиваемый и расширяемый на Python . [21]
- Ratpoison с клавиатурным управлением — экран GNU для X.
- Spectrwm — оконный менеджер с динамическим разделением и перераспределением элементов для X11. Он старается оставаться в стороне, чтобы ценное пространство экрана можно было использовать для более важного контента. Он стремится быть маленьким, компактным и быстрым. Раньше назывался «мошонка» (игра слов на основе слова «мошонка»). [22] [ нужен неосновной источник ]
- StumpWM — управляемое с клавиатуры ответвление ratpoison, поддерживающее несколько дисплеев (например, xrandr), которые можно настраивать на лету в Common Lisp. По умолчанию он использует совместимые с Emacs сочетания клавиш.
- wmii (улучшенный оконный менеджер 2) поддерживает управление окнами с помощью расширенной клавиатуры , мыши и файловой системы, [23] замена парадигмы рабочего пространства новым подходом к тегированию. [24] В конфигурации по умолчанию используются сочетания клавиш, заимствованные из текстового редактора vi . Оконный менеджер предлагает обширную настройку через виртуальную файловую систему с использованием протокола файловой системы 9P , аналогичного тому, который предлагает Plan 9 от Bell Labs . [23] Каждое окно, тег и столбец представлены в виртуальной файловой системе, а управление окнами осуществляется путем манипулирования их файловыми объектами (фактически файл конфигурации — это всего лишь сценарий, взаимодействующий с виртуальными файлами). Эта система RPC допускает множество различных стилей конфигурации, включая те, которые предусмотрены в базовом дистрибутиве в plan9port и оболочке Bourne . Последний выпуск 3.9 также включает конфигурации на Python и Ruby . [25] Последняя версия поддерживает Xinerama и поставляется с собственной программой меню на основе клавиатуры, называемой Wimenu, с историей и программируемым завершением. [25] [26] [27] [28]
- xmonad — расширяемая WM, написанная на Haskell , на которую одновременно повлиял и с тех пор влияет dwm.
Вейланд
[ редактировать ]Wayland — это новая оконная система, призванная заменить систему X Window . Лишь несколько менеджеров тайлов поддерживают Wayland изначально.
Список тайловых оконных менеджеров для Wayland
[ редактировать ]- Hyprland — Hyprland — это динамический компоновщик тайлов, который предлагает уникальные функции, такие как плавная анимация, динамическое тайлирование и закругленные углы.
- japokwm — Динамический компоновщик тайлов Wayland, основанный на создании макетов на основе wlroots.
- newm — композитор Wayland, написанный для ноутбуков и тачпадов (в настоящее время не поддерживается) .
- Нири — композитор Wayland, работающий с прокруткой.
- Velox — Простой оконный менеджер на основе swc, вдохновленный dwm и xmonad .
- Vivarium — динамический компоновщик тайлов Wayland с использованием wlroots и семантикой рабочего стола, вдохновленной xmonad .
- Sway — Sway — это «встроенная замена оконного менеджера i3 , но для Wayland вместо X11 . Он работает с существующей конфигурацией i3 и поддерживает большинство функций i3, а также некоторые дополнительные». [29]
- River — River — это динамический тайловый композитор Wayland с гибкой настройкой среды выполнения, который поддерживается и регулярно обновляется.
- CageBreak — это наборщик тайлов для Wayland, основанный на Cage и вдохновленный Ratpoison , которым легко управлять с помощью клавиатуры и доменного сокета unix.
- dwl — dwl — это наборщик Wayland, предназначенный для заполнения того же пространства в мире Wayland, что и dwm в X11 . Как и dwm, он написан на C , имеет небольшую кодовую базу и не имеет какого-либо интерфейса настройки, кроме редактирования исходного кода.
Другие
[ редактировать ]- ETH включает Операционная и программная система Oberon от Zurich в себя мозаичный оконный менеджер.
- менеджер . Редактор/оконная система/оболочка программиста Acme в Plan 9 представляет собой мозаичный оконный
- Смартфоны Samsung Galaxy S3 , S4 , Note II и Note 3 , работающие под управлением специального варианта Android 4, имеют функцию многоокна, которая позволяет пользователю располагать два приложения на экране устройства. Эта функция была интегрирована в стандартную версию Android начиная с версии 7.0 «Нуга».
- Расширение Pop Shell из Pop!_OS может добавлять в GNOME функции плиточного менеджера окон.
- Оконный менеджер Amethyst от ianyh, который обеспечивает мозаику окон для macOS и был вдохновлен xmonad. [30]
Применение плитки
[ редактировать ]Хотя мозаика не является режимом по умолчанию для оконных менеджеров ни на одной широко используемой платформе, большинство приложений уже отображают множество функций внутри аналогичным образом. Примеры включают почтовые клиенты, IDE , веб-браузеры и контекстную справку в Microsoft Office. Главные окна этих приложений разделены на « панели » для различных дисплеев. Панели обычно разделены перетаскиваемым разделителем, позволяющим изменять размер. Панели окон — распространенный способ реализации интерфейса «главный-подробный» .
, разрабатываемый с 1970-х годов, Текстовый редактор Emacs содержит одну из самых ранних реализаций тайлинга. Кроме того, HTML- фреймы можно рассматривать как языка разметки реализацию тайлинга на основе . Тайловый оконный менеджер расширяет эту полезность за пределы нескольких функций в приложении и позволяет использовать несколько приложений на рабочем столе. Интерфейс документа с вкладками может быть полезным дополнением к мозаике, поскольку позволяет избежать появления на экране нескольких плиток окон для одной и той же функции.
См. также
[ редактировать ]- Разделенный экран (компьютерная графика)
- интегрированной среды разработки Интерфейс в стиле
Ссылки
[ редактировать ]- ^ «Ксерокс Стар» . Архивировано из оригинала 18 июля 2011 г. Проверено 14 апреля 2007 г.
- ^ « Десять лет оконных систем — ретроспективный взгляд » . Архивировано из оригинала 16 марта 2010 г. Проверено 21 декабря 2010 г.
- ^ «Менеджеры оконных плиток» . Мнемоникк.орг .
- ^ «видео» . Архивировано из оригинала 22 декабря 2010 г. Проверено 22 декабря 2010 г.
- ^ «Первый менеджер тайловых окон — Siemens RTL Tiled Window Manager (выпущен в 1988 году)» . Ютуб . Архивировано из оригинала 21 декабря 2021 г.
- ^ «Apple анонсирует OS X El Capitan с улучшенными возможностями и улучшенной производительностью» . Отдел новостей Apple .
- ^ «Сборка: более подробная информация о создании приложений Metro для Windows 8» . ПКМАГ . Проверено 25 июня 2021 г.
- ^ Леонхард, Вуди (12 ноября 2015 г.). «Обзор: новая версия Windows 10 по-прежнему не может превзойти Windows 7» . Инфомир . Проверено 25 июня 2021 г.
- ^ «bug.n – Тайлинговый оконный менеджер для Windows» . Гитхаб . Проверено 02 марта 2019 г.
- ^ «MaxTo — оконный менеджер, о котором вы не знали]» . Архивировано из оригинала 13 ноября 2018 г. Проверено 21 ноября 2018 г.
- ^ «Стек WM: Магазин Windows» . Майкрософт . Архивировано из оригинала 10 декабря 2017 г. Проверено 9 декабря 2017 г.
- ^ «Стек на сайте ООО «Лост Тех»» . Архивировано из оригинала 11 января 2018 г. Проверено 9 декабря 2017 г.
- ^ «Сайт программного обеспечения Palace» . 10 января 2019 г. Проверено 10 января 2019 г.
- ^ Баттон, Рик. «рабочее пространство» . www.workspacer.org . Проверено 2 июля 2020 г.
- ^ Таннер, Марк Андре. «dwm-win32 — X11 dwm(1) для Windows» . www.brain-dump.org . Проверено 2 июля 2020 г.
- ^ Перейти обратно: а б Команда журнала Arch Linux (январь 2010 г.). «Обзор программного обеспечения: награда LnF Awards 2009» . Журнал Arch Linux . Архивировано из оригинала 16 февраля 2010 г. Проверено 8 марта 2010 г.
- ^ «100 драгоценных камней с открытым исходным кодом — часть 2» . ТуксРадар . Будущее издательство . 21 мая 2009 г. Архивировано из оригинала 6 января 2010 г. Проверено 3 марта 2010 г.
- ^ Вервлёсем, Коэн (15 июля 2009 г.). «Узбл: браузер, следующий философии UNIX» . LWN.net . Eklektix, Inc. Архивировано из оригинала 30 ноября 2009 г. Проверено 3 марта 2010 г.
- ^ «хербстлуфтвм» . www.herstluftwm.org . Проверено 12 августа 2019 г.
- ^ GitHub — leftwm/leftwm: LeftWM: тайловый оконный менеджер для искателей приключений. , leftwm, 04 апреля 2019 г. , получено 5 апреля 2019 г.
- ^ Верна, Клеман (27 сентября 2018 г.). «5 крутых тайловых оконных менеджеров» . Журнал Федора . Ктайл . Проверено 20 ноября 2018 г.
- ^ «переименовать scrotwm в Spectrwm» . github.com . 15 февраля 2012 г. Проверено 25 мая 2019 г.
- ^ Перейти обратно: а б «wmii — Улучшенный оконный менеджер 2» . Wmii.suckless.org . Архивировано из оригинала 31 декабря 2011 г. Проверено 13 июля 2013 г.
- ^ Комис, Антонис (апрель 2013 г.). «Миграция Windows: среды рабочего стола и оконные менеджеры» . PCLinuxOS . Оконные менеджеры тайлинга и динамического тайлинга — wmii. Архивировано из оригинала 24 октября 2016 года.
- ^ Перейти обратно: а б «git-репозитории suckless.org» . Hg.suckless.org . Архивировано из оригинала 28 июля 2011 г. Проверено 13 июля 2013 г.
- ^ «Легкий и быстрый. WMI и реинкарнация клавиатуры» (PDF) . № 54. Архивировано из оригинала (PDF) 24 февраля 2012 года.
{{cite magazine}}
: Для журнала Cite требуется|magazine=
( помощь ) - ^ Голде, Нико (март 2006 г.). «Никаких слабаков. Взгляните на оконный менеджер Wmii» (PDF) . Журнал Линукс . № 64. Архивировано (PDF) из оригинала 28 октября 2015 г. Проверено 1 октября 2018 г.
- ^ Сондерс, Майк (март 2008 г.). «Легкие оконные менеджеры». Формат Linux . № 103. wmii.
- ^ «СвейВМ» . Архивировано из оригинала 10 октября 2017 г. Проверено 13 октября 2017 г.
- ^ «Аметист | яных» . ianyh.com . Проверено 23 апреля 2021 г.