Last active
August 22, 2016 03:29
-
-
Save elaijuh/e29fdf6eb035dd2676e35d2a1dd5b929 to your computer and use it in GitHub Desktop.
slate config
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Config | |
config windowHintsFontSize 100 | |
config nudgePercentOf screenSize | |
config resizePercentOf screenSize | |
config windowHintsTopLeftX (windowSizeX/2)-(windowHintsWidth/2) | |
config windowHintsTopLeftY (windowSizeY/2)-(windowHintsHeight/2) | |
config windowHintsIgnoreHiddenWindows false | |
# General aliases | |
alias sox screenOriginX | |
alias soy screenOriginY | |
alias ssx screenSizeX | |
alias ssy screenSizeY | |
# Position aliases | |
alias centered ${sox}+${ssx}/8;${soy}+${ssy}/8 ${ssx}/8*6;${ssy}/8*6 | |
alias fullscreen ${sox};${soy} ${ssx};${ssy} | |
alias leftHalf ${sox};${soy} ${ssx}/2;${ssy} | |
alias bottomHalf ${sox};${soy}+${ssy}/2 ${ssx};${ssy}/2 | |
alias topHalf ${sox};${soy} ${ssx};${ssy}/2 | |
alias rightHalf ${sox}+${ssx}/2;${soy} ${ssx}/2;${ssy} | |
alias topLeftQuarter ${sox};${soy} ${ssx}/2;${ssy}/2 | |
alias topRightQuarter ${sox}+${ssx}/2;${soy} ${ssx}/2;${ssy}/2 | |
alias bottomLeftQuarter ${sox};${soy}+${ssy}/2 ${ssx}/2;${ssy}/2 | |
alias bottomRightQuarter ${sox}+${ssx}/2;${soy}+${ssy}/2 ${ssx}/2;${ssy}/2 | |
alias left23 ${sox};${soy} ${ssx}*2/3;${ssy} | |
alias right13 ${sox}+${ssx}*2/3;${soy} ${ssx}*1/3;${ssy} | |
# 1 monitor layout | |
#layout oneScreen 'Adium':TITLE_ORDER='Contacts' move ${sox};${soy} ${ssx}/9;${ssy} | |
layout oneScreen 'Atom':REPEAT move ${fullscreen} | |
layout oneScreen 'MindNode' move ${fullscreen} | |
layout oneScreen 'Slack' move ${fullscreen} | |
layout oneScreen 'Google Chrome' move ${fullscreen} | |
layout oneScreen 'Brave' move ${fullscreen} | |
layout oneScreen 'Foxmail' move ${fullscreen} | |
layout oneScreen 'iTerm2' move ${rightHalf} | |
layout oneScreen 'Evernote' move ${rightHalf} | |
layout oneScreen 'Spotify' move ${fullscreen} | |
layout oneScreen 'WeChat' move ${rightHalf} | |
layout oneScreen 'MacVim' move ${rightHalf} | |
# 2 monitor layout | |
layout twoScreen 'Atom':REPEAT move ${fullscreen} 1 | |
layout twoScreen 'MindNode' move ${fullscreen} 0 | |
layout twoScreen 'Slack' move ${fullscreen} 0 | |
layout twoScreen 'Google Chrome' move ${fullscreen} 0 | |
layout twoScreen 'Brave' move ${fullscreen} 1 | |
layout twoScreen 'Foxmail' move ${fullscreen} 0 | |
layout twoScreen 'iTerm2' move ${rightHalf} 0 | |
layout twoScreen 'Evernote' move ${fullscreen} 0 | |
layout twoScreen 'Spotify' move ${fullscreen} 0 | |
layout twoScreen 'WeChat' move ${rightHalf} 0 | |
layout twoScreen 'MacVim' move ${rightHalf} 1 | |
# 3 monitor layout | |
layout threeScreen 'Spotify' move ${fullscreen} 0 | |
layout threeScreen 'Slack' move ${fullscreen} 0 | |
layout threeScreen 'MindNode' move ${fullscreen} 0 | |
layout threeScreen 'MacVim' move ${fullscreen} 1 | |
layout threeScreen 'iTerm2' move ${right13} 1 | |
layout threeScreen 'Google Chrome' move ${left23} 1 | |
layout threeScreen 'Brave' move ${left23} 1 | |
layout threeScreen 'Atom':REPEAT move ${fullscreen} 2 | |
# Triggers the twoScreenLayout when there are 2 monitors. | |
default threeScreen count:3 | |
# Bindings | |
bind g:ctrl;alt move ${centered} | |
bind o:ctrl;alt move ${fullscreen} | |
bind h:ctrl;alt move ${leftHalf} | |
bind b:ctrl;alt move ${left23} | |
bind j:ctrl;alt move ${bottomHalf} | |
bind k:ctrl;alt move ${topHalf} | |
bind l:ctrl;alt move ${rightHalf} | |
bind .:ctrl;alt move ${right13} | |
bind u:ctrl;alt move ${topLeftQuarter} | |
bind i:ctrl;alt move ${topRightQuarter} | |
bind n:ctrl;alt move ${bottomLeftQuarter} | |
bind m:ctrl;alt move ${bottomRightQuarter} | |
bind ;:ctrl;alt throw previous | |
bind /:ctrl;alt hint ASDFJKLGHWERTYUIO | |
bind 1:ctrl;alt layout oneScreen | |
bind 2:ctrl;alt layout twoScreen | |
bind 3:ctrl;alt layout threeScreen | |
bind right:ctrl;alt resize +10% +0 | |
bind left:ctrl;alt resize -10% +0 | |
bind up:ctrl;alt resize +0 -10% | |
bind down:ctrl;alt resize +0 +10% | |
bind right:ctrl;alt nudge +10% +0 | |
bind left:ctrl;alt nudge -10% +0 | |
bind up:ctrl;alt nudge +0 -10% | |
bind down:ctrl;alt nudge +0 +10% | |
# Focus - Brings the focus to the window by shortcut | |
bind b:cmd;alt focus 'Google Chrome' | |
bind i:cmd;alt focus 'iTerm2' | |
bind a:cmd;alt focus 'Atom' | |
bind s:cmd;alt focus 'Slack' |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment