1 exec --no-startup-id ~/.local/bin/startup-progs
10 # window title and bar font (unless specified differently in 'bar {}'
11 #font pango:Source Code Pro 9.5
12 font pango:Source Code Pro Medium 10.5
13 # font -misc-fixed-medium-r-normal--13-120-75-75-c-70-iso10646-1
14 # font -misc-fixed-medium-r-semicondensed--13-120-75-75-c-60-iso10646-1
16 # for dragging floating windows with mouse
17 floating_modifier $mod
20 workspace_layout tabbed
23 bindsym $mod+Return exec xterm
24 bindsym $mod+Shift+Return exec xterm -name floating
25 for_window [class="XTerm" instance="floating"] floating enable
27 # kill focused window (not necessarily its application)
28 bindsym $mod+Shift+w kill
30 #bindsym --release $mod+Shift+x exec xkill
33 bindsym $mod+space exec dmenu_run -fn 'Source Code Pro Medium-10.5'
34 bindsym $mod+backslash exec passmenu --type -fn 'Source Code Pro Medium-10.5'
37 bindsym $mod+apostrophe exec dmenu-light # brightness chooser
38 bindsym XF86MonBrightnessUp exec light -A 5 # increase brightness
39 bindsym XF86MonBrightnessDown exec light -U 5 # decrease brightness
42 bindsym $mod+semicolon exec dmenu-pamixer # volume chooser
43 bindsym XF86AudioRaiseVolume exec pamixer --allow-boost --increase 5
44 bindsym XF86AudioLowerVolume exec pamixer --allow-boost --decrease 5
45 bindsym XF86AudioMute exec pamixer --toggle-mute
46 bindsym XF86AudioMicMute exec pactl set-source-mute 1 toggle
49 bindsym $mod+h focus left
50 bindsym $mod+j focus down
51 bindsym $mod+k focus up
52 bindsym $mod+l focus right
53 bindsym $mod+Left focus left
54 bindsym $mod+Down focus down
55 bindsym $mod+Up focus up
56 bindsym $mod+Right focus right
59 bindsym $mod+Shift+h move left
60 bindsym $mod+Shift+j move down
61 bindsym $mod+Shift+k move up
62 bindsym $mod+Shift+l move right
63 bindsym $mod+Shift+Left move left
64 bindsym $mod+Shift+Down move down
65 bindsym $mod+Shift+Up move up
66 bindsym $mod+Shift+Right move right
68 # horizontal and vertical orientation
69 bindsym $mod+shift+backslash split h
70 bindsym $mod+minus split v
72 # enter fullscreen mode for the focused container
73 bindsym $mod+f fullscreen toggle
75 # change container layout (stacked, tabbed, toggle split)
76 bindsym $mod+s layout stacking
77 bindsym $mod+w layout tabbed
78 bindsym $mod+e layout toggle split
80 # toggle tiling / floating
81 bindsym $mod+Shift+f floating toggle
82 bindsym $mod+period floating toggle
83 # toggle tiling / floating focus
84 bindsym $mod+grave focus mode_toggle
85 bindsym $mod+comma focus mode_toggle
88 bindsym $mod+shift+s sticky toggle
90 # focus parent / child
91 bindsym $mod+a focus parent
92 bindsym $mod+Shift+a focus child
95 bindsym $mod+1 workspace 1
96 bindsym $mod+2 workspace 2
97 bindsym $mod+3 workspace 3
98 bindsym $mod+4 workspace 4
99 bindsym $mod+5 workspace 5
100 bindsym $mod+6 workspace 6
101 bindsym $mod+7 workspace 7
102 bindsym $mod+8 workspace 8
103 bindsym $mod+9 workspace 9
104 bindsym $mod+0 workspace 10
105 bindsym $mod+bracketleft workspace prev
106 bindsym $mod+bracketright workspace next
108 # move focused container to workspace
109 bindsym $mod+Shift+1 move container to workspace 1
110 bindsym $mod+Shift+2 move container to workspace 2
111 bindsym $mod+Shift+3 move container to workspace 3
112 bindsym $mod+Shift+4 move container to workspace 4
113 bindsym $mod+Shift+5 move container to workspace 5
114 bindsym $mod+Shift+6 move container to workspace 6
115 bindsym $mod+Shift+7 move container to workspace 7
116 bindsym $mod+Shift+8 move container to workspace 8
117 bindsym $mod+Shift+9 move container to workspace 9
118 bindsym $mod+Shift+0 move container to workspace 10
119 bindsym $mod+Shift+bracketleft move container to workspace prev
120 bindsym $mod+Shift+bracketright move container to workspace next
122 # bspwm-esque workspace switch and container move
123 bindsym $mod2+bracketleft exec b-ws-util i3 switch prev
124 bindsym $mod2+bracketright exec b-ws-util i3 switch next
125 bindsym $mod2+Shift+bracketleft exec b-ws-util i3 move prev follow
126 bindsym $mod2+Shift+bracketright exec b-ws-util i3 move next follow
128 set $mode_system System (l)ock | (e)xit i3 | (s)uspend | (h)ibernate | (r)eboot | (S)hutdown
129 mode "$mode_system" {
130 bindsym l exec i3lock, mode "default"
131 bindsym e exec i3-msg exit, mode "default"
132 bindsym s exec systemctl suspend, mode "default"
133 bindsym h exec systemctl hibernate, mode "default"
134 bindsym r exec systemctl reboot, mode "default"
135 bindsym Shift+s exec systemctl poweroff -i, mode "default"
137 bindsym Return mode "default"
138 bindsym Escape mode "default"
139 bindsym q mode "default"
142 bindsym $mod+Shift+c reload
143 bindsym $mod+Shift+r restart
144 bindsym $mod+Shift+e mode "$mode_system"
146 # resize window (you can also use the mouse for that)
148 # These bindings trigger as soon as you enter the resize mode
150 # Pressing left will shrink the window’s width.
151 # Pressing right will grow the window’s width.
152 # Pressing up will shrink the window’s height.
153 # Pressing down will grow the window’s height.
154 bindsym j resize shrink width 10 px or 10 ppt
155 bindsym k resize grow height 10 px or 10 ppt
156 bindsym l resize shrink height 10 px or 10 ppt
157 bindsym semicolon resize grow width 10 px or 10 ppt
159 # same bindings, but for the arrow keys
160 bindsym Left resize shrink width 10 px or 10 ppt
161 bindsym Down resize grow height 10 px or 10 ppt
162 bindsym Up resize shrink height 10 px or 10 ppt
163 bindsym Right resize grow width 10 px or 10 ppt
165 # back to normal: Enter or Escape
166 bindsym Return mode "default"
167 bindsym Escape mode "default"
169 bindsym $mod+r mode "resize"
172 set $mode_theme theme (d)ark | (l)ight
174 bindsym d exec change-theme dark, mode "default"
175 bindsym l exec change-theme light, mode "default"
176 bindsym Return mode "default"
177 bindsym Escape mode "default"
178 bindsym q mode "default"
180 bindsym $mod+t mode "$mode_theme"
182 # application-specific window configurations
183 for_window [class="mpv"] floating enable
184 for_window [class="Mumble"] floating enable
185 for_window [class="Nm-connection-editor"] floating enable
186 for_window [class="Virt-manager"] floating enable
189 for_window [class="^.*"] border pixel 4
191 # i3bar and system info from i3status
193 status_command i3status | my-i3status