Вопрос или проблема
Power Toys — это инструмент с открытым исходным кодом, который содержит множество очень полезных инструментов для Windows 10+ и я использую его ежедневно на работе. Однако одним из них я действительно хотел бы пользоваться в своей личной системе, которой является Ubuntu 20. Этот инструмент называется FancyZones.
Вы можете перейти по ссылке для получения подробного объяснения всех его функций, но в общем, FancyZones — это инструмент для разбивки области экрана на зоны, чтобы вы могли размещать окна в этих зонах. Принцип работы: я перетаскиваю окно, удерживая левую кнопку мыши, и во время этого нажимаю правую кнопку, чтобы зоны появились. Когда я отпускаю левую кнопку мыши, окно заполняет зону, или я могу отменить это, нажав правую кнопку еще раз, пока все еще перетаскиваю.
Зоны должны быть полностью настраиваемыми, и должно быть возможно переключаться между макетами зон для каждого монитора с помощью сочетания клавиш.
Например, у меня есть монитор ноутбука и ультраширокий монитор. Монитор ноутбука имеет макет с 4 зонами, по одной в каждом углу, в то время как ультраширокий монитор имеет 3 макета: 1 — такой же, как у ноутбука, 2 — 4 зоны рядом и 3 — фокусированное пространство слева чуть ниже, чем у нормального монитора, а остальное справа — это нефокусированное содержимое. У этого также есть еще одна зона сверху, эмулирующая монитор размера 720p для того, чтобы я мог демонстрировать экран, чтобы я мог поделиться лишь окном с идеальными пропорциями и размером, что означает, что люди могут наслаждаться полноэкранным режимом, не приближая, чтобы понять, что я демонстрирую.
Это не обязательно, но если возможно, я хотел бы, чтобы он был доступен в приложении Ubuntu Software.
Я пробовал несколько решений для тайлинга и записал свои заметки здесь: https://gist.github.com/bmaupin/5ebd4d7fd52f8911e14fa55cd58aee2d
Вот мои текущие рекомендации в порядке:
Tiling Shell
В данный момент я использую Tiling Shell. Из всех расширений для тайлинга, он, кажется, наиболее похож на FancyZones. Он работает очень хорошо из коробки, с полезными стандартными макетами. Ctrl работает из коробки для привязки к зоне, а Ctrl плюс Alt позволяют растянуть окна на несколько зон.
Единственный минус, который я нашел, это то, что если вы хотите настроить больше, чем только макеты (например, убрать промежуток между зонами, отключить всплывающее окно помощника привязки), вам нужно сделать это через Менеджер расширений Gnome.
gSnap
gSnap был тем, чем я пользовался ранее. Это еще одно отличное расширение, которое также работает хорошо, хотя меня не очень устраивают его стандартные настройки, и в редких случаях функция привязки к зоне просто переставала работать на некоторых рабочих пространствах.
Я внес пару изменений, чтобы заставить его работать более похоже на FancyZones:
-
Нажмите на значок в трее > Настройки
-
Я убрал галочку с Показать вкладки. В FancyZones их нет, и мне действительно не нравилось, сколько места они занимали или как они иногда закрывали те части экрана, которые я пытался увидеть. Плюс есть много других способов менять окна (из значка приложения в доке, Alt+Tab и т.д.).
-
Я установил галочку на Удерживайте CTRL для привязки окон. FancyZones тоже не привязывает окна к зонам по умолчанию. Стандартное поведение gSnap — привязывать каждое окно к зоне, что мне не нравилось. Иногда я не хочу перемещать окно в зону, особенно маленькие окна. И когда появлялось новое окно (например, запрос пароля), оно привязывалось к зоне, расставляя элементы пользовательского интерфейса в местах, где я не ожидал их увидеть.
Вы также можете еще больше имитировать FancyZones, настроив поля в настройках gSnap, хотя я этого не сделал.
Tiling Assistant
Я пробовал Tiling Assistant, и это не мой первый выбор. Он кажется таким же мощным и настраиваемым, как Tiling Shell (и более, чем gSnap), но с менее интуитивным интерфейсом. Также поддержка макетов в Tiling Assistant все еще считается “экспериментальной”.
Tiling Assistant
Tiling Assistant — это расширение для оболочки GNOME. Более подробная информация в принятом ответе на тот же вопрос, который я задал на Ask Ubuntu:
Pop Shell
Как кто-то, кто искал именно это, я наткнулся на это, и я не могу вернуться назад, это просто работает лучше:
https://github.com/pop-os/shell
Это оконный менеджер с тайлингом для GNOME. Вы могли бы назвать это “автоматическими красивыми зонами”. Просто уделите время, чтобы выучить сочетания клавиш, мне потребовалось несколько дней, чтобы запомнить их.
Вот самые важные:
Super+Y
для включения/выключения управления окнамиSuper+Enter
для входа в “режим управления”, или как бы вы это ни назвалиСтрелочные клавиши
(илиHJKL
vim вместо этого) в режиме управления будут перемещать окна.Shift+Стрелочные клавиши
(илиShift+HJKL
vim вместо этого) в режиме управления изменят размер текущего окна.
Удачи!
Ответ или решение
Альтернативы FancyZones для Linux: Подробное руководство
Microsoft PowerToys представляет собой мощный набор инструментов для пользователей Windows 10 и выше, и одним из самых популярных его компонентов является FancyZones. Этот инструмент позволяет пользователям настраивать области экрана для упрощения работы с окнами. Хотя FancyZones является значительно удобным, пользователи Linux, такие как вы, также могут найти эффективные альтернативы, которые предложат аналогично функционал. В этой статье мы рассмотрим несколько таких решений, доступных для Ubuntu 20.
1. Tiling Shell
Первым и наиболее рекомендуемым вариантом является Tiling Shell. Это расширение для GNOME, которое предоставляет множество возможностей и настраиваемых параметров. Tiling Shell позволяет просто и удобно управлять окнами с помощью следующих функций:
- Удобное управление окнами: Используйте сочетания клавиш, такие как
Ctrl
, чтобы привязывать окна к заданным зонам. - Предустановленные макеты: Покрывает основные потребности пользователя и обеспечивает функциональность, схожую с FancyZones.
Тем не менее, важно отметить, что некоторые более сложные настройки (например, удаление промежутков между зонами) требуют использования GNOME Extension Manager.
2. gSnap
Вторым вариантом, который стоит рассмотреть, является gSnap. Это расширение также предоставляет аналогичные функции, позволяя пользователям привязывать окна к областям. Однако, пользователи сообщают о падении производительности в редких случаях. Тем не менее, gSnap все же может быть настроен для работы более подобно FancyZones, если вы выполните следующие шаги:
- Измените настройки, чтобы отключить вкладки, делая интерфейс более чистым.
- Включите функцию "Hold CTRL to snap windows" для управления привязкой окон.
3. Tiling Assistant
Tiling Assistant занимает более нейтральную позицию в сравнении с перечисленными выше. Это расширение также предоставляет мощные функции, но может быть менее интуитивным в использовании. Несмотря на это, функциональность и возможность настройки делают его подходящим выбором для продвинутых пользователей.
4. Pop Shell
Если вам нужно что-то более "автоматизированное", то обязательно обратите внимание на Pop Shell. Это расширение для GNOME, которое автоматизирует распределение окон по экрану, тем самым обеспечивая более высокую степень продуктивности. Ключевые сочетания клавиш включают в себя:
Super+Y
для переключения управления окнами.Super+Enter
для активирования режима управления окнами.- Кнопки стрелок для перемещения и изменения размера окон в режиме управления.
Заключение
Для пользователей Ubuntu, ищущих альтернативу FancyZones, перечисленные выше решения представляют собой достойные варианты. Каждый из них имеет свои уникальные особенности и возможности, которые могут значительно улучшить рабочие процессы. Выбор подходящего инструмента будет зависеть от ваших предпочтений и потребностей в управлении окнами.
Важно отметить, что все упомянутые расширения обычно доступны через Ubuntu Software, что упрощает установку и настройку. Надеемся, эта статья поможет вам найти подходящее решение для повышения вашей продуктивности на Linux.