set $mod Mod1
-# font for window titles. ISO 10646 = Unicode
-font -misc-fixed-medium-r-normal--13-120-75-75-C-70-iso10646-1
+# Font for window titles. Will also be used by the bar unless a different font
+# is used in the bar {} block below.
+font pango:monospace 8
+
+# This font is widely installed, provides lots of unicode glyphs, right-to-left
+# text rendering and scalability on retina/hidpi displays (thanks to pango).
+#font pango:DejaVu Sans Mono 8
+
+# Before i3 v4.8, we used to recommend this one as the default:
+# font -misc-fixed-medium-r-normal--13-120-75-75-C-70-iso10646-1
+# The font above is very space-efficient, that is, it looks good, sharp and
+# clear in small sizes. However, its unicode glyph coverage is limited, the old
+# X core fonts rendering does not support right-to-left and this being a bitmap
+# font, it doesn’t scale on retina/hidpi displays.
# Use Mouse+$mod to drag floating windows to their wanted position
floating_modifier $mod
# start dmenu (a program launcher)
bindcode $mod+40 exec dmenu_run
+# There also is the (new) i3-dmenu-desktop which only displays applications
+# shipping a .desktop file. It is a wrapper around dmenu, so you need that
+# installed.
+# bindsym $mod+d exec --no-startup-id i3-dmenu-desktop
# change focus
bindcode $mod+44 focus left
bindcode $mod+55 split v
# enter fullscreen mode for the focused container
-bindcode $mod+41 fullscreen
+bindcode $mod+41 fullscreen toggle
-# change container layout (stacked, tabbed, default)
+# change container layout (stacked, tabbed, toggle split)
bindcode $mod+39 layout stacking
bindcode $mod+25 layout tabbed
-bindcode $mod+26 layout default
+bindcode $mod+26 layout toggle split
# toggle tiling / floating
bindcode $mod+Shift+65 floating toggle
bindcode $mod+38 focus parent
# focus the child container
-#bindcode $mod+d focus child
+#bindsym $mod+d focus child
# switch to workspace
bindcode $mod+10 workspace 1
bindcode $mod+19 workspace 10
# move focused container to workspace
-bindcode $mod+Shift+10 move workspace 1
-bindcode $mod+Shift+11 move workspace 2
-bindcode $mod+Shift+12 move workspace 3
-bindcode $mod+Shift+13 move workspace 4
-bindcode $mod+Shift+14 move workspace 5
-bindcode $mod+Shift+15 move workspace 6
-bindcode $mod+Shift+16 move workspace 7
-bindcode $mod+Shift+17 move workspace 8
-bindcode $mod+Shift+18 move workspace 9
-bindcode $mod+Shift+19 move workspace 10
+bindcode $mod+Shift+10 move container to workspace 1
+bindcode $mod+Shift+11 move container to workspace 2
+bindcode $mod+Shift+12 move container to workspace 3
+bindcode $mod+Shift+13 move container to workspace 4
+bindcode $mod+Shift+14 move container to workspace 5
+bindcode $mod+Shift+15 move container to workspace 6
+bindcode $mod+Shift+16 move container to workspace 7
+bindcode $mod+Shift+17 move container to workspace 8
+bindcode $mod+Shift+18 move container to workspace 9
+bindcode $mod+Shift+19 move container to workspace 10
# reload the configuration file
bindcode $mod+Shift+54 reload
# restart i3 inplace (preserves your layout/session, can be used to upgrade i3)
bindcode $mod+Shift+27 restart
# exit i3 (logs you out of your X session)
-bindcode $mod+Shift+26 exit
+bindcode $mod+Shift+26 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'"
# resize window (you can also use the mouse for that)
mode "resize" {
# These bindings trigger as soon as you enter the resize mode
- # They resize the border in the direction you pressed, e.g.
- # when pressing left, the window is resized so that it has
- # more space on its left
-
- bindcode 44 resize shrink left 10 px or 10 ppt
- bindcode Shift+44 resize grow left 10 px or 10 ppt
-
- bindcode 45 resize shrink down 10 px or 10 ppt
- bindcode Shift+45 resize grow down 10 px or 10 ppt
-
- bindcode 46 resize shrink up 10 px or 10 ppt
- bindcode Shift+46 resize grow up 10 px or 10 ppt
-
- bindcode 47 resize shrink right 10 px or 10 ppt
- bindcode Shift+47 resize grow right 10 px or 10 ppt
+ # Pressing left will shrink the window’s width.
+ # Pressing right will grow the window’s width.
+ # Pressing up will shrink the window’s height.
+ # Pressing down will grow the window’s height.
+ bindcode 44 resize shrink width 10 px or 10 ppt
+ bindcode 45 resize grow height 10 px or 10 ppt
+ bindcode 46 resize shrink height 10 px or 10 ppt
+ bindcode 47 resize grow width 10 px or 10 ppt
# same bindings, but for the arrow keys
- bindcode 113 resize shrink left 10 px or 10 ppt
- bindcode Shift+113 resize grow left 10 px or 10 ppt
-
- bindcode 116 resize shrink down 10 px or 10 ppt
- bindcode Shift+116 resize grow down 10 px or 10 ppt
-
- bindcode 111 resize shrink up 10 px or 10 ppt
- bindcode Shift+111 resize grow up 10 px or 10 ppt
-
- bindcode 114 resize shrink right 10 px or 10 ppt
- bindcode Shift+114 resize grow right 10 px or 10 ppt
+ bindcode 113 resize shrink width 10 px or 10 ppt
+ bindcode 116 resize grow height 10 px or 10 ppt
+ bindcode 111 resize shrink height 10 px or 10 ppt
+ bindcode 114 resize grow width 10 px or 10 ppt
# back to normal: Enter or Escape
bindcode 36 mode "default"
# Start i3bar to display a workspace bar (plus the system information i3status
# finds out, if available)
-exec i3status | i3bar -d
+bar {
+ status_command i3status
+}