Skip to content

Instantly share code, notes, and snippets.

@madeddie
Created November 3, 2015 19:58
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save madeddie/1993ac31b5345c869c94 to your computer and use it in GitHub Desktop.
Save madeddie/1993ac31b5345c869c94 to your computer and use it in GitHub Desktop.
Hammerspoon Awareness replacement
-- Awareness replacement
local awareness = hs.menubar.new()
function setAwarenessDisplay(timerSecs)
local timerPercent = math.floor(timerSecs / 3600 * 100)
awareness:setTitle(tostring(timerPercent))
end
awakeTimer = hs.timer.doAfter(3600, function()
hs.alert("Have some rest", 5)
end)
local awarenessDisplayTimer = hs.timer.doEvery(5, function()
if awakeTimer then
local timerSecs = math.floor(awakeTimer:nextTrigger())
setAwarenessDisplay(timerSecs)
end
end)
function activityTimerActivate(event)
if event == hs.caffeinate.watcher.screensDidWake then
logger:d("We awoke!")
if not sleepTimer or sleepTimer:nextTrigger() < 0 then
awakeTimer:setNextTrigger(3600)
end
elseif event == hs.caffeinate.watcher.screensDidSleep then
logger:d("We sleep")
sleepTimer = hs.timer.doAfter(30, function() print("bla") end)
end
end
local activityWatcher = hs.caffeinate.watcher.new(activityTimerActivate)
activityWatcher:start()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment