local padding = 10 hs.hotkey.bind({ "cmd", "alt", "ctrl" }, "return", function() local win = hs.window.focusedWindow() local f = win:frame() local screen = win:screen() local rfrm = screen:frame() f.x = rfrm.x + padding f.y = rfrm.y + padding f.w = rfrm.w - 2 * padding f.h = rfrm.h - 2 * padding win:setFrame(f) end) hs.hotkey.bind({ "cmd", "alt", "ctrl" }, "Left", function() local win = hs.window.focusedWindow() local f = win:frame() local screen = win:screen() local frm = screen:frame() f.x = frm.x + padding f.y = frm.y + padding f.w = frm.w / 2 - 1.5 * padding f.h = frm.h - 2 * padding win:setFrame(f) end) hs.hotkey.bind({ "cmd", "alt", "ctrl" }, "Right", function() local win = hs.window.focusedWindow() local f = win:frame() local screen = win:screen() local frm = screen:frame() f.x = frm.x + (frm.w / 2) + 0.5 * padding f.y = frm.y + padding f.w = frm.w / 2 - 1.5 * padding f.h = frm.h - 2 * padding win:setFrame(f) end) hs.hotkey.bind({ "cmd", "alt", "ctrl" }, "i", function() local win = hs.window.focusedWindow() local f = win:frame() local screen = win:screen() local frm = screen:frame() f.x = frm.x + (frm.w / 2) + 0.5 * padding f.y = frm.y + padding f.w = frm.w / 2 - 1.5 * padding f.h = frm.h / 2 - 1.5 * padding win:setFrame(f) end) hs.hotkey.bind({ "cmd", "alt", "ctrl" }, "k", function() local win = hs.window.focusedWindow() local f = win:frame() local screen = win:screen() local frm = screen:frame() f.x = frm.x + (frm.w / 2) + 0.5 * padding f.y = frm.y + (frm.h / 2) + 0.5 * padding f.w = frm.w / 2 - 1.5 * padding f.h = frm.h / 2 - 1.5 * padding win:setFrame(f) end) hs.hotkey.bind({ "cmd", "alt", "ctrl" }, "u", function() local win = hs.window.focusedWindow() local f = win:frame() local screen = win:screen() local frm = screen:frame() f.x = frm.x + padding f.y = frm.y + padding f.w = frm.w / 2 - 1.5 * padding f.h = frm.h / 2 - 1.5 * padding win:setFrame(f) end) hs.hotkey.bind({ "cmd", "alt", "ctrl" }, "j", function() local win = hs.window.focusedWindow() local f = win:frame() local screen = win:screen() local frm = screen:frame() f.x = frm.x + padding f.y = frm.y + (frm.h / 2) + 0.5 * padding f.w = frm.w / 2 - 1.5 * padding f.h = frm.h / 2 - 1.5 * padding win:setFrame(f) end)