diff options
author | Max Christian Pohle | 2019-06-23 19:27:15 +0200 |
---|---|---|
committer | Max Christian Pohle | 2019-06-23 19:27:15 +0200 |
commit | 8b61bd8926928fa79b43b01f80298951e7cffec2 (patch) | |
tree | f8cf8bb927cb214de781e33216023d17cb9300cf /config | |
download | sway-8b61bd8926928fa79b43b01f80298951e7cffec2.tar.bz2 sway-8b61bd8926928fa79b43b01f80298951e7cffec2.zip |
init
Diffstat (limited to 'config')
-rw-r--r-- | config | 380 |
1 files changed, 380 insertions, 0 deletions
@@ -0,0 +1,380 @@ | |||
1 | # i3 config file (v4) | ||
2 | # | ||
3 | # Please see http://i3wm.org/docs/userguide.html for a complete reference! | ||
4 | |||
5 | |||
6 | output DP-1 { | ||
7 | pos 0 0 | ||
8 | res 1920x1080 | ||
9 | background ~/.local/share/backgrounds/01-0.jpg center | ||
10 | } | ||
11 | |||
12 | output DP-2 { | ||
13 | pos 1920 0 | ||
14 | res 1920x1080 | ||
15 | background ~/.local/share/backgrounds/01-1.jpg center | ||
16 | } | ||
17 | |||
18 | # load xrdb | ||
19 | exec xrdb ~/.Xresources ; i3-msg reload | ||
20 | |||
21 | # force_xinerama yes | ||
22 | # fake-outputs 3840x1080+0+0 | ||
23 | |||
24 | # we basically want to configure our font with ~/.config/fontconfig/* | ||
25 | # font pango:FuraCode Nerd Font Mono Retina 9 | ||
26 | font pango:Monospace 9 | ||
27 | # font pango:Code New Roman Nerd Font 9 | ||
28 | |||
29 | hide_edge_borders both | ||
30 | |||
31 | set $mod Mod4 | ||
32 | |||
33 | # Use Mouse+$mod to drag floating windows to their wanted position | ||
34 | floating_modifier $mod | ||
35 | |||
36 | # start a terminal | ||
37 | # bindsym $mod+Return exec i3-sensible-terminal | ||
38 | bindsym $mod+Return exec --no-startup-id xfce4-appfinder | ||
39 | bindsym Mod1+F2 exec --no-startup-id rofi -show run -bg #222222 -fg #888888 -hlbg #285577 -hlfg #ffffff | ||
40 | bindsym $mod+t exec --no-startup-id xfce4-terminal | ||
41 | # bindsym $mod+t exec termite | ||
42 | # bindsym $mod+t exec urxvt | ||
43 | bindsym $mod+e exec --no-startup-id thunar | ||
44 | bindsym $mod+l exec --no-startup-id ~/.local/bin/i3lock -f -i "/home/max/.local/share/backgrounds/IMG_5656 - IMG_5684-02.png" | ||
45 | |||
46 | bindsym Print exec pactl set-sink-mute 0 toggle | ||
47 | bindsym Scroll_Lock exec pactl set-sink-volume 0 -5% | ||
48 | bindsym Pause exec pactl set-sink-volume 0 +5% | ||
49 | |||
50 | # Pulse Audio controls | ||
51 | bindsym XF86AudioRaiseVolume exec pactl set-sink-volume 0 +5% # increase sound volume | ||
52 | bindsym XF86AudioLowerVolume exec pactl set-sink-volume 0 -5% # decrease sound volume | ||
53 | bindsym XF86AudioMute exec pactl set-sink-mute 0 toggle # mute sound | ||
54 | |||
55 | bindcode 156 exec xrandr --output LVDS-1 --mode 1024x768 && xrandr --output LVDS-1 --mode 1280x800 | ||
56 | |||
57 | # kill focused window | ||
58 | bindsym $mod+Shift+q kill | ||
59 | bindsym Mod1+F4 kill | ||
60 | |||
61 | # start dmenu (a program launcher) | ||
62 | # bindsym $mod+d exec dmenu_run | ||
63 | # There also is the (new) i3-dmenu-desktop which only displays applications | ||
64 | # shipping a .desktop file. It is a wrapper around dmenu, so you need that | ||
65 | # installed. | ||
66 | bindsym $mod+d exec --no-startup-id i3-dmenu-desktop | ||
67 | # bindsym $mod+d exec --no-startup-id j4-dmenu-desktop | ||
68 | |||
69 | |||
70 | bindsym $mod+Prior focus parent | ||
71 | bindsym $mod+Next focus child | ||
72 | bindsym $mod+Left [workspace="__focused__"] focus left | ||
73 | bindsym $mod+Right [workspace="__focused__"] focus right | ||
74 | bindsym $mod+Down [workspace="__focused__"] focus down | ||
75 | bindsym $mod+Up [workspace="__focused__"] focus up | ||
76 | bindsym $mod+Tab focus output right | ||
77 | bindsym $mod+Shift+Tab focus output left | ||
78 | bindsym mod1+Tab focus right | ||
79 | bindsym mod1+Shift+Tab focus left | ||
80 | |||
81 | # alternatively, you can use the cursor keys: | ||
82 | bindsym $mod+Shift+Left move left ; exec pkill -SIGRTMIN+11 i3blocks | ||
83 | bindsym $mod+Shift+Down move down ; exec pkill -SIGRTMIN+11 i3blocks | ||
84 | bindsym $mod+Shift+Up move up ; exec pkill -SIGRTMIN+11 i3blocks | ||
85 | bindsym $mod+Shift+Right move right ; exec pkill -SIGRTMIN+11 i3blocks | ||
86 | |||
87 | # split in horizontal orientation | ||
88 | # bindsym $mod+h split h | ||
89 | |||
90 | # split in vertical orientation | ||
91 | # bindsym $mod+v split v | ||
92 | |||
93 | # enter fullscreen mode for the focused container | ||
94 | bindsym $mod+f fullscreen toggle | ||
95 | bindsym $mod+g fullscreen toggle global | ||
96 | |||
97 | # change container layout (stacked, tabbed, toggle split) | ||
98 | bindsym $mod+s layout stacking | ||
99 | bindsym $mod+w layout tabbed | ||
100 | bindsym $mod+q layout toggle split | ||
101 | bindsym $mod+x layout toggle all | ||
102 | |||
103 | # toggle tiling / floating | ||
104 | bindsym $mod+Shift+space floating toggle | ||
105 | |||
106 | # change focus between tiling / floating windows | ||
107 | # bindsym $mod+space focus mode_toggle | ||
108 | |||
109 | # focus the parent container | ||
110 | bindsym $mod+a focus parent | ||
111 | |||
112 | # focus the child container | ||
113 | #bindsym $mod+d focus child | ||
114 | |||
115 | workspace 1 output VGA1 | ||
116 | workspace_layout tabbed | ||
117 | |||
118 | # customize workspace names | ||
119 | set $WS1 1:1⃣ | ||
120 | set $WS2 2:2⃣ | ||
121 | set $WS3 3:3⃣ | ||
122 | set $WS4 4:4⃣ | ||
123 | set $WS5 5:5⃣ | ||
124 | set $WS6 6:6⃣ | ||
125 | set $WS7 7:7⃣ | ||
126 | set $WS8 8:8⃣ | ||
127 | set $WS9 9:9⃣ | ||
128 | set $WS10 10:0⃣ | ||
129 | |||
130 | assign [class="^Thunderbird$"] → $WS10 | ||
131 | assign [class="^evolution"] → output right | ||
132 | assign [class="(?i)pidgin"] → output right | ||
133 | |||
134 | # switch to workspace | ||
135 | bindsym Mod4+1 workspace $WS1 | ||
136 | bindsym Mod4+2 workspace $WS2 | ||
137 | bindsym Mod4+3 workspace $WS3 | ||
138 | bindsym Mod4+4 workspace $WS4 | ||
139 | bindsym Mod4+5 workspace $WS5 | ||
140 | bindsym Mod4+6 workspace $WS6 | ||
141 | bindsym Mod4+7 workspace $WS7 | ||
142 | bindsym Mod4+8 workspace $WS8 | ||
143 | bindsym Mod4+9 workspace $WS9 | ||
144 | bindsym Mod4+0 workspace $WS10 | ||
145 | |||
146 | # move focused container to workspace | ||
147 | bindsym Mod4+Shift+1 move container to workspace $WS1 | ||
148 | bindsym Mod4+Shift+2 move container to workspace $WS2 | ||
149 | bindsym Mod4+Shift+3 move container to workspace $WS3 | ||
150 | bindsym Mod4+Shift+4 move container to workspace $WS4 | ||
151 | bindsym Mod4+Shift+5 move container to workspace $WS5 | ||
152 | bindsym Mod4+Shift+6 move container to workspace $WS6 | ||
153 | bindsym Mod4+Shift+7 move container to workspace $WS7 | ||
154 | bindsym Mod4+Shift+8 move container to workspace $WS8 | ||
155 | bindsym Mod4+Shift+9 move container to workspace $WS9 | ||
156 | bindsym Mod4+Shift+0 move container to workspace $WS10 | ||
157 | |||
158 | workspace 1 output DP-1 | ||
159 | workspace 2 output DP-1 | ||
160 | workspace 3 output DP-1 | ||
161 | workspace 4 output DP-1 | ||
162 | workspace 5 output HDMI-1 | ||
163 | workspace 6 output HDMI-1 | ||
164 | workspace 7 output HDMI-1 | ||
165 | workspace 8 output HDMI-1 | ||
166 | workspace "music" output HDMI-1 | ||
167 | workspace "background" output HDMI-1 | ||
168 | |||
169 | # reload the configuration file | ||
170 | bindsym $mod+Shift+c reload | ||
171 | # restart i3 inplace (preserves your layout/session, can be used to upgrade i3) | ||
172 | bindsym $mod+Shift+r restart | ||
173 | # exit i3 (logs you out of your X session) | ||
174 | bindsym $mod+Shift+e exec "i3-nagbar -t warning -m 'You pressed the exit shortcut. Do you really want to exit i3? This will end your X session.' -b 'Yes, exit i3' 'i3-msg exit'" | ||
175 | |||
176 | |||
177 | bindsym $mod+m move scratchpad | ||
178 | bindsym $mod+Shift+m scratchpad show ; resize set 1920 920 ; move position center | ||
179 | |||
180 | |||
181 | |||
182 | bindsym $mod+F2 exec i3-input -F 'rename workspace to "%s"' -P 'New name: ' | ||
183 | bindsym Control+Mod1+Left workspace prev_on_output | ||
184 | bindsym Control+Mod1+Right workspace next_on_output | ||
185 | |||
186 | # move focused window | ||
187 | bindsym $mod+Shift+h move left | ||
188 | bindsym $mod+Shift+j move down | ||
189 | bindsym $mod+Shift+k move up | ||
190 | bindsym $mod+Shift+l move right | ||
191 | |||
192 | # split in horizontal orientation | ||
193 | # bindsym $mod+Shift+v split h | ||
194 | |||
195 | # split in vertical orientation | ||
196 | # bindsym $mod+v split v | ||
197 | bindsym $mod+v split toggle | ||
198 | bindsym $mod+space split toggle | ||
199 | |||
200 | |||
201 | |||
202 | bindsym $mod+r mode "resize" | ||
203 | # resize window (you can also use the mouse for that) | ||
204 | mode "resize" { | ||
205 | # These bindings trigger as soon as you enter the resize mode | ||
206 | |||
207 | # Pressing left will shrink the window’s width. | ||
208 | # Pressing right will grow the window’s width. | ||
209 | # Pressing up will shrink the window’s height. | ||
210 | # Pressing down will grow the window’s height. | ||
211 | bindsym $mod+h resize shrink width 4 px or 4 ppt | ||
212 | bindsym $mod+j resize grow height 4 px or 4 ppt | ||
213 | bindsym $mod+k resize shrink height 4 px or 4 ppt | ||
214 | bindsym $mod+l resize grow width 4 px or 4 ppt | ||
215 | |||
216 | # same bindings, but for the arrow keys | ||
217 | bindsym Left resize shrink width 4 px or 4 ppt | ||
218 | bindsym Up resize grow height 4 px or 4 ppt | ||
219 | bindsym Down resize shrink height 4 px or 4 ppt | ||
220 | bindsym Right resize grow width 4 px or 4 ppt | ||
221 | |||
222 | # back to normal: Enter or Escape | ||
223 | bindsym Return mode "default" | ||
224 | bindsym Escape mode "default" | ||
225 | } | ||
226 | |||
227 | |||
228 | set $mode_brightness "display brightness 🔅 🔆" | ||
229 | bindsym $mod+b mode $mode_brightness | ||
230 | mode $mode_brightness { | ||
231 | bindsym Up exec xrandr-brightness .1 | ||
232 | bindsym Down exec xrandr-brightness -.1 | ||
233 | bindsym Return mode "default" | ||
234 | bindsym Escape mode "default" | ||
235 | } | ||
236 | |||
237 | |||
238 | |||
239 | |||
240 | |||
241 | #! exec: execute when starting | ||
242 | #! exec_always: execute when starting or restarting | ||
243 | |||
244 | |||
245 | |||
246 | # exec xrandr --output HDMI-1 --right-of DP-1 | ||
247 | # exec xrandr --output HDMI-1 --right-of VGA-1 | ||
248 | # exec /usr/bin/xrandr-reset.sh | ||
249 | # exec setxkbmap -option caps:escape | ||
250 | exec xset r rate 330 40 | ||
251 | exec xinput --set-prop 'Xornet gaming mouse' 'libinput Accel Speed' 0.1 | ||
252 | exec setsid xautolock -locker i3lock | ||
253 | |||
254 | exec --no-startup-id /usr/lib/gnome-settings-daemon/gsd-xsettings | ||
255 | exec --no-startup-id /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1 | ||
256 | exec --no-startup-id gnome-keyring-daemon --start --components=secrets | ||
257 | # start compositor... | ||
258 | exec --no-startup-id compton -b --config ~/.config/i3/compton.conf | ||
259 | exec --no-startup-id nitrogen --restore | ||
260 | exec --no-startup-id nm-applet | ||
261 | |||
262 | exec --no-startup-id ln -sf /dev/shm/recently-used.xbel $HOME/.local/share/recently-used.xbel | ||
263 | |||
264 | |||
265 | |||
266 | |||
267 | |||
268 | exec setsid hexchat -e --minimize=2 | ||
269 | |||
270 | |||
271 | # ============================================== | ||
272 | # base16 Xressource depenend color configuration | ||
273 | # with default values from base16-tomorrow-night | ||
274 | # ============================================== | ||
275 | |||
276 | set $base00 #1d1f21 | ||
277 | set $base01 #282a2e | ||
278 | set $base02 #373b41 | ||
279 | set $base03 #969896 | ||
280 | set $base04 #b4b7b4 | ||
281 | set $base05 #c5c8c6 | ||
282 | set $base06 #e0e0e0 | ||
283 | set $base07 #ffffff | ||
284 | set $base08 #cc6666 | ||
285 | set $base09 #de935f | ||
286 | set $base0A #f0c674 | ||
287 | set $base0B #b5bd68 | ||
288 | set $base0C #8abeb7 | ||
289 | set $base0D #81a2be | ||
290 | set $base0E #b294bb | ||
291 | set $base0F #a3685a | ||
292 | # d variable default | ||
293 | set $cursorColor $base05 | ||
294 | set $background $base00 | ||
295 | set $foreground $base05 | ||
296 | set $foreground $base05 | ||
297 | # | ||
298 | |||
299 | # Basic bar configuration using the Base16 variables. | ||
300 | bar { | ||
301 | # status_command i3status --config ~/.config/i3/i3status.conf | ||
302 | status_command i3status --config ~/.config/i3/i3status.conf | ||
303 | # status_command /home/max/src/i3status/i3status --config ~/.config/i3/i3status.conf | ||
304 | |||
305 | tray_padding 2 | ||
306 | mode dock | ||
307 | strip_workspace_numbers yes | ||
308 | # separator_symbol "│" | ||
309 | separator_symbol " " | ||
310 | |||
311 | colors { | ||
312 | background $background | ||
313 | separator $foreground | ||
314 | statusline $foreground | ||
315 | |||
316 | focused_workspace $background $background $base05 | ||
317 | active_workspace $background $background $cursorColor | ||
318 | inactive_workspace $background $background $base03 | ||
319 | urgent_workspace $background $background $base08 | ||
320 | binding_mode $background $background $foreground | ||
321 | } | ||
322 | } | ||
323 | |||
324 | # Basic color configuration using the Base16 variables for windows and borders. | ||
325 | # Property Name Border BG Text Indicator Child Border | ||
326 | client.focused $base05 $base0D $base00 $base0D $base0D | ||
327 | client.focused_inactive $base01 $base01 $base05 $base03 $base01 | ||
328 | client.unfocused $base01 $base00 $base05 $base01 $base01 | ||
329 | client.urgent $base08 $base08 $base00 $base08 $base08 | ||
330 | client.placeholder $base00 $base00 $base05 $base00 $base00 | ||
331 | client.background $background | ||
332 | |||
333 | |||
334 | for_window [class="(?i)evolution"] title_format "📧 %title" | ||
335 | for_window [class="(?i)thunderbird"] title_format "📧 %title" | ||
336 | for_window [class="(?i)firefox"] title_format " %title" | ||
337 | for_window [class="(?i)chromium"] title_format " %title" | ||
338 | for_window [class="(?i)hexchat"] title_format " %title" | ||
339 | for_window [class="(?i)pidgin"] title_format "👥 %title" | ||
340 | for_window [class="(?i)thunar"] title_format "🗄️ %title" | ||
341 | for_window [class="(?i)keepassx?"] title_format "🔑 %title" | ||
342 | for_window [class="(?i).*terminal?"] title_format " %title" | ||
343 | for_window [class="(?i)xfce4-appfinder"] title_format " %title" | ||
344 | for_window [title="YouTube"] title_format " %title" | ||
345 | for_window [title="SoundCloud"] title_format " %title" | ||
346 | for_window [title=""] title_format "%title" | ||
347 | for_window [title=" "] title_format "%title" | ||
348 | |||
349 | |||
350 | # for_window [class="^.*"] border normal 3 | ||
351 | # for_window [title="^.*Thunderbird"] border pixel 0 | ||
352 | # for_window [title="^.*Chromium"] border pixel 0 | ||
353 | # for_window [class="Gvim"] border pixel 0 | ||
354 | # for_window [class="(?i)xfce4-terminal"] border pixel 0 | ||
355 | # for_window [class="(?i)xfce4-appfinder"] border pixel 0 | ||
356 | # # for_window [title="^.*\|"] border pixel 4 | ||
357 | |||
358 | # for_window [title="^HexChat.*"] border pixel 0 | ||
359 | # for_window [title="^.*"] exec pkill -SIGRTMIN+11 i3blocks | ||
360 | # for_window [title="^.*"] exec pkill -SIGRTMIN+11 i3blocks | ||
361 | # for_window [title="cairo-dock"] floating enable ; border none | ||
362 | # for_window[class="Plank"] floating enable,move absolute center | ||
363 | # for_window [class=".*"] title_format "┋ %title" | ||
364 | # for_window [con_id="__focused__"] title_format "<u>%title</u>" | ||
365 | |||
366 | # Press $mod+o followed by either f, t, Escape or Return to launch firefox, | ||
367 | # thunderbird or return to the default mode, respectively. | ||
368 | set $mode_launcher Launch: [f]irefox [t]hunderbird | ||
369 | bindsym $mod+o mode "$mode_launcher" | ||
370 | |||
371 | mode "$mode_launcher" { | ||
372 | bindsym f exec firefox | ||
373 | bindsym t exec thunderbird | ||
374 | |||
375 | bindsym Escape mode "default" | ||
376 | bindsym Return mode "default" | ||
377 | } | ||
378 | |||
379 | |||
380 | # vim: iskeyword+=\$,\-,\# nospell ft=tcl | ||