summaryrefslogtreecommitdiff
path: root/i3/.i3
diff options
context:
space:
mode:
Diffstat (limited to 'i3/.i3')
-rw-r--r--i3/.i3/config144
1 files changed, 144 insertions, 0 deletions
diff --git a/i3/.i3/config b/i3/.i3/config
new file mode 100644
index 0000000..250b0cd
--- /dev/null
+++ b/i3/.i3/config
@@ -0,0 +1,144 @@
+# i3wm configured for vim-like keybindings
+
+# -----------------------------------------------------------------------------
+# Global settings
+# -----------------------------------------------------------------------------
+
+# set modifier key to super (windows logo)
+set $mod Mod4
+# use mod + mouse to drag windows
+floating_modifier $mod
+# default font
+font pango: Terminus, Icons 8
+# disable window titles
+new_window pixel 2
+hide_edge_borders both
+# enable floating for pop-up windows
+for_window [window_role="pop-up"] floating enable
+for_window [window_role="task_dialog"] floating enable
+
+# -----------------------------------------------------------------------------
+# Application keybindings
+# -----------------------------------------------------------------------------
+# start a terminal
+bindsym $mod+Return exec i3-sensible-terminal
+# lock with xscreensaver
+bindsym $mod+x exec xscreensaver-command --lock
+# kill focused window
+bindsym $mod+Shift+q kill
+# start dmenu (a program launcher)
+bindsym $mod+d exec dmenu_run
+
+bindsym XF86AudioRaiseVolume exec pactl set-sink-volume 0 +5%
+bindsym XF86AudioLowerVolume exec pactl set-sink-volume 0 -- -5%
+bindsym XF86AudioMute exec pactl set-sink-mute 0 toggle
+
+# -----------------------------------------------------------------------------
+# Autostart status bar
+# -----------------------------------------------------------------------------
+
+# start the i3 bar
+bar {
+ status_command i3status
+ position top
+ font pango: Terminus, Icons 9
+
+ colors {
+ background #080808
+ statusline #A5A5A5
+ separator #A5A5A5
+ focused_workspace #080808 #222222 #808080
+ active_workspace #080808 #080808 #797979
+ inactive_workspace #080808 #080808 #4F4F4F
+ urgent_workspace #080808 #080808 #EA4C59
+ }
+}
+
+# -----------------------------------------------------------------------------
+# Window navigation
+# -----------------------------------------------------------------------------
+
+# change focus
+bindsym $mod+h focus left
+bindsym $mod+j focus down
+bindsym $mod+k focus up
+bindsym $mod+l focus right
+
+# move focused window
+bindsym $mod+Shift+h move left
+bindsym $mod+Shift+j move down
+bindsym $mod+Shift+k move up
+bindsym $mod+Shift+l move right
+
+# split horizontal/vertical (like in vim)
+bindsym $mod+s split v
+bindsym $mod+v split h
+
+# enter fullscreen mode for the focused container
+bindsym $mod+f fullscreen
+
+# change container layout (stacked, tabbed, toggle split)
+bindsym $mod+w layout stacking
+bindsym $mod+t layout tabbed
+bindsym $mod+e layout toggle split
+
+# toggle tiling / floating
+bindsym $mod+Shift+space floating toggle
+
+# change focus between tiling / floating windows
+bindsym $mod+space focus mode_toggle
+
+# focus the parent/child container
+bindsym $mod+p focus parent
+bindsym $mod+c focus child
+
+# 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
+
+# bindings for resize mode
+mode "resize" {
+
+ bindsym h resize shrink width 10 px or 10 ppt
+ bindsym j resize grow height 10 px or 10 ppt
+ bindsym k resize shrink height 10 px or 10 ppt
+ bindsym l resize grow width 10 px or 10 ppt
+
+ # back to normal: Enter or Escape
+ bindsym Return mode "default"
+ bindsym Escape mode "default"
+}
+
+bindsym $mod+r mode "resize"
+
+# -----------------------------------------------------------------------------
+# WM management
+# -----------------------------------------------------------------------------
+
+# reload configuration
+bindsym $mod+Shift+c reload
+# restart i3
+bindsym $mod+Shift+r restart
+# display the exit i3 bar
+bindsym $mod+Shift+e exec "i3-nagbar -t warning -m 'You pressed the exit shortcut. Do you really want to exit i3? This will end your X session.' -b 'Yes, exit i3' 'i3-msg exit'"
+