Last active
August 29, 2015 14:09
-
-
Save mgalushka/d79c68464f191ba8e11a to your computer and use it in GitHub Desktop.
This file contains hidden or 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 defaultToCurrentScreen true | |
config windowHintsShowIcons true | |
config windowHintsIgnoreHiddenWindows false | |
config windowHintsSpread true | |
config windowHintsDuration 5 | |
bind esc:cmd hintfac | |
alias mon-laptop 1680x1050 | |
alias mon-monitor 2560x1600 | |
alias right-top move screenOriginX+screenSizeX/2;screenOriginY screenSizeX/2;screenSizeY/2 ${mon-monitor} | |
alias right-bottom move screenOriginX+screenSizeX/2;screenOriginY+screenSizeY/2 screenSizeX/2;screenSizeY/2 ${mon-monitor} | |
alias left-top move screenOriginX;screenOriginY screenSizeX/2;screenSizeY/2 ${mon-monitor} | |
alias left-bottom move screenOriginX;screenOriginY+screenSizeY/2 screenSizeX/2;screenSizeY/2 ${mon-monitor} | |
alias full-screen move screenOriginX;screenOriginY screenSizeX;screenSizeY ${mon-laptop} | |
# Abstract positions | |
alias fullscreen move screenOriginX;screenOriginY screenSizeX;screenSizeY | |
alias lefthalf move screenOriginX;screenOriginY screenSizeX/2;screenSizeY | |
alias righthalf move screenOriginX+screenSizeX/2;screenOriginY screenSizeX/2;screenSizeY | |
alias tophalf move screenOriginX;screenOriginY screenSizeX;screenSizeY/2 | |
alias bottomhalf move screenOriginX;screenOriginY+screenSizeY/2 screenSizeX;screenSizeY/2 | |
alias topleft corner top-left resize:screenSizeX/2;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 | |
bind pad9:cmd ${right-top} | |
bind pad6:cmd ${righthalf} | |
bind pad3:cmd ${right-bottom} | |
bind pad7:cmd ${left-top} | |
bind pad1:cmd ${left-bottom} | |
bind pad4:cmd ${lefthalf} | |
bind pad5:cmd ${full-screen} | |
bind pad8:cmd ${tophalf} | |
bind pad2:cmd ${bottomhalf} | |
bind e:alt ${right-top} | |
bind d:alt ${righthalf} | |
bind c:alt ${right-bottom} | |
bind q:alt ${left-top} | |
bind z:alt ${left-bottom} | |
bind a:alt ${lefthalf} | |
bind s:alt ${full-screen} | |
bind s:cmd;alt focus 'Safari' | |
bind t:cmd;alt focus 'Terminal' | |
bind e:cmd;alt focus 'Sublime Text' | |
bind i:cmd;alt focus 'IntelliJ IDEA' | |
bind p:cmd;alt focus 'PyCharm' | |
bind m:cmd;alt focus 'Microsoft Outlook' | |
bind g:cmd;alt focus 'Google Chrome' | |
# Concrete positions | |
alias 1-full move screenOriginX;screenOriginY screenSizeX;screenSizeY ${mon-laptop} | |
alias 2-lefthalf move screenOriginX;screenOriginY screenSizeX/2;screenSizeY ${mon-monitor} | |
alias 2-righthalf move screenOriginX+screenSizeX/2;screenOriginY screenSizeX/2;screenSizeY ${mon-monitor} | |
alias 2-topleft corner top-left resize:screenSizeX/2;screenSizeY/2 ${mon-monitor} | |
alias 2-topright corner top-right resize:screenSizeX/2;screenSizeY/2 ${mon-monitor} | |
alias 2-bottomleft corner bottom-left resize:screenSizeX/2;screenSizeY/2 ${mon-monitor} | |
alias 2-bottomright corner bottom-right resize:screenSizeX/2;screenSizeY/2 ${mon-monitor} | |
alias 2-tophalf move screenOriginX;screenOriginY screenSizeX;screenSizeY/2 ${mon-monitor} | |
alias 2-bottomhalf move screenOriginX;screenOriginY+screenSizeY/2 screenSizeX;screenSizeY/2 ${mon-monitor} | |
# 1 Monitor layout | |
layout 1monitor 'Mocrosoft Outlook':MAIN_FIRST ${1-full} | |
layout 1monitor 'LimeChat':MAIN_FIRST ${1-full} | |
layout 1monitor 'Terminal':REPEAT ${1-full} | |
layout 1monitor 'Safari':REPEAT ${1-full} | |
layout 1monitor 'Sublime Text':REPEAT ${1-full} | |
layout 1monitor 'Safari':REPEAT ${1-full} | |
layout 1monitor 'PyCharm':REPEAT ${1-full} | |
layout 1monitor 'IntelliJ IDEA':REPEAT ${1-full} | |
# 2 Monitor layout | |
layout 2monitors 'Mocrosoft Outlook':MAIN_FIRST ${1-full} | |
layout 2monitors 'LimeChat':MAIN_FIRST ${1-full} | |
layout 2monitors 'Terminal':REPEAT ${2-bottomleft} | |
layout 2monitors 'Safari':REPEAT ${2-topleft} | |
layout 2monitors 'Sublime Text':REPEAT ${2-topright} | |
#layout 2monitors 'Safari':REPEAT ${2-bottomleft} | |
layout 2monitors 'PyCharm':REPEAT ${2-bottomright} | |
layout 2monitors 'IntelliJ IDEA':REPEAT ${2-bottomright} | |
# default layouts | |
default 2monitors resolutions:${mon-laptop};${mon-monitor}; | |
default 1monitor resolutions:${mon-laptop} | |
bind pad*:cmd layout 2monitors | |
bind pad/:cmd layout 1monitor |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment