summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.config/efm-langserver/config.yaml3
-rw-r--r--.config/fish/config.fish1
-rw-r--r--.config/fish/fish_variables4
-rw-r--r--.config/git/ignore1
-rw-r--r--.config/hypr/conf/gestures.conf2
-rw-r--r--.config/hypr/conf/keybinds.conf18
-rw-r--r--.config/hypr/conf/monitor.conf2
-rw-r--r--.config/hypr/conf/windowrules.conf90
-rw-r--r--.config/hypr/hyprland.conf14
-rw-r--r--.config/mutt/mailcap2
-rw-r--r--.config/nvchecker/nvchecker.toml5
-rw-r--r--.config/nvim/after/ftplugin/c.vim6
-rw-r--r--.config/nvim/after/plugin/autocmds.vim17
-rw-r--r--.config/nvim/lua/core/options.lua2
-rw-r--r--.config/nvim/lua/helpers/autocmds.lua127
-rw-r--r--.config/nvim/lua/plugins/conform.lua24
-rw-r--r--.config/nvim/lua/plugins/git.lua6
-rw-r--r--.config/nvim/lua/plugins/lastplace.lua11
-rw-r--r--.config/nvim/lua/plugins/lsp.lua156
-rw-r--r--.config/nvim/lua/plugins/telescope.lua10
-rw-r--r--.config/nvim/lua/plugins/typst.lua10
-rw-r--r--.config/nvim/spell/en.utf-8.add3
-rw-r--r--.config/task/taskrc2
-rw-r--r--.config/tmux/tmux.conf3
-rw-r--r--.config/user-dirs.dirs2
-rw-r--r--.config/waybar/config.jsonc53
-rw-r--r--.config/waybar/style.css46
-rwxr-xr-x.local/bin/sentences2
-rwxr-xr-x.local/bin/spliff2
29 files changed, 450 insertions, 174 deletions
diff --git a/.config/efm-langserver/config.yaml b/.config/efm-langserver/config.yaml
index baffb69..77ee931 100644
--- a/.config/efm-langserver/config.yaml
+++ b/.config/efm-langserver/config.yaml
@@ -14,7 +14,8 @@ tools:
14 format-command: 'shfmt -ci -s -bn -i 4 -sr' 14 format-command: 'shfmt -ci -s -bn -i 4 -sr'
15 format-stdin: true 15 format-stdin: true
16 tex-fmt-formatter: &tex-fmt-formatter 16 tex-fmt-formatter: &tex-fmt-formatter
17 format-command: 'tex-fmt --keep --tab 4 --print' 17 format-command: 'tex-fmt --tabsize 4 --stdin'
18 format-stdin: true
18languages: 19languages:
19 sh: 20 sh:
20 - <<: *sh-shellcheck 21 - <<: *sh-shellcheck
diff --git a/.config/fish/config.fish b/.config/fish/config.fish
index 4f7aab8..7dce7a2 100644
--- a/.config/fish/config.fish
+++ b/.config/fish/config.fish
@@ -8,6 +8,7 @@ set --global --export GOPATH $HOME/.local/share/go
8set --global --export GPG_TTY (tty) 8set --global --export GPG_TTY (tty)
9set --global fish_prompt_pwd_dir_length 0 9set --global fish_prompt_pwd_dir_length 0
10set --global direnv_fish_mode eval_on_arrow 10set --global direnv_fish_mode eval_on_arrow
11set --global VIRTUAL_ENV_DISABLE_PROMPT true
11 12
12# nnn 13# nnn
13set --global --export NNN_OPENER $HOME/.local/bin/nuke 14set --global --export NNN_OPENER $HOME/.local/bin/nuke
diff --git a/.config/fish/fish_variables b/.config/fish/fish_variables
index b32dfe3..6120a57 100644
--- a/.config/fish/fish_variables
+++ b/.config/fish/fish_variables
@@ -1,6 +1,6 @@
1# This file contains fish universal variable definitions. 1# This file contains fish universal variable definitions.
2# VERSION: 3.0 2# VERSION: 3.0
3SETUVAR __fish_initialized:3400 3SETUVAR __fish_initialized:3800
4SETUVAR _fish_abbr_dr:dragon\x2ddrop 4SETUVAR _fish_abbr_dr:dragon\x2ddrop
5SETUVAR _fisher_franciscolourenco_2F_done_files:\x7e/\x2econfig/fish/conf\x2ed/done\x2efish 5SETUVAR _fisher_franciscolourenco_2F_done_files:\x7e/\x2econfig/fish/conf\x2ed/done\x2efish
6SETUVAR _fisher_jorgebucaran_2F_nvm_2E_fish_files:\x7e/\x2econfig/fish/functions/_nvm_index_update\x2efish\x1e\x7e/\x2econfig/fish/functions/_nvm_list\x2efish\x1e\x7e/\x2econfig/fish/functions/_nvm_version_activate\x2efish\x1e\x7e/\x2econfig/fish/functions/_nvm_version_deactivate\x2efish\x1e\x7e/\x2econfig/fish/functions/nvm\x2efish\x1e\x7e/\x2econfig/fish/conf\x2ed/nvm\x2efish\x1e\x7e/\x2econfig/fish/completions/nvm\x2efish 6SETUVAR _fisher_jorgebucaran_2F_nvm_2E_fish_files:\x7e/\x2econfig/fish/functions/_nvm_index_update\x2efish\x1e\x7e/\x2econfig/fish/functions/_nvm_list\x2efish\x1e\x7e/\x2econfig/fish/functions/_nvm_version_activate\x2efish\x1e\x7e/\x2econfig/fish/functions/_nvm_version_deactivate\x2efish\x1e\x7e/\x2econfig/fish/functions/nvm\x2efish\x1e\x7e/\x2econfig/fish/conf\x2ed/nvm\x2efish\x1e\x7e/\x2econfig/fish/completions/nvm\x2efish
@@ -46,4 +46,4 @@ SETUVAR fish_pager_color_selected_background:\x1d
46SETUVAR fish_pager_color_selected_completion:\x1d 46SETUVAR fish_pager_color_selected_completion:\x1d
47SETUVAR fish_pager_color_selected_description:\x1d 47SETUVAR fish_pager_color_selected_description:\x1d
48SETUVAR fish_pager_color_selected_prefix:\x1d 48SETUVAR fish_pager_color_selected_prefix:\x1d
49SETUVAR fish_user_paths:/home/yigit/\x2ecargo/bin\x1e/home/yigit/\x2elocal/bin 49SETUVAR fish_user_paths:/home/yigit/\x2enix\x2dprofile/bin\x1e/home/yigit/\x2ecargo/bin\x1e/home/yigit/\x2elocal/bin
diff --git a/.config/git/ignore b/.config/git/ignore
index 116f8e7..5bfa88b 100644
--- a/.config/git/ignore
+++ b/.config/git/ignore
@@ -3,3 +3,4 @@
3tags 3tags
4rusty-tags.vi 4rusty-tags.vi
5*.svg 5*.svg
6ltex.dictionary.*
diff --git a/.config/hypr/conf/gestures.conf b/.config/hypr/conf/gestures.conf
new file mode 100644
index 0000000..ac2ade3
--- /dev/null
+++ b/.config/hypr/conf/gestures.conf
@@ -0,0 +1,2 @@
1gesture = 3, horizontal, workspace
2gesture = 3, vertical, fullscreen
diff --git a/.config/hypr/conf/keybinds.conf b/.config/hypr/conf/keybinds.conf
index b192c5d..ecb142c 100644
--- a/.config/hypr/conf/keybinds.conf
+++ b/.config/hypr/conf/keybinds.conf
@@ -2,7 +2,7 @@
2 2
3# See https://wiki.hyprland.org/Configuring/Keywords/ 3# See https://wiki.hyprland.org/Configuring/Keywords/
4$mainMod = SUPER 4$mainMod = SUPER
5$terminal = kitty 5$terminal = foot
6$fileManager = thunar 6$fileManager = thunar
7$menu = tofi-drun | xargs hyprctl dispatch exec -- 7$menu = tofi-drun | xargs hyprctl dispatch exec --
8 8
@@ -10,10 +10,10 @@ $menu = tofi-drun | xargs hyprctl dispatch exec --
10bind = $mainMod+SHIFT, code:41, exec, $fileManager # f 10bind = $mainMod+SHIFT, code:41, exec, $fileManager # f
11bind = $mainMod, RETURN, exec, $terminal 11bind = $mainMod, RETURN, exec, $terminal
12bind = $mainMod, code:71, exec, $HOME/.local/bin/mailsync # f5 12bind = $mainMod, code:71, exec, $HOME/.local/bin/mailsync # f5
13bind = ,code:118, exec, copyq menu # ins 13bind = ,code:118, exec, copyq show # ins
14bind = $mainMod, 0, exec, swaync-client --hide-latest 14bind = $mainMod, 0, exec, swaync-client --hide-latest
15bind = $mainMod+SHIFT, 0, exec, swaync-client -t 15bind = $mainMod+SHIFT, 0, exec, swaync-client -t
16bindr = SUPER+SHIFT, escape, exec, wlogout 16bindr = $mainMod+SHIFT, escape, exec, wlogout
17bindr = $mainMod, code:42, exec, $HOME/.local/bin/done # g 17bindr = $mainMod, code:42, exec, $HOME/.local/bin/done # g
18bindr = $mainMod, code:30, exec, $HOME/.local/bin/bukuadd_c # u 18bindr = $mainMod, code:30, exec, $HOME/.local/bin/bukuadd_c # u
19bindr = $mainMod, code:35, exec, $HOME/.local/bin/td # ] 19bindr = $mainMod, code:35, exec, $HOME/.local/bin/td # ]
@@ -29,17 +29,17 @@ bindl = , XF86AudioPlay, exec, playerctl play-pause
29bindl = , XF86AudioNext, exec, playerctl next 29bindl = , XF86AudioNext, exec, playerctl next
30bindl = , XF86AudioPrev, exec, playerctl previous 30bindl = , XF86AudioPrev, exec, playerctl previous
31 31
32# Colour picker
33# https://wimpysworld.com/posts/fuzzel-hyprpicker/
34bind = $mainMod, code:32, exec, $HOME/.local/bin/fuzzel_hyprpicker.sh
35
32# Screenshots: 36# Screenshots:
33# Super+P: Current window
34# Super+Shift+p: Select area
35# Super+Alt+p Current output
36# Super+Ctrl+p All outputs
37 37
38# Optionally, customize slurp's appearance 38# Optionally, customize slurp's appearance
39env = SLURP_ARGS, -d -B F050F022 -b 10101022 -c ff00ff 39env = SLURP_ARGS, -d -B F050F022 -b 10101022 -c ff00ff
40 40
41bind = ,Print, exec, ~/.local/bin/screenshot.sh 41bind = SHIFT, Print, exec, grimblast copysave area
42bind = SHIFT, Print, exec, grimblast copy area 42bind = ,Print, exec, grimblast copy area
43 43
44# Move focus 44# Move focus
45bind = $mainMod, code:43, movefocus, l 45bind = $mainMod, code:43, movefocus, l
diff --git a/.config/hypr/conf/monitor.conf b/.config/hypr/conf/monitor.conf
index e04dfb1..de07cbe 100644
--- a/.config/hypr/conf/monitor.conf
+++ b/.config/hypr/conf/monitor.conf
@@ -2,4 +2,4 @@
2monitor=eDP-1,highres,auto,1 2monitor=eDP-1,highres,auto,1
3 3
4# # autoconfig any additional monitor 4# # autoconfig any additional monitor
5monitor=HDMI-A-1,highres,auto-up,1.25 5monitor=HDMI-A-1,highres,auto-up,1
diff --git a/.config/hypr/conf/windowrules.conf b/.config/hypr/conf/windowrules.conf
index 9f3995c..ab0676b 100644
--- a/.config/hypr/conf/windowrules.conf
+++ b/.config/hypr/conf/windowrules.conf
@@ -1,73 +1,81 @@
1# See https://wiki.hyprland.org/Configuring/Window-Rules/ 1# See https://wiki.hyprland.org/Configuring/Window-Rules/
2windowrulev2 = suppressevent maximize, class:.* 2windowrule = suppressevent maximize, class:.*
3 3
4# polkit auth agent 4# polkit auth agent
5windowrulev2 = float, class:org.kde.polkit-kde-authentication-agent-1 5windowrule = float, class:org.kde.polkit-kde-authentication-agent-1
6 6
7# yad 7# yad
8windowrulev2 = float, class:yad 8windowrule = float, class:yad
9 9
10# Libre Office 10# Libre Office
11windowrulev2 = size 800 600, class:soffice,title:Export 11windowrule = size 800 600, class:soffice,title:Export
12 12
13# Blueman 13# Blueman
14windowrulev2 = float,class:^(blueman-manager)$ 14windowrule = float,class:^(blueman-manager)$
15 15
16# NetworkManager 16# NetworkManager
17windowrulev2 = float,class:^(nm-connection-editor)$ 17windowrule = float,class:^(nm-connection-editor)$
18 18
19# Pavucontrol 19# Pavucontrol
20windowrulev2 = float,class:^(org.pulseaudio.pavucontrol)$ 20windowrule = float,class:^(org.pulseaudio.pavucontrol)$
21windowrulev2 = size 800 600,class:^(org.pulseaudio.pavucontrol)$ 21windowrule = size 800 600,class:^(org.pulseaudio.pavucontrol)$
22 22
23# copyq 23# copyq
24windowrulev2 = float, class:com.github.hluk.copyq 24windowrule = float, class:com.github.hluk.copyq
25windowrulev2 = noborder, class:com.github.hluk.copyq 25windowrule = noborder, class:com.github.hluk.copyq
26windowrulev2 = noblur, class:com.github.hluk.copyq 26windowrule = noblur, class:com.github.hluk.copyq
27windowrulev2 = dimaround, class:com.github.hluk.copyq 27windowrule = dimaround, class:com.github.hluk.copyq
28windowrulev2 = move 70% 10%, class:com.github.hluk.copyq 28windowrule = move 55% 15%, class:com.github.hluk.copyq
29windowrule = size 35% 65%, class:com.github.hluk.copyq
29 30
30# Firefox 31# Firefox
31windowrulev2 = workspace name:browser silent, class:firefox 32windowrule = workspace name:browser silent, class:firefox
32 33
33# Browser Picture in Picture 34# Browser Picture in Picture
34windowrulev2 = float, title:^(Picture-in-Picture)$ 35windowrule = float, title:^(Picture-in-Picture)$
35windowrulev2 = pin, title:^(Picture-in-Picture)$ 36windowrule = pin, title:^(Picture-in-Picture)$
36windowrulev2 = move 72% 40%, title:^(Picture-in-Picture)$ 37windowrule = move 72% 40%, title:^(Picture-in-Picture)$
37windowrulev2 = size 520 390, title:^(Picture-in-Picture)$ 38windowrule = size 520 390, title:^(Picture-in-Picture)$
38 39
39# Discord Popout 40# Discord Popout
40windowrulev2 = float, title:^(Discord Popout)$ 41windowrule = float, title:^(Discord Popout)$
41windowrulev2 = pin, title:^(Discord Popout)$ 42windowrule = pin, title:^(Discord Popout)$
42windowrulev2 = move 72% 40%, title:^(Discord Popout)$ 43windowrule = move 72% 40%, title:^(Discord Popout)$
43windowrulev2 = size 573 354, title:^(Discord Popout)$ 44windowrule = size 573 354, title:^(Discord Popout)$
44 45
45# Xwaylandvideobridge 46# Xwaylandvideobridge
46windowrulev2 = opacity 0.0 override,class:^(xwaylandvideobridge)$ 47windowrule = opacity 0.0 override,class:^(xwaylandvideobridge)$
47windowrulev2 = noanim,class:^(xwaylandvideobridge)$ 48windowrule = noanim,class:^(xwaylandvideobridge)$
48windowrulev2 = noinitialfocus,class:^(xwaylandvideobridge)$ 49windowrule = noinitialfocus,class:^(xwaylandvideobridge)$
49windowrulev2 = maxsize 1 1,class:^(xwaylandvideobridge)$ 50windowrule = maxsize 1 1,class:^(xwaylandvideobridge)$
50windowrulev2 = noblur,class:^(xwaylandvideobridge)$ 51windowrule = noblur,class:^(xwaylandvideobridge)$
51 52
52# Zotero 53# Zotero
53windowrulev2 = workspace name:zotero silent, class:Zotero 54windowrule = workspace name:zotero silent, class:Zotero
54 55
55windowrulev2 = float, class:^(Zotero)$,title:^(Progress)$ 56windowrule = float, class:^(Zotero)$,title:^(Progress)$
56windowrulev2 = noinitialfocus, class:^(Zotero)$,title:^(Progress)$ 57windowrule = noinitialfocus, class:^(Zotero)$,title:^(Progress)$
57windowrulev2 = move 1579 954, class:^(Zotero)$,title:^(Progress)$ 58windowrule = move 1579 954, class:^(Zotero)$,title:^(Progress)$
58windowrulev2 = size 300 72, class:^(Zotero)$,title:^(Progress)$ 59windowrule = size 300 72, class:^(Zotero)$,title:^(Progress)$
59windowrulev2 = size 445 195, class:^(Zotero)$,title:^(New Collection)$ 60windowrule = size 445 195, class:^(Zotero)$,title:^(New Collection)$
60 61
61# Thunar 62# Thunar
62windowrulev2 = float, class:^(Thunar)$,title:^(File Operation Progress)$ 63windowrule = float, class:^(Thunar)$,title:^(File Operation Progress)$
63windowrulev2 = noinitialfocus, class:^(Thunar)$,title:^(File Operation Progress)$ 64windowrule = noinitialfocus, class:^(Thunar)$,title:^(File Operation Progress)$
64windowrulev2 = size 505 100, class:^(Thunar)$,title:^(File Operation Progress)$ 65windowrule = size 505 100, class:^(Thunar)$,title:^(File Operation Progress)$
66windowrule = float, class:^(Thunar)$,title:^(Rename).*$
67
68# engrampa
69windowrule = float, class:^(engrampa)$,title:^(Extract archive)$
65 70
66# Spotify 71# Spotify
67windowrulev2 = workspace name:music silent, class:^(Spotify)$ 72windowrule = workspace name:music silent, class:^(Spotify)$
68 73
69# Thunderbird 74# Thunderbird
70windowrulev2 = float, class:^(thunderbird)$,title:^(Edit Item)$ 75windowrule = float, class:^(thunderbird)$,title:^(Edit Item)$
71windowrulev2 = size 720 790, class:^(thunderbird)$,title:^(Edit Item)$ 76windowrule = size 720 790, class:^(thunderbird)$,title:^(Edit Item)$
72windowrulev2 = float, class:^(thunderbird)$,title:^(TbSync account manager)$ 77windowrule = float, class:^(thunderbird)$,title:^(TbSync account manager)$
73windowrulev2 = size 1100 880, class:^(thunderbird)$,title:^(Edit Item)$ 78windowrule = size 1100 880, class:^(thunderbird)$,title:^(Edit Item)$
79
80# Zoom
81windowrule=stayfocused,class:(zoom),initialTitle:(menu window)
diff --git a/.config/hypr/hyprland.conf b/.config/hypr/hyprland.conf
index 516432d..329117c 100644
--- a/.config/hypr/hyprland.conf
+++ b/.config/hypr/hyprland.conf
@@ -11,6 +11,8 @@ source = ~/.config/hypr/conf/sound_brightness_notifications.conf
11 11
12source = ~/.config/hypr/conf/windowrules.conf 12source = ~/.config/hypr/conf/windowrules.conf
13 13
14source = ~/.config/hypr/conf/gestures.conf
15
14# Some default env vars. 16# Some default env vars.
15env = GDK_BACKEND,wayland,x11,* 17env = GDK_BACKEND,wayland,x11,*
16env = QT_QPA_PLATFORM,wayland;xcb 18env = QT_QPA_PLATFORM,wayland;xcb
@@ -30,10 +32,10 @@ env = SEMESTER_THEME,you got this
30 32
31# For all categories, see https://wiki.hyprland.org/Configuring/Variables/ 33# For all categories, see https://wiki.hyprland.org/Configuring/Variables/
32input { 34input {
33 kb_layout = us 35 kb_layout = us,tr
34 kb_variant = colemak 36 kb_variant = colemak,
35 kb_model = 37 kb_model =
36 kb_options = 38 kb_options = grp:alt_shift_toggle
37 kb_rules = 39 kb_rules =
38 numlock_by_default = true 40 numlock_by_default = true
39 41
@@ -106,14 +108,10 @@ master {
106 new_status = master 108 new_status = master
107} 109}
108 110
109gestures {
110 # See https://wiki.hyprland.org/Configuring/Variables/
111 workspace_swipe = on
112}
113
114misc { 111misc {
115 # See https://wiki.hyprland.org/Configuring/Variables/ 112 # See https://wiki.hyprland.org/Configuring/Variables/
116 force_default_wallpaper = 0 # Set to 0 or 1 to disable the anime mascot wallpapers 113 force_default_wallpaper = 0 # Set to 0 or 1 to disable the anime mascot wallpapers
114 enable_anr_dialog = false
117} 115}
118 116
119binds { 117binds {
diff --git a/.config/mutt/mailcap b/.config/mutt/mailcap
index b355f32..027a394 100644
--- a/.config/mutt/mailcap
+++ b/.config/mutt/mailcap
@@ -7,3 +7,5 @@ audio/*; mpv %s ;
7application/pdf; openfile %s ; 7application/pdf; openfile %s ;
8application/pgp-encrypted; gpg -d '%s'; copiousoutput; 8application/pgp-encrypted; gpg -d '%s'; copiousoutput;
9application/pgp-keys; gpg --import '%s'; copiousoutput; 9application/pgp-keys; gpg --import '%s'; copiousoutput;
10application/vnd.ms-excel; openfile '%s';
11application/vnd.openxmlformats-officedocument.spreadsheetml.sheet ; openfile '%s';
diff --git a/.config/nvchecker/nvchecker.toml b/.config/nvchecker/nvchecker.toml
index 3c0a3f1..cc18162 100644
--- a/.config/nvchecker/nvchecker.toml
+++ b/.config/nvchecker/nvchecker.toml
@@ -49,11 +49,6 @@ source = "github"
49github = "logisim-evolution/logisim-evolution" 49github = "logisim-evolution/logisim-evolution"
50use_latest_release = true 50use_latest_release = true
51 51
52[popcorntime]
53source = "github"
54github = "popcorn-official/popcorn-desktop"
55use_latest_release = true
56
57[the-deeps] 52[the-deeps]
58source = "github" 53source = "github"
59github = "oicleevan/the-deeps" 54github = "oicleevan/the-deeps"
diff --git a/.config/nvim/after/ftplugin/c.vim b/.config/nvim/after/ftplugin/c.vim
index 25eeecd..41a9917 100644
--- a/.config/nvim/after/ftplugin/c.vim
+++ b/.config/nvim/after/ftplugin/c.vim
@@ -1,4 +1,4 @@
1setlocal tabstop=8 1setlocal tabstop=2
2setlocal softtabstop=8 2setlocal softtabstop=2
3setlocal shiftwidth=8 3setlocal shiftwidth=2
4setlocal noexpandtab 4setlocal noexpandtab
diff --git a/.config/nvim/after/plugin/autocmds.vim b/.config/nvim/after/plugin/autocmds.vim
index 0e7935b..21c7bc4 100644
--- a/.config/nvim/after/plugin/autocmds.vim
+++ b/.config/nvim/after/plugin/autocmds.vim
@@ -1,23 +1,6 @@
1" I don't know how to port this yet 1" I don't know how to port this yet
2autocmd BufRead,BufWrite * if ! &bin | silent! %s/\s\+$//ge | endif 2autocmd BufRead,BufWrite * if ! &bin | silent! %s/\s\+$//ge | endif
3 3
4autocmd BufNewFile,BufRead /tmp/neomutt* set noautoindent filetype=mail wm=0 tw=80
5
6augroup bukugroup
7 au! BufRead,BufNewFile,BufEnter buku-edit-* set filetype=buku
8augroup END
9
10" Restore last position
11autocmd BufReadPost *
12 \ if line("'\"") >= 1 && line("'\"") <= line("$") && &ft !~# 'commit'
13 \ | exe "normal! g`\""
14 \ | endif
15
16augroup pkgbuild
17 autocmd!
18 autocmd BufRead,BufNewFile PKGBUILD set filetype=PKGBUILD
19augroup END
20
21augroup vimwiki 4augroup vimwiki
22 autocmd! 5 autocmd!
23 autocmd BufRead,BufNewFile *.wiki set filetype=vimwiki 6 autocmd BufRead,BufNewFile *.wiki set filetype=vimwiki
diff --git a/.config/nvim/lua/core/options.lua b/.config/nvim/lua/core/options.lua
index 1a45b8f..9962f4f 100644
--- a/.config/nvim/lua/core/options.lua
+++ b/.config/nvim/lua/core/options.lua
@@ -63,6 +63,8 @@ local opts = {
63 -- switch case labels 63 -- switch case labels
64 cinoptions = "l1", 64 cinoptions = "l1",
65 65
66 signcolumn = "yes:1",
67
66} 68}
67 69
68for opt, val in pairs(opts) do 70for opt, val in pairs(opts) do
diff --git a/.config/nvim/lua/helpers/autocmds.lua b/.config/nvim/lua/helpers/autocmds.lua
index 11f4480..7461090 100644
--- a/.config/nvim/lua/helpers/autocmds.lua
+++ b/.config/nvim/lua/helpers/autocmds.lua
@@ -29,3 +29,130 @@ vim.api.nvim_create_autocmd("VimResized", {
29 }, 29 },
30 command = "wincmd =", 30 command = "wincmd =",
31}) 31})
32
33-- https://github.com/LazyVim/LazyVim/blob/main/lua/lazyvim/config/autocmds.lua
34-- Set typst filetype
35vim.api.nvim_create_autocmd(
36 {
37 "BufNewFile",
38 "BufRead",
39 },
40 {
41 group = augroup("typst"),
42 pattern = "*.typ",
43 callback = function()
44 local buf = vim.api.nvim_get_current_buf()
45 vim.api.nvim_set_option_value("filetype", "typst", { buf = buf })
46 vim.api.nvim_set_option_value("shiftwidth", 2, { buf = buf })
47 end
48 }
49)
50
51-- Set PKGBUILD filetype
52vim.api.nvim_create_autocmd(
53 {
54 "BufNewFile",
55 "BufRead",
56 },
57 {
58 group = augroup("pkgbuild"),
59 pattern = "PKGBUILD",
60 callback = function()
61 local buf = vim.api.nvim_get_current_buf()
62 vim.api.nvim_set_option_value("filetype", "PKGBUILD", { buf = buf })
63 end
64 }
65)
66
67-- Set buku-edit filetype
68vim.api.nvim_create_autocmd(
69 {
70 "BufNewFile",
71 "BufRead",
72 },
73 {
74 group = augroup("buku-edit"),
75 pattern = "buku-edit-*",
76 callback = function()
77 local buf = vim.api.nvim_get_current_buf()
78 vim.api.nvim_set_option_value("filetype", "buku", { buf = buf })
79 end
80 }
81)
82
83-- Set mail filetype
84vim.api.nvim_create_autocmd(
85 {
86 "BufNewFile",
87 "BufRead",
88 },
89 {
90 group = augroup("mail"),
91 pattern = "/tmp/neomutt*",
92 callback = function()
93 local buf = vim.api.nvim_get_current_buf()
94 vim.api.nvim_set_option_value("autoindent", false, { buf = buf })
95 vim.api.nvim_set_option_value("filetype", "mail", { buf = buf })
96 vim.api.nvim_set_option_value("wrapmargin", 0, { buf = buf })
97 vim.api.nvim_set_option_value("textwidth", 80, { buf = buf })
98 end
99 }
100)
101
102-- Resize splits if window got resized
103vim.api.nvim_create_autocmd({ "VimResized" }, {
104 group = augroup("resize_splits"),
105 callback = function()
106 local current_tab = vim.fn.tabpagenr()
107 vim.cmd("tabdo wincmd =")
108 vim.cmd("tabnext " .. current_tab)
109 end,
110})
111
112-- close some filetypes with <q>
113vim.api.nvim_create_autocmd("FileType", {
114 group = augroup("close_with_q"),
115 pattern = {
116 "PlenaryTestPopup",
117 "checkhealth",
118 "dbout",
119 "gitsigns-blame",
120 "grug-far",
121 "help",
122 "lspinfo",
123 "neotest-output",
124 "neotest-output-panel",
125 "neotest-summary",
126 "notify",
127 "qf",
128 "snacks_win",
129 "spectre_panel",
130 "startuptime",
131 "tsplayground",
132 },
133 callback = function(event)
134 vim.bo[event.buf].buflisted = false
135 vim.schedule(function()
136 vim.keymap.set("n", "q", function()
137 vim.cmd("close")
138 pcall(vim.api.nvim_buf_delete, event.buf, { force = true })
139 end, {
140 buffer = event.buf,
141 silent = true,
142 desc = "Quit buffer",
143 })
144 end)
145 end,
146})
147
148-- Auto create dir when saving a file, in case some intermediate directory does not exist
149vim.api.nvim_create_autocmd({ "BufWritePre" }, {
150 group = augroup("auto_create_dir"),
151 callback = function(event)
152 if event.match:match("^%w%w+:[\\/][\\/]") then
153 return
154 end
155 local file = vim.uv.fs_realpath(event.match) or event.match
156 vim.fn.mkdir(vim.fn.fnamemodify(file, ":p:h"), "p")
157 end,
158})
diff --git a/.config/nvim/lua/plugins/conform.lua b/.config/nvim/lua/plugins/conform.lua
new file mode 100644
index 0000000..06231dc
--- /dev/null
+++ b/.config/nvim/lua/plugins/conform.lua
@@ -0,0 +1,24 @@
1return {
2 {
3 'stevearc/conform.nvim',
4 opts = {
5 format_on_save = {
6 -- These options will be passed to conform.format()
7 timeout_ms = 500,
8 lsp_format = "fallback",
9 },
10 formatters_by_ft = {
11 lua = { "stylua" },
12 -- Conform will run multiple formatters sequentially
13 -- You can customize some of the format options for the filetype (:help conform.format)
14 rust = { "rustfmt", lsp_format = "fallback" },
15 -- Conform will run the first available formatter
16 javascript = { "prettierd", "prettier", stop_after_first = true },
17 -- latex
18 tex = { "tex-fmt" },
19 -- sql
20 sql = { "sqruff" },
21 },
22 }
23 },
24}
diff --git a/.config/nvim/lua/plugins/git.lua b/.config/nvim/lua/plugins/git.lua
index db1f435..5f1c1e3 100644
--- a/.config/nvim/lua/plugins/git.lua
+++ b/.config/nvim/lua/plugins/git.lua
@@ -99,11 +99,11 @@ return {
99 { 99 {
100 "NeogitOrg/neogit", 100 "NeogitOrg/neogit",
101 dependencies = { 101 dependencies = {
102 "nvim-lua/plenary.nvim", -- required 102 "nvim-lua/plenary.nvim", -- required
103 "sindrets/diffview.nvim", -- optional - Diff integration 103 "sindrets/diffview.nvim", -- optional - Diff integration
104 "nvim-telescope/telescope.nvim", -- optional 104 "nvim-telescope/telescope.nvim", -- optional
105 }, 105 },
106 cmd="Neogit", 106 cmd = "Neogit",
107 config = true 107 config = true
108 } 108 }
109} 109}
diff --git a/.config/nvim/lua/plugins/lastplace.lua b/.config/nvim/lua/plugins/lastplace.lua
new file mode 100644
index 0000000..72e5c7f
--- /dev/null
+++ b/.config/nvim/lua/plugins/lastplace.lua
@@ -0,0 +1,11 @@
1return {
2 {
3 "ethanholz/nvim-lastplace",
4
5 opts = {
6 lastplace_ignore_buftype = { "quickfix", "nofile", "help" },
7 lastplace_ignore_filetype = { "gitcommit", "gitrebase", "svn", "hgcommit" },
8 lastplace_open_folds = true,
9 },
10 }
11}
diff --git a/.config/nvim/lua/plugins/lsp.lua b/.config/nvim/lua/plugins/lsp.lua
index 41616de..8bc496c 100644
--- a/.config/nvim/lua/plugins/lsp.lua
+++ b/.config/nvim/lua/plugins/lsp.lua
@@ -12,35 +12,36 @@ return {
12 local map = require("helpers.keys").map 12 local map = require("helpers.keys").map
13 13
14 map('n', '<leader>e', vim.diagnostic.open_float, "lsp: open diagnostics float") 14 map('n', '<leader>e', vim.diagnostic.open_float, "lsp: open diagnostics float")
15 map('n', '[d', vim.diagnostic.goto_prev, "lsp: goto previous diagnostic") 15 map('n', '[d', function() vim.diagnostic.jump({ count = -1, float = true }) end,
16 map('n', ']d', vim.diagnostic.goto_next, "lsp: goto next diagnostic") 16 "lsp: goto previous diagnostic")
17 17 map('n', ']d', function() vim.diagnostic.jump({ count = 1, float = true }) end, "lsp: goto next diagnostic")
18 -- set up cool signs for diagnostics
19 local signs = { Error = " ", Warn = "", Hint = "", Info = "" }
20 for type, icon in pairs(signs) do
21 local hl = "DiagnosticSign" .. type
22 vim.fn.sign_define(hl, { text = icon, texthl = hl, numhl = "" })
23 end
24 18
25 -- Diagnostic config 19 vim.diagnostic.config({
26 local config = { 20 underline = true,
27 virtual_text = false,
28 signs = { 21 signs = {
29 active = signs, 22 active = true,
23 text = {
24 [vim.diagnostic.severity.ERROR] = "",
25 [vim.diagnostic.severity.WARN] = "",
26 [vim.diagnostic.severity.HINT] = "󰟃",
27 [vim.diagnostic.severity.INFO] = "",
28 },
30 }, 29 },
31 update_in_insert = true, 30 virtual_text = false,
32 underline = true,
33 severity_sort = true,
34 float = { 31 float = {
35 focusable = true,
36 style = "minimal",
37 border = "rounded",
38 source = "always",
39 header = "", 32 header = "",
40 prefix = "", 33 border = "rounded",
34 format = function(diagnostic)
35 return string.format(
36 "%s (%s) [%s]",
37 diagnostic.message,
38 diagnostic.source,
39 diagnostic.code or diagnostic.user_data.lsp.code
40 )
41 end,
41 }, 42 },
42 } 43
43 vim.diagnostic.config(config) 44 })
44 45
45 -- this function gets run when an lsp connects to a particular buffer. 46 -- this function gets run when an lsp connects to a particular buffer.
46 local on_attach = function(_, bufnr) 47 local on_attach = function(_, bufnr)
@@ -72,7 +73,7 @@ return {
72 73
73 -- misc. 74 -- misc.
74 local lspconfig = require('lspconfig') 75 local lspconfig = require('lspconfig')
75 local servers = { 'ts_ls', 'jsonls', 'eslint', 'cssls', 'html', 'vala_ls', 'gopls' } 76 local servers = { 'ts_ls', 'jsonls', 'eslint', 'cssls', 'html', 'vala_ls', 'gopls', 'clangd' }
76 for _, lsp in pairs(servers) do 77 for _, lsp in pairs(servers) do
77 lspconfig[lsp].setup { 78 lspconfig[lsp].setup {
78 on_attach = on_attach, 79 on_attach = on_attach,
@@ -80,6 +81,19 @@ return {
80 } 81 }
81 end 82 end
82 83
84 -- typst/tinymist
85 require("lspconfig")["tinymist"].setup({
86 on_attach = on_attach,
87 capabilities = capabilities,
88 single_file_support = true,
89 root_dir = function()
90 return vim.fn.getcwd()
91 end,
92 settings = {
93 formatterMode = "typstyle",
94 }
95 })
96
83 -- lua 97 -- lua
84 require("lspconfig")["lua_ls"].setup({ 98 require("lspconfig")["lua_ls"].setup({
85 on_attach = on_attach, 99 on_attach = on_attach,
@@ -142,26 +156,7 @@ return {
142 filetypes = { 'sh', 'tex' }, 156 filetypes = { 'sh', 'tex' },
143 }) 157 })
144 158
145 vim.g.rustaceanvim = { 159 require("lspconfig")["harper_ls"].setup {
146 -- Plugin configuration
147 tools = {
148 },
149 -- LSP configuration
150 server = {
151 on_attach = on_attach,
152 vim.lsp.inlay_hint.enable(true),
153 default_settings = {
154 -- rust-analyzer language server configuration
155 ['rust-analyzer'] = {
156 },
157 },
158 },
159 -- DAP configuration
160 dap = {
161 },
162 }
163
164 lspconfig.harper_ls.setup {
165 on_attach = on_attach, 160 on_attach = on_attach,
166 capabilities = capabilities, 161 capabilities = capabilities,
167 settings = { 162 settings = {
@@ -186,12 +181,58 @@ return {
186 } 181 }
187 }, 182 },
188 filetypes = { 183 filetypes = {
189 "markdown", "rust", "typescript", "typescriptreact", "javascript", "python", "c", "cpp", "ruby", "swift", "csharp", "toml", "lua", "gitcommit", "java", "html", "vimwiki" 184 "markdown", "rust", "typescript", "typescriptreact", "javascript", "python", "c", "cpp", "ruby", "swift", "csharp", "toml", "lua", "gitcommit", "java", "html", "vimwiki", "tex"
185 },
186 root_dir = function(fname)
187 return vim.fs.dirname(vim.fs.find('.git', { path = fname, upward = true })[1])
188 end,
189 }
190
191 -- ltex
192 require("lspconfig")["ltex"].setup({
193 capabilities = capabilities,
194 on_attach = function(client, bufnr)
195 on_attach(client, bufnr)
196 require("ltex_extra").setup {
197 load_langs = { "en-GB" },
198 init_check = true,
199 log_level = "warn",
200 }
201 end,
202 filetypes = { "bib", "gitcommit", "markdown", "org", "plaintex", "rst", "rnoweb", "tex", "pandoc", "quarto", "rmd", "context", "mail", "text" },
203 settings = {
204 ltex = {
205 enabled = { "bibtex", "gitcommit", "markdown", "org", "tex", "restructuredtext", "rsweave", "latex", "quarto", "rmd", "context", "mail", "plaintext" }
206 }
190 } 207 }
208 })
209
210 vim.g.rustaceanvim = {
211 -- Plugin configuration
212 tools = {
213 },
214 -- LSP configuration
215 server = {
216 on_attach = on_attach,
217 vim.lsp.inlay_hint.enable(true),
218 default_settings = {
219 -- rust-analyzer language server configuration
220 ['rust-analyzer'] = {
221 },
222 },
223 },
224 -- DAP configuration
225 dap = {
226 },
191 } 227 }
192 end, 228 end,
193 }, 229 },
194 { 230 {
231 "barreiroleo/ltex_extra.nvim",
232 ft = { "markdown", "tex" },
233 dependencies = { "neovim/nvim-lspconfig" },
234 },
235 {
195 "j-hui/fidget.nvim", 236 "j-hui/fidget.nvim",
196 event = "VeryLazy", 237 event = "VeryLazy",
197 opts = { 238 opts = {
@@ -215,9 +256,32 @@ return {
215 }, 256 },
216 { 257 {
217 "folke/lazydev.nvim", 258 "folke/lazydev.nvim",
218 ft = "lua", -- only load on lua files 259 ft = "lua",
219 }, 260 },
220 { 261 {
221 'fatih/vim-go' 262 'fatih/vim-go'
263 },
264 {
265 "danymat/neogen",
266 config = true,
267 opts = {
268 snippet_engine = "luasnip",
269 languages = {
270 python = {
271 template = {
272 annotation_convention = "reST",
273 }
274 }
275 }
276 }
277 },
278 {
279 'marcelofern/vale.nvim',
280 config = function()
281 require("vale").setup({
282 bin = "/usr/bin/vale",
283 vale_config_path = "$HOME/.config/vale/.vale.ini",
284 })
285 end,
222 } 286 }
223} 287}
diff --git a/.config/nvim/lua/plugins/telescope.lua b/.config/nvim/lua/plugins/telescope.lua
index 40c99a4..24f820d 100644
--- a/.config/nvim/lua/plugins/telescope.lua
+++ b/.config/nvim/lua/plugins/telescope.lua
@@ -12,10 +12,16 @@ return {
12 "gbprod/yanky.nvim", 12 "gbprod/yanky.nvim",
13 }, 13 },
14 config = function() 14 config = function()
15 local open_with_trouble = require("trouble.sources.telescope").open
16
15 require('telescope').setup({ 17 require('telescope').setup({
16 defaults = { 18 defaults = {
17 path_display = { "truncate" }, 19 path_display = { "truncate" },
18 prompt_prefix = " ", 20 prompt_prefix = " ",
21 mappings = {
22 i = { ["<leader>xt"] = open_with_trouble },
23 n = { ["<leader>xt"] = open_with_trouble },
24 },
19 }, 25 },
20 extensions = { 26 extensions = {
21 fzf = { 27 fzf = {
@@ -46,6 +52,10 @@ return {
46 map("n", "<leader>sw", require("telescope.builtin").grep_string, "🔭: current word") 52 map("n", "<leader>sw", require("telescope.builtin").grep_string, "🔭: current word")
47 map("n", "<leader>sg", require("telescope.builtin").live_grep, "🔭: live grep") 53 map("n", "<leader>sg", require("telescope.builtin").live_grep, "🔭: live grep")
48 map("n", "<leader>sd", require("telescope.builtin").diagnostics, "🔭: diagnostics") 54 map("n", "<leader>sd", require("telescope.builtin").diagnostics, "🔭: diagnostics")
55 map("n", "<leader>sc", function()
56 require("telescope.builtin").lsp_document_symbols({ symbols = 'function' })
57 end, "🔭: lsp symbols (functions)")
58
49 map("n", "<leader>st", function() 59 map("n", "<leader>st", function()
50 require("telescope.builtin").spell_suggest(require("telescope.themes").get_cursor({ 60 require("telescope.builtin").spell_suggest(require("telescope.themes").get_cursor({
51 prompt_title = "", 61 prompt_title = "",
diff --git a/.config/nvim/lua/plugins/typst.lua b/.config/nvim/lua/plugins/typst.lua
new file mode 100644
index 0000000..c04ea70
--- /dev/null
+++ b/.config/nvim/lua/plugins/typst.lua
@@ -0,0 +1,10 @@
1return {
2 {
3 'chomosuke/typst-preview.nvim',
4 ft = 'typst',
5 version = '1.*',
6 config = function()
7 require 'typst-preview'.setup {}
8 end,
9 }
10}
diff --git a/.config/nvim/spell/en.utf-8.add b/.config/nvim/spell/en.utf-8.add
index 8374b5b..da95938 100644
--- a/.config/nvim/spell/en.utf-8.add
+++ b/.config/nvim/spell/en.utf-8.add
@@ -129,3 +129,6 @@ Wayback
129FarSight 129FarSight
130Zetalytics 130Zetalytics
131VirusTotal 131VirusTotal
132eSLD
133NXDOMAIN
134CrUX
diff --git a/.config/task/taskrc b/.config/task/taskrc
index 0f285da..725d9ff 100644
--- a/.config/task/taskrc
+++ b/.config/task/taskrc
@@ -92,5 +92,5 @@ context.tablet.read=+@tablet
92context.tablet.write=+@tablet 92context.tablet.write=+@tablet
93context.work.read=+@work 93context.work.read=+@work
94context.work.write=+@work 94context.work.write=+@work
95news.version=3.2.0 95news.version=3.4.0
96sync.local.server_dir=\/home\/yigit\/nextcloud\/virtuals\/taskwarrior\/ 96sync.local.server_dir=\/home\/yigit\/nextcloud\/virtuals\/taskwarrior\/
diff --git a/.config/tmux/tmux.conf b/.config/tmux/tmux.conf
index 461d8a4..dbc28f2 100644
--- a/.config/tmux/tmux.conf
+++ b/.config/tmux/tmux.conf
@@ -77,7 +77,8 @@ set -g visual-activity on
77#set -g status-right "#[fg=yellow]#(uptime | cut -d ',' -f 2-)" 77#set -g status-right "#[fg=yellow]#(uptime | cut -d ',' -f 2-)"
78 78
79# set -g default-terminal "tmux-256color" 79# set -g default-terminal "tmux-256color"
80set-option -ga terminal-overrides ",xterm-256color:RGB" 80set-option -a terminal-features 'foot:RGB'
81set-option -g focus-events on
81 82
82############# 83#############
83# plugins # 84# plugins #
diff --git a/.config/user-dirs.dirs b/.config/user-dirs.dirs
index 7723b1b..e13a65c 100644
--- a/.config/user-dirs.dirs
+++ b/.config/user-dirs.dirs
@@ -13,4 +13,4 @@ XDG_PUBLICSHARE_DIR="$HOME/.local/share/publicshare"
13XDG_MUSIC_DIR="$HOME/music" 13XDG_MUSIC_DIR="$HOME/music"
14XDG_PICTURES_DIR="$HOME/desk/pics" 14XDG_PICTURES_DIR="$HOME/desk/pics"
15XDG_VIDEOS_DIR="$HOME/desk/vids" 15XDG_VIDEOS_DIR="$HOME/desk/vids"
16XDG_SCREENSHOTS_DIR="$HOME/pics/screenshots" 16XDG_SCREENSHOTS_DIR="$HOME/desk/pics/screenshots"
diff --git a/.config/waybar/config.jsonc b/.config/waybar/config.jsonc
index 373ac78..0736e43 100644
--- a/.config/waybar/config.jsonc
+++ b/.config/waybar/config.jsonc
@@ -29,11 +29,14 @@
29 // "battery#bat2", 29 // "battery#bat2",
30 "clock", 30 "clock",
31 "privacy", 31 "privacy",
32 "hyprland/language",
32 "tray" 33 "tray"
33 ], 34 ],
34 // Modules configuration 35 // Modules configuration
35 "hyprland/window": { 36 "hyprland/language": {
36 "max-length": 40 37 "format": "{}",
38 "format-en-colemak": "EN",
39 "format-tr": "TR"
37 }, 40 },
38 "hyprland/workspaces": { 41 "hyprland/workspaces": {
39 "disable-scroll": true, 42 "disable-scroll": true,
@@ -61,6 +64,9 @@
61 "default": "" 64 "default": ""
62 } 65 }
63 }, 66 },
67 "hyprland/window": {
68 "max-length": 40
69 },
64 "keyboard-state": { 70 "keyboard-state": {
65 "numlock": true, 71 "numlock": true,
66 "capslock": true, 72 "capslock": true,
@@ -76,7 +82,10 @@
76 "sway/scratchpad": { 82 "sway/scratchpad": {
77 "format": "{icon} {count}", 83 "format": "{icon} {count}",
78 "show-empty": false, 84 "show-empty": false,
79 "format-icons": ["", ""], 85 "format-icons": [
86 "",
87 ""
88 ],
80 "tooltip": true, 89 "tooltip": true,
81 "tooltip-format": "{app}: {title}" 90 "tooltip-format": "{app}: {title}"
82 }, 91 },
@@ -119,7 +128,7 @@
119 }, 128 },
120 "clock": { 129 "clock": {
121 "format": "{:%H:%M | %B %d, %A}", 130 "format": "{:%H:%M | %B %d, %A}",
122 "tooltip-format": "<tt><small>{calendar}</small></tt>", 131 "tooltip-format": "<tt><small>{calendar}</small></tt>"
123 }, 132 },
124 "cpu": { 133 "cpu": {
125 "format": "{usage}% ", 134 "format": "{usage}% ",
@@ -134,12 +143,26 @@
134 "critical-threshold": 80, 143 "critical-threshold": 80,
135 // "format-critical": "{temperatureC}°C {icon}", 144 // "format-critical": "{temperatureC}°C {icon}",
136 "format": "{temperatureC}°C {icon}", 145 "format": "{temperatureC}°C {icon}",
137 "format-icons": ["", "", ""] 146 "format-icons": [
147 "",
148 "",
149 ""
150 ]
138 }, 151 },
139 "backlight": { 152 "backlight": {
140 // "device": "acpi_video1", 153 // "device": "acpi_video1",
141 "format": "{percent}% {icon}", 154 "format": "{percent}% {icon}",
142 "format-icons": ["", "", "", "", "", "", "", "", ""] 155 "format-icons": [
156 "",
157 "",
158 "",
159 "",
160 "",
161 "",
162 "",
163 "",
164 ""
165 ]
143 }, 166 },
144 "battery": { 167 "battery": {
145 "states": { 168 "states": {
@@ -154,7 +177,13 @@
154 "format-alt": "{time} {icon}", 177 "format-alt": "{time} {icon}",
155 // "format-good": "", // An empty format will hide the module 178 // "format-good": "", // An empty format will hide the module
156 // "format-full": "", 179 // "format-full": "",
157 "format-icons": ["", "", "", "", ""] 180 "format-icons": [
181 "",
182 "",
183 "",
184 "",
185 ""
186 ]
158 }, 187 },
159 "battery#bat2": { 188 "battery#bat2": {
160 "bat": "BAT2" 189 "bat": "BAT2"
@@ -186,7 +215,11 @@
186 "phone": "", 215 "phone": "",
187 "portable": "", 216 "portable": "",
188 "car": "", 217 "car": "",
189 "default": [" ", " ", " "] 218 "default": [
219 " ",
220 " ",
221 " "
222 ]
190 }, 223 },
191 "on-click": "pavucontrol" 224 "on-click": "pavucontrol"
192 }, 225 },
@@ -241,7 +274,7 @@
241 "custom/focus": { 274 "custom/focus": {
242 "exec": "/home/yigit/.config/polybar/scripts/focus", 275 "exec": "/home/yigit/.config/polybar/scripts/focus",
243 "interval": 5, 276 "interval": 5,
244 "format": "{}" 277 "format": "{}",
278 "escape": true
245 } 279 }
246} 280}
247
diff --git a/.config/waybar/style.css b/.config/waybar/style.css
index 7db875f..231798a 100644
--- a/.config/waybar/style.css
+++ b/.config/waybar/style.css
@@ -1,14 +1,14 @@
1@import "latte.css"; 1@import "latte.css";
2 2
3* { 3* {
4 border: none; 4 border: none;
5 border-radius: 0; 5 border-radius: 0;
6 font-family: FontAwesome, scientifica; 6 font-family: FontAwesome, scientifica;
7 font-size: 14px; 7 font-size: 14px;
8 min-height: 0; 8 min-height: 0;
9 box-shadow: none; 9 box-shadow: none;
10 text-shadow: none; 10 text-shadow: none;
11 transition-duration: 0s; 11 transition-duration: 0s;
12 color: @text; 12 color: @text;
13} 13}
14 14
@@ -87,12 +87,12 @@ button:hover {
87} 87}
88 88
89/* If workspaces is the leftmost module, omit left margin */ 89/* If workspaces is the leftmost module, omit left margin */
90.modules-left > widget:first-child > #workspaces { 90.modules-left>widget:first-child>#workspaces {
91 margin-left: 0; 91 margin-left: 0;
92} 92}
93 93
94/* If workspaces is the rightmost module, omit right margin */ 94/* If workspaces is the rightmost module, omit right margin */
95.modules-right > widget:last-child > #workspaces { 95.modules-right>widget:last-child>#workspaces {
96 margin-right: 0; 96 margin-right: 0;
97} 97}
98 98
@@ -109,15 +109,16 @@ tooltip.background {
109 background-color: #ffffff; 109 background-color: #ffffff;
110} 110}
111 111
112#battery.charging, #battery.plugged { 112#battery.charging,
113#battery.plugged {
113 background-color: #26A65B; 114 background-color: #26A65B;
114} 115}
115 116
116@keyframes blink { 117@keyframes blink {
117to { 118 to {
118 background-color: #ffffff; 119 background-color: #ffffff;
119 color: #000000; 120 color: #000000;
120} 121 }
121} 122}
122 123
123/* Using steps() instead of linear as a timing function to limit cpu usage */ 124/* Using steps() instead of linear as a timing function to limit cpu usage */
@@ -200,11 +201,11 @@ label:focus {
200 background-color: @sapphire; 201 background-color: @sapphire;
201} 202}
202 203
203#tray > .passive { 204#tray>.passive {
204 -gtk-icon-effect: dim; 205 -gtk-icon-effect: dim;
205} 206}
206 207
207#tray > .needs-attention { 208#tray>.needs-attention {
208 -gtk-icon-effect: highlight; 209 -gtk-icon-effect: highlight;
209 background-color: @red; 210 background-color: @red;
210} 211}
@@ -239,10 +240,9 @@ label:focus {
239} 240}
240 241
241#language { 242#language {
242 background: #00b093; 243 background: #89b4fa;
243 padding: 0 5px; 244 padding: 0 10px;
244 margin: 0 5px; 245 min-width: 12px;
245 min-width: 16px;
246} 246}
247 247
248#keyboard-state { 248#keyboard-state {
@@ -252,11 +252,11 @@ label:focus {
252 min-width: 16px; 252 min-width: 16px;
253} 253}
254 254
255#keyboard-state > label { 255#keyboard-state>label {
256 padding: 0 5px; 256 padding: 0 5px;
257} 257}
258 258
259#keyboard-state > label.locked { 259#keyboard-state>label.locked {
260 background: rgba(0, 0, 0, 0.2); 260 background: rgba(0, 0, 0, 0.2);
261} 261}
262 262
diff --git a/.local/bin/sentences b/.local/bin/sentences
index 146fd2c..750072e 100755
--- a/.local/bin/sentences
+++ b/.local/bin/sentences
@@ -3,7 +3,7 @@
3use strict; 3use strict;
4 4
5my $pont = qr{[.!?]+}; ## punctuation 5my $pont = qr{[.!?]+}; ## punctuation
6my $abrev = qr{\b(?:Pr|Dr|Mr|[A-Z]|i\.e|e\.g|et al|etc|p|Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\.}; ## abbreviations 6my $abrev = qr{\b(?:Pr|Dr|Mr|[A-Z]|i\.e|e\.g|et al|etc|p|Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec|vs)\.}; ## abbreviations
7my $header = qr{(=+ .*? =+)}; 7my $header = qr{(=+ .*? =+)};
8 8
9$/ = ""; 9$/ = "";
diff --git a/.local/bin/spliff b/.local/bin/spliff
index 3767bac..495fa22 100755
--- a/.local/bin/spliff
+++ b/.local/bin/spliff
@@ -1,4 +1,4 @@
1#!/usr/bin/env zsh 1#!/usr/bin/env bash
2 2
3PDF=$1 3PDF=$1
4OUTPUT="${PDF:r}_spliff.pdf" 4OUTPUT="${PDF:r}_spliff.pdf"