i3/config (view raw)
1# _ _____ _____
2# (_)__ / _________ ____ / __(_)___ _
3# / / /_ < / ___/ __ \/ __ \/ /_/ / __ `/
4# / /___/ / / /__/ /_/ / / / / __/ / /_/ /
5#/_//____/ \___/\____/_/ /_/_/ /_/\__, /
6# /____/
7
8
9
10set $mod Mod4
11
12# set fonts in funky way
13font pango: SF Mono SemiBold 13
14for_window [class=".*"] title_format "<span font='SF Mono SemiBold 11'> › %title</span>"
15floating_modifier $mod
16for_window [class="^.*"] border 1
17
18# start a terminal
19bindsym $mod+Return exec urxvtc
20for_window [class="Telegram"] floating enable
21
22# kill focused window
23bindsym $mod+Shift+q kill
24
25# lock the screen
26bindsym $mod+Ctrl+l exec ~/bin/lock.sh
27
28# start rofi (an alternative to dmenu)
29bindsym $mod+d exec "rofi -show run"
30
31# disable title bar
32new_window normal 0
33
34# change focus
35bindsym $mod+h focus left
36bindsym $mod+j focus down
37bindsym $mod+k focus up
38bindsym $mod+l focus right
39
40# alternatively, you can use the cursor keys:
41bindsym $mod+Left focus left
42bindsym $mod+Down focus down
43bindsym $mod+Up focus up
44bindsym $mod+Right focus right
45
46# move focused window
47bindsym $mod+Shift+h move left
48bindsym $mod+Shift+j move down
49bindsym $mod+Shift+k move up
50bindsym $mod+Shift+l move right
51
52# alternatively, you can use the cursor keys:
53bindsym $mod+Shift+Left move left
54bindsym $mod+Shift+Down move down
55bindsym $mod+Shift+Up move up
56bindsym $mod+Shift+Right move right
57
58# split in horizontal orientation
59bindsym $mod+g split h
60
61# split in vertical orientation
62bindsym $mod+v split v
63
64# enter fullscreen mode for the focused container
65bindsym $mod+f fullscreen toggle
66
67# change container layout (stacked, tabbed, toggle split)
68bindsym $mod+s layout stacking
69bindsym $mod+w layout tabbed
70bindsym $mod+e layout toggle split
71
72# toggle tiling / floating
73bindsym $mod+Shift+space floating toggle
74
75# change focus between tiling / floating windows
76bindsym $mod+space focus mode_toggle
77
78# focus the parent container
79bindsym $mod+a focus parent
80
81# focus the child container
82bindsym $mod+x focus child
83
84# switch to workspace
85bindsym $mod+1 workspace 1
86bindsym $mod+2 workspace 2
87bindsym $mod+3 workspace 3
88bindsym $mod+4 workspace 4
89bindsym $mod+5 workspace 5
90bindsym $mod+6 workspace 6
91bindsym $mod+7 workspace 7
92bindsym $mod+8 workspace 8
93bindsym $mod+9 workspace 9
94
95
96# move focused container to workspace
97bindsym $mod+Shift+1 move container to workspace 1
98bindsym $mod+Shift+2 move container to workspace 2
99bindsym $mod+Shift+3 move container to workspace 3
100bindsym $mod+Shift+4 move container to workspace 4
101bindsym $mod+Shift+5 move container to workspace 5
102bindsym $mod+Shift+6 move container to workspace 6
103bindsym $mod+Shift+7 move container to workspace 7
104bindsym $mod+Shift+8 move container to workspace 8
105bindsym $mod+Shift+9 move container to workspace 9
106
107
108
109# reload the configuration file
110bindsym $mod+Shift+c reload
111# restart i3 inplace (preserves your layout/session, can be used to upgrade i3)
112bindsym $mod+Shift+r restart
113
114# resize window (you can also use the mouse for that)
115mode "resize" {
116 bindsym h resize shrink width 15 px or 15 ppt
117 bindsym j resize grow height 15 px or 15 ppt
118 bindsym k resize shrink height 15 px or 15 ppt
119 bindsym l resize grow width 15 px or 15 ppt
120
121 # same bindings, but for the arrow keys
122 bindsym Left resize shrink width 10 px or 10 ppt
123 bindsym Down resize grow height 10 px or 10 ppt
124 bindsym Up resize shrink height 10 px or 10 ppt
125 bindsym Right resize grow width 10 px or 10 ppt
126
127 # back to normal: Enter or Escape
128 bindsym Return mode "default"
129 bindsym Escape mode "default"
130}
131
132bindsym $mod+r mode "resize"
133
134# colors
135set $base00 #111111
136set $base01 #383c3e
137set $base02 #53585b
138set $base03 #6f7579
139set $base04 #cdcdcd
140set $base05 #ffffff
141set $base06 #dddddd
142set $base07 #e5e5e5
143set $base08 #d72638
144set $base09 #eb8413
145set $base0A #f19d1a
146set $base0B #88b92d
147set $base0C #1ba595
148set $base0D #1e8bac
149set $base0E #be4264
150set $base0F #c85e0d
151
152# Property Name Border BG Text Indicator Child Border
153client.focused $base05 $base05 $base00 $base05 $base05
154client.focused_inactive $base01 $base01 $base05 $base03 $base01
155client.unfocused $base00 $base00 $base05 $base03 $base01
156client.urgent $base08 $base08 $base00 $base08 $base08
157client.placeholder $base00 $base00 $base05 $base00 $base00
158client.background $base07
159# smart_gaps on
160# smart_borders on
161
162# executions
163exec xrdb -load ~/.Xresources
164exec compton &
165exec xautolock -time 7 -locker ~/bin/lock.sh
166exec_always --no-startup-id ~/bin/bar.sh
167exec feh --bg-fill ~/.wall
168exec_always --no-startup-id ~/.local/bin/flashfocus
169exec_always dunst
170exec redshift &
171exec --no-startup-id udiskie -ans &
172
173# cycle workspaces
174bindsym $mod+Tab workspace back_and_forth
175bindsym $mod+q workspace next
176
177# rofi-pass
178bindsym $mod+p exec "rofi-pass"
179
180# volume controls
181bindsym XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume 0 +5%
182bindsym XF86AudioLowerVolume exec --no-startup-id pactl set-sink-volume 0 -5%
183bindsym XF86AudioMute exec --no-startup-id pactl set-sink-mute 0 toggle
184
185# brightness controls
186bindsym XF86MonBrightnessUp exec xbacklight -inc 5
187bindsym XF86MonBrightnessDown exec xbacklight -dec 5
188
189# media player controls
190bindsym XF86AudioPlay exec playerctl play
191bindsym XF86AudioPause exec playerctl pause
192bindsym XF86AudioNext exec playerctl next
193bindsym XF86AudioPrev exec playerctl previous
194
195# screenshot
196bindsym Print exec scr
197bindsym Ctrl+Print exec "scr -w"
198bindsym Ctrl+Shift+Print exec "scr -s"