Spec-Zone.ru › Hammerspoon

hs.redshift

Инвертирует и/или понижает цветовую температуру экрана(ов) по расписанию для более приятного опыта в ночное время

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

-- make a windowfilterDisable for redshift: VLC, Photos and screensaver/login window will disable color adjustment and inversion
local wfRedshift=hs.window.filter.new({VLC={focused=true},Photos={focused=true},loginwindow={visible=true,allowRoles='*'}},'wf-redshift')
-- start redshift: 2800K + inverted from 21 to 7, very long transition duration (19->23 and 5->9)
hs.redshift.start(2800,'21:00','7:00','4h',true,wfRedshift)
-- allow manual control of inverted colors
hs.hotkey.bind(HYPER,'f1','Invert',hs.redshift.toggleInvert)

Примечание:

  • Начиная с macOS 10.12.4, Apple предоставляет «Night Shift», который реализует простой эффект красного смещения, как часть ОС. Кажется маловероятным, что hs.redshift будет подвергаться существенному дальнейшему развитию.

Обзор API

  • Переменные - Настраиваемые значения
    • COLORRAMP
  • Функции - API-вызовы, предлагаемые непосредственно расширением
    • invertSubscribe
    • invertUnsubscribe
    • isInverted
    • requestInvert
    • start
    • stop
    • toggle
    • toggleInvert

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

Переменные

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

Таблица, содержащая значения гамма для заданных цветовых температур; каждый ключ должен быть числом цветовой температуры в К (полезные значения находятся между

Примечания
  • hs.inspect(hs.redshift.COLORRAMP) из консоли покажет, как построена таблица
  • в стандартной таблице значения от 1000К до 10000К с шагом 100К
Источник extensions/redshift/redshift.lua строка 342

Функции

invertSubscribe
Подпись hs.redshift.invertSubscribe([id,]fn)
Тип Функция
Описание

Подписывает обратный вызов, чтобы получать уведомления о изменениях состояния инверсии цвета

Параметры
  • id - (необязательно) строка, идентифицирующая запросчика (обычно имя модуля); если опущено, fn само будет идентификатором; этот идентификатор должен передаваться в hs.redshift.invertUnsubscribe()
  • fn - функция, которая будет вызываться всякий раз, когда изменяется состояние инверсии цвета; она должна принимать единственный параметр, строку или ложь в соответствии со значением возврата hs.redshift.isInverted()
Возвращаемое значение
  • Ничего
Примечания
  • Вы можете использовать это для динамической настройки цветов пользовательского интерфейса в ваших модулях или настройках, если это необходимо.
Источник extensions/redshift/redshift.lua строка 107
invertUnsubscribe
Подпись hs.redshift.invertUnsubscribe(id)
Тип Функция
Описание

Отписывает ранее подписанный обратный вызов изменения инверсии цвета

Параметры
  • id - строка, идентифицирующая запросчика или саму функцию обратного вызова, в зависимости от того, как вы вызвали hs.redshift.invertSubscribe()
Возвращаемое значение
  • Ничего
Источник extensions/redshift/redshift.lua строка 128
isInverted
Подпись hs.redshift.isInverted() -> string or false
Тип Функция
Описание

Проверяет, инвертированы ли цвета в настоящее время

Параметры
  • Нет
Возвращаемое значение
  • false, если цвета не инвертированы; в противном случае строка, указывающая причину, одна из:
    • "user" для переопределения пользователем (см. hs.redshift.toggleInvert())
    • "redshift-night", если hs.redshift.start() был вызван с invertAtNight установленным в true и сейчас ночь
    • строка идентификатора (обычно имя модуля), предоставленного hs.redshift.requestInvert(), если другой модуль запросил инверсию цвета
Источник extensions/redshift/redshift.lua строка 144
requestInvert
Подпись hs.redshift.requestInvert(id,v)
Тип Функция
Описание

Устанавливает или очищает запрос на инверсию цвета

Параметры
  • id - строка, идентифицирующая запросчика (обычно имя модуля)
  • v - логическое значение, указывающее, нужно ли инвертировать цвета (если true) или очистить предыдущие запросы (если false или nil)
Возвращаемое значение
  • Ничего
Примечания
  • вы можете использовать эту функцию, например, для автоматической инверсии цветов, если значение датчика окружающего освещения падает ниже определенного порога (hs.brightness.DDCauto() может это сделать)
  • если в конфигурации пользователя не указано явное включение модуля redshift, вызов этой функции не повлияет
Источник extensions/redshift/redshift.lua строка 161
start
Подпись hs.redshift.start(colorTemp,nightStart,nightEnd[,transition[,invertAtNight[,windowfilterDisable[,dayColorTemp]]]])
Тип Функция
Описание

Устанавливает расписание и (снова) запускает модуль

Параметры
  • colorTemp - число, указывающее желаемую цветовую температуру (Кельвин) в ночной период; рекомендуемый диапазон от 3600К до 1400К; меньшие значения (минимум 1000К) приводят к более выраженному изменению
  • nightStart - строка в формате "ЧЧ:ММ" (24-часовой формат) или количество секунд после полуночи (см. hs.timer.seconds()) указывающее время начала ночного цикла
  • nightEnd - строка в формате "ЧЧ:ММ" (24-часовой формат) или количество секунд после полуночи (см. hs.timer.seconds()) указывающее время окончания ночного цикла
  • transition - (необязательно) строка или количество секунд (см. hs.timer.seconds()) указывающее продолжительность перехода к ночной цветовой температуре и обратно; если опущено, по умолчанию 1 час
  • invertAtNight - (необязательно) логическое значение, указывающее, нужно ли инвертировать цвета (в дополнение к смещению цветовой температуры) в ночное время; если опущено, по умолчанию false
  • windowfilterDisable - (необязательно) объект hs.window.filter , который отключит корректировку цвета (и инверсию цвета) всякий раз, когда разрешается любое окно; альтернативно, вы можете просто предоставить список имен приложений (обычно приложения для медиа и/или приложения для работы с цветочувствительной информацией) и будет создан windowfilter, который отключает корректировку цвета всякий раз, когда фокусируется одно из этих приложений
  • dayColorTemp - (необязательно) число, указывающее желаемую цветовую температуру (в Кельвинах) в дневной период; вы можете использовать это для поддержания некоторой степени "redshift" в течение дня также, или, если это необходимо, вы можете указать значение выше 6500К (до 10000К) для более синих цветов, хотя это не рекомендуется; если опущено, по умолчанию 6500К, что отключает корректировку цвета и восстанавливает исходные цветовые профили экранов
Возвращаемое значение
  • Ничего
Источник extensions/redshift/redshift.lua строка 273
stop
Подпись hs.redshift.stop()
Тип Функция
Описание

Останавливает модуль и отключает корректировку цвета и инверсию цвета

Параметры
  • Нет
Возвращаемое значение
  • Ничего
Источник extensions/redshift/redshift.lua строка 243
toggle
Подпись hs.redshift.toggle([v])
Тип Функция
Описание

Устанавливает или очищает переопределение пользователя для корректировки цветовой температуры.

Параметры
  • v - (необязательно) логическое значение; если true, переопределение включит корректировку цветовой температуры по заданному расписанию; если false, переопределение отключит корректировку цветовой температуры; если опущено или nil, оно переключится, т.е. очистит его, если он в настоящее время применён, или установит его на противоположное текущему статусу корректировки цветовой температуры в противном случае.
Возвращаемое значение
  • Ничего
Примечания
  • Эта функция должна быть связана с горячей клавишей, например: hs.hotkey.bind('ctrl-cmd','-','Redshift',hs.redshift.toggle)
Источник extensions/redshift/redshift.lua строка 218
toggleInvert
Подпись hs.redshift.toggleInvert([v])
Тип Функция
Описание

Устанавливает или очищает переопределение пользователя для инверсии цвета.

Параметры
  • v - (необязательно) логическое значение; если true, переопределение инвертирует цвета независимо от чего-либо; если false, переопределение отключит инверсию цвета независимо от чего-либо; если опущено или nil, оно переключится, т.е. очистит его, если оно в настоящее время применён, или установит его на противоположное текущему статусу инверсии цвета в противном случае.
Возвращаемое значение
  • Ничего
Примечания
  • Эта функция должна быть связана с горячей клавишей, например: hs.hotkey.bind('ctrl-cmd','=','Invert',hs.redshift.toggleInvert)
Источник extensions/redshift/redshift.lua строка 195

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

Spec-Zone.ru

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