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 12
14# for_window [class=".*"] title_format "<span font='SF Mono SemiBold 11'> › %title</span>"
15# Use Mouse+$mod to drag floating windows to their wanted position
16floating_modifier $mod
17for_window [class="^.*"] border none
18
19# start a terminal
20bindsym $mod+Return exec xfce4-terminal
21for_window [class="Telegram"] floating enable
22
23# kill focused window
24bindsym $mod+Shift+q kill
25
26# lock the screen
27bindsym $mod+Ctrl+l exec ~/bin/lock.sh
28
29# start rofi (an alternative to dmenu)
30bindsym $mod+d exec "rofi -show run"
31
32# disable title bar
33#new_window pixel 2
34new_window normal 0
35
36# change focus
37bindsym $mod+h focus left
38bindsym $mod+j focus down
39bindsym $mod+k focus up
40bindsym $mod+l focus right
41
42# alternatively, you can use the cursor keys:
43bindsym $mod+Left focus left
44bindsym $mod+Down focus down
45bindsym $mod+Up focus up
46bindsym $mod+Right focus right
47
48# move focused window
49bindsym $mod+Shift+h move left
50bindsym $mod+Shift+j move down
51bindsym $mod+Shift+k move up
52bindsym $mod+Shift+l move right
53
54# alternatively, you can use the cursor keys:
55bindsym $mod+Shift+Left move left
56bindsym $mod+Shift+Down move down
57bindsym $mod+Shift+Up move up
58bindsym $mod+Shift+Right move right
59
60# split in horizontal orientation
61bindsym $mod+g split h
62
63# split in vertical orientation
64bindsym $mod+v split v
65
66# enter fullscreen mode for the focused container
67bindsym $mod+f fullscreen toggle
68
69# change container layout (stacked, tabbed, toggle split)
70bindsym $mod+s layout stacking
71bindsym $mod+w layout tabbed
72bindsym $mod+e layout toggle split
73
74# toggle tiling / floating
75bindsym $mod+Shift+space floating toggle
76
77# change focus between tiling / floating windows
78bindsym $mod+space focus mode_toggle
79
80# focus the parent container
81bindsym $mod+a focus parent
82
83# focus the child container
84bindsym $mod+x focus child
85
86# switch to workspace
87bindsym $mod+1 workspace 1
88bindsym $mod+2 workspace 2
89bindsym $mod+3 workspace 3
90bindsym $mod+4 workspace 4
91bindsym $mod+5 workspace 5
92bindsym $mod+6 workspace 6
93bindsym $mod+7 workspace 7
94bindsym $mod+8 workspace 8
95bindsym $mod+9 workspace 9
96
97
98# move focused container to workspace
99bindsym $mod+Shift+1 move container to workspace 1
100bindsym $mod+Shift+2 move container to workspace 2
101bindsym $mod+Shift+3 move container to workspace 3
102bindsym $mod+Shift+4 move container to workspace 4
103bindsym $mod+Shift+5 move container to workspace 5
104bindsym $mod+Shift+6 move container to workspace 6
105bindsym $mod+Shift+7 move container to workspace 7
106bindsym $mod+Shift+8 move container to workspace 8
107bindsym $mod+Shift+9 move container to workspace 9
108
109
110
111# reload the configuration file
112bindsym $mod+Shift+c reload
113# restart i3 inplace (preserves your layout/session, can be used to upgrade i3)
114bindsym $mod+Shift+r restart
115
116# resize window (you can also use the mouse for that)
117mode "resize" {
118 # These bindings trigger as soon as you enter the resize mode
119
120 # Pressing left will shrink the window’s width.
121 # Pressing right will grow the window’s width.
122 # Pressing up will shrink the window’s height.
123 # Pressing down will grow the window’s height.
124 bindsym h resize shrink width 15 px or 15 ppt
125 bindsym j resize grow height 15 px or 15 ppt
126 bindsym k resize shrink height 15 px or 15 ppt
127 bindsym l resize grow width 15 px or 15 ppt
128
129 # same bindings, but for the arrow keys
130 bindsym Left resize shrink width 10 px or 10 ppt
131 bindsym Down resize grow height 10 px or 10 ppt
132 bindsym Up resize shrink height 10 px or 10 ppt
133 bindsym Right resize grow width 10 px or 10 ppt
134
135 # back to normal: Enter or Escape
136 bindsym Return mode "default"
137 bindsym Escape mode "default"
138}
139
140# assign windows to workspaces
141
142assign [class="Steam"] $tag4
143assign [class="Battle.net.exe"] $tag5
144assign [class="firefox"] $tag1
145assign [class="spotify"] $tag3
146
147# selectively enable floating
148
149for_window [class="Steam"] floating enable
150for_window [class="Keybase"] floating enable
151for_window [class="Battle.net.exe"] floating enable
152
153bindsym $mod+r mode "resize"
154
155## colors
156
157set $base00 #212121
158set $base01 #303030
159set $base02 #353535
160set $base03 #4a4a4a
161set $base04 #b2ccd6
162set $base05 #eeffff
163set $base06 #eeffff
164set $base07 #ffffff
165set $base08 #f07178
166set $base09 #f78c6c
167set $base0A #ffcb6b
168set $base0B #c3e88d
169set $base0C #89ddff
170set $base0D #82aaff
171set $base0E #c792ea
172set $base0F #ff5370
173
174# Basic color configuration using the Base16 variables for windows and borders.
175# Property Name Border BG Text Indicator Child Border
176client.focused $base05 $base05 $base00 $base05 $base05
177client.focused_inactive $base01 $base01 $base05 $base03 $base01
178client.unfocused $base00 $base00 $base05 $base03 $base01
179client.urgent $base08 $base08 $base00 $base08 $base08
180client.placeholder $base00 $base00 $base05 $base00 $base00
181client.background $base07
182# smart_gaps on
183# smart_borders on
184
185
186# executions
187exec xrdb -load ~/.Xresources
188exec compton &
189exec xautolock -time 7 -locker ~/bin/lock.sh
190exec_always --no-startup-id ~/bin/bar.sh
191exec feh --bg-fill ~/.wall
192exec_always --no-startup-id ~/.local/bin/flashfocus
193exec_always dunst
194exec --no-startup-id udiskie -ans &
195
196# cycle workspaces
197bindsym $mod+Tab workspace back_and_forth
198bindsym $mod+q workspace next
199
200# rofi-pass
201bindsym $mod+p exec "rofi-pass"
202
203# volume controls
204bindsym XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume 0 +5%
205bindsym XF86AudioLowerVolume exec --no-startup-id pactl set-sink-volume 0 -5%
206bindsym XF86AudioMute exec --no-startup-id pactl set-sink-mute 0 toggle
207
208# brightness controls
209bindsym XF86MonBrightnessUp exec xbacklight -inc 5
210bindsym XF86MonBrightnessDown exec xbacklight -dec 5
211
212# media player controls
213
214bindsym XF86AudioPlay exec playerctl play
215bindsym XF86AudioPause exec playerctl pause
216bindsym XF86AudioNext exec playerctl next
217bindsym XF86AudioPrev exec playerctl previous