-
Notifications
You must be signed in to change notification settings - Fork 0
/
.slate
163 lines (131 loc) · 9.26 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
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
# Configs
config defaultToCurrentScreen true
config nudgePercentOf screenSize
config resizePercentOf screenSize
config secondsBetweenRepeat 0.1
config checkDefaultsOnLoad true
config focusCheckWidthMax 3000
# Shows app icons and background apps, splreads icons in the same place.
config windowHintsShowIcons true
config windowHintsIgnoreHiddenWindows false
config windowHintsSpread true
# Key Bindings
alias hyper ctrl;shift;alt;cmd
alias showHint hint ASDFGHJKLQWERTYUIOPCVBN
bind e:cmd ${showHint}
bind ':${hyper} relaunch
#fast app switch
bind b:${hyper} chain focus 'Google Chrome' | hide 'Google Chrome'
bind c:${hyper} chain focus 'Google Chrome' | hide 'Google Chrome'
bind e:${hyper} chain focus 'Sublime Text 2' | hide 'Sublime Text 2'
bind d:${hyper} chain focus 'iOS Simulator' | hide 'iOS Simulator'
bind f:${hyper} chain focus 'Finder' | hide 'Finder'
bind i:${hyper} chain focus 'iTunes' | hide 'iTunes'
bind m:${hyper} chain focus 'AirMail Beta' | hide 'AirMail Beta'
bind o:${hyper} chain focus 'OmniFocus' | hide 'OmniFocus'
bind p:${hyper} chain focus 'Xee' | hide 'Xee'
bind s:${hyper} chain focus 'SourceTree' | hide 'SourceTree'
bind w:${hyper} chain focus 'Miao' | hide 'Miao'
bind x:${hyper} chain focus 'Xcode' | hide 'Xcode'
# Monitor Aliases
alias laptop 1280x800
alias air 1440x900
alias desktop 1920x1080
alias vdesk 1080x1920
# Default Layouts
default 2monitors resolutions:${laptop};${desktop}
default vmonitors resolutions:${laptop};${vdesk}
default 1monitor resolutions:${laptop}
# Position Aliases
alias size-main move screenOriginX;screenOriginY screenSizeX*3/5;screenSizeY
alias size-other move screenOriginX+screenSizeX*3/5;screenOriginY screenSizeX*2/5;screenSizeY
alias laptop-chat move screenOriginX;screenOriginY screenSizeX*2/9;screenSizeY ${laptop}
alias laptop-max move screenOriginX;screenOriginY screenSizeX;screenSizeY ${laptop}
alias laptop-left move screenOriginX;screenOriginY screenSizeX/2;screenSizeY ${laptop}
alias laptop-right move screenOriginX+screenSizeX/2;screenOriginY screenSizeX/2;screenSizeY ${laptop}
alias laptop-main move screenOriginX+screenSizeX*2/9;screenOriginY screenSizeX*7/9;screenSizeY ${laptop}
alias laptop-center move screenOriginX+screenSizeX/8;screenOriginY+screenSizeY/8 3*screenSizeX/4;3*screenSizeY/4 ${laptop}
alias desktop-max move screenOriginX;screenOriginY screenSizeX;screenSizeY ${desktop}
alias desktop-main ${size-main} ${desktop}
alias desktop-other ${size-other} ${desktop}
alias desktop-weilark move screenOriginX+screenSizeX*3/5;screenOriginY screenSizeX*2/10;screenSizeY/2 ${desktop}
alias desktop-right-up move screenOriginX+screenSizeX*3/5;screenOriginY screenSizeX*2/5;screenSizeY/2 ${desktop}
alias desktop-right-down move screenOriginX+screenSizeX*3/5;screenOriginY+screenSizeY/2 screenSizeX*2/5;screenSizeY/2 ${desktop}
alias desktop-center move screenOriginX+screenSizeX/8;screenOriginY+screenSizeY/8 3*screenSizeX/4;3*screenSizeY/4 ${desktop}
alias vdesk-other move screenOriginX;screenOriginY screenSizeX;screenSizeY/2 ${vdesk}
alias vdesk-main move screenOriginX;screenOriginY+screenSizeY/2 screenSizeX;screenSizeY/2 ${vdesk}
alias vdesk-top-center move screenOriginX+screenSizeX/3;screenOriginY+screenSizeY/8 3*screenSizeX/8;3*screenSizeY/8 ${vdesk}
# 1 Monitor layout
layout 1monitor 'iTerm':SORT_TITLE,REPEAT ${laptop-max}
#layout 1monitor 'Chrome':REPEAT ${laptop-max}
layout 1monitor 'Google Chrome':REPEAT ${laptop-max}
layout 1monitor 'QQ':REPEAT,TITLE_ORDER=QQ ${laptop-chat} | ${laptop-main}
layout 1monitor 'Safari':REPEAT ${laptop-max}
layout 1monitor 'Xcode':REPEAT ${laptop-max}
layout 1monitor 'AppViz 2':REPEAT ${laptop-max}
layout 1monitor 'Sublime Text 2':REPEAT ${laptop-max}
# 2 Monitor layout
layout 2monitors 'Xcode':REPEAT ${desktop-max}
layout 2monitors 'iTerm':REPEAT ${desktop-max}
layout 2monitors 'Sublime Text 2':REPEAT ${desktop-max}
layout 2monitors 'SourceTree':REPEAT,TITLE_ORDER='Bookmarks' ${laptop-chat} | ${desktop-max} | ${desktop-max} | ${desktop-max} | ${desktop-max} | ${desktop-max} | ${desktop-max} | ${desktop-max} | ${desktop-max} | ${desktop-max} | ${desktop-max} | ${desktop-max} | ${desktop-max}
layout 2monitors 'Google Chrome':REPEAT ${desktop-main}
layout 2monitors 'Scrivener':REPEAT ${desktop-main} | ${desktop-other} | ${desktop-other} | ${desktop-other}
layout 2monitors 'Finder':REPEAT ${desktop-center}
#sns:
layout 2monitors 'WeiLark':REPEAT ${desktop-weilark}
layout 2monitors 'TweetDeck':REPEAT ${desktop-right-down}
layout 2monitors 'Tweetbot':REPEAT ${desktop-right-down}
layout 2monitors 'Twitter':REPEAT ${desktop-right-down}
layout 2monitors 'Miao':REPEAT ${laptop-max}
layout 2monitors 'Safari':REPEAT ${laptop-max}
layout 2monitors 'Evernote':REPEAT ${laptop-max}
layout 2monitors 'OmniFocus':REPEAT ${laptop-max}
layout 2monitors 'iTunes':REPEAT ${laptop-max}
layout 2monitors 'Sparrow Lite':REPEAT ${laptop-max}
layout 2monitors 'Reeder':REPEAT ${laptop-max}
layout 2monitors 'AppViz 2':REPEAT ${laptop-max}
layout 2monitors 'QQ':REPEAT,TITLE_ORDER=QQ ${laptop-chat} | ${laptop-main} | ${laptop-main} | ${laptop-main} | ${laptop-main} | ${laptop-main} | ${laptop-main} | ${laptop-main} | ${laptop-main} | ${laptop-main} | ${laptop-main} | ${laptop-main} | ${laptop-main}
layout 2monitors 'iOS Simulator':REPEAT ${laptop-left}
layout 2monitors 'Xee':REPEAT ${laptop-right}
layout 2monitors 'Preview':REPEAT ${laptop-right}
# Vertical Monitor layout
layout vmonitors 'Xcode':REPEAT ${vdesk-main}
layout vmonitors 'Sublime Text 2':REPEAT ${vdesk-main}
layout vmonitors 'Google Chrome':REPEAT ${vdesk-other}
layout vmonitors 'Airmail':REPEAT ${vdesk-other}
layout vmonitors 'iTerm':REPEAT ${vdesk-other}
layout vmonitors 'SourceTree':REPEAT,TITLE_ORDER='Bookmarks' ${laptop-chat} | ${vdesk-other} | ${vdesk-other} | ${vdesk-other} | ${vdesk-other} | ${vdesk-other} | ${vdesk-other}
layout vmonitors 'Finder':REPEAT ${vdesk-other}
layout vmonitors 'iOS Simulator':REPEAT ${vdesk-top-center}
layout vmonitors 'Xee':REPEAT ${vdesk-other} | ${vdesk-other} | ${vdesk-other} | ${vdesk-other} | ${vdesk-other} | ${vdesk-other} | ${vdesk-other} | ${vdesk-other} | ${vdesk-other} | ${vdesk-other} | ${vdesk-other} | ${vdesk-other} | ${vdesk-other} | ${vdesk-other} | ${vdesk-other} | ${vdesk-other} | ${vdesk-other} | ${vdesk-other}
layout vmonitors 'Preview':REPEAT ${vdesk-other}
#sns:
layout vmonitors 'TweetDeck':REPEAT ${desktop-right-down}
layout vmonitors 'Tweetbot':REPEAT ${desktop-right-down}
layout vmonitors 'Twitter':REPEAT ${desktop-right-down}
layout vmonitors 'Miao':REPEAT ${laptop-max}
layout vmonitors 'Safari':REPEAT ${laptop-max}
layout vmonitors 'Evernote':REPEAT ${laptop-max}
layout vmonitors 'OmniFocus':REPEAT ${laptop-max}
layout vmonitors 'iTunes':REPEAT ${laptop-max}
layout vmonitors 'Sparrow Lite':REPEAT ${laptop-max}
layout vmonitors 'Reeder':REPEAT ${laptop-max}
layout vmonitors 'AppViz 2':REPEAT ${laptop-max}
layout vmonitors 'QQ':REPEAT,TITLE_ORDER=QQ ${laptop-chat} | ${laptop-main} | ${laptop-main} | ${laptop-main} | ${laptop-main} | ${laptop-main} | ${laptop-main} | ${laptop-main} | ${laptop-main} | ${laptop-main} | ${laptop-main} | ${laptop-main} | ${laptop-main}
# Layout Bindings
bind 3:ctrl,alt,cmd layout vmonitors
bind 2:ctrl,alt,cmd layout 2monitors
bind 1:ctrl,alt,cmd layout 1monitor
#Move
bind c:ctrl,alt,cmd move screenOriginX+screenSizeX/8;screenOriginY+screenSizeY/8 3*screenSizeX/4;3*screenSizeY/4
bind m:ctrl,alt,cmd move screenOriginX;screenOriginY screenSizeX;screenSizeY
#bind l:ctrl,alt,cmd move screenOriginX;screenOriginY screenSizeX/2;screenSizeY ${laptop}
#bind r:ctrl,alt,cmd move screenOriginX+screenSizeX/2;screenOriginY screenSizeX/2;screenSizeY ${laptop}
#Push
#bind left:ctrl,alt,cmd push left bar-resize:screenSizeX/2
#bind right:ctrl,alt,cmd push right bar-resize:screenSizeX/2
#Throw
#bind left:ctrl,alt move screenOriginX+windowTopLeftX*newWindowSizeX/windowSizeX;screenOriginY+windowTopLeftY*newWindowSizeY/windowSizeY windowSizeX;windowSizeY left
#| move windowTopLeftX;windowTopLeftY windowSizeX;windowSizeY 0
#bind right:ctrl,alt throw right resize