X-Git-Url: http://47.100.26.94:8080/?a=blobdiff_plain;f=hammerspoon%2Finit.lua;h=0d0eb8303d584d852aed308703833aae9294b92b;hb=58bf029a4aae624c506c4633afcaa7839c771ad9;hp=f30a5b63368c3db2cb2775f64d406277c5914a5c;hpb=81367a877d96df83c8e68c920323988d04f930bf;p=dotfiles.git diff --git a/hammerspoon/init.lua b/hammerspoon/init.lua index f30a5b6..0d0eb83 100644 --- a/hammerspoon/init.lua +++ b/hammerspoon/init.lua @@ -191,3 +191,26 @@ INSTALL:andUse("Seal", start = true, } ) +-------------------------------------------------------------------------------- +-- Focus the last used window. +local function focusLastFocused() + local wf = hs.window.filter + local lastFocused = wf.defaultCurrentSpace:getWindows(wf.sortByFocusedLast) + if #lastFocused > 0 then lastFocused[1]:focus() end +end + +-- Create the chooser. +-- On selection, copy the emoji and type it into the focused application. +local chooser = hs.chooser.new(function(choice) + if not choice then focusLastFocused(); return end + hs.pasteboard.setContents(choice["chars"]) + focusLastFocused() + hs.eventtap.keyStrokes(hs.pasteboard.getContents()) +end) + +chooser:searchSubText(true) +chooser:choices(choices) + +chooser:rows(5) +chooser:bgDark(true) +hs.hotkey.bind({"cmd", "alt"}, "E", function() chooser:show() end)