]> git.sev.monster Git - dotfiles.git/blob - i3-config
f87dc41a67003e2176154b75a09addbe88a52218
[dotfiles.git] / i3-config
1 # i3 config file (v4)
2 # Please see http://i3wm.org/docs/userguide.html for a complete reference!
3
4 # Font for window titles. Will also be used by the bar unless a different font
5 # is used in the bar {} block below.
6
7 font pango:Dina, DejaVu Sans Mono, monospace 7
8
9 # This font is widely installed, provides lots of unicode glyphs, right-to-left
10 # text rendering and scalability on retina/hidpi displays (thanks to pango).
11 #font pango:DejaVu Sans Mono 8
12
13 # Before i3 v4.8, we used to recommend this one as the default:
14 # font -misc-fixed-medium-r-normal--13-120-75-75-C-70-iso10646-1
15 # The font above is very space-efficient, that is, it looks good, sharp and
16 # clear in small sizes. However, its unicode glyph coverage is limited, the old
17 # X core fonts rendering does not support right-to-left and this being a bitmap
18 # font, it doesn’t scale on retina/hidpi displays.
19
20 # Modifier key
21 set $mod Mod4
22
23 # use these keys for focus, movement, and resize directions
24 set $up k
25 set $down j
26 set $left h
27 set $right l
28 # and arrow keys
29 set $up2 Up
30 set $down2 Down
31 set $left2 Left
32 set $right2 Right
33
34 # use Mouse+$mod to drag floating windows to their wanted position
35 floating_modifier $mod
36
37 # start a terminal
38 bindsym $mod+Return exec --no-startup-id i3-sensible-terminal
39
40 # kill focused window
41 bindsym $mod+Shift+q kill
42
43 # start dmenu
44 bindsym $mod+d exec --no-startup-id $HOME/bin/dmenu_runsmart -p "%"
45
46 # change focus
47 bindsym $mod+$left focus left
48 bindsym $mod+$down focus down
49 bindsym $mod+$up focus up
50 bindsym $mod+$right focus right
51 bindsym $mod+$left2 focus left
52 bindsym $mod+$down2 focus down
53 bindsym $mod+$up2 focus up
54 bindsym $mod+$right2 focus right
55
56 # move focused window
57 bindsym $mod+Shift+$left move left
58 bindsym $mod+Shift+$down move down
59 bindsym $mod+Shift+$up move up
60 bindsym $mod+Shift+$right move right
61 bindsym $mod+Shift+$left2 move left
62 bindsym $mod+Shift+$down2 move down
63 bindsym $mod+Shift+$up2 move up
64 bindsym $mod+Shift+$right2 move right
65
66 # split in horizontal orientation
67 bindsym $mod+i split h
68
69 # split in vertical orientation
70 bindsym $mod+o split v
71
72 # enter fullscreen mode for the focused container
73 bindsym $mod+f fullscreen toggle
74 bindsym $mod+Shift+f fullscreen toggle global
75
76 # change container layout (stacked, tabbed, toggle split)
77 bindsym $mod+s layout stacking
78 bindsym $mod+w layout tabbed
79 bindsym $mod+e layout toggle split
80
81 # toggle tiling / floating
82 bindsym $mod+Shift+space floating toggle
83
84 # change focus between tiling / floating windows
85 bindsym $mod+space focus mode_toggle
86
87 # focus the parent container
88 bindsym $mod+a focus parent
89
90 # focus the child container
91 bindsym $mod+z focus child
92
93 # move the currently focused window to the scratchpad
94 bindsym $mod+Shift+minus move scratchpad
95
96 # Show the next scratchpad window or hide the focused scratchpad window.
97 # If there are multiple scratchpad windows, this command cycles through them.
98 bindsym $mod+minus scratchpad show
99
100 # switch to workspace
101 bindsym $mod+1 workspace 1
102 bindsym $mod+2 workspace 2
103 bindsym $mod+3 workspace 3
104 bindsym $mod+4 workspace 4
105 bindsym $mod+5 workspace 5
106 bindsym $mod+6 workspace 6
107 bindsym $mod+7 workspace 7
108 bindsym $mod+8 workspace 8
109 bindsym $mod+9 workspace 9
110 bindsym $mod+0 workspace 10
111
112 # move focused container to workspace
113 bindsym $mod+Shift+1 move container to workspace 1
114 bindsym $mod+Shift+2 move container to workspace 2
115 bindsym $mod+Shift+3 move container to workspace 3
116 bindsym $mod+Shift+4 move container to workspace 4
117 bindsym $mod+Shift+5 move container to workspace 5
118 bindsym $mod+Shift+6 move container to workspace 6
119 bindsym $mod+Shift+7 move container to workspace 7
120 bindsym $mod+Shift+8 move container to workspace 8
121 bindsym $mod+Shift+9 move container to workspace 9
122 Bindsym $mod+Shift+0 move container to workspace 10
123
124 # rename current window
125 bindsym $mod+t --no-startup-id xrename
126
127 # reload the configuration file
128 bindsym $mod+Shift+c reload
129 # restart i3 inplace
130 bindsym $mod+Shift+r restart
131 # exit i3
132 bindsym $mod+Shift+e exec --no-startup-id i3-nagbar -t warning -m Exit? -b Yes 'i3-msg exit'
133
134 # x220t bezel buttons
135 bindcode 198 exec --no-startup-id rotate set normal
136 bindcode 204 exec --no-startup-id rotate right
137
138 # volume buttons
139 bindsym XF86AudioMute exec -no-startup-id mixer vol 0
140 bindsym XF86AudioRaiseVolume exec -no-startup-id mixer vol +5
141 bindsym XF86AudioLowerVolume exec -no-startup-id mixer vol -5
142
143 # move and resize [floating] windows
144 mode "translate" {
145         bindsym $left  resize shrink width  20 px
146         bindsym $down  resize grow   height 20 px
147         bindsym $up    resize shrink height 20 px
148         bindsym $right resize grow   width  20 px
149         bindsym $left2  resize shrink width  20 px
150         bindsym $down2  resize grow   height 20 px
151         bindsym $up2    resize shrink height 20 px
152         bindsym $right2 resize grow   width  20 px
153
154         bindsym Shift+$left  move left  20 px
155         bindsym Shift+$down  move down  20 px
156         bindsym Shift+$up    move up    20 px
157         bindsym Shift+$right move right 20 px
158         bindsym Shift+$left2  move left  20 px
159         bindsym Shift+$down2  move down  20 px
160         bindsym Shift+$up2    move up    20 px
161         bindsym Shift+$right2 move right 20 px
162
163         # smaller movements
164         bindsym Control+$left  resize shrink width  1 px or 1 ppt
165         bindsym Control+$down  resize grow   height 1 px or 1 ppt
166         bindsym Control+$up    resize shrink height 1 px or 1 ppt
167         bindsym Control+$right resize grow   width  1 px or 1 ppt
168         bindsym Control+$left2  resize shrink width  1 px or 1 ppt
169         bindsym Control+$down2  resize grow   height 1 px or 1 ppt
170         bindsym Control+$up2    resize shrink height 1 px or 1 ppt
171         bindsym Control+$right2 resize grow   width  1 px or 1 ppt
172
173         bindsym Control+Shift+$left  move left  1 px
174         bindsym Control+Shift+$down  move down  1 px
175         bindsym Control+Shift+$up    move up    1 px
176         bindsym Control+Shift+$right move right 1 px
177         bindsym Control+Shift+$left2  move left  1 px
178         bindsym Control+Shift+$down2  move down  1 px
179         bindsym Control+Shift+$up2    move up    1 px
180         bindsym Control+Shift+$right2 move right 1 px
181
182         # toggle tiling / floating
183         bindsym $mod+Shift+space floating toggle
184
185         # change focus between tiling / floating windows
186         bindsym $mod+space focus mode_toggle
187
188         # focus the parent container
189         bindsym $mod+a focus parent
190
191         # focus the child container
192         bindsym $mod+z focus child
193
194         # back to normal: Enter, Escape, or original key
195         bindsym return mode default
196         bindsym escape mode default
197         bindsym $mod+r mode default
198 }
199 bindsym $mod+r mode "translate"
200
201 # borders
202 hide_edge_borders smart
203 #new_window normal 1
204 new_window pixel 1
205 gaps inner 6
206 smart_gaps on
207 #for_window [class="^URxvt$"] border pixel 1
208 #for_window [class="^links$"] border pixel 1
209
210 # misc
211 workspace_auto_back_and_forth yes
212 force_display_urgency_hint 2000 ms
213
214 # color definitions
215 #   class     border  backgr. text    indicator child_border
216 set $focused  #cc6600 #aa5500 #eee8d5 #4466ff   #cc6600
217 set $inactive #884400 #221100 #93a1a1 #264bd2   #884400
218 set $urgent   #ff4444 #dc322f #000000 #4466ff   #ff4444
219 set $blue     #4466ff #264bd2 #fdf6e3 #264db2   #4466ff
220
221 bar {
222         position top
223         tray_output primary
224         status_command i3status
225         separator_symbol "|"
226
227         colors {
228                 background #110800
229                 statusline #93a1a1
230                 separator  #268bd2
231
232                 # class            border  backgr. text
233                 focused_workspace  $focused
234                 active_workspace   $inactive
235                 inactive_workspace $inactive
236                 urgent_workspace   $urgent
237                 binding_mode       $blue
238         }
239 }
240
241 # colors
242 # class                 border  backgr. text    indicator child_border
243 client.focused          $focused
244 client.focused_inactive $inactive
245 client.unfocused        $inactive
246 client.urgent           $urgent
247 client.placeholder      $blue
248
249 client.background       #221100
This page took 0.040432 seconds and 2 git commands to generate.