6 hs.pathwatcher.new(os.getenv("HOME") .. "/.hammerspoon/", reloadConfig):start() |
6 hs.pathwatcher.new(os.getenv("HOME") .. "/.hammerspoon/", reloadConfig):start() |
7 |
7 |
8 local bindKey = hs.hotkey.bind |
8 local bindKey = hs.hotkey.bind |
9 local cmd = hs.fnutils.partial(bindKey, {"cmd"}) |
9 local cmd = hs.fnutils.partial(bindKey, {"cmd"}) |
10 local cmdShift = hs.fnutils.partial(bindKey, {"cmd", "shift"}) |
10 local cmdShift = hs.fnutils.partial(bindKey, {"cmd", "shift"}) |
|
11 local cmdCtrl = hs.fnutils.partial(bindKey, {"cmd", "ctrl"}) |
11 |
12 |
12 cmdShift('r', reloadConfig) |
13 cmdShift('r', reloadConfig) |
13 |
14 |
14 function focusTo(direction) |
15 function focusedWindow() return hs.window.focusedWindow() or hs.window.desktop() end |
15 hs.window['focusWindow' .. direction](hs.window.focusedWindow() or hs.window.desktop()) |
16 function focusTo(direction) hs.window['focusWindow' .. direction](focusedWindow()) end |
16 end |
|
17 |
17 |
18 cmd('k', function () focusTo('North') end) |
18 cmd('k', function () focusTo('North') end) |
19 cmd('up', function () focusTo('North') end) |
19 cmd('up', function () focusTo('North') end) |
20 |
20 |
21 cmd('j', function () focusTo('South') end) |
21 cmd('j', function () focusTo('South') end) |
25 cmd('left', function () focusTo('West') end) |
25 cmd('left', function () focusTo('West') end) |
26 |
26 |
27 cmd('l', function () focusTo('East') end) |
27 cmd('l', function () focusTo('East') end) |
28 cmd('right', function () focusTo('East') end) |
28 cmd('right', function () focusTo('East') end) |
29 |
29 |
30 cmdShift('up', function () hs.window.focusedWindow():maximize() end) |
30 cmdShift('up', function () focusedWindow():maximize() end) |
31 |
31 |
|
32 cmdShift('down', function () focusedWindow():minimize() end) |
|
33 |
|
34 cmdShift('left', function () focusedWindow():moveToUnit(hs.layout.left50) end) |
|
35 cmdShift('right', function () focusedWindow():moveToUnit(hs.layout.right50) end) |
|
36 |
|
37 cmdCtrl('left', function () focusedWindow():moveOneScreenWest() end) |
|
38 cmdCtrl('right', function () focusedWindow():moveOneScreenEast() end) |
|
39 |
|
40 cmd('return', function () |
|
41 hs.applescript.applescript([[ |
|
42 tell application "iTerm2" |
|
43 create window with default profile |
|
44 end tell |
|
45 ]]) |
|
46 end) |
|
47 |