/
slate
104 lines (87 loc) · 3.72 KB
/
slate
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
97
98
99
100
101
102
103
104
# TODO: Specify monitors by resolution
# TODO: fix terminal sizing on the 3mon setup and 2mon setup
# This is the default .slate file.
# If no ~/.slate file exists this is the file that will be used.
# General Configs
config defaultToCurrentScreen true
config nudgePercentOf screenSize
config resizePercentOf screenSize
# Relaunch
bind space:ctrl;alt;cmd relaunch
# Position Aliases
alias full move screenOriginX;screenOriginY screenSizeX;screenSizeY
alias lefthalf move screenOriginX;screenOriginY screenSizeX/2;screenSizeY
alias righthalf move screenOriginX+screenSizeX/2;screenOriginY screenSizeX/2;screenSizeY
alias topleft corner top-left resize:screenSizeX/2;screenSizeY/2
alias tophalf corner top-left resize:screenSizeX;screenSizeY/2
alias horizontalThird1 move screenOriginX;screenOriginY screenSizeX;screenSizeY/3
alias horizontalThird2 move screenOriginX;screenOriginY+screenSizeY/3 screenSizeX;screenSizeY/3
alias horizontalThird3 move screenOriginX;screenOriginY+screenSizeY/3+screenSizeY/3 screenSizeX;screenSizeY/3
alias bottomhalf move screenOriginX;screenOriginY+screenSizeY/2 screenSizeX;screenSizeY/2
alias topright corner top-right resize:screenSizeX/2;screenSizeY/2
alias bottomleft corner bottom-left resize:screenSizeX/2;screenSizeY/2
alias bottomright corner bottom-right resize:screenSizeX/2;screenSizeY/2
# 2 monitor layouts
layout 2monitor 'Calendar':REPEAT ${full} 1
layout 2monitor 'iTerm2':REPEAT ${horizontalThird1} 1
layout 2monitor 'Textual IRC Client':REPEAT ${horizontalThird2} 1
layout 2monitor 'Evernote':REPEAT ${horizontalThird3} 1
layout 2monitor 'iTunes':REPEAT ${horizontalThird3} 1
layout 2monitor 'Simulator':REPEAT ${topright} 1
layout 2monitor 'Messages':REPEAT ${topleft} 0
layout 2monitor 'Mail':REPEAT ${full} 0
layout 2monitor 'Finder':REPEAT ${topleft} 0
layout 2monitor 'Wunderlist':REPEAT ${topright} 0
layout 2monitor 'Google Chrome':REPEAT ${full} 0
layout 2monitor 'TextMate':REPEAT ${full} 0
layout 2monitor 'Xcode':REPEAT ${full} 0
layout 2monitor 'Instruments':REPEAT ${full} 0
layout 2monitor 'Google Hangouts':REPEAT ${topright} 1
# 1 monitor layouts
layout 1monitor 'Calendar':REPEAT ${full} 0
layout 1monitor 'iTerm2':REPEAT ${full} 0
layout 1monitor 'Textual IRC Client':REPEAT ${full} 0
layout 1monitor 'iTunes':REPEAT ${full} 0
layout 1monitor 'Simulator':REPEAT ${topright} 0
layout 1monitor 'Messages':REPEAT ${topleft} 0
layout 1monitor 'Mail':REPEAT ${full} 0
layout 1monitor 'Finder':REPEAT ${topleft} 0
layout 1monitor 'Wunderlist':REPEAT ${full} 0
layout 1monitor 'Google Chrome':REPEAT ${full} 0
layout 1monitor 'TextMate':REPEAT ${full} 0
layout 1monitor 'Evernote':REPEAT ${full} 0
layout 1monitor 'Xcode':REPEAT ${full} 0
layout 1monitor 'Instruments':REPEAT ${full} 0
default 1monitor count:1
default 2monitor count:2
# Layout bindings
bind 1:ctrl;alt;cmd layout 1monitor
bind 2:ctrl;alt;cmd layout 2monitor
# Move/Resize
bind up:ctrl;alt;cmd move 0;0 screenSizeX;screenSizeY
# Throw Bindings
bind right:ctrl;alt;cmd throw right
bind left:ctrl;alt;cmd throw left
# Focus Bindings
bind right:cmd;alt focus right
bind left:cmd;alt focus left
bind up:cmd;alt focus up
bind down:cmd;alt focus down
# Application bindings
bind f:cmd;alt focus 'Finder'
bind n:cmd;alt focus 'Franz'
bind w:cmd;alt focus 'Things' # Used to be 'wunderlist' and before that 'evernote'
bind r:cmd;alt focus 'Calendar'
bind e:cmd;alt focus 'Evernote'
bind g:cmd;alt focus 'Google Chrome'
bind x:cmd;alt focus 'Xcode'
bind z:cmd;alt focus 'Simulator'
bind t:cmd;alt focus 'iTerm2'
bind s:cmd;alt focus 'TextMate'
bind u:cmd;alt focus 'Textual IRC Client'
bind m:cmd;alt focus 'Mail'
bind i:cmd;alt focus 'iTunes'
bind o:cmd;alt focus 'Microsoft OneNote'
bind d:cmd;alt focus 'Reeder'
# Window Hints
bind esc:cmd hint