Hammerspoon: ทดลองเล่นดู
เพิ่งลองเอามาเล่นดู จากปัญหาเมื่อเปิดเครื่องกลับจาก sleep บางครั้ง app จะถูกย้ายจาก extend display มากองรวมกันอยู่ที่หน้าจอของ laptop display ต้องมาเสียเวลาลากแต่ app ไปยังตำแหน่งประจำ
Hammerspoon สามารถทำเรื่องนี้ได้ แต่ต้องเขียนโปรแกรม ลองดูอยู่เป็นชั่วโมง ก็สามารถทำอะไรได้หลายอย่าง ลองดูจาก Getting Started with Hammerspoon
ได้มาประมาณนี้ แต่ยังไม่ work ตามที่ต้องการ คงต้องเขียนอีกเยอะ
hs.hotkey.bind({"cmd", "alt", "ctrl"}, "R", function() hs.reload() end) function reloadConfig(files) doReload = false for _,file in pairs(files) do if file:sub(-4) == ".lua" then doReload = true end end if doReload then hs.reload() end end myWatcher = hs.pathwatcher.new(os.getenv("HOME") .. "/.hammerspoon/", reloadConfig):start() hs.alert.show("HammerSpoon config loaded") hs.application.enableSpotlightForNameSearches(true) local laptopScreen = "Built-in Retina Display" local BenQScreen = "BenQ EW3270U" local DellScreen = "S2718H/HX" local windowLayout = { {"Safari", nil, BenQScreen, nil, nil, hs.geometry.rect(1800, 0, 1000, 1400)}, {nil, "LINE", BenQScreen, nil, nil, hs.geometry.rect(1800, 1430, 800, 800)}, {"ForkLift", nil, BenQScreen, nil, nil, hs.geometry.rect(2500, 1200, 1600, 980)}, {nil,"Users", BenQScreen, hs.layout.right50, nil, nil}, -- {"Google Chrome", nil, BenQScreen, nil, nil, hs.geometry.rect(2200, 0, 1000, 1400)}, } hs.layout.apply(windowLayout) print("APPLICATION " , hs.application.frontmostApplication()) print(hs.window.focusedWindow():application():title())
สรุป ณ ตอนนี้คือ ติดตั้ง โปรแกรม Stay มาใช้งานไปก่อน
ที่มา:
Relate topics
- nginx on macOS
- Burn ISO Image to USB on macOS
- ติดตั้ง MSSQL Express ด้วย Docker บน macos M1
- My app on macOS - ใช้แอบอะไรบ้างนะบน macOS
- macOS/Flutter : Exception: Error running pod install
- macOS 12 Monterey: Web Server Setup/Apache/MariaDB/PHP Multiple Versions
- Mirror iPad to a Mac
- Xcode on Mac App Store can't install , show disk space not enough