summaryrefslogtreecommitdiffstats
path: root/.config/i3/config##h.lowe
diff options
context:
space:
mode:
diffstat (limited to '.config/i3/config##h.lowe')
-rw-r--r--.config/i3/config##h.lowe261
1 files changed, 261 insertions, 0 deletions
diff --git a/.config/i3/config##h.lowe b/.config/i3/config##h.lowe
new file mode 100644
index 0000000..2e5a8c4
--- /dev/null
+++ b/.config/i3/config##h.lowe
@@ -0,0 +1,261 @@
1# i3 config file (v4)
2# Please see https://i3wm.org/docs/userguide.html for a complete reference!
3
4# set modifiers
5set $mod Mod4
6set $alt Mod1
7
8# launch polybar
9exec --no-startup-id $HOME/.config/polybar/launch.sh &
10
11# launch spliffer + notification
12exec --no-startup-id $HOME/bin/watch_incoming.sh
13
14# start the screensaver, '' at the end is not a typo
15exec --no-startup-id xidlehook --not-when-fullscreen --not-when-audio --timer normal 300 'betterlockscreen -l dimblur -t "Welcome Back"' ''
16
17# flash the active window
18exec_always--no-startup-id flashfocus
19
20# Font for window titles
21font pango:Lato 11
22
23# Use Mouse+$mod to drag floating windows to their wanted position
24floating_modifier $alt
25
26gaps inner 5
27gaps outer 0
28
29##############
30# bindings #
31##############
32
33# i switched back to firefox can you tell
34bindsym Ctrl+q exec --no-startup-id true
35
36# get the mouse out of the way
37bindsym $mod+o exec --no-startup-id xdotool mousemove 1920 1080
38
39# bookmark from clipboard
40bindsym $mod+u exec --no-startup-id ~/bin/bukuadd_c
41
42# add taskwarrior/gtd calendar item
43bindsym $mod+Shift+t exec --no-startup-id ~/bin/td
44
45# add taskwarrior/gtd inbox item
46bindsym $mod+Shift+i exec --no-startup-id ~/bin/in
47
48# swap caps lock and escape, set keyboard layout, 35 is ]/ü (layout agnostic)
49bindcode $mod+35 exec --no-startup-id "setxkbmap -model pc105 -layout us,us,tr -variant ,colemak, -option grp:alt_shift_toggle,caps:backspace"
50
51# use flameshot with print screen
52bindsym Print exec flameshot gui
53
54# media keys
55bindsym XF86AudioRaiseVolume exec --no-startup-id "amixer set Master 2%+ && volnoti-show $(amixer get Master | grep -Po '[0-9]+(?=%)' | head -1)"
56bindsym XF86AudioLowerVolume exec --no-startup-id "amixer set Master 2%- && volnoti-show $(amixer get Master | grep -Po '[0-9]+(?=%)' | head -1)"
57bindsym XF86AudioMute exec --no-startup-id "amixer set Master toggle && if amixer get Master | grep -Fq '[off]'; then volnoti-show -m; else volnoti-show $(amixer get Master | grep -Po '[0-9]+(?=%)' | head -1); fi"
58bindsym XF86AudioPlay exec --no-startup-id playerctl play-pause
59bindsym XF86AudioPrev exec --no-startup-id playerctl previous
60bindsym XF86AudioNext exec --no-startup-id playerctl next
61
62# Make the currently focused window a scratchpad
63bindsym $mod+Shift+minus move scratchpad
64
65# Show the first scratchpad window
66bindsym $mod+minus scratchpad show
67
68# shortcuts for frequent programs
69bindsym $mod+Shift+z exec zotero
70bindsym $mod+Shift+f exec pcmanfm
71
72# start a terminal
73bindsym $mod+Return exec kitty
74
75# kill focused window
76bindsym $mod+Shift+q kill
77bindsym --whole-window $mod+button2 kill
78
79# start rofi (a program launcher)
80bindsym $mod+d exec rofi -show combi
81
82# change focus
83bindsym $mod+h focus left
84bindsym $mod+j focus down
85bindsym $mod+k focus up
86bindsym $mod+l focus right
87
88# move focused window
89bindsym $mod+Shift+h move left
90bindsym $mod+Shift+j move down
91bindsym $mod+Shift+k move up
92bindsym $mod+Shift+l move right
93
94# split in horizontal orientation
95bindsym $mod+b split h
96
97# split in vertical orientation
98bindsym $mod+v split v
99
100# enter fullscreen mode for the focused container
101bindsym $mod+f fullscreen toggle
102
103# change container layout (stacked, tabbed, toggle split)
104bindsym $mod+s layout stacking
105bindsym $mod+w layout tabbed
106bindsym $mod+e layout toggle split
107
108# toggle tiling / floating
109bindsym $mod+Shift+space floating toggle
110
111# toggle sticky floating window
112bindsym $mod+a sticky toggle
113
114# change focus between tiling / floating windows
115bindsym $mod+space focus mode_toggle
116
117# focus the parent container
118# bindsym $mod+a focus parent
119
120# Define names for default workspaces for which we configure key bindings later on.
121# We use variables to avoid repeating the names in multiple places.
122set $ws1 "1"
123set $ws2 "2"
124set $ws3 "3"
125set $ws4 "4"
126set $ws5 "5"
127set $ws6 "6"
128set $ws7 "7"
129set $ws8 "8"
130set $ws9 "9"
131set $ws10 "10"
132
133# switch to workspace
134bindsym $mod+1 workspace $ws1
135bindsym $mod+2 workspace $ws2
136bindsym $mod+3 workspace $ws3
137bindsym $mod+4 workspace $ws4
138bindsym $mod+5 workspace $ws5
139bindsym $mod+6 workspace $ws6
140bindsym $mod+7 workspace $ws7
141bindsym $mod+8 workspace $ws8
142bindsym $mod+9 workspace $ws9
143bindsym $mod+0 workspace $ws10
144
145# move focused container to workspace
146bindsym $mod+Shift+1 move container to workspace $ws1
147bindsym $mod+Shift+2 move container to workspace $ws2
148bindsym $mod+Shift+3 move container to workspace $ws3
149bindsym $mod+Shift+4 move container to workspace $ws4
150bindsym $mod+Shift+5 move container to workspace $ws5
151bindsym $mod+Shift+6 move container to workspace $ws6
152bindsym $mod+Shift+7 move container to workspace $ws7
153bindsym $mod+Shift+8 move container to workspace $ws8
154bindsym $mod+Shift+9 move container to workspace $ws9
155bindsym $mod+Shift+0 move container to workspace $ws10
156
157# reload the configuration file
158bindsym $mod+Shift+c reload
159# restart i3 inplace (preserves your layout/session, can be used to upgrade i3)
160bindsym $mod+Shift+r restart
161
162# resize window (you can also use the mouse for that)
163mode "resize" {
164 # These bindings trigger as soon as you enter the resize mode
165
166 # Pressing left will shrink the window’s width.
167 # Pressing right will grow the window’s width.
168 # Pressing up will shrink the window’s height.
169 # Pressing down will grow the window’s height.
170 bindsym h resize shrink width 10 px or 10 ppt
171 bindsym j resize grow height 10 px or 10 ppt
172 bindsym k resize shrink height 10 px or 10 ppt
173 bindsym l resize grow width 10 px or 10 ppt
174
175 # back to normal: Enter or Escape or $mod+r
176 bindsym Return mode "default"
177 bindsym Escape mode "default"
178 bindsym $mod+r mode "default"
179}
180bindsym $mod+r mode "resize"
181
182# session
183mode " (L)ock (S)ignout (R)eboot (P)oweroff" {
184 bindsym $mod+l exec betterlockscreen -l dimblur -t "Welcome back"
185 bindsym $mod+r exec systemctl reboot
186 bindsym $mod+p exec systemctl poweroff
187 bindsym $mod+s exit
188 bindcode 66 mode "default"
189}
190bindsym $mod+Shift+e mode " (L)ock (S)ignout (R)eboot (P)oweroff"
191
192bindsym $mod+Shift+Escape exec --no-startup-id ~/bin/power.sh
193
194set $mode_gaps Gaps: (o)uter, (i)nner
195#, (h)orizontal, (v)ertical, (t)op, (r)ight, (b)ottom, (l)eft
196set $mode_gaps_outer Outer Gaps: +|-|0 (local), Shift + +|-|0 (global)
197set $mode_gaps_inner Inner Gaps: +|-|0 (local), Shift + +|-|0 (global)
198# set $mode_gaps_horiz Horizontal Gaps: +|-|0 (local), Shift + +|-|0 (global)
199# set $mode_gaps_verti Vertical Gaps: +|-|0 (local), Shift + +|-|0 (global)
200# set $mode_gaps_top Top Gaps: +|-|0 (local), Shift + +|-|0 (global)
201# set $mode_gaps_right Right Gaps: +|-|0 (local), Shift + +|-|0 (global)
202# set $mode_gaps_bottom Bottom Gaps: +|-|0 (local), Shift + +|-|0 (global)
203# set $mode_gaps_left Left Gaps: +|-|0 (local), Shift + +|-|0 (global)
204bindsym $mod+Shift+g mode "$mode_gaps"
205
206mode "$mode_gaps" {
207 bindsym o mode "$mode_gaps_outer"
208 bindsym i mode "$mode_gaps_inner"
209 # bindsym h mode "$mode_gaps_horiz"
210 # bindsym v mode "$mode_gaps_verti"
211 # bindsym t mode "$mode_gaps_top"
212 # bindsym r mode "$mode_gaps_right"
213 # bindsym b mode "$mode_gaps_bottom"
214 # bindsym l mode "$mode_gaps_left"
215 # bindsym Return mode "$mode_gaps"
216 bindsym Escape mode "default"
217}
218
219mode "$mode_gaps_outer" {
220 bindsym plus gaps outer current plus 5
221 bindsym minus gaps outer current minus 5
222 bindsym 0 gaps outer current set 0
223
224 bindsym Shift+plus gaps outer all plus 5
225 bindsym Shift+minus gaps outer all minus 5
226 bindsym Shift+0 gaps outer all set 0
227
228 bindsym Return mode "$mode_gaps"
229 bindsym Escape mode "default"
230}
231mode "$mode_gaps_inner" {
232 bindsym plus gaps inner current plus 5
233 bindsym minus gaps inner current minus 5
234 bindsym 0 gaps inner current set 0
235
236 bindsym Shift+plus gaps inner all plus 5
237 bindsym Shift+minus gaps inner all minus 5
238 bindsym Shift+0 gaps inner all set 0
239
240 bindsym Return mode "$mode_gaps"
241 bindsym Escape mode "default"
242}
243
244for_window [class=".*"] border pixel 0
245for_window [class="Zotero" instance="Toplevel" title="Quick Format Citation"] floating enable
246for_window [class="Zotero" instance="Toplevel" title="Progress"] floating enable
247assign [class="^Thunderbird$"] 8
248
249# class border backgr. text indicator child_border
250client.focused #458588 #285577 #ffffff #458588 #285577
251client.focused_inactive #b16286 #5f676a #ffffff #484e50 #5f676a
252client.unfocused #927374 #222222 #888888 #292d2e #222222
253client.urgent #2f343a #900000 #ffffff #900000 #900000
254client.placeholder #000000 #0c0c0c #ffffff #000000 #0c0c0c
255
256client.background #ffffff
257
258# config
259hide_edge_borders smart
260workspace_auto_back_and_forth yes
261focus_follows_mouse no