-
Notifications
You must be signed in to change notification settings - Fork 6
/
Copy pathslate
73 lines (60 loc) · 2.13 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
# Configs
config defaultToCurrentScreen true
config nudgePercentOf screenSize
config resizePercentOf screenSize
config checkDefaultsOnLoad true
config focusCheckWidthMax 3000
# Monitor aliases
alias mon-laptop 1280x800
alias mon-ultrafine 2560x1440
# Size and Position aliases
alias full move screenOriginX;screenOriginY screenSizeX;screenSizeY
alias center move screenOriginX+screenSizeX/6;screenOriginY screenSizeX*2/3;screenSizeY
alias leftHalf move screenOriginX;screenOriginY screenSizeX/2;screenSizeY
alias rightHalf move screenOriginX+screenSizeX/2;screenOriginY screenSizeX/2;screenSizeY
alias topHalf move screenOriginX;screenOriginY+screenSizeY/2 screenSizeX;screenSizeY/2
alias bottomHalf move screenOriginX;screenOriginY screenSizeX;screenSizeY/2
# Key aliases
alias ca ctrl;alt
alias cas ctrl;alt;shift
alias cam ctrl;alt;cmd
alias cams ctrl;alt;cmd;shift
alias ams alt;cmd;shift
# Default layouts
default laptop-ultrafine resolutions:${mon-laptop};${mon-ultrafine}
# 2 monitor layout ultrafine
layout laptop-ultrafine 'iTerm' ${full} ${mon-ultrafine}
layout laptop-ultrafine 'Safari' throw ${mon-ultrafine}
layout laptop-ultrafine 'Tweetbot' corner top-right none ${mon-laptop}
layout laptop-ultrafine 'Slack' ${full} ${mon-laptop}
layout laptop-ultrafine 'Mail' ${full} ${mon-laptop}
layout laptop-ultrafine 'Spotify' ${full} ${mon-laptop}
layout laptop-ultrafine 'Skype' ${leftHalf} ${mon-laptop}
# Bindings
bind r:${cam} relaunch
bind u:${cam} undo
bind g:${cam} grid ${mon-laptop}:2,2 ${mon-ultrafine}:6,6
bind n:${cam} throw next
bind m:${cam} ${full}
bind =:${cam} ${center}
bind h:${cam} ${leftHalf}
bind l:${cam} ${rightHalf}
bind j:${cam} ${topHalf}
bind k:${cam} ${bottomHalf}
bind h:${cams} push left
bind l:${cams} push right
bind j:${cams} push down
bind k:${cams} push up
bind h:${ca} nudge -10% +0
bind l:${ca} nudge +10% +0
bind j:${ca} nudge +0 +10%
bind k:${ca} nudge +0 -10%
bind h:${cas} resize -10% +0
bind l:${cas} resize +10% +0
bind j:${cas} resize +0 +10%
bind k:${cas} resize +0 -10%
bind h:${ams} focus left
bind l:${ams} focus right
bind j:${ams} focus down
bind k:${ams} focus up
bind p:${ams} focus behind