Skip to content

Instantly share code, notes, and snippets.

@Velrok
Forked from trishume/.slate
Last active December 14, 2015 22:59
Show Gist options
  • Save Velrok/5162942 to your computer and use it in GitHub Desktop.
Save Velrok/5162942 to your computer and use it in GitHub Desktop.
# Configs
config defaultToCurrentScreen true
config nudgePercentOf screenSize
config resizePercentOf screenSize
config secondsBetweenRepeat 0.1
config checkDefaultsOnLoad true
config focusCheckWidthMax 3000
# config keyboardLayout dvorak
config windowHintsShowIcons true
config windowHintsIgnoreHiddenWindows false
#config windowHintsDuration 5
config windowHintsSpread true
#config windowHintsOrder persist
# Monitor Aliases
alias laptop 0
alias extra-monitor 1
# Misc Aliases
alias showHintsLeftHand hint ASDFQWERYXCV
alias showNormalHint hint ASDFÖLKJQWERPOIU
# Application aliases
alias browser 'Google Chrome'
alias editor 'Sublime Text 2'
alias terminal 'iTerm'
alias pdf-viewer 'Vorschau'
# Abstract positions
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 rightmost move screenOriginX+screenSizeX*0.4;screenOriginY screenSizeX*0.6;screenSizeY
alias rightless move screenOriginX+screenSizeX*0.6;screenOriginY screenSizeX*0.4;screenSizeY
alias leftmost move screenOriginX;screenOriginY screenSizeX*0.6;screenSizeY
alias leftless move screenOriginX;screenOriginY screenSizeX*0.4;screenSizeY
alias topmost push top bar-resize:screenSizeY*(0.7)
alias bottomless push bottom bar-resize:screenSizeY*(0.3)
# Concrete positions
alias 1-full ${full} ${laptop}
alias 1-left ${lefthalf} ${laptop}
alias 1-leftmost ${leftmost} ${laptop}
alias 1-right ${righthalf} ${laptop}
alias 1-rightless ${rightless} ${laptop}
alias 2-left ${lefthalf} ${extra-monitor}
alias 2-right ${righthalf} ${extra-monitor}
alias 2-topmost ${topmost} ${extra-monitor}
alias 2-bottomless ${bottomless} ${extra-monitor}
# 2 Monitor layout
layout 2-monitors-clojure ${terminal}:MAIN_FIRST ${1-rightless}
layout 2-monitors-clojure ${browser}:MAIN_FIRST ${1-leftmost}
layout 2-monitors-clojure ${editor}:MAIN_FIRST ${2-topmost}
layout 2-monitors-clojure 'Terminal':MAIN_FIRST ${2-bottomless}
# 1 Monitor layout
# Default Layouts
# default 2monitors resolutions:${laptop};${extra-monitor};
# default 1monitor resolutions:${laptop}
# Numpad location Bindings
bind pad0 ${showHintsLeftHand}
bind pad1 ${leftless}
bind pad2 push bottom bar-resize:screenSizeY/2
bind pad3 ${rightless}
bind pad4 ${lefthalf}
bind pad5 ${full}
bind pad6 ${righthalf}
bind pad7 ${leftmost}
bind pad8 push top bar-resize:screenSizeY/2
bind pad9 ${rightmost}
bind padEnter grid padding:5 ${laptop}:3,2 ${extra-monitor}:3,3
bind padClear throw ${laptop}
bind pad= throw ${extra-monitor}
# bind pad* layout 2monitors
# bind pad/ layout 1monitor
# bind e:cmd ${showNormalHint}
# ======================================
# The HYPER key
# ======================================
alias hyper cmd,alt,ctrl
# Location bindings
bind f:${hyper} ${full}
bind left:${hyper} ${lefthalf}
bind right:${hyper} ${righthalf}
bind up:${hyper} push top bar-resize:screenSizeY/2
bind down:${hyper} push bottom bar-resize:screenSizeY/2
bind i:${hyper} throw ${laptop}
bind o:${hyper} throw ${extra-monitor}
bind h:${hyper} ${leftless}
bind j:${hyper} ${leftmost}
bind k:${hyper} ${rightmost}
bind l:${hyper} ${rightless}
bind g:${hyper} grid padding:5 ${laptop}:3,2 ${extra-monitor}:3,3
# layout bindings
bind c:${hyper} layout 2-monitors-clojure
# Resize Bindings
#bind r:${hyper} ${leftmost}
#bind g:${hyper} ${rightmost}
# Focus Bindings
# bind right:${hyper} focus right
# bind left:${hyper} focus left
# bind up:${hyper} focus up
# bind down:${hyper} focus down
# App bindings
# bind e:${hyper} focus ${browser}
# bind u:${hyper} focus ${editor}
# bind x:${hyper} focus 'Xcode'
# bind g:${hyper} focus 'GitHub'
# bind m:${hyper} focus 'Mail'
# bind i:${hyper} focus 'iTerm'
# bind o:${hyper} focus 'Path Finder'
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment