- Blogerator.org
- Эксклюзивные ИТ-новости, обзоры и интервью
- Тайловые оконные менеджеры под Windows
- Бесплатно: hashTWM
- Бесплатно: GridMove
- Бесплатно: WinSplit
- Shareware: WindowSizer
- Shareware: MaxTo
- Бесплатно: Bug.n
- Итого
- Tiling Window Manager и почему вы должны его использовать
- Что такое Tiling Window Manager
- Менеджеры с плавающими окнами VS
- Ломать пространство
- навигация
- Менеджеры верхнего окна
- Linux
- BSPWM
- Xmonad
- AwesomeWM
- ChunkWM
- Аметист
- Windows
- AquaSnap
- Аксессуары и инструменты
- Polybar
- Lemonbar
- URxvt
- напор
- Данст
- Заключительные мысли
Blogerator.org
Эксклюзивные ИТ-новости, обзоры и интервью
Тайловые оконные менеджеры под Windows
Вне зависимости от того, какая рабочая среда установлена на вашем компьютере, в ней наверняка есть какие-то особенности, «фишки», из-за которых вы предпочли именно данную систему. Возможно, вас привлекло богатство программного обеспечения Windows, а может быть — сетевые возможности Linux или интуитивность OS X. Каждая из них хороша по-своему и каждая имеет особенности, отсутствующие у других.
Сегодня речь пойдет об отличительной черте Unix-совместимых систем — тайловых оконных менеджерах. Этот термин означает специфический стиль работы в рамках GUI, при котором все пространство экрана занято непересекающимися окнами открытых программ.
Несколько лет назад в web было множество страниц с фреймами. Это были не те IFrame, в которых сейчас выводятся надоедливые рекламные сообщения и всяческие галереи картинок, а отдельные самостоятельные области на web-странице, подгружаемые из разных источников, с независимой прокруткой. Окно браузера «разрезается» на несколько частей прямыми линиями, и каждый получившийся прямоугольник живет своей собственной жизнью, независимо от других.
Примерно также ведут себя тайловые оконные менеджеры, только вместо фреймов web-страницы в этих нарезанных кусочках экрана (тайлах) живут программы. Если, например, вы захотите соорудить на экране подобие «коммандера», можно открыть две папки и дать менеджеру окон команду: «применить схему — два окна на экране, разделены вертикальной границей».
А теперь давайте вернемся к системе, которая сейчас имеется на большинстве компьютеров читателей — Microsoft Windows.
От тайлового менеджера в ней окончательно отказались еще в версии 2.0. Реализованное ныне управление окнами становится лучше с каждой версией. В Windows 7 появилось несколько новых возможностей — теперь можно быстро развернуть окно только вертикали или расположить его ровно на половине экрана, справа или слева. Если вам часто приходится пользоваться одновременно двумя программами, это очень удобно, больше нет нужды прибегать к контекстному меню панели задач.
Однако это еще не максимум того, что можно «выжать» из оконного менеджера Windows. Правда, ничего больше разработчики в него пока не заложили. Давайте посмотрим, что можно найти на просторах Всемирной паутины, и попробуем использовать найденное.
Бесплатно: hashTWM
Единственный стопроцентный, чистокровный, безупречно идеологически выдержанный тайловый менеджер, который мне удалось обнаружить. После запуска все открытые масштабируемые окна лишаются рамок и заголовков и разбиваются на две группы — основная и дополнительная.
В основной группе (справа или вверху экрана) содержится одно (по умолчанию) или более окон программ, в дополнительной — все остальные.
Попользовавшись программой один день, берусь утверждать, что при всей аскетичности это весьма мощный инструмент, который непременно обретет своих поклонников.
Будь у меня возможность повлиять на разработку, я попросил бы добавить поддержку мыши для манипуляций с размерами и размещением окон, например, для сбора окон в стеки с закладками, наподобие страниц в браузере.
Бесплатно: GridMove
Эта утилита провисела у меня в трее примерно полгода, и на данный момент мне обходиться без нее уже сложновато. Программа не является «настоящим» тайловым менеджером. Вместо этого она предлагает размещение окон по нескольким заранее заготовленным схемам. Это не означает, что по вашей команде все программы выстроятся в заранее задуманную мозаику, просто окно, к которому будет применена команда, займет очерченную в схеме область. Способов отдачи команды два — мышь и горячие клавиши.
Управление мышью отличается оригинальностью среди исследованных программ. Окно считается перешедшим в новый режим, если вы потянули за заголовок в самом начале, первые 100 пикселей (впрочем, это можно изменить в настройках). При перетаскивании окна на экране будут подсвечиваться области, которые займет окно, если вы сейчас отпустите кнопку мыши.
Единственный раз неудобство у меня возникло, когда я попытался перетащить таким образом первую вкладку в браузере Chrome — вместо перетаскивания вкладки включился тайлинг всего окна браузера. «Хром» пришлось внести в исключения и двигать горячими клавишами. Впрочем, это тоже вполне удобно и не вызывает чувства отторжения.
По умолчанию у меня включена схема, которая разбрасывает окна в соответствии с положением цифр на нампаде. Например, «Win+9» — окно в верхнюю правую четверть экрана, а «Win+5» — окно по центру экрана, размером 2/3 высоты и ширины от текущего разрешения дисплея.
Для меня GridMove стал фаворитом за простоту — после первого дня использования пальцы сами стали нажимать нужные клавиши. Раскладка перетаскиванием за область заголовка — это вообще функция, которую бы мне хотелось увидеть как штатное обновление Windows. Времени на привыкание вообще не требуется, а вот отвыкнуть уже практически нереально.
Бесплатно: WinSplit
Для меня это — ближайший конкурент GridMove, которому для полного счастья не хватало только удобного перетаскивания за заголовок.
Масштабирование горячими клавишами у WinSplit даже удобнее, чем у GridMove — настройки закрепляют за одним хоткеем несколько разных положений, которые можно перебирать, последовательно нажимая комбинацию клавиш. Например, несколько нажатий «Ctrl+Alt+NumPad1» последовательно развернут окно в нижнем правом углу (половина высоты десктопа) на треть, половину и две трети ширины экрана. Сочетание «Ctrl+Alt+F» включает режим Fusion, когда окно прилипает к одной из сторон экрана, а ширину/высоту, то есть положение «не прилипшего» края, можно тут же отрегулировать курсорными кнопками.
Можно с помощью тех же горячих клавиш развернуть окно по вертикали/горизонтали, поместить поверх прочих окон, задать прозрачность и т.д. По моему скромному мнению, это уже лишнее, но иметь такую возможность не помешает
Управление окнами с помощью мыши здесь называется Drag’n’Go и реализовано почти так же удобно, как в GridMove. Единственное отличие — переход в тайловый режим при перетаскивании окна выбирается не областью, за которую вы «ухватились», а сочетанием клавиш-модификаторов. По умолчанию это Ctrl+Alt, но можно назначить свои. Я сначала поставил Win, а после и вовсе отключил модификаторы. Все равно окна у меня почти никогда не перекрываются, так что любое перетаскивание окна можно считать попыткой расположить его в тайлах.
Единственный минус, который я смог найти, — программа при установке забирает под себя много популярных сочетаний клавиш. Впрочем, их можно переназначить, в остальном управление с клавиатуры — лучшее среди всех рассмотренных. Неплохо было бы также добавить область окна для перетаскивания, как в GridMove — и тогда WinSplit был бы практически идеальным инструментом.
Приводить скриншоты этих двух программ бессмысленно, в этом плане они похожи на DropBox — вы не видите их, они просто работают, и делают это хорошо.
Shareware: WindowSizer
Эта программа уже является «настоящим» тайловым менеджером, который не просто располагает окна, но занимает ими по возможности весь экран. На приведенном ниже скриншоте (пардон за низкое разрешение) — один из вариантов раскладки окон, получившихся при включении режима QuickArrange. Если сейчас, например, растянуть окно Total Commander (на скриншоте справа внизу), то остальные окна соответствующим образ масштабируются, чтобы не нарушилась целостность «мозаики». Попытка перетянуть одно окно на другое приведет к тому, что окна обменяются местами.
Например, окно браузера, перетянутое на Word, займет левую половину экрана, а текстовый редактор масштабируется и переместится в верхний правый угол дисплея. Такое поведение будет только у окон, открытых на момент команды тайлового менеджера.
Как и у прочих утилит, среди которых мне пришлось выбирать, у этой есть свои «изюминки». Понравилась возможность приблизительно разнести окна по экрану, а затем собрать их в живую мозаику одним прикосновением к клавиатуре
Впрочем, первое впечатление не было настолько хорошим, чтобы пользоваться программой постоянно и, тем более, покупать ее. После запуска пару раз возникали проблемы с искажением панелей в офисных программах, а настройки довольно бедны — настройка горячих клавиш ограничивает выбором. нет, не самих клавиш, а только модификаторов Ctrl-Alt либо Ctrl-Shift.
Для платной программы, на мой взгляд, WindowSizer пока сыровата и слишком бедна возможностями.
Shareware: MaxTo
Как понятно из названия, программа позволяет разворачивать окна не на весь экран, а так, как будет угодно пользователю. Единственное, чем этот продукт выделился из общего ряда — здесь есть хоть какой-то простенький визуальный редактор, позволяющий накромсать рабочий стол на куски-тайлы.
Кроме этого, похвастаться программе особенно нечем. Управление окнами при помощи мыши почему-то работать не захотело. Будь эта поделка единственным вариантом, ею вполне можно было бы пользоваться, но как ни странно, платные программы показали при проверке худшие результаты по удобству использования, чем их свободные аналоги.
Бесплатно: Bug.n
По сути, Bug.n является набором скриптов для программы Autohotkey. При запуске от пользователя скрывается панель задач, а сами окна (по крайней мере, те, у которых были стандартные декораторы), лишаются заголовков и располагаются в тайлы. Взамен панели задач предлагается собственный простенький тулбар.
Не могу сказать, что меня впечатлила реализация, но сама идея понравилась — не зашивать программу намертво в исполнимый код, а дать пользователю возможность что-то переделать. Экспериментировать с интерпретируемыми скриптами куда проще, чем пересобирать исходники. Мне эта вещь очень напомнила тайловые менеджеры в Linux, с которых, собственно, и начались мои поиски.
Итого
За рамками статьи остались другие интересные аддоны к оконному менеджеру Windows, такие как WindowTabs, складывающий любые окна в стеки с закладками (как страницы в Chrome), разнообразные утилиты, добавляющие элементы в заголовки окон, реализующие функции RollUp, свертывание в трей, прикрепление к десктопу и «поверх всех окон» и т.п.
Что же касается предмета рассмотрения, то мои однозначные фавориты — GridMove, который я использую сейчас, и WinSplit, завороживший меня реализацией горячих клавиш, удобнейшей из всех рассмотренных. Именно с одной из этих программ я рекомендую вам познакомиться поближе.
Tiling Window Manager и почему вы должны его использовать
Ваш рабочий стол — беспорядок? Есть ли окна поверх окон поверх тех, кто что знает? Может быть, вы просто всегда ищете больше места на экране. Может показаться, что эти вещи являются симптомами ключевой проблемы с тем, как компьютерные графические интерфейсы обрабатывают окна, и они есть. Большинство оконных менеджеров крайне неэффективны. Tiling Window Manager является возможным решением.
Что такое Tiling Window Manager
- Что такое Tiling Window Manager
- Менеджеры с плавающими окнами VS
- Ломать пространство
- навигация
- Менеджеры верхнего окна
- Linux
- i3wm
- BSPWM
- Xmonad
- AwesomeWM
- OSX
- ChunkWM
- Аметист
- Windows
- bug.n
- AquaSnap
- Linux
- Аксессуары и инструменты
- Polybar
- Lemonbar
- Rofi
- URxvt
- напор
- Данст
- Заключительные мысли
В оконном менеджере листов используется другой подход к расположению окон. Вместо того, чтобы просто выскакивать окна, они занимают все свободное место. Когда вы открываете больше окон, пространство экрана разбивается математически, чтобы максимально эффективно его использовать.
Например, если вы откроете программу на пустом рабочем столе, она автоматически заполнит весь экран. Затем, если вы откроете другой, он откроется рядом с предыдущим, заполнив половину экрана. Отсюда все зависит от того, какой алгоритм использует оконный менеджер. Однако в этом примере можно предположить, что он будет вести себя как оконный менеджер i3. Если это так, следующее окно откроется рядом с остальными, разделив экран на трети. Эта тенденция будет продолжаться.
Возможно, это звучит не слишком хорошо, но вы можете расположить и изменить их в любое время. Это включает в себя процент экрана, который они занимают. Вы можете разбить экран на четверти, причем каждая сторона экрана будет разделена пополам по горизонтали. На самом деле, вы можете организовать экран так, как вам нравится.
Большинство оконных менеджеров, особенно в системах Linux, также используют рабочие пространства. Рабочие пространства создают виртуальные экраны, обычно до десяти. Вы можете настроить, чтобы окна открывались на определенных рабочих пространствах, а рабочие пространства — на определенных мониторах.
С помощью оконного менеджера вы получаете полный контроль над расположением окон на ваших экранах.
Менеджеры с плавающими окнами VS
Поначалу может показаться, что оконные менеджеры листов гораздо менее удобны, чем их плавающие аналоги. Естественно перетаскивать окно по экрану, верно?
Большинство оконных менеджеров листов по умолчанию имеют мозаику, но поддерживают всплывающие окна в тех случаях, когда это нецелесообразно Вы можете переключать плавающие в любое время. Когда вы переключаете плавающее окно в плавающий режим, вы можете использовать элементы управления клавиатуры, чтобы изменить его размер и заставить его работать так, как вы ожидаете.
Одно из огромных преимуществ оконных менеджеров — это возможность их настраивать. Поскольку вы настраиваете свои собственные элементы управления, вы можете быстро адаптироваться к рабочему процессу, который вы считаете удобным.
Вы когда-нибудь пытались упорядочить окна и сохранить их с помощью плавающего оконного менеджера? Это не работает хорошо, если вообще. Таким образом, вы можете получить плавающее поведение из оконного менеджера листов, но оно не работает наоборот.
Еще одним огромным преимуществом являются клавиатура и навигация. Нет необходимости использовать мышь для навигации по оконному менеджеру. Все, что вы делаете, может быть обработано с помощью горячих клавиш. Вы даже можете назначить горячие клавиши для запуска всех ваших наиболее часто используемых приложений.
Ломать пространство
Существуют разные способы укладки плитки. Обычно тайлинг обрабатывается алгоритмом. Обычно любой алгоритм листов является только методом по умолчанию, который вы можете переопределить вручную. Таким образом, не является главным приоритетом выбор оконного менеджера, который мозаичным способом. Вы всегда можете переопределить это.
Вы уже прошли через i3 плитки. Это продолжит делить экран поровну в одном направлении. Вы можете переключаться между горизонтальной и вертикальной плиткой в любое время. Это помогает организовать ваши окна. Это, наверное, один из самых простых способов плитки.
Следующий способ, которым мозаика оконных менеджеров — через алгоритм двоичного дерева. Используется BSPWM. Алгоритм двоичного дерева автоматически переключается с одного окна на другое, разбивая сфокусированное окно пополам. Итак, первое окно займет весь экран. Второе окно появится рядом с первым, занимая половину общего пространства. Третье окно разделит пространство второго окна пополам. Четвертое окно разделит третье, и так далее.
Наконец, у вас есть ручные оконные менеджеры. Это заставляет вас указать местоположение вашего следующего окна по умолчанию.
Конечно, есть и другие алгоритмы, но это самые распространенные, с которыми вы можете столкнуться.
навигация
Навигация в оконном менеджере тайлинга зависит от оконного менеджера и от того, как вы его настроили. Однако многое зависит от вашей конфигурации. Одна вещь, которую все конфигурации имеют в общем, это клавиша «Mod». Этот ключ позволяет менеджеру вдовы знать, что вы используете команду вместо простого ключа. Обычно клавиша «Mod» является клавишей Alt или клавишей Windows.
Большинство пользователей оконного менеджера тайлинга предпочитают нам Vim в качестве основы своих конфигураций, используя клавиши h, j, k и l вместе с Mod для перемещения. Для перемещения вверх нажмите k. Для перемещения нажмите j. H слева, а L справа. Затем вы добавляете еще одну клавишу, например Shift, в микс, чтобы изменить положение этих окон.
Мод и число обычно перемещаются между рабочими пространствами. Нажатие клавиши мод и номер 1 приведут вас к рабочему пространству 1. «Мод + 8» будет рабочим пространством 8. Вы поняли идею.
Существует гораздо больше настроек, которые вы можете сделать. Имейте в виду, что в большинстве оконных менеджеров нет ничего запредельного. Вы можете создавать свои собственные комбинации горячих клавиш для чего угодно.
Менеджеры верхнего окна
Есть безумное количество оконных менеджеров. Они довольно легкие и простые, поэтому их делают многие люди. Лучше всего выбрать тот, который популярен и хорошо документирован. Таким образом, вы можете быть уверены, что он все еще разрабатывается и поддерживается. Кроме того, вам будет легче найти помощь, если она вам понадобится.
Linux
В Linux самый широкий набор оконных менеджеров. Они более популярны в Linux и их легче создавать для Linux с помощью доступного набора инструментов с открытым исходным кодом. Это очень небольшая выборка, поэтому, если у вас есть избранное, которого нет в списке, это просто потому, что цель здесь — сделать его как можно более простым, а не подавлять новых пользователей.
Если вы работаете в Linux и никогда раньше не использовали менеджер окон, выберите i3. Он очень популярен, прост в использовании и отличная документация. Вы не будете разочарованы.
i3 хорошо работает с множеством внешних программ и аксессуаров. Он также использует простой текстовый файл конфигурации, который легко читать новым пользователям и людям, не имеющим опыта программирования.
BSPWM
BSPWM — это сверхлегкий сверхтонкий оконный менеджер, который по умолчанию использует разбиение экрана двоичного дерева. Это не идет с целым рядом из коробки, ожидая, что вы настроите все по своему вкусу.
BSPWM также использует конфигурацию сценариев оболочки, которую довольно легко понять пользователям Linux, но она не самая лучшая для новичков.
Также важно отметить, что BSPWM ожидает от вас появления собственных приложений поддержки, таких как строка состояния и панель запуска. Есть много отличных вариантов, но вам нужно найти их самостоятельно.
Xmonad
Xmonad немного отличается. Весь менеджер окон написан на Haskell, как и конфигурация. Это означает, что вам нужно знать хотя бы немного о Haskell для настройки Xmonad.
Это не очень хороший вариант для новых пользователей, но если вы программист и ищете вариант, позволяющий настроить ваш рабочий стол с использованием реального кода, Xmonad — хороший выбор.
AwesomeWM
Если вы искали что-то, что поставляется с «батарейками в комплекте», например, i3 и использует программирование для конфигурации, например, Xmonad, AwesomeWM может быть тем, что вы ищете.
AwesomeWM поставляется с собственной строкой состояния и по умолчанию может обрабатывать множество вещей. Он использует язык сценариев Lua для своей конфигурации. Это более простой язык программирования, но он по-прежнему предоставляет множество опций для настройки AwesomeWM.
OSX — это Unix-подобная система, и она любима разработчиками. Не так уж и сложно понять, почему люди захотят размещать там оконные менеджеры. Хотя у него не так много вариантов, как у Linux, есть еще несколько надежных оконных менеджеров для OSX.
ChunkWM
ChunkWM — довольно новый проект. Это новое имя старого фаворита, KWM. ChunkWM по умолчанию использует схему двоичного разбиения и использует простые текстовые конфигурации.
Вы можете установить ChunkWM на OSX, используя homebrew, и настроить его оттуда. Сам ChunkWM написан в основном на C ++ и Objective -C ++, так что он работает так же быстро и быстро, как и вы.
Аметист
Аметист — еще один отличный вариант для OSX. Он больше похож на Xmonad, но написан в основном на Swift, поэтому хорошо вписывается в экосистему Apple.
Не беспокойтесь о настройке Аметиста. Это идет из коробки с интеллектуальными средствами управления, которые сделают навигацию и использование этого легким.
Windows
Windows — не лучшее место для таких вещей, как мозаичные оконные менеджеры. Он построен так, чтобы работать так, как он был спроектирован, и не требует особых настроек. Тем не менее, есть несколько хороших опций, которые могут дать вам некоторые преимущества тайлинга WM на Windows.
Bug.n — это оконный менеджер в традиционном стиле для Windows. Это скрипт, который вы можете добавить, чтобы ваш рабочий стол по умолчанию вел себя как оконный менеджер. Этот скрипт добавляет макеты листов, а также горячие клавиши для навигации.
Bug.n поддерживает мозаику так же, как и плавающие окна, как в оконных менеджерах Linux. Он также копирует функциональность рабочей области оконных менеджеров плиточного Linux.
Так как он в значительной степени управляется с помощью клавиатуры, bug.n — лучший вариант для тех, кто знаком с чистой навигацией с помощью клавиатуры, в противном случае он будет немного подавляющим.
AquaSnap
AquaSnap является отличным промежуточным звеном для пользователей Windows, которые ищут большинство функций оконного менеджера листов без необходимости полностью его выполнять.
Как следует из названия, это позволяет вам защелкивать окна в углах и легко размещать макет. Это не полнофункциональный оконный менеджер, и он не распределяется автоматически. Это позволяет вам щелкать и перетаскивать окна, чтобы изменять их размер, сохраняя при этом макет в виде мозаики.
Аксессуары и инструменты
Есть несколько дополнительных программ, которые очень хорошо сочетаются с оконными менеджерами. Они помогают расширить функциональность оконного менеджера и помогут настроить вещи по своему вкусу.
Polybar
Polybar — это строка состояния, которая была разработана для работы с i3 и BSPWM, но ее, безусловно, можно применить к другим. Эта строка состояния поставляется с базовым минимальным функционалом, встроенным для многих вещей. Это облегчает начало работы. К счастью, он также позволяет вам настраивать и переопределять любые функции, которые вы хотите. Polybar полностью поддерживает сценарии, поэтому, если вы знакомы с сценариями Bash, вы можете по-настоящему повеселиться с ним.
Lemonbar
Lemonbar — это другая строка состояния, похожая на Polybar. Этот еще более минималистичен, чем Polybar, и у него не так много всего для начала. Вы должны создать функциональность самостоятельно. Он также полностью поддерживает сценарии, поэтому, опять же, у вас нет никаких ограничений.
Rofi — минимальная программа запуска приложений. Вы можете сопоставить его с горячей клавишей и использовать для запуска любой программы, которую вы вводите. Rofi запоминает программы, которые вы ищете, и выводит их в список недавно / наиболее часто используемых.
Вы также можете настроить внешний вид Rofi, чтобы он соответствовал вашему рабочему столу. Это не так сложно с помощью файла Xresources в Linux.
URxvt
URxvt, или Rxvt-Unicode, является эмулятором терминала. Вам не обязательно использовать тот или иной эмулятор терминала с оконным менеджером листов, но лучше использовать более минимальный, не привязанный к какой-либо конкретной графической среде. URxvt соответствует этому описанию.
В качестве дополнительного бонуса, URxvt является супер конфигурируемым. Вы можете настроить его практически на любой внешний вид. Это включает в себя цвет, текст и фон.
напор
Vim не имеет большого отношения к оконным менеджерам листов, но когда вы обнаружите, что используете их, вам захочется делать все больше и больше из командной строки. Для этого Вим твой друг.
Vim — очень мощный текстовый редактор. Это, наверное, лучший текстовый редактор в мире. Он имеет и абсолютно безумное количество доступных плагинов, которые делают его способным к еще большему.
Данст
Если вы достигли минимального уровня с помощью оконного менеджера, вам все еще, вероятно, нужны уведомления на рабочем столе. Если вам нужны уведомления, которые вы можете настроить в соответствии с нашим рабочим столом, вы можете использовать Dunst. Dunst — это легкая система уведомлений, которую вы можете легко настроить с помощью простой текстовой конфигурации. Измените размер, цвет и текст уведомлений, которые вы получаете.
Заключительные мысли
Tiling Window Manager не для всех. Требуется приличное количество терпения и настройки, чтобы привыкнуть к навигации, используя только клавиатуру. Сначала это будет неуклюже и неловко, но если вы продолжите движение, вы, возможно, просто поймете, что это намного быстрее и эффективнее.
Также важно помнить, что оконные менеджеры листов лучше в Linux, чем OSX и Windows, а OSX намного лучше, чем Windows. Это связано с их происхождением Unix. Если вы решите использовать оконный менеджер листов, ожидайте, что большинство поддержки и дополнительных приложений сосредоточатся на Linux.
Если все это вас еще не напугало, вы можете просто изменить свой взгляд на использование компьютера и полюбить его гораздо больше.