diff options
Diffstat (limited to '.config/i3/config##h.luchs')
-rw-r--r-- | .config/i3/config##h.luchs | 297 |
1 files changed, 297 insertions, 0 deletions
diff --git a/.config/i3/config##h.luchs b/.config/i3/config##h.luchs new file mode 100644 index 0000000..e626ce6 --- /dev/null +++ b/.config/i3/config##h.luchs | |||
@@ -0,0 +1,297 @@ | |||
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 | # disable screensaver, beep and power saving | ||
9 | exec --no-startup-id xset -dpms & | ||
10 | exec --no-startup-id xset s off & | ||
11 | exec --no-startup-id xset -b & | ||
12 | |||
13 | # start the network manager, useful for vpns | ||
14 | exec --no-startup-id nm-applet & | ||
15 | |||
16 | # removable media | ||
17 | exec --no-startup-id udiskie --automount --file-manager pcmanfm --tray --notify & | ||
18 | |||
19 | # set the wallpaper and other visuals | ||
20 | # exec --no-startup-id ~/.fehbg & | ||
21 | exec --no-startup-id bwall -cup_dark & | ||
22 | exec --no-startup-id compton -b & | ||
23 | # exec --no-startup-id xsettingsd & | ||
24 | |||
25 | exec --no-startup-id gebaard -b | ||
26 | exec --no-startup-id volnoti & | ||
27 | |||
28 | # utilities | ||
29 | exec --no-startup-id nextcloud & | ||
30 | exec --no-startup-id copyq & | ||
31 | # exec --no-startup-id conky --daemonize -c ~/.config/conky/conky.conf & | ||
32 | # exec --no-startup-id conky --daemonize -c ~/.config/conky/task.conf & | ||
33 | |||
34 | # keyboard with alt+shift us,tr switch, map escape to capslock | ||
35 | exec --no-startup-id setxkbmap -model pc105 -layout us,us,tr -variant ,colemak, -option grp:alt_shift_toggle,caps:backspace & | ||
36 | exec --no-startup-id xcape -e 'Control_L=Escape' | ||
37 | |||
38 | exec --no-startup-id xinput set-prop "ELAN1200:00 04F3:3045 Touchpad" "libinput Natural Scrolling Enabled" 1 & | ||
39 | exec --no-startup-id xinput set-prop "ELAN1200:00 04F3:3045 Touchpad" "libinput Tapping Enabled" 1 & | ||
40 | |||
41 | # launch polybar | ||
42 | exec --no-startup-id $HOME/.config/polybar/launch.sh & | ||
43 | |||
44 | # start the screensaver, '' at the end is not a typo | ||
45 | exec --no-startup-id xidlehook --not-when-fullscreen --not-when-audio --timer normal 300 'betterlockscreen -l dimblur -t "Welcome Back"' '' | ||
46 | |||
47 | # start the brightness utility | ||
48 | exec --no-startup-id clight & | ||
49 | |||
50 | # flash the active window | ||
51 | exec --no-startup-id flashfocus & | ||
52 | |||
53 | gaps inner 5 | ||
54 | gaps outer 2 | ||
55 | |||
56 | # Font for window titles | ||
57 | font pango:Lato 11 | ||
58 | |||
59 | # Use Mouse+$mod to drag floating windows to their wanted position | ||
60 | floating_modifier $alt | ||
61 | |||
62 | ############## | ||
63 | # bindings # | ||
64 | ############## | ||
65 | |||
66 | # i switched back to firefox can you tell | ||
67 | bindsym Ctrl+q exec --no-startup-id true | ||
68 | |||
69 | # get the mouse out of the way | ||
70 | bindsym $mod+o exec --no-startup-id xdotool mousemove 1920 1080 | ||
71 | |||
72 | # bookmark from clipboard | ||
73 | bindsym $mod+u exec --no-startup-id ~/bin/bukuadd_c | ||
74 | |||
75 | # add taskwarrior/gtd calendar item | ||
76 | bindsym $mod+Shift+t exec --no-startup-id ~/bin/td | ||
77 | |||
78 | # swap caps lock and escape, set keyboard layout, 35 is ]/ü (layout agnostic) | ||
79 | bindcode $mod+35 exec --no-startup-id "setxkbmap -model pc105 -layout us,tr -option grp:alt_shift_toggle,caps:swapescape" | ||
80 | |||
81 | # use flameshot with print screen | ||
82 | bindsym Print exec flameshot gui | ||
83 | |||
84 | # media keys | ||
85 | bindsym XF86AudioRaiseVolume exec --no-startup-id "amixer set Master 2%+ && volnoti-show $(amixer get Master | grep -Po '[0-9]+(?=%)' | head -1)" | ||
86 | bindsym XF86AudioLowerVolume exec --no-startup-id "amixer set Master 2%- && volnoti-show $(amixer get Master | grep -Po '[0-9]+(?=%)' | head -1)" | ||
87 | 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" | ||
88 | bindsym XF86AudioPlay exec mpc toggle | ||
89 | bindsym XF86AudioPrev exec /home/yigit/bin/mpcPrevSong.sh | ||
90 | bindsym XF86AudioNext exec mpc next | ||
91 | |||
92 | bindsym XF86MonBrightnessUp exec --no-startup-id xbacklight -inc 5 & | ||
93 | bindsym XF86MonBrightnessDown exec --no-startup-id xbacklight -dec 5 & | ||
94 | |||
95 | bindsym XF86TouchpadToggle exec --no-startup-id perl -e '{`xinput list-props 11` =~ /^.*Device Enabled.+?(\d)$/m and {$1 ? `xinput --disable 11 && dunstify -a "touchpad" "disabled"` : `xinput --enable 11 && dunstify -a "touchpad" "enabled"`}} ' | ||
96 | |||
97 | # Make the currently focused window a scratchpad | ||
98 | bindsym $mod+Shift+minus move scratchpad | ||
99 | |||
100 | # Show the first scratchpad window | ||
101 | bindsym $mod+minus scratchpad show | ||
102 | |||
103 | # shortcuts for frequent programs | ||
104 | bindsym $mod+Shift+z exec zotero | ||
105 | bindsym $mod+Shift+f exec pcmanfm | ||
106 | |||
107 | # start a terminal | ||
108 | bindsym $mod+Return exec kitty | ||
109 | |||
110 | # kill focused window | ||
111 | bindsym $mod+Shift+q kill | ||
112 | |||
113 | # start rofi (a program launcher) | ||
114 | bindsym $mod+d exec rofi -show combi | ||
115 | |||
116 | # change focus | ||
117 | bindsym $mod+h focus left | ||
118 | bindsym $mod+j focus down | ||
119 | bindsym $mod+k focus up | ||
120 | bindsym $mod+l focus right | ||
121 | |||
122 | # move focused window | ||
123 | bindsym $mod+Shift+h move left | ||
124 | bindsym $mod+Shift+j move down | ||
125 | bindsym $mod+Shift+k move up | ||
126 | bindsym $mod+Shift+l move right | ||
127 | |||
128 | # split in horizontal orientation | ||
129 | bindsym $mod+b split h | ||
130 | |||
131 | # split in vertical orientation | ||
132 | bindsym $mod+v split v | ||
133 | |||
134 | # enter fullscreen mode for the focused container | ||
135 | bindsym $mod+f fullscreen toggle | ||
136 | |||
137 | # change container layout (stacked, tabbed, toggle split) | ||
138 | bindsym $mod+s layout stacking | ||
139 | bindsym $mod+w layout tabbed | ||
140 | bindsym $mod+e layout toggle split | ||
141 | |||
142 | # toggle tiling / floating | ||
143 | bindsym $mod+Shift+space floating toggle | ||
144 | |||
145 | # change focus between tiling / floating windows | ||
146 | bindsym $mod+space focus mode_toggle | ||
147 | |||
148 | # focus the parent container | ||
149 | bindsym $mod+a focus parent | ||
150 | |||
151 | # Define names for default workspaces for which we configure key bindings later on. | ||
152 | # We use variables to avoid repeating the names in multiple places. | ||
153 | set $ws1 "1" | ||
154 | set $ws2 "2" | ||
155 | set $ws3 "3" | ||
156 | set $ws4 "4" | ||
157 | set $ws5 "5" | ||
158 | set $ws6 "6" | ||
159 | set $ws7 "7" | ||
160 | set $ws8 "8" | ||
161 | set $ws9 "9" | ||
162 | set $ws10 "10" | ||
163 | |||
164 | # switch to workspace | ||
165 | bindsym $mod+1 workspace $ws1 | ||
166 | bindsym $mod+2 workspace $ws2 | ||
167 | bindsym $mod+3 workspace $ws3 | ||
168 | bindsym $mod+4 workspace $ws4 | ||
169 | bindsym $mod+5 workspace $ws5 | ||
170 | bindsym $mod+6 workspace $ws6 | ||
171 | bindsym $mod+7 workspace $ws7 | ||
172 | bindsym $mod+8 workspace $ws8 | ||
173 | bindsym $mod+9 workspace $ws9 | ||
174 | bindsym $mod+0 workspace $ws10 | ||
175 | |||
176 | # move focused container to workspace | ||
177 | bindsym $mod+Shift+1 move container to workspace $ws1 | ||
178 | bindsym $mod+Shift+2 move container to workspace $ws2 | ||
179 | bindsym $mod+Shift+3 move container to workspace $ws3 | ||
180 | bindsym $mod+Shift+4 move container to workspace $ws4 | ||
181 | bindsym $mod+Shift+5 move container to workspace $ws5 | ||
182 | bindsym $mod+Shift+6 move container to workspace $ws6 | ||
183 | bindsym $mod+Shift+7 move container to workspace $ws7 | ||
184 | bindsym $mod+Shift+8 move container to workspace $ws8 | ||
185 | bindsym $mod+Shift+9 move container to workspace $ws9 | ||
186 | bindsym $mod+Shift+0 move container to workspace $ws10 | ||
187 | |||
188 | # reload the configuration file | ||
189 | bindsym $mod+Shift+c reload | ||
190 | # restart i3 inplace (preserves your layout/session, can be used to upgrade i3) | ||
191 | bindsym $mod+Shift+r restart | ||
192 | |||
193 | # resize window (you can also use the mouse for that) | ||
194 | mode "resize" { | ||
195 | # These bindings trigger as soon as you enter the resize mode | ||
196 | |||
197 | # Pressing left will shrink the window’s width. | ||
198 | # Pressing right will grow the window’s width. | ||
199 | # Pressing up will shrink the window’s height. | ||
200 | # Pressing down will grow the window’s height. | ||
201 | bindsym h resize shrink width 10 px or 10 ppt | ||
202 | bindsym j resize grow height 10 px or 10 ppt | ||
203 | bindsym k resize shrink height 10 px or 10 ppt | ||
204 | bindsym l resize grow width 10 px or 10 ppt | ||
205 | |||
206 | # back to normal: Enter or Escape or $mod+r | ||
207 | bindsym Return mode "default" | ||
208 | bindsym Escape mode "default" | ||
209 | bindsym $mod+r mode "default" | ||
210 | } | ||
211 | bindsym $mod+r mode "resize" | ||
212 | |||
213 | # session | ||
214 | mode " (L)ock (S)ignout (R)eboot (P)oweroff" { | ||
215 | bindsym $mod+l exec betterlockscreen -l dimblur -t "Welcome back" | ||
216 | bindsym $mod+r exec systemctl reboot | ||
217 | bindsym $mod+p exec systemctl poweroff | ||
218 | bindsym $mod+s exit | ||
219 | bindcode 66 mode "default" | ||
220 | } | ||
221 | bindsym $mod+Shift+e mode " (L)ock (S)ignout (R)eboot (P)oweroff" | ||
222 | |||
223 | bindsym $mod+Shift+Escape exec --no-startup-id ~/bin/power.sh | ||
224 | |||
225 | set $mode_gaps Gaps: (o)uter, (i)nner | ||
226 | #, (h)orizontal, (v)ertical, (t)op, (r)ight, (b)ottom, (l)eft | ||
227 | set $mode_gaps_outer Outer Gaps: +|-|0 (local), Shift + +|-|0 (global) | ||
228 | set $mode_gaps_inner Inner Gaps: +|-|0 (local), Shift + +|-|0 (global) | ||
229 | # set $mode_gaps_horiz Horizontal Gaps: +|-|0 (local), Shift + +|-|0 (global) | ||
230 | # set $mode_gaps_verti Vertical Gaps: +|-|0 (local), Shift + +|-|0 (global) | ||
231 | # set $mode_gaps_top Top Gaps: +|-|0 (local), Shift + +|-|0 (global) | ||
232 | # set $mode_gaps_right Right Gaps: +|-|0 (local), Shift + +|-|0 (global) | ||
233 | # set $mode_gaps_bottom Bottom Gaps: +|-|0 (local), Shift + +|-|0 (global) | ||
234 | # set $mode_gaps_left Left Gaps: +|-|0 (local), Shift + +|-|0 (global) | ||
235 | bindsym $mod+Shift+g mode "$mode_gaps" | ||
236 | |||
237 | mode "$mode_gaps" { | ||
238 | bindsym o mode "$mode_gaps_outer" | ||
239 | bindsym i mode "$mode_gaps_inner" | ||
240 | # bindsym h mode "$mode_gaps_horiz" | ||
241 | # bindsym v mode "$mode_gaps_verti" | ||
242 | # bindsym t mode "$mode_gaps_top" | ||
243 | # bindsym r mode "$mode_gaps_right" | ||
244 | # bindsym b mode "$mode_gaps_bottom" | ||
245 | # bindsym l mode "$mode_gaps_left" | ||
246 | # bindsym Return mode "$mode_gaps" | ||
247 | bindsym Escape mode "default" | ||
248 | } | ||
249 | |||
250 | mode "$mode_gaps_outer" { | ||
251 | bindsym plus gaps outer current plus 5 | ||
252 | bindsym minus gaps outer current minus 5 | ||
253 | bindsym 0 gaps outer current set 0 | ||
254 | |||
255 | bindsym Shift+plus gaps outer all plus 5 | ||
256 | bindsym Shift+minus gaps outer all minus 5 | ||
257 | bindsym Shift+0 gaps outer all set 0 | ||
258 | |||
259 | bindsym Return mode "$mode_gaps" | ||
260 | bindsym Escape mode "default" | ||
261 | } | ||
262 | mode "$mode_gaps_inner" { | ||
263 | bindsym plus gaps inner current plus 5 | ||
264 | bindsym minus gaps inner current minus 5 | ||
265 | bindsym 0 gaps inner current set 0 | ||
266 | |||
267 | bindsym Shift+plus gaps inner all plus 5 | ||
268 | bindsym Shift+minus gaps inner all minus 5 | ||
269 | bindsym Shift+0 gaps inner all set 0 | ||
270 | |||
271 | bindsym Return mode "$mode_gaps" | ||
272 | bindsym Escape mode "default" | ||
273 | } | ||
274 | |||
275 | # disable borders for all windows | ||
276 | for_window [class=".*"] border pixel 0 | ||
277 | |||
278 | # zotero citation dialogs and preferences windows should float | ||
279 | for_window [class="Zotero" instance="Toplevel" title="Quick Format Citation"] floating enable | ||
280 | for_window [class="Zotero" instance="Toplevel" title="Progress"] floating enable | ||
281 | for_window [class="Zotero" window_role="pref"] floating enable | ||
282 | |||
283 | assign [class="^Thunderbird$"] 8 | ||
284 | |||
285 | # class border backgr. text indicator child_border | ||
286 | client.focused #458588 #285577 #ffffff #458588 #285577 | ||
287 | client.focused_inactive #b16286 #5f676a #ffffff #484e50 #5f676a | ||
288 | client.unfocused #927374 #222222 #888888 #292d2e #222222 | ||
289 | client.urgent #2f343a #900000 #ffffff #900000 #900000 | ||
290 | client.placeholder #000000 #0c0c0c #ffffff #000000 #0c0c0c | ||
291 | |||
292 | client.background #ffffff | ||
293 | |||
294 | # config | ||
295 | hide_edge_borders smart | ||
296 | workspace_auto_back_and_forth yes | ||
297 | focus_follows_mouse no | ||