Spec-Zone.ru › Hammerspoon

hs.expose

Замена/расширение expose, управляемого с клавиатуры

Предупреждение: этот модуль всё ещё находится в стадии разработки. Если у вас возникнут проблемы, пожалуйста, сообщите о них на https://github.com/Hammerspoon/hammerspoon/issues или в #hammerspoon на irc.libera.chat

С помощью этого модуля вы можете настроить горячую клавишу для отображения миниатюр открытых окон при вызове; каждая миниатюра будет иметь ассоциированную "подсказку" для клавиатуры (обычно одну или две буквы), нажав которые вы быстро переключите фокус на это окно; в сочетании с модификаторами клавиатуры вы можете дополнительно минимизировать (alt по умолчанию) или закрыть (shift по умолчанию) любое окно, не переключаясь на него предварительно.

При использовании в сочетании с фильтром окон вы можете включать или исключать определённые приложения, заголовки окон, экраны, роли окон и т.д. Кроме того, каждый экземпляр expose может быть настроен на включение или исключение минимизированных или скрытых окон, окон, находящихся в других пространствах Mission Control, или только окон текущего приложения. Вы можете дополнительно настроить длину подсказок, цвета, шрифты и размеры, показывать ли миниатюры и/или заголовки окон и многое другое.

Для повышения отзывчивости, этот модуль будет обновлять макет миниатюр в фоновом режиме (так сказать), чтобы отображать expose без задержки при вызове. Имейте в виду, что на особенно сложных конфигурациях Hammerspoon это может негативно повлиять на общую производительность; вы можете отключить это поведение с помощью hs.expose.ui.fitWindowsInBackground=false

Использование:

-- set up your instance(s)
expose = hs.expose.new(nil,{showThumbnails=false}) -- default windowfilter, no thumbnails
expose_app = hs.expose.new(nil,{onlyActiveApplication=true}) -- show windows for the current application
expose_space = hs.expose.new(nil,{includeOtherSpaces=false}) -- only windows in the current Mission Control Space
expose_browsers = hs.expose.new{'Safari','Google Chrome'} -- specialized expose using a custom windowfilter
-- for your dozens of browser windows :)

-- then bind to a hotkey
hs.hotkey.bind('ctrl-cmd','e','Expose',function()expose:toggleShow()end)
hs.hotkey.bind('ctrl-cmd-shift','e','App Expose',function()expose_app:toggleShow()end)

Обзор API

  • Переменные - Настраиваемые значения
    • ui
  • Конструкторы - вызовы API, которые возвращают объект, обычно объект, предоставляющий методы API
    • new
  • Методы - вызовы API, которые могут быть выполнены только на объекте, возвращённом конструктором
    • hide
    • show
    • toggleShow

Документация API

Переменные

ui
Подпись hs.expose.ui
Тип Переменная
Описание

Позволяет настроить поведение и пользовательский интерфейс expose

Источник extensions/expose/expose.lua строка 248

Конструкторы

new
Подпись hs.expose.new([windowfilter[, uiPrefs][, logname, [loglevel]]]) -> hs.expose object
Тип Конструктор
Описание

Создаёт новый экземпляр hs.expose; он может использовать фильтр окон для определения отображаемых окон

Параметры
  • windowfilter - (необязательно) если пропущено или равно nil, используется по умолчанию windowfilter; в противном случае это должен быть экземпляр windowfilter или таблица конструктора
  • uiPrefs - (необязательно) таблица для переопределения настроек пользовательского интерфейса для этого экземпляра; её ключи и значения должны соответствовать соглашениям, описанным в hs.expose.ui; этот параметр позволяет иметь несколько экземпляров expose с разным поведением (например, с и без миниатюр и/или заголовков) с использованием разных горячих клавиш
  • logname - (необязательно) имя экземпляра hs.logger для нового expose; если пропущено, используется класс logger
  • loglevel - (необязательно) уровень логгирования для экземпляра hs.logger для нового expose
Возвращает
  • новый экземпляр
Примечания
  • по умолчанию expose будет отображать невидимые окна и (в отличие от OSX expose) окна из других пространств; используйте hs.expose.ui или параметр uiPrefs для изменения этого поведения.
Источник extensions/expose/expose.lua строка 1020

Методы

hide
Подпись hs.expose:hide()
Тип Метод
Описание

Скрывает expose, если он виден, и выходит из модального режима

Параметры
  • Никаких
Возвращает
  • Никаких
Примечания
  • Вызовите эту функцию, если вам нужно убедиться, что модальный режим завершён, не ожидая, пока пользователь нажмёт esc
Источник extensions/expose/expose.lua строка 603
show
Подпись hs.expose:show([activeApplication])
Тип Метод
Описание

Отображает экран, похожий на expose, с модальными подсказками для клавиатуры для переключения на, закрытия или минимизации/восстановления окон.

Параметры
  • activeApplication - (необязательно) если true, показываются только окна активного приложения (в рамках фильтра окон экземпляра); в противном случае показываются все окна, разрешённые фильтром окон экземпляра
Возвращает
  • Никаких
Примечания
  • передача true для activeApplication просто скрывает подсказки/миниатюры для приложений, отличных от активного, без перерасчёта макета подсказок; наоборот, установка onlyActiveApplication=true для ui экземпляра expose рассчитает оптимальный макет для окон текущего активного приложения
  • Завершение подсказки выведет expose и переключит фокус на выбранное окно.
  • Нажатие Esc выведет expose без каких-либо действий.
  • Если Shift удерживается при завершении подсказки (фоновый цвет будет красным), выбранное окно будет закрыто. Если это последнее окно приложения, приложение будет закрыто.
  • Если Alt удерживается при завершении подсказки (фоновый цвет будет синим), выбранное окно будет минимизировано (если оно видимое) или разминизировано/отображено (если оно минимизировано или скрыто).
Источник extensions/expose/expose.lua строка 618
toggleShow
Подпись hs.expose:toggleShow([activeApplication])
Тип Метод
Описание

Переключает отображение expose - см. hs.expose:show() и hs.expose:hide()

Параметры
  • activeApplication - (необязательно) если true, показываются только окна активного приложения (в рамках фильтра окон экземпляра); в противном случае показываются все окна, разрешённые фильтром окон экземпляра
Возвращает
  • Никаких
Примечания
  • передача true для activeApplication просто скрывает подсказки/миниатюры для приложений, отличных от активного, без перерасчёта макета подсказок; наоборот, установка onlyActiveApplication=true для ui экземпляра expose рассчитает оптимальный макет для окон текущего активного приложения
  • Завершение подсказки выведет expose и переключит фокус на выбранное окно.
  • Нажатие Esc выведет expose без каких-либо действий.
  • Если Shift удерживается при завершении подсказки (фоновый цвет будет красным), выбранное окно будет закрыто. Если это последнее окно приложения, приложение будет закрыто.
  • Если Alt удерживается при завершении подсказки (фоновый цвет будет синим), выбранное окно будет минимизировано (если оно видимое) или разминизировано/отображено (если оно минимизировано или скрыто).
Источник extensions/expose/expose.lua строка 581

© 2014–2017 Hammerspoon contributors
Licensed under the MIT License.
https://www.hammerspoon.org/docs/hs.expose.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API