1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
|
PaperWM = hs.loadSpoon("PaperWM")
PaperWM:bindHotkeys({
-- switch to a new focused window in tiled grid
focus_left = {{"alt", "cmd"}, "left"},
focus_right = {{"alt", "cmd"}, "right"},
focus_up = {{"alt", "cmd"}, "up"},
focus_down = {{"alt", "cmd"}, "down"},
-- switch windows by cycling forward/backward
-- (forward = down or right, backward = up or left)
focus_prev = {{"alt", "cmd"}, "k"},
focus_next = {{"alt", "cmd"}, "j"},
-- move windows around in tiled grid
swap_left = {{"alt", "cmd", "shift"}, "left"},
swap_right = {{"alt", "cmd", "shift"}, "right"},
swap_up = {{"alt", "cmd", "shift"}, "up"},
swap_down = {{"alt", "cmd", "shift"}, "down"},
-- alternative: swap entire columns, rather than
-- individual windows (to be used instead of
-- swap_left / swap_right bindings)
-- swap_column_left = {{"alt", "cmd", "shift"}, "left"},
-- swap_column_right = {{"alt", "cmd", "shift"}, "right"},
-- position and resize focused window
center_window = {{"alt", "cmd"}, "c"},
full_width = {{"alt", "cmd"}, "f"},
cycle_width = {{"alt", "cmd"}, "r"},
reverse_cycle_width = {{"ctrl", "alt", "cmd"}, "r"},
cycle_height = {{"alt", "cmd", "shift"}, "r"},
reverse_cycle_height = {{"ctrl", "alt", "cmd", "shift"}, "r"},
-- increase/decrease width
increase_width = {{"alt", "cmd"}, "l"},
decrease_width = {{"alt", "cmd"}, "h"},
-- move focused window into / out of a column
slurp_in = {{"alt", "cmd"}, "i"},
barf_out = {{"alt", "cmd"}, "o"},
-- move the focused window into / out of the tiling layer
toggle_floating = {{"alt", "cmd", "shift"}, "escape"},
-- focus the first / second / etc window in the current space
focus_window_1 = {{"cmd", "shift"}, "1"},
focus_window_2 = {{"cmd", "shift"}, "2"},
focus_window_3 = {{"cmd", "shift"}, "3"},
focus_window_4 = {{"cmd", "shift"}, "4"},
focus_window_5 = {{"cmd", "shift"}, "5"},
focus_window_6 = {{"cmd", "shift"}, "6"},
focus_window_7 = {{"cmd", "shift"}, "7"},
focus_window_8 = {{"cmd", "shift"}, "8"},
focus_window_9 = {{"cmd", "shift"}, "9"},
-- switch to a new Mission Control space
switch_space_l = {{"alt", "cmd"}, ","},
switch_space_r = {{"alt", "cmd"}, "."},
switch_space_1 = {{"alt", "cmd"}, "1"},
switch_space_2 = {{"alt", "cmd"}, "2"},
switch_space_3 = {{"alt", "cmd"}, "3"},
switch_space_4 = {{"alt", "cmd"}, "4"},
switch_space_5 = {{"alt", "cmd"}, "5"},
switch_space_6 = {{"alt", "cmd"}, "6"},
switch_space_7 = {{"alt", "cmd"}, "7"},
switch_space_8 = {{"alt", "cmd"}, "8"},
switch_space_9 = {{"alt", "cmd"}, "9"},
-- move focused window to a new space and tile
move_window_1 = {{"alt", "cmd", "shift"}, "1"},
move_window_2 = {{"alt", "cmd", "shift"}, "2"},
move_window_3 = {{"alt", "cmd", "shift"}, "3"},
move_window_4 = {{"alt", "cmd", "shift"}, "4"},
move_window_5 = {{"alt", "cmd", "shift"}, "5"},
move_window_6 = {{"alt", "cmd", "shift"}, "6"},
move_window_7 = {{"alt", "cmd", "shift"}, "7"},
move_window_8 = {{"alt", "cmd", "shift"}, "8"},
move_window_9 = {{"alt", "cmd", "shift"}, "9"}
})
-- 10px gap on all sides
PaperWM.window_gap = 10
---[[
-- ignore specific window titles
PaperWM.window_filter:setAppFilter("REAPER", {
rejectTitles={
'FX...', 'VST..', 'Add..'
}
})
--]]
-- Set the ratios to cycle through
PaperWM.window_ratios = { 1/4, 1/3, 1/2, 2/3, 3/4 }
PaperWM:start()
|