Hammerspoon for Mac - Automat meg helt
Macos / / December 26, 2019
Mange handlinger i OS X kan automatiseres ved hjelp av en stab Automator program. Hammerspoon gratis verktøy gjør det samme, men mer dypt integrert med systemet, slik at du kan lage hurtigtaster knyttet til handlinger og selv små programmer.
Slike et uvanlig navn skaperne må ha ønsket å understreke allsidighet og fleksibilitet Hammerspoon. De kan neppe bli bebreidet, fordi takket være støtte fra Lua-skript åpner opp før oss er virkelig en enorm mulighet.
Umiddelbart bør det si at Hammerspoon vi må tinker med koden litt. Men ikke fortvil, være i stand til å skrive det selv er ikke nødvendig (selv om det er veldig lett i tilfelle av Lua), på Nettstedet inneholder mange ferdige eksempler basert på utvidelser som kan brukes eller endret.
Etter å ha installert Hammerspoon må aktivere universell tilgang til den, og deretter gå til menyen Åpne Config i en teksteditor og legge koden til vår første skriptet vindu.
Tradisjonelt, kan du begynne med Hello World, eller gå direkte til mer komplekse ting: utviklerne har forberedt
en detaljert guide. Vi er med deg ikke vil kaste bort tid på bagateller og lage snarveier for å flytte vinduer. For å gjøre dette, må du sette inn vår init.lua følgende kode, lagre dokumentet og velger å Hammerspoon Reload Config-menyen.hs.hotkey.bind ({ "cmd", "alt", "ctrl"}, "Y", funksjon () lokal vinne = hs.window.focusedWindow () lokal f = vinne: rammen () fx = fx - 10 fy = fy - 10 seier: setFrame (f) enden) hs.hotkey.bind ({ "cmd", "alt", "ctrl"}, "K", funksjon () lokal vinne = hs.window.focusedWindow () lokal f = vinne: rammen () fy = fy - 10 seier: setFrame (f) enden) hs.hotkey.bind ({ "cmd", "alt", "ctrl"}, "U", () -funksjonen lokal vinne = hs.window.focusedWindow () lokal f = vinne: rammen () fx = fx 10 + fy = fy - 10 seier: setFrame (f) enden) hs.hotkey.bind ({ "cmd", "alt", "ctrl"}, "H", () -funksjonen lokal vinne = hs.window.focusedWindow () lokal f = vinne: rammen () fx = fx - 10 seier: setFrame (f) enden) hs.hotkey.bind ({ "cmd", "alt", "ctrl"}, "L", funksjon () lokal vinne = hs.window.focusedWindow () lokal f = vinne: rammen () fx = fx + 10 seier: setFrame (f) enden) hs.hotkey.bind ({ "cmd", "alt", "ctrl"}, "B", () -funksjonen lokal vinne = hs.window.focusedWindow () lokal f = vinne: rammen () fx = fx - 10 fy = fy + 10 vinner: setFrame (f) enden) hs.hotkey.bind ({ "cmd", "alt", "ctrl"}, "J", funksjon () lokal vinne = hs.window.focusedWindow () lokal f = vinne: rammen () fy = fy + 10 seier: setFrame (f) enden) hs.hotkey.bind ({ "cmd", "alt", "ctrl"}, "N", () -funksjonen lokal vinne = hs.window.focusedWindow () lokal f = vinne: rammen () fx = fx 10 + fy = fy + 10 vinner: setFrame (f) slutt)
Hvis du ser nøye på koden, kan du se parametrene som angir antall piksler at vinduet flyttes, sin posisjon og tastekombinasjoner som er ansvarlig for bevegelse. Sjekk: hold ⌃⌥⌘, Vi trykker på H / L-tasten for å gå til venstre og høyre og J / K for å bevege seg opp og ned. Alt fungerer.
Som en mini-programmer kan sitere eksempel på gjennomføringen av den populære verktøyet analog koffein, hindrer Mac overgangen til søvn. Den aktuelle skriptet bare et dusin linjer med kode.
lokale koffein = hs.menubar.new () funksjon setCaffeineDisplay (stat) hvis tilstand da koffein: setTitle ( "våken") annet koffein: setTitle ( "Sleepy") end. end funksjon caffeineClicked () setCaffeineDisplay (hs.caffeinate.toggle ( "displayIdle")) slutt hvis koffein da koffein: setClickCallback (caffeineClicked) setCaffeineDisplay (hs.caffeinate.get ( "displayIdle")) end
Etter lagring SØVNIGE enkle knapp vises i menylinjen, endre å våkne, dersom forbudet går i dvale.
I manuset, kan du legge til noen kode fragmenter med ulike funksjoner, vil de jobbe uavhengig av hverandre. Bare Hammerspoon tilgjengelig om hundrevis av APISom tillater å automatisere en rekke handlinger fra bevegelige vinduer, samhandling med utklippstavlen og løp Applescript til alle slags prosesser basert på hendelser, for eksempel nettverkstilkobling, koble til USB-enheter og mange andre.
Verktøyet er svært nyttig, og hvis du ikke er redd for å tinker med koden, er det ingen overdrivelse å kunne hjelpe henne flytte fjell.