Хаммерспоон за Мац - потпуно аутоматизујте ме

Anonim

Са тако необичним именом, креатори су очигледно желели да нагласе свестраност и свестраност Хаммерспоона. Тешко им се може приговорити, јер захваљујући подршци Луа-сценарија, пред нама су заиста велике могућности.

Одмах би требало рећи да ћемо са Хаммерспоон-ом морати мало да се бавимо шифром. Али не брините, није неопходно да га сами напишете (иако је у случају Луа веома лако), сајт садржи много готових примера заснованих на екстензијама које се могу користити или модификовати.

Након инсталације Хаммерспоона, морате омогућити универзални приступ за њега, а затим отићи у мени Опен Цонфиг и додати код нашег првог скрипта у прозор за уређивање текста који се отвара.

Традиционално, можете почети са Хелло Ворлд-ом или ићи равно на компликованије ствари: програмери су припремили детаљан водич. Ви и ја нећемо губити време на ситнице и правити пречице за померање прозора. Да бисте то урадили, убаците следећи код у наш инит.луа, сачувајте документ и изаберите Хаммерспоон Релоад Цонфиг у менију.

hs.hotkey.bind({"cmd", "alt", "ctrl"}, "Y", function() local win = hs.window.focusedWindow() local f = win:frame() fx = fx - 10 fy = fy - 10 win:setFrame(f) end) hs.hotkey.bind({"cmd", "alt", "ctrl"}, "K", function() local win = hs.window.focusedWindow() local f = win:frame() fy = fy - 10 win:setFrame(f) end) hs.hotkey.bind({"cmd", "alt", "ctrl"}, "U", function() local win = hs.window.focusedWindow() local f = win:frame() fx = fx + 10 fy = fy - 10 win:setFrame(f) end) hs.hotkey.bind({"cmd", "alt", "ctrl"}, "H", function() local win = hs.window.focusedWindow() local f = win:frame() fx = fx - 10 win:setFrame(f) end) hs.hotkey.bind({"cmd", "alt", "ctrl"}, "L", function() local win = hs.window.focusedWindow() local f = win:frame() fx = fx + 10 win:setFrame(f) end) hs.hotkey.bind({"cmd", "alt", "ctrl"}, "B", function() local win = hs.window.focusedWindow() local f = win:frame() fx = fx - 10 fy = fy + 10 win:setFrame(f) end) hs.hotkey.bind({"cmd", "alt", "ctrl"}, "J", function() local win = hs.window.focusedWindow() local f = win:frame() fy = fy + 10 win:setFrame(f) end) hs.hotkey.bind({"cmd", "alt", "ctrl"}, "N", function() local win = hs.window.focusedWindow() local f = win:frame() fx = fx + 10 fy = fy + 10 win:setFrame(f) end)

Ако пажљиво погледате овај код, можете видјети параметре који указују на број пиксела на које ће се прозор кретати, његову позицију и комбинације кључева који су одговорни за кретање. Проверите: држите ⌃⌥⌘, притисните тастере Х / Л да бисте померали лево-десно и Ј / К да бисте се померали надоле и горе. Све ради.

Као мини-програм, можете навести као пример имплементацију аналогног популарног кофеинског услужног програма, који спречава Мац од спавања. У одговарајућој скрипти само десетак редова кода.

local caffeine = hs.menubar.new() function setCaffeineDisplay(state) if state then caffeine:setTitle("AWAKE") else caffeine:setTitle("SLEEPY") end end function caffeineClicked() setCaffeineDisplay(hs.caffeinate.toggle("displayIdle")) end if caffeine then caffeine:setClickCallback(caffeineClicked) setCaffeineDisplay(hs.caffeinate.get("displayIdle")) end

Након чувања, на траци са менијима се појављује једноставан дугме СЛЕЕПИ, које се пребацује на АВАКЕ, ако онемогућите прелазак у стање спавања.

У скрипту можете додати неколико фрагмената кода са различитим функцијама, они ће радити независно један од другог. Укупно, Хаммерспоон има око стотину АПИ-ја који вам омогућују аутоматизирање разних акција: од помицања прозора, интеракције с међуспремником и покретања АпплеСцрипта до свих врста процеса заснованих на догађајима, као што је повезивање на Веб, повезивање УСБ уређаја и многе друге.

Услужни програм је веома користан, а ако се не плашите да се позабавите кодом, онда без претјеривања моћи ћете помицати планине уз његову помоћ.

Хаммерспоон за Мац - потпуно аутоматизујте ме