diff options
Diffstat (limited to '.config/i3/config##h.lowe')
-rw-r--r-- | .config/i3/config##h.lowe | 261 |
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 | ||
5 | set $mod Mod4 | ||
6 | set $alt Mod1 | ||
7 | |||
8 | # launch polybar | ||
9 | exec --no-startup-id $HOME/.config/polybar/launch.sh & | ||
10 | |||
11 | # launch spliffer + notification | ||
12 | exec --no-startup-id $HOME/bin/watch_incoming.sh | ||
13 | |||
14 | # start the screensaver, '' at the end is not a typo | ||
15 | exec --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 | ||
18 | exec_always--no-startup-id flashfocus | ||
19 | |||
20 | # Font for window titles | ||
21 | font pango:Lato 11 | ||
22 | |||
23 | # Use Mouse+$mod to drag floating windows to their wanted position | ||
24 | floating_modifier $alt | ||
25 | |||
26 | gaps inner 5 | ||
27 | gaps outer 0 | ||
28 | |||
29 | ############## | ||
30 | # bindings # | ||
31 | ############## | ||
32 | |||
33 | # i switched back to firefox can you tell | ||
34 | bindsym Ctrl+q exec --no-startup-id true | ||
35 | |||
36 | # get the mouse out of the way | ||
37 | bindsym $mod+o exec --no-startup-id xdotool mousemove 1920 1080 | ||
38 | |||
39 | # bookmark from clipboard | ||
40 | bindsym $mod+u exec --no-startup-id ~/bin/bukuadd_c | ||
41 | |||
42 | # add taskwarrior/gtd calendar item | ||
43 | bindsym $mod+Shift+t exec --no-startup-id ~/bin/td | ||
44 | |||
45 | # add taskwarrior/gtd inbox item | ||
46 | bindsym $mod+Shift+i exec --no-startup-id ~/bin/in | ||
47 | |||
48 | # swap caps lock and escape, set keyboard layout, 35 is ]/ü (layout agnostic) | ||
49 | bindcode $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 | ||
52 | bindsym Print exec flameshot gui | ||
53 | |||
54 | # media keys | ||
55 | bindsym XF86AudioRaiseVolume exec --no-startup-id "amixer set Master 2%+ && volnoti-show $(amixer get Master | grep -Po '[0-9]+(?=%)' | head -1)" | ||
56 | bindsym XF86AudioLowerVolume exec --no-startup-id "amixer set Master 2%- && volnoti-show $(amixer get Master | grep -Po '[0-9]+(?=%)' | head -1)" | ||
57 | bindsym 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" | ||
58 | bindsym XF86AudioPlay exec --no-startup-id playerctl play-pause | ||
59 | bindsym XF86AudioPrev exec --no-startup-id playerctl previous | ||
60 | bindsym XF86AudioNext exec --no-startup-id playerctl next | ||
61 | |||
62 | # Make the currently focused window a scratchpad | ||
63 | bindsym $mod+Shift+minus move scratchpad | ||
64 | |||
65 | # Show the first scratchpad window | ||
66 | bindsym $mod+minus scratchpad show | ||
67 | |||
68 | # shortcuts for frequent programs | ||
69 | bindsym $mod+Shift+z exec zotero | ||
70 | bindsym $mod+Shift+f exec pcmanfm | ||
71 | |||
72 | # start a terminal | ||
73 | bindsym $mod+Return exec kitty | ||
74 | |||
75 | # kill focused window | ||
76 | bindsym $mod+Shift+q kill | ||
77 | bindsym --whole-window $mod+button2 kill | ||
78 | |||
79 | # start rofi (a program launcher) | ||
80 | bindsym $mod+d exec rofi -show combi | ||
81 | |||
82 | # change focus | ||
83 | bindsym $mod+h focus left | ||
84 | bindsym $mod+j focus down | ||
85 | bindsym $mod+k focus up | ||
86 | bindsym $mod+l focus right | ||
87 | |||
88 | # move focused window | ||
89 | bindsym $mod+Shift+h move left | ||
90 | bindsym $mod+Shift+j move down | ||
91 | bindsym $mod+Shift+k move up | ||
92 | bindsym $mod+Shift+l move right | ||
93 | |||
94 | # split in horizontal orientation | ||
95 | bindsym $mod+b split h | ||
96 | |||
97 | # split in vertical orientation | ||
98 | bindsym $mod+v split v | ||
99 | |||
100 | # enter fullscreen mode for the focused container | ||
101 | bindsym $mod+f fullscreen toggle | ||
102 | |||
103 | # change container layout (stacked, tabbed, toggle split) | ||
104 | bindsym $mod+s layout stacking | ||
105 | bindsym $mod+w layout tabbed | ||
106 | bindsym $mod+e layout toggle split | ||
107 | |||
108 | # toggle tiling / floating | ||
109 | bindsym $mod+Shift+space floating toggle | ||
110 | |||
111 | # toggle sticky floating window | ||
112 | bindsym $mod+a sticky toggle | ||
113 | |||
114 | # change focus between tiling / floating windows | ||
115 | bindsym $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. | ||
122 | set $ws1 "1" | ||
123 | set $ws2 "2" | ||
124 | set $ws3 "3" | ||
125 | set $ws4 "4" | ||
126 | set $ws5 "5" | ||
127 | set $ws6 "6" | ||
128 | set $ws7 "7" | ||
129 | set $ws8 "8" | ||
130 | set $ws9 "9" | ||
131 | set $ws10 "10" | ||
132 | |||
133 | # switch to workspace | ||
134 | bindsym $mod+1 workspace $ws1 | ||
135 | bindsym $mod+2 workspace $ws2 | ||
136 | bindsym $mod+3 workspace $ws3 | ||
137 | bindsym $mod+4 workspace $ws4 | ||
138 | bindsym $mod+5 workspace $ws5 | ||
139 | bindsym $mod+6 workspace $ws6 | ||
140 | bindsym $mod+7 workspace $ws7 | ||
141 | bindsym $mod+8 workspace $ws8 | ||
142 | bindsym $mod+9 workspace $ws9 | ||
143 | bindsym $mod+0 workspace $ws10 | ||
144 | |||
145 | # move focused container to workspace | ||
146 | bindsym $mod+Shift+1 move container to workspace $ws1 | ||
147 | bindsym $mod+Shift+2 move container to workspace $ws2 | ||
148 | bindsym $mod+Shift+3 move container to workspace $ws3 | ||
149 | bindsym $mod+Shift+4 move container to workspace $ws4 | ||
150 | bindsym $mod+Shift+5 move container to workspace $ws5 | ||
151 | bindsym $mod+Shift+6 move container to workspace $ws6 | ||
152 | bindsym $mod+Shift+7 move container to workspace $ws7 | ||
153 | bindsym $mod+Shift+8 move container to workspace $ws8 | ||
154 | bindsym $mod+Shift+9 move container to workspace $ws9 | ||
155 | bindsym $mod+Shift+0 move container to workspace $ws10 | ||
156 | |||
157 | # reload the configuration file | ||
158 | bindsym $mod+Shift+c reload | ||
159 | # restart i3 inplace (preserves your layout/session, can be used to upgrade i3) | ||
160 | bindsym $mod+Shift+r restart | ||
161 | |||
162 | # resize window (you can also use the mouse for that) | ||
163 | mode "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 | } | ||
180 | bindsym $mod+r mode "resize" | ||
181 | |||
182 | # session | ||
183 | mode " (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 | } | ||
190 | bindsym $mod+Shift+e mode " (L)ock (S)ignout (R)eboot (P)oweroff" | ||
191 | |||
192 | bindsym $mod+Shift+Escape exec --no-startup-id ~/bin/power.sh | ||
193 | |||
194 | set $mode_gaps Gaps: (o)uter, (i)nner | ||
195 | #, (h)orizontal, (v)ertical, (t)op, (r)ight, (b)ottom, (l)eft | ||
196 | set $mode_gaps_outer Outer Gaps: +|-|0 (local), Shift + +|-|0 (global) | ||
197 | set $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) | ||
204 | bindsym $mod+Shift+g mode "$mode_gaps" | ||
205 | |||
206 | mode "$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 | |||
219 | mode "$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 | } | ||
231 | mode "$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 | |||
244 | for_window [class=".*"] border pixel 0 | ||
245 | for_window [class="Zotero" instance="Toplevel" title="Quick Format Citation"] floating enable | ||
246 | for_window [class="Zotero" instance="Toplevel" title="Progress"] floating enable | ||
247 | assign [class="^Thunderbird$"] 8 | ||
248 | |||
249 | # class border backgr. text indicator child_border | ||
250 | client.focused #458588 #285577 #ffffff #458588 #285577 | ||
251 | client.focused_inactive #b16286 #5f676a #ffffff #484e50 #5f676a | ||
252 | client.unfocused #927374 #222222 #888888 #292d2e #222222 | ||
253 | client.urgent #2f343a #900000 #ffffff #900000 #900000 | ||
254 | client.placeholder #000000 #0c0c0c #ffffff #000000 #0c0c0c | ||
255 | |||
256 | client.background #ffffff | ||
257 | |||
258 | # config | ||
259 | hide_edge_borders smart | ||
260 | workspace_auto_back_and_forth yes | ||
261 | focus_follows_mouse no | ||