Permalink
Find file
Fetching contributors…
Cannot retrieve contributors at this time
executable file 194 lines (153 sloc) 6.19 KB
###############################################################################
## Variables
###############################################################################
# modifiers
set $mod Mod1
set $barMod Mod4
# directions
set $left h
set $right l
set $down j
set $up k
# custom screen locker script
set $locker bin/lock.sh
###############################################################################
## Basic setup
###############################################################################
# font for window titles. ISO 10646 = Unicode
#font -misc-fixed-medium-r-normal--13-120-75-75-C-70-iso10646-1
font pango:DejaVu Sans Mono 10
# Use Mouse+$mod to drag floating windows to their wanted position
floating_modifier $mod
# no borders by default
new_window none
###############################################################################
## Keybindings
###############################################################################
# control i3
bindsym $mod+Shift+c reload
bindsym $mod+Shift+r restart
bindsym $mod+Shift+e exit
# modify window
bindsym $mod+Shift+q kill
bindsym $mod+f fullscreen
bindsym $mod+Shift+space floating toggle
bindsym $mod+space focus mode_toggle
bindsym $mod+a focus parent
# monitor
bindsym $mod+XF86LaunchA exec --no-startup-id bin/monitor/single
bindsym $mod+Shift+XF86LaunchA exec --no-startup-id bin/monitor/presentation
# apps
set $dmenuOptions -nb "#000508" -nf "#839496" -sb "#002b36" -sf "#268bd2" -fn "DejaVu Sans Mono-10:normal" -i -b
bindsym $mod+d exec --no-startup-id dmenu_run $dmenuOptions
bindsym $mod+Shift+d exec --no-startup-id i3-dmenu-desktop --dmenu='dmenu $dmenuOptions'
bindsym $mod+Return exec uxterm
bindsym $mod+Shift+Return exec thunar
bindsym $mod+p exec --no-startup-id ~/bin/launch
bindsym $mod+Shift+x exec $locker
bindsym $mod+Shift+m exec --no-startup-id ~/bin/toggle-monitor.sh
# scratchpad
bindsym $mod+Shift+z move scratchpad
bindsym $mod+z scratchpad show
# change focus
bindsym $mod+$left focus left
bindsym $mod+$down focus down
bindsym $mod+$up focus up
bindsym $mod+$right focus right
# move focused window
bindsym $mod+Shift+$left move left
bindsym $mod+Shift+$down move down
bindsym $mod+Shift+$up move up
bindsym $mod+Shift+$right move right
# split
bindsym $mod+c split h
bindsym $mod+v split v
# change container layout (stacked, tabbed, default)
bindsym $mod+s layout stacking
bindsym $mod+w layout tabbed
bindsym $mod+e layout default
# Move the current workspace to the next output
# (effectively toggles when you only have two outputs)
bindsym $mod+x move workspace to output right
# switch to workspace
bindsym $mod+1 workspace 1
bindsym $mod+2 workspace 2
bindsym $mod+3 workspace 3
bindsym $mod+4 workspace 4
bindsym $mod+5 workspace 5
bindsym $mod+6 workspace 6
bindsym $mod+7 workspace 7
bindsym $mod+8 workspace 8
bindsym $mod+9 workspace 9
bindsym $mod+0 workspace 10
# move focused container to workspace
bindsym $mod+Shift+1 move container to workspace 1
bindsym $mod+Shift+2 move container to workspace 2
bindsym $mod+Shift+3 move container to workspace 3
bindsym $mod+Shift+4 move container to workspace 4
bindsym $mod+Shift+5 move container to workspace 5
bindsym $mod+Shift+6 move container to workspace 6
bindsym $mod+Shift+7 move container to workspace 7
bindsym $mod+Shift+8 move container to workspace 8
bindsym $mod+Shift+9 move container to workspace 9
bindsym $mod+Shift+0 move container to workspace 10
# resize window
mode "resize" {
bindsym $left resize shrink left 10 px or 10 ppt
bindsym Shift+$left resize grow left 10 px or 10 ppt
bindsym $down resize shrink down 10 px or 10 ppt
bindsym Shift+$down resize grow down 10 px or 10 ppt
bindsym $up resize shrink up 10 px or 10 ppt
bindsym Shift+$up resize grow up 10 px or 10 ppt
bindsym $right resize shrink right 10 px or 10 ppt
bindsym Shift+$right resize grow right 10 px or 10 ppt
# back to normal: Enter or Escape
bindsym Return mode "default"
bindsym Escape mode "default"
}
bindsym $mod+r mode "resize"
# audio control with media keys
bindsym XF86AudioMute exec --no-startup-id amixer set Master toggle
bindsym XF86AudioLowerVolume exec --no-startup-id amixer set Master 5%- unmute
bindsym XF86AudioRaiseVolume exec --no-startup-id amixer set Master 5%+ unmute
bindsym XF86Eject exec --no-startup-id eject
# audio control with arrow keys (for keyboards without media keys)
bindsym $mod+Down exec --no-startup-id amixer set Master 5%- unmute
bindsym $mod+Up exec --no-startup-id amixer set Master 5%+ unmute
bindsym $mod+Left exec --no-startup-id amixer set Master nmute
bindsym $mod+Right exec --no-startup-id amixer set Master umute
# adjustable borders
bindsym $mod+b border toggle
###############################################################################
## System bar and color theme
###############################################################################
bar {
font pango:DejaVu Sans Mono 10
position bottom
status_command i3status
mode hide
modifier $barMod
colors {
background #000508
statusline #839496
separator #073642
# color class border backgr. text
focused_workspace #002b36 #002b36 #E3FDFD
active_workspace #002b36 #002b36 #2aa198
inactive_workspace #000508 #000508 #839496
urgent_workspace #800517 #800517 #cb4b16
}
}
# decoration colors border backgr. text indicator
client.focused #002b36 #002b36 #E3FDFD #E3FDFD
client.focused_inactive #002b36 #002b36 #2aa198 #2aa198
client.unfocused #000508 #000508 #839496 #839496
###############################################################################
## Startup apps
########################################################################################################
exec --no-startup-id ssh-agent # ssh-agent for remembering key passphrases
exec --no-startup-id redshift -l 60.3:5.3 -m vidmode # auto color temperature
exec --no-startup-id wicd-client -t # network
exec --no-startup-id thunar --daemon # faster thunar
exec --no-startup-id dropboxd # dropbox
exec --no-startup-id xautolock -time 60 -locker "$locker" # lock screen when idle