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 -misc-fixed-medium-r-normal--13-120-75-75-C-70-iso10646-1
14 # for dragging floating windows with mouse
15 floating_modifier $mod
18 workspace_layout tabbed
21 bindsym $mod+Return exec urxvt
22 bindsym $mod+Shift+Return exec urxvt -name floating
23 for_window [class="URxvt" instance="floating"] floating enable
25 # kill focused window (not necessarily its application)
26 bindsym $mod+Shift+w kill
28 #bindsym --release $mod+Shift+x exec xkill
30 # rofi launcher and pass
31 bindsym $mod+space exec rofi -show run -display-run ' > ' -display-window ' 🗔 '
32 bindsym $mod+backslash exec rofi -show window -display-run ' > ' -display-window ' 🗔 '
33 bindsym $mod+Shift+space exec rofi-pass
36 bindsym $mod+apostrophe exec rofi-light # rofi-based brightness chooser
37 bindsym XF86MonBrightnessUp exec light -A 5 # increase screen brightness
38 bindsym XF86MonBrightnessDown exec light -U 5 # decrease screen brightness
41 bindsym $mod+semicolon exec rofi-pamixer # rofi-based volume chooser
42 bindsym XF86AudioRaiseVolume exec pamixer --allow-boost --increase 5
43 bindsym XF86AudioLowerVolume exec pamixer --allow-boost --decrease 5
44 bindsym XF86AudioMute exec pamixer --toggle-mute
45 bindsym XF86AudioMicMute exec pactl set-source-mute 1 toggle
48 bindsym $mod+h focus left
49 bindsym $mod+j focus down
50 bindsym $mod+k focus up
51 bindsym $mod+l focus right
52 bindsym $mod+Left focus left
53 bindsym $mod+Down focus down
54 bindsym $mod+Up focus up
55 bindsym $mod+Right focus right
58 bindsym $mod+Shift+h move left
59 bindsym $mod+Shift+j move down
60 bindsym $mod+Shift+k move up
61 bindsym $mod+Shift+l move right
62 bindsym $mod+Shift+Left move left
63 bindsym $mod+Shift+Down move down
64 bindsym $mod+Shift+Up move up
65 bindsym $mod+Shift+Right move right
67 # horizontal and vertical orientation
68 bindsym $mod+shift+backslash split h
69 bindsym $mod+minus split v
71 # enter fullscreen mode for the focused container
72 bindsym $mod+f fullscreen toggle
74 # change container layout (stacked, tabbed, toggle split)
75 bindsym $mod+s layout stacking
76 bindsym $mod+w layout tabbed
77 bindsym $mod+e layout toggle split
79 # toggle tiling / floating
80 bindsym $mod+Shift+f floating toggle
81 # toggle tiling / floating focus
82 bindsym $mod+grave focus mode_toggle
85 bindsym $mod+shift+s sticky toggle
87 # focus parent / child
88 bindsym $mod+a focus parent
89 bindsym $mod+Shift+a focus child
92 bindsym $mod+1 workspace 1
93 bindsym $mod+2 workspace 2
94 bindsym $mod+3 workspace 3
95 bindsym $mod+4 workspace 4
96 bindsym $mod+5 workspace 5
97 bindsym $mod+6 workspace 6
98 bindsym $mod+7 workspace 7
99 bindsym $mod+8 workspace 8
100 bindsym $mod+9 workspace 9
101 bindsym $mod+0 workspace 10
102 bindsym $mod+bracketleft workspace prev
103 bindsym $mod+bracketright workspace next
105 # move focused container to workspace
106 bindsym $mod+Shift+1 move container to workspace 1
107 bindsym $mod+Shift+2 move container to workspace 2
108 bindsym $mod+Shift+3 move container to workspace 3
109 bindsym $mod+Shift+4 move container to workspace 4
110 bindsym $mod+Shift+5 move container to workspace 5
111 bindsym $mod+Shift+6 move container to workspace 6
112 bindsym $mod+Shift+7 move container to workspace 7
113 bindsym $mod+Shift+8 move container to workspace 8
114 bindsym $mod+Shift+9 move container to workspace 9
115 bindsym $mod+Shift+0 move container to workspace 10
116 bindsym $mod+Shift+bracketleft move container to workspace prev
117 bindsym $mod+Shift+bracketright move container to workspace next
119 # bspwm-esque workspace switch and container move
120 bindsym $mod2+bracketleft exec b-ws-util i3 switch prev
121 bindsym $mod2+bracketright exec b-ws-util i3 switch next
122 bindsym $mod2+Shift+bracketleft exec b-ws-util i3 move prev follow
123 bindsym $mod2+Shift+bracketright exec b-ws-util i3 move next follow
125 set $mode_system System (l)ock | (e)xit i3 | (s)uspend | (h)ibernate | (r)eboot | (S)hutdown
126 mode "$mode_system" {
127 bindsym l exec i3lock, mode "default"
128 bindsym e exec i3-msg exit, mode "default"
129 bindsym s exec systemctl suspend, mode "default"
130 bindsym h exec systemctl hibernate, mode "default"
131 bindsym r exec systemctl reboot, mode "default"
132 bindsym Shift+s exec systemctl poweroff -i, mode "default"
134 bindsym Return mode "default"
135 bindsym Escape mode "default"
136 bindsym q mode "default"
139 bindsym $mod+Shift+c reload
140 bindsym $mod+Shift+r restart
141 bindsym $mod+Shift+e mode "$mode_system"
143 # resize window (you can also use the mouse for that)
145 # These bindings trigger as soon as you enter the resize mode
147 # Pressing left will shrink the window’s width.
148 # Pressing right will grow the window’s width.
149 # Pressing up will shrink the window’s height.
150 # Pressing down will grow the window’s height.
151 bindsym j resize shrink width 10 px or 10 ppt
152 bindsym k resize grow height 10 px or 10 ppt
153 bindsym l resize shrink height 10 px or 10 ppt
154 bindsym semicolon resize grow width 10 px or 10 ppt
156 # same bindings, but for the arrow keys
157 bindsym Left resize shrink width 10 px or 10 ppt
158 bindsym Down resize grow height 10 px or 10 ppt
159 bindsym Up resize shrink height 10 px or 10 ppt
160 bindsym Right resize grow width 10 px or 10 ppt
162 # back to normal: Enter or Escape
163 bindsym Return mode "default"
164 bindsym Escape mode "default"
166 bindsym $mod+r mode "resize"
168 # application-specific window configurations
169 for_window [class="mpv"] floating enable
170 for_window [class="Mumble"] floating enable
171 for_window [class="Nm-connection-editor"] floating enable
172 for_window [class="Virt-manager"] floating enable
175 for_window [class="^.*"] border pixel 4
177 # i3bar and system info from i3status
179 status_command i3status | my-i3status