diff --git a/.config/alacritty.yml b/.config/alacritty.yml index 77fb4fd..cf8d640 100644 --- a/.config/alacritty.yml +++ b/.config/alacritty.yml @@ -15,15 +15,15 @@ scrolling: # Font configuration font: normal: - family: PragmataPro Mono Liga + family: PragmataPro Mono style: Regular italic: - family: PragmataPro Mono Liga + family: PragmataPro Mono style: Italic bold: - family: PragmataPro Mono Liga + family: PragmataPro Mono style: Bold # Point size diff --git a/.config/bat/config b/.config/bat/config index 2c1b80e..d9aa22c 100644 --- a/.config/bat/config +++ b/.config/bat/config @@ -2,4 +2,4 @@ --italic-text=always --style="numbers,changes,header" --color=always ---terminal-width=-10 +--terminal-width=120 diff --git a/.config/bspwm/bspwmrc b/.config/bspwm/bspwmrc index 601d197..890ad80 100755 --- a/.config/bspwm/bspwmrc +++ b/.config/bspwm/bspwmrc @@ -2,14 +2,8 @@ bspmonis & -bspc rule -r "*" - bspc config border_width 2 bspc config window_gap 6 -bspc config top_padding 3 -bspc config left_padding 0 -bspc config right_padding 0 -bspc config bottom_padding 23 bspc config split_ratio 0.5 # Opciones @@ -17,8 +11,6 @@ bspc config gapless_monocle true bspc config ignore_ewmh_focus true bspc config pointer_follows_focus true bspc config removal_adjustment true -bspc config remove_unplugged_monitors false -bspc config remove_disabled_monitors false bspc config honor_size_hints false bspc config directional_focus_tightness low bspc config automatic_scheme longest_side @@ -45,7 +37,7 @@ bspc rule -a QjackCtl state=floating bspc rule -a mpv state=floating bspc rule -a Alacritty:flota state=floating bspc rule -a Sxiv:flota state=floating -bspc rule -a Firefox state=floating +bspc rule -a Firefox:Browser state=floating bspc rule -a Zathura state=tiled bspc rule -a gzdoom state=fullscreen diff --git a/.config/dunst/dunstrc b/.config/dunst/dunstrc index 3f6d926..eeeb914 100644 --- a/.config/dunst/dunstrc +++ b/.config/dunst/dunstrc @@ -92,13 +92,4 @@ foreground = "#e0d0c3" frame_color = "#e53935" timeout = 60 - -[mail] - appname = neomutt - new_icon = "/home/deadguy/img/.icn/correo.png" - -[rss] - appname = newsboat - new_icon = "/home/deadguy/img/.icn/rss.png" - # vim: ft=cfg diff --git a/.config/fontconfig/fonts.conf b/.config/fontconfig/fonts.conf index f9419f0..a39702d 100644 --- a/.config/fontconfig/fonts.conf +++ b/.config/fontconfig/fonts.conf @@ -25,7 +25,7 @@ monospace - NotoSansMono Nerd Font + PragmataPro Mono Noto Color Emoji diff --git a/.config/git/config b/.config/git/config index 321dae1..faac749 100644 --- a/.config/git/config +++ b/.config/git/config @@ -1,5 +1,6 @@ [alias] st = status + co = checkout fx = commit --fixup=HEAD ci = commit -v cm = commit -m @@ -9,8 +10,9 @@ amend = commit --amend -v full = show --format=fuller noed = commit --amend --no-edit - tr = log --graph --date-order --date=short --pretty=format:'%C(cyan)%h %C(blue)%ar%C(auto)%d%C(yellow)%s%+b %C(black)%ae' + tr = log --graph --date-order --date=short --pretty=format:'%C(cyan)%h %C(blue)%ar%C(auto)%d %C(yellow)%s%+b %C(black)%ae' fz = !sha=$( git -c color.ui=always log --oneline -n 1000 | fzf +s --no-multi --prompt 'Fixup> ' ) && git commit --fixup "${sha%% *}" + fr = !sha=$( git -c color.ui=always log --oneline -n 1000 | fzf +s --no-multi --prompt 'Revert> ' ) && git revert "${sha%% *}" wd = "!f() { git --paginate diff --dirstat=cumulative,files,0 ${1:-HEAD} | awk '{print $2}' | cut -d / -f1-${2:-4} | sort | uniq; }; f" [http] @@ -21,29 +23,60 @@ autocrlf = input whitespace = warn excludesfile = /home/deadguy/.config/git/gitignore - pager = delta + pager = "{ \ + COLUMNS=$(tput cols); \ + if [ $COLUMNS -ge 80 ] && [ -z $FZF_PREVIEW_COLUMNS ]; then \ + delta --side-by-side -w $COLUMNS; \ + elif [ $COLUMNS -ge 160 ] && [ ! -z $FZF_PREVIEW_COLUMNS ]; then \ + delta --side-by-side -w $FZF_PREVIEW_COLUMNS; \ + else \ + delta; \ + fi \ + }" [interactive] diffFilter = delta --color-only [delta] - features = side-by-side line-numbers decorations - syntax-theme = zenburn - plus-style = syntax "#003800" - minus-style = syntax "#3f0001" - whitespace-error-style = 22 reverse + side-by-side = false + line-numbers = true + syntax-theme = gruvbox + hunk-header-style = omit + file-style = blue + file-decoration-style = blue ul ol + zero-style = dim syntax + minus-non-emph-style = dim red + minus-emph-style = bold red 52 + minus-empty-line-marker-style = normal "#3f0001" + plus-non-emph-style = dim green + plus-emph-style = bold green 22 + plus-empty-line-marker-style = normal "#002800" + whitespace-error-style = reverse white + file-added-label = [+] + file-copied-label = [C] + file-modified-label = [M] + file-removed-label = [-] + file-renamed-label = [R] + line-numbers-left-format = "{nm:>1} " + line-numbers-right-format = "{np:>1} " + line-numbers-minus-style = red italic + line-numbers-plus-style = green italic -[delta "decorations"] - commit-decoration-style = yellow ul ol - file-style = yellow ul - file-decoration-style = none - hunk-header-decoration-style = cyan box - -[delta "line-numbers"] - line-numbers-left-style = cyan - line-numbers-right-style = cyan - line-numbers-minus-style = 124 - line-numbers-plus-style = 28 +[delta "flashy"] +side-by-side = true +line-numbers = true +decorations = true +syntax-theme = dracula +plus-style = syntax "#003800" +minus-style = syntax "#3f0001" +commit-decoration-style = bold yellow box ul +file-style = bold yellow ul +file-decoration-style = none +hunk-header-decoration-style = cyan box ul +line-numbers-left-style = cyan +line-numbers-right-style = cyan +line-numbers-minus-style = 124 +line-numbers-plus-style = 28 [web] browser = firefox diff --git a/.config/neomutt/neomuttrc b/.config/neomutt/neomuttrc index b42e312..cbaf59d 100644 --- a/.config/neomutt/neomuttrc +++ b/.config/neomutt/neomuttrc @@ -3,29 +3,32 @@ source neomuttrc.d/gpg.rc source neomuttrc.d/bindings.neomuttrc source neomuttrc.d/colors.neomuttrc source neomuttrc.d/powerline.neomuttrc +source neomuttrc.d/news.neomuttrc unset help -set mailcap_path = ~/.config/neomutt/mailcap +unset signature set mime_type_query_command = "file --mime-type -b %s" +set mailcap_path = ~/.config/neomutt/mailcap set sort = threads set sort_aux = reverse-last-date-received set strict_threads set smtp_authenticators = 'gssapi:login' set attribution = "En %{!%F a las %R}, %n escribió:" set date_format = "%F %R" -set quote_regexp = "^( {0,4}[>|:#%]| {0,4}[a-z0-9]+[>|]+)+" -set reply_regexp = "^(([Rr][Ee]?(\[[0-9]+\])?: *)?(\[[^]]+\] *)?)*" +set quote_regex = "^( {0,4}[>|:#%]| {0,4}[a-z0-9]+[>|]+)+" +set reply_regex = "^(([Rr][Ee]?(\[[0-9]+\])?: *)?(\[[^]]+\] *)?)*" set send_charset = "utf-8" set forward_format = "Fwd: %s" # Format of subject when forwarding +set timeout = 2 set sleep_time = 0 # Pause 0 seconds for informational messages set mail_check = 60 # To avoid lags using IMAP -set wrap = 100 +set use_envelope_from = yes +set edit_headers = yes set rfc2047_parameters = yes -set smart_wrap = yes -set reverse_realname = yes # Use any real name provided when replying set mime_forward = yes # Attachments are forwarded with mail set auto_tag = yes # Automatically apply actions to all tagged messages set delete = yes # Don't ask, do. +set edit_headers = yes # Allow editing fields set sidebar_visible = no # Not needed set markers = no # Disables the `+` displayed at line wraps set mark_old = no # Unread mail stay unread until read @@ -35,14 +38,11 @@ set fast_reply # skip to compose when replying set fcc_attach # save attachments with the body set forward_quote # include message in forwards set reverse_name # reply as whomever it was to -set include # include message in replies set menu_scroll # scroll in menus -set autoedit -set edit_headers -set sort_re set arrow_cursor +set pipe_decode -set pager_index_lines = 13 +set pager_index_lines = 10 set pager_context = 3 set pager_stop @@ -55,6 +55,9 @@ auto_view text/x-patch auto_view application/ics auto_view application/pgp-encrypted +set print_command = "nvim -R -c 'set ft=mail background=dark \ + popt=header:0' -c 'ha' -c 'q' -" + # neomutt doesn't have this yet :( # set editor = "carta.sh `echo $EDITOR`" # set background_edit = `[ -n "$TMUX" ] && echo 'yes' || echo 'no'` @@ -62,8 +65,8 @@ auto_view application/pgp-encrypted # Header Options ignore * unhdr_order * -unignore from subject to cc date x-mailer x-url user-agent -hdr_order date from to cc subject +unignore from subject to cc bcc date x-mailer x-url user-agent +hdr_order date from to cc bcc subject # Warns if replying to multiple recipt email reply-hook "~C 2" "set sleep_time=10\;echo 'Warning, original message has multiple recipients!'\;set sleep_time=1" diff --git a/.config/neomutt/neomuttrc.d/bindings.neomuttrc b/.config/neomutt/neomuttrc.d/bindings.neomuttrc index 224f6b7..4bd8f0f 100644 --- a/.config/neomutt/neomuttrc.d/bindings.neomuttrc +++ b/.config/neomutt/neomuttrc.d/bindings.neomuttrc @@ -43,6 +43,20 @@ bind pager,attach h exit bind index,pager,browser d half-down bind index,pager,browser u half-up +# View an attachment in the GUI browser +macro attach \cv "\ + set my_pipe_decode=\$pipe_decode pipe_decode\ + attachview\ + set pipe_decode=\$my_pipe_decode; unset my_pipe_decode" \ +"Open attachment in GUI browser" + +# twtxt +macro index,pager,attach,compose T "\ + set my_pipe_decode=\$pipe_decode nopipe_decode\ + twt-reply\ + set pipe_decode=\$my_pipe_decode; unset my_pipe_decode" \ +"Reply to current twt" + macro index \Cr "T~UN." "mark all messages as read" macro index O "mbsync -c ~/.config/isync/mbsyncrc -a" "run mbsync to sync all mail" macro index \Cf "unset wait_keyread -p 'Enter a search term to find with notmuch: ' x; echo \$x >~/.cache/mutt_terms~i \"\`notmuch search --output=messages \$(cat ~/.cache/mutt_terms) | head -n 600 | perl -le '@a=<>;s/\^id:// for@a;$,=\"|\";print@a' | perl -le '@a=<>; chomp@a; s/\\+/\\\\+/ for@a;print@a' \`\"" "show only messages matching a notmuch pattern" @@ -51,8 +65,7 @@ macro index A "all\n" "show all messages (undo limit)" macro browser h '..' "Go to parent folder" macro index,pager 'source /home/deadguy/.config/neomutt/accounts/6-dgy@fuckup.club.muttrc!;' "switch to dgy@fuckup.club" # mw-autogenerated -macro index,pager 'source ~/.config/neomutt/accounts/1-alex.muttrc!;' "switch to vidaar@gmail.com" -macro index,pager 'source ~/.config/neomutt/accounts/2-alejo.muttrc!;' "switch to alejo.jardon@gmail.com" -macro index,pager 'source ~/.config/neomutt/accounts/4-iamz@airmail.cc.muttrc!;' "switch to iamz@airmail.cc" -macro index,pager 'source ~/.config/neomutt/accounts/3-git.muttrc!;' "switch to adeadgit@gmail.com" -macro index,pager a "set my_pipe_decode=\$pipe_decode pipe_decodeabook --add-emailset pipe_decode=\$my_pipe_decode; unset my_pipe_decode" "add the sender address to abook" +macro index,pager 'source ~/.config/neomutt/accounts/3-dgy@texto-plano.xyz.muttrc!;' "switch to adeadgit@gmail.com" +macro index,pager 'source ~/.config/neomutt/accounts/1-vidaar@gmail.com.muttrc!;' "switch to vidaar@gmail.com" +macro index,pager 'source ~/.config/neomutt/accounts/2-alejo.muttrc!;' "switch to alejo.jardon@gmail.com" +macro index,pager 'source ~/.config/neomutt/accounts/4-iamz@airmail.cc.muttrc!;' "switch to iamz@airmail.cc" diff --git a/.config/neomutt/neomuttrc.d/powerline.neomuttrc b/.config/neomutt/neomuttrc.d/powerline.neomuttrc index 5f6c9f8..a6d9737 100644 --- a/.config/neomutt/neomuttrc.d/powerline.neomuttrc +++ b/.config/neomutt/neomuttrc.d/powerline.neomuttrc @@ -2,28 +2,27 @@ # Powerline / nerdfont # This is a bit "hackish" due to neomutt limitations -# # Author: Sheoak https://github.com/sheoak/neomutt-powerline-nerdfonts +# Modified by Deadguy -set index_format=" %zs %zc %zt %<[y?%<[m?%<[d?%[%R ]&%[%a %d]>&%[%b %d]>&%[%F ]> %-28.28L %?M?(%1M)& ? %?X?& ? %s" +set index_format=" %zs %zc %zt %<[y?%<[m?%<[d?%[%R ]&%[%a %d]>&%[%b %d]>&%[%F ]> %-28.28L %?K?%15.14K& ? %?M?(%1M)& ? %?X? & ? %s %> %?g?%g?" -set pager_format="\n %n %T %s%*  %{!%F · %R} %?X? %X?%P  \n \n" -set status_format = " %f %?r? %m ?%?n? %n ?%?d? %d ?%?t? %t ?%?F? %F ?%?p? %p? \n \n" -set vfolder_format = " %N %?n?%3n& ? %8m  · %f" -set attach_format = "%u%D  %T%-75.75d %?T?%& ? %5s · %m/%M" +set pager_format="\n%n %T %s%*  %{!%F · %R} %?X? %X? %P\n \n" +set status_format = " %f %?r? %m ?%?n? %n ?%?d? %d ?%?t? %t ?%?F? %F ?%?p? %p? %> %P\n \n" +set vfolder_format = " %N %?n?%3n& ? %8m  · %f" +set attach_format = "%u%D  %T%-75.75d %?T?%& ? %5s · %m/%M" -# no addressed to me, to me, group, cc, sent by me, mailing list -set to_chars="" +# not addressed to me, to me, not only recipient, cc, sent by me, mailing list, reply-to +set to_chars=" " # unchanged mailbox, changed, read only, attach mode set status_chars = " " -ifdef crypt_chars set crypt_chars = " " -set flag_chars = " " +ifdef crypt_chars set crypt_chars = " " +set flag_chars = "   " -set hidden_tags = "unread,draft,flagged,passed,replied,attachment,signed,encrypted" -tag-transforms "replied" "↻ " \ - "encrytpted" "" \ - "signed" "" \ - "attachment" "" \ +tag-transforms "replied" " " \ + "encrytpted" " " \ + "signed" " " \ + "attachment" " " \ # The formats must start with 'G' and the entire sequence is case sensitive. tag-formats "replied" "GR" \ @@ -38,8 +37,8 @@ color status color12 default '(\s)([a-zA-Z0-9])' color status color12 default '( )' color status color12 default '(\S)' color status color0 default '(|)' -color status green default '' -color status white default '' -color status yellow default '' -color status red default '' +color status green default ' ' +color status white default ' ' +color status yellow default ' ' +color status red default ' ' color tree color15 default diff --git a/.config/newsboat/config b/.config/newsboat/config index 02421f2..cf9508d 100644 --- a/.config/newsboat/config +++ b/.config/newsboat/config @@ -78,6 +78,6 @@ save-path ~/.config/newsboat/saved macro , open-in-browser macro d set browser "ytdl"; open-in-browser ; set browser linkhandler macro v set browser "setsid nohup mpv"; open-in-browser ; set browser linkhandler -macro w set browser "tmux split-window -hp 60 && tmux send-keys '$lynx %u && tmux kill-pane\n'"; open-in-browser ; set browser linkhandler +macro w set browser "tmux split-window -hp 60 && tmux send-keys 'lynx %u && tmux kill-pane\n'"; open-in-browser ; set browser linkhandler # vim: ft=conf cms=#%s diff --git a/.config/nvim/after/ftplugin/go.vim b/.config/nvim/after/ftplugin/go.vim index f421b96..c15c856 100644 --- a/.config/nvim/after/ftplugin/go.vim +++ b/.config/nvim/after/ftplugin/go.vim @@ -3,14 +3,18 @@ setlocal shiftwidth=4 setlocal tabstop=4 setlocal foldmethod=syntax +let g:go_textobj_include_function_doc = 1 let g:go_autodetect_gopath = 1 let g:go_imports_autosave = 1 let g:go_doc_popup_window = 1 let g:go_gopls_enabled = 1 +let g:go_metalinter_autosave = 1 let g:go_fmt_command = "goimports" let g:go_list_type = "quickfix" " Go syntax highlighting +let g:go_highlight_types = 1 +let g:go_highlight_build_constraints = 1 let g:go_highlight_fields = 1 let g:go_highlight_functions = 1 let g:go_highlight_function_calls = 1 @@ -23,14 +27,12 @@ let g:go_auto_type_info = 1 " Add the failing test name to the output of :GoTest let g:go_test_show_name = 1 -let b:ale_linters = ['gopls'] - inoremap . . -nmap t :GoTest! -nmap v :GoVet! -nmap b :GoBuild! -nmap i :GoInstall! -nmap l :GoMetaLinter! -nmap r :GoRun % -nmap d :GoDebugStart! +nmap t :GoTest! +nmap b :GoBuild! +nmap i :GoInstall! +nmap R :GoRun % +nmap x :GoDebugStart! nmap r :GoRun! +nmap d :GoDoc +nmap D :GoDocBrowser diff --git a/.config/nvim/after/ftplugin/javascript.vim b/.config/nvim/after/ftplugin/javascript.vim index f7e3848..6ad607e 100644 --- a/.config/nvim/after/ftplugin/javascript.vim +++ b/.config/nvim/after/ftplugin/javascript.vim @@ -1,5 +1,3 @@ -let b:ale_linters = ['prettier_standard'] -let b:ale_fixers = ['prettier_standard'] setlocal path=.,** setlocal path-=/usr/include setlocal suffixesadd+=.js diff --git a/.config/nvim/after/ftplugin/json.vim b/.config/nvim/after/ftplugin/json.vim deleted file mode 100644 index 6498b1a..0000000 --- a/.config/nvim/after/ftplugin/json.vim +++ /dev/null @@ -1,2 +0,0 @@ -let b:ale_linters = ['prettier'] -let b:ale_fixers = ['prettier'] diff --git a/.config/nvim/after/ftplugin/jsx.vim b/.config/nvim/after/ftplugin/jsx.vim deleted file mode 100644 index 77325c5..0000000 --- a/.config/nvim/after/ftplugin/jsx.vim +++ /dev/null @@ -1,2 +0,0 @@ -let b:ale_linters = ['prettier_standard'] -let b:ale_fixers = ['prettier_standard'] diff --git a/.config/nvim/after/ftplugin/markdown.vim b/.config/nvim/after/ftplugin/markdown.vim index 37f6070..d879808 100644 --- a/.config/nvim/after/ftplugin/markdown.vim +++ b/.config/nvim/after/ftplugin/markdown.vim @@ -2,10 +2,25 @@ setlocal nonumber norelativenumber laststatus=0 showmode setlocal signcolumn=no textwidth=80 wrap sw=2 setlocal tabstop=2 noexpandtab softtabstop=0 linebreak setlocal autoindent ruler colorcolumn=80 +setlocal complete+=kspell setlocal spell spelllang=es,en_us,cjk -setlocal formatoptions& -setlocal formatoptions+=tqnw -setlocal formatlistpat=^\\s*\\(\\d\\+\\\|[a-z]\\)[\\].)]\\s* +setlocal formatoptions=1tqnw +setlocal comments=n:> +setlocal formatlistpat=^\\s* " Optional leading whitespace +setlocal formatlistpat+=[ " Start character class +setlocal formatlistpat+=\\[({]\\? " | Optionally match opening punctuation +setlocal formatlistpat+=\\( " | Start group +setlocal formatlistpat+=[0-9]\\+ " | | Numbers +setlocal formatlistpat+=\\\| " | | or +setlocal formatlistpat+=[a-zA-Z]\\+ " | | Letters +setlocal formatlistpat+=\\) " | End group +setlocal formatlistpat+=[\\]:.)} " | Closing punctuation +setlocal formatlistpat+=] " End character class +setlocal formatlistpat+=\\s\\+ " One or more spaces +setlocal formatlistpat+=\\\| " or +setlocal formatlistpat+=^\\s*[-+*]\\s\\+ " Bullet points +setlocal comments=b:*,b:- +setlocal commentstring= " Spellcheck nnoremap [s @@ -24,6 +39,3 @@ inoremap :.s/\[\]/\[x\] " Markdown jump to next heading nnoremap ]] :call dead#functions#JumpToNextHeading("down", v:count1) nnoremap [[ :call dead#functions#JumpToNextHeading("up", v:count1) - -let b:ale_linters = ['prettier'] -let b:ale_fixers = ['prettier'] diff --git a/.config/nvim/after/ftplugin/qf.vim b/.config/nvim/after/ftplugin/qf.vim index f652c82..e482937 100644 --- a/.config/nvim/after/ftplugin/qf.vim +++ b/.config/nvim/after/ftplugin/qf.vim @@ -3,8 +3,9 @@ setlocal nospell setlocal nolist " Close with q -nnoremap q :close +nnoremap q :close +nnoremap dd :call qf#delitem() nnoremap :call older() nnoremap :call newer() diff --git a/.config/nvim/after/ftplugin/scss.vim b/.config/nvim/after/ftplugin/scss.vim deleted file mode 100644 index cb50a73..0000000 --- a/.config/nvim/after/ftplugin/scss.vim +++ /dev/null @@ -1,2 +0,0 @@ -let b:ale_linters = ['stylelint'] -let b:ale_fixers = ['stylelint'] diff --git a/.config/nvim/after/ftplugin/sh.vim b/.config/nvim/after/ftplugin/sh.vim index a5cd012..3e5bdd6 100644 --- a/.config/nvim/after/ftplugin/sh.vim +++ b/.config/nvim/after/ftplugin/sh.vim @@ -4,5 +4,12 @@ endif let b:sh_indent_options['continuation-line'] = 2 -let b:ale_linters = ['shellcheck'] -let b:ale_fixers = ['shfmt'] +" command! -buffer -bang Lint compiler shfmt | lmake +" command! -buffer -bang Compile compiler shellcheck | make + +" augroup linty +" au! * +" au BufWritePre Lint +" au BufWritePost :silent Compile +" au QuickFixCmdPost make cwindow +" augroup END diff --git a/.config/nvim/after/ftplugin/typescript.vim b/.config/nvim/after/ftplugin/typescript.vim deleted file mode 100644 index dddc495..0000000 --- a/.config/nvim/after/ftplugin/typescript.vim +++ /dev/null @@ -1,2 +0,0 @@ -let b:ale_linters = ['tsserver', 'eslint'] -let b:ale_linters = ['prettier_standard'] diff --git a/.config/nvim/after/ftplugin/vim.vim b/.config/nvim/after/ftplugin/vim.vim deleted file mode 100644 index b2be616..0000000 --- a/.config/nvim/after/ftplugin/vim.vim +++ /dev/null @@ -1 +0,0 @@ -" let b:ale_linters = ['vint'] diff --git a/.config/nvim/after/ftplugin/yaml.vim b/.config/nvim/after/ftplugin/yaml.vim deleted file mode 100644 index 1b82e71..0000000 --- a/.config/nvim/after/ftplugin/yaml.vim +++ /dev/null @@ -1 +0,0 @@ -let b:ale_linters = ['prettier'] diff --git a/.config/nvim/after/ftplugin/zsh.vim b/.config/nvim/after/ftplugin/zsh.vim index 6f78fab..9cdbe22 100644 --- a/.config/nvim/after/ftplugin/zsh.vim +++ b/.config/nvim/after/ftplugin/zsh.vim @@ -1 +1,9 @@ setlocal shiftwidth=2 + +command! -buffer -bang Compile compiler zsh | make + +augroup linty + au! * + au BufWritePost Compile + au QuickFixCmdPost make cwindow +augroup END diff --git a/.config/nvim/after/plugin/coc.vim b/.config/nvim/after/plugin/coc.vim index 09c8474..e8898ed 100644 --- a/.config/nvim/after/plugin/coc.vim +++ b/.config/nvim/after/plugin/coc.vim @@ -1,30 +1,26 @@ -if exists('b:coc_enabled=1') +" if exists('b:coc_enabled=1') set completeopt-=preview - nnoremap :vsplit:CocConfig + nnoremap :vsplit:CocConfig - let g:coc_global_extensions = ['coc-highlight', 'coc-snippets', 'coc-tsserver', 'coc-css', 'coc-html', 'coc-json', 'coc-emmet'] - - inoremap - \ pumvisible() ? "\" : - \ coc#expandableOrJumpable() ? - \ "\=coc#rpc#request('doKeymap', ['snippets-expand-jump',''])\" : - \ check_back_space() ? "\" : - \ coc#refresh() - - function! s:check_back_space() abort - let col = col('.') - 1 - return !col || getline('.')[col - 1] =~# '\s' - endfunction - - inoremap coc#refresh() + let g:coc_global_extensions = ['coc-diagnostic', 'coc-prettier', 'coc-highlight', 'coc-snippets', 'coc-tsserver', 'coc-css', 'coc-html', 'coc-json', 'coc-emmet'] + " Use to confirm completion, `u` means break undo chain at current + " position. Coc only does snippet and additional edit on confirm. if exists('*complete_info') - inoremap complete_info()["selected"] != "-1" ? "\" : "\u\" + inoremap complete_info()["selected"] != "-1" ? "\" : "\u\" else - inoremap pumvisible() ? "\" : "\u\" + imap pumvisible() ? "\" : "\u\" endif + " use for trigger completion + inoremap coc#refresh() + + " Navigate diagnostics + nnoremap :CocList diagnostics + nmap (coc-diagnostic-prev) + nmap (coc-diagnostic-next) + " GoTo code navigation. nnoremap gd (coc-definition) nnoremap gr (coc-references) @@ -44,18 +40,16 @@ if exists('b:coc_enabled=1') nnoremap rn (coc-rename) aug Cursor - au! - au CursorHold * silent call CocActionAsync('highlight') - au User CocJumpPlaceholder call CocActionAsync('showSignatureHelp') + au! + " au CursorHold * silent call CocActionAsync('highlight') + au User CocJumpPlaceholder call CocActionAsync('showSignatureHelp') aug END -else - set omnifunc=syntaxcomplete#Complete - " open omni completion menu closing previous if open and opening new menu without changing the text - inoremap (pumvisible() ? (col('.') > 1 ? 'i' : 'i') : '') . - \ '=pumvisible() ? "\C-n>\C-p>\Down>" : ""' - " open user completion menu closing previous if open and opening new menu without changing the text - inoremap (pumvisible() ? (col('.') > 1 ? 'i' : 'i') : '') . - \ '=pumvisible() ? "\C-n>\C-p>\Down>" : ""' - - packadd AutoComplPop -endif +" else +" set omnifunc=syntaxcomplete#Complete +" " open omni completion menu closing previous if open and opening new menu without changing the text +" inoremap (pumvisible() ? (col('.') > 1 ? 'i' : 'i') : '') . +" \ '=pumvisible() ? "\C-n>\C-p>\Down>" : ""' +" " open user completion menu closing previous if open and opening new menu without changing the text +" inoremap (pumvisible() ? (col('.') > 1 ? 'i' : 'i') : '') . +" \ '=pumvisible() ? "\C-n>\C-p>\Down>" : ""' +" endif diff --git a/.config/nvim/after/plugin/vim-jsx.vim b/.config/nvim/after/plugin/vim-jsx.vim index 8a4fa1f..345e91a 100644 --- a/.config/nvim/after/plugin/vim-jsx.vim +++ b/.config/nvim/after/plugin/vim-jsx.vim @@ -1,10 +1,10 @@ " Stop the vim-jsx plug-in from aggressively blowing away our ftdetection. " " Without something like this, our ftdetect/{jest,jsx}.vim config will -" set the filetype in test files to "javascript.jest" or -" "javascript.jest.jsx", but then vim-jsx will come along and unconditionally -" set it to "javascript.jsx", which isn't helpful. Currently I'm not working in -" any projects that use a ".jsx" extension so this workaround is viable +" set the filetype in test files to javascript.jest or +" javascript.jest.jsx, but then vim-jsx will come along and unconditionally +" set it to javascript.jsx, which isn't helpful. Currently I'm not working in +" any projects that use a .jsx extension so this workaround is viable " (unfortunately, there's no other mechanism for disabling this functionality in " vim-jsx). let g:jsx_ext_required=1 diff --git a/.config/nvim/autoload/dead/colores.vim b/.config/nvim/autoload/dead/colores.vim index b80e19f..c87642a 100644 --- a/.config/nvim/autoload/dead/colores.vim +++ b/.config/nvim/autoload/dead/colores.vim @@ -1,47 +1,26 @@ -function! dead#colores#MyHighlights() abort - highlight Trail ctermbg=red guibg=red - call matchadd('Trail', '\s\+$', 100) - highlight ColorColumn ctermbg=magenta - call matchadd('ColorColumn', '\%81v', 100) -endfunction - function! dead#colores#Maquillaje() abort - highlight! Normal guibg=NONE - highlight! VertSplit ctermbg=NONE ctermfg=0 cterm=NONE guibg=NONE guifg=#080808 gui=NONE - highlight! TabLineFill ctermbg=NONE ctermfg=NONE cterm=NONE guibg=NONE guifg=#ef2f27 gui=NONE - highlight! TablineSel ctermbg=NONE ctermfg=234 guibg=NONE guifg=#008bbd - highlight! ALEWarningSignLineNr ctermfg=4 cterm=undercurl guifg=#c4ab39 gui=undercurl - highlight! ALEErrorSignLineNr ctermfg=red cterm=undercurl guifg=#c4384b gui=undercurl - highlight! CocUnderline cterm=undercurl gui=undercurl - highlight! PmenuSel guibg=#111111 guifg=#6699cc - highlight! RedrawDebugClear guibg=#080808 - highlight! NvimInternalError guifg=#080808 - highlight! DiffAdded guifg=#333333 - highlight! PmenuThumb guifg=#333333 - - highlight! SpellBad ctermfg=203 cterm=underline guifg=#ff5f5f + highlight! RedrawDebugClear guibg=#080808 + highlight! NvimInternalError guifg=#080808 + highlight! SpellBad ctermfg=203 cterm=underline guifg=#ff5f5f highlight! link SpellLocal SpellBad highlight! link SpellRare SpellBad highlight! link SpellCap SpellBad - highlight! link Folded Comment highlight! link NonText VertSplit - if &diff - highlight! link DiffText MatchParen - highlight! DiffAdd guibg=#0f111a guifg=#43a047 - highlight! DiffChange guibg=#0f111a guifg=#fdd835 - highlight! DiffRemoved guibg=#0f111a guifg=#e53935 - endif + highlight GitGutterAdd ctermfg=2 guifg=#009900 gui=bold + highlight GitGutterChange ctermfg=3 guifg=#bbbb00 gui=bold + highlight GitGutterDelete ctermfg=1 guifg=#ff2222 gui=bold endfunction function! dead#colores#Barra() abort - highlight User1 ctermfg=251 ctermbg=NONE guibg=NONE guifg=#666666 cterm=none - highlight User2 ctermfg=234 ctermbg=NONE guibg=NONE guifg=#f74782 cterm=none gui=bold - highlight User3 ctermfg=234 ctermbg=4 guibg=NONE guifg=#008bb4 cterm=none gui=bold - highlight User4 ctermfg=234 ctermbg=251 guibg=NONE guifg=#c6c6c6 cterm=none gui=bold - highlight User5 ctermfg=234 ctermbg=4 guibg=NONE guifg=#e64eff cterm=none gui=bold - highlight User6 ctermfg=234 ctermbg=9 guibg=NONE guifg=#fbad34 cterm=none gui=bold - highlight User7 ctermfg=234 ctermbg=251 guibg=NONE guifg=#407e4a cterm=none gui=bold - highlight User8 ctermfg=NONE ctermbg=NONE guibg=NONE guifg=NONE cterm=NONE + highlight User1 ctermbg=NONE ctermfg=251 cterm=none guibg=NONE guifg=#333333 + highlight User2 ctermbg=NONE ctermfg=234 cterm=none guibg=NONE guifg=#c4384b gui=bold + highlight User3 ctermbg=4 ctermfg=234 cterm=none guibg=NONE guifg=#008bb4 gui=bold + highlight User4 ctermbg=251 ctermfg=234 cterm=none guibg=NONE guifg=#C0C0C0 gui=bold + highlight User5 ctermbg=4 ctermfg=234 cterm=none guibg=NONE guifg=#e64eff gui=bold + highlight User6 ctermbg=9 ctermfg=234 cterm=none guibg=NONE guifg=#fbad34 gui=bold + highlight User7 ctermbg=251 ctermfg=234 cterm=none guibg=NONE guifg=#407e4a gui=bold + highlight User8 ctermbg=NONE ctermfg=NONE cterm=NONE guibg=NONE guifg=#c4ab39 + highlight User9 ctermbg=NONE ctermfg=251 cterm=NONE guibg=NONE guifg=#666666 endfunction diff --git a/.config/nvim/autoload/dead/functions.vim b/.config/nvim/autoload/dead/functions.vim index ffe0d60..c542960 100644 --- a/.config/nvim/autoload/dead/functions.vim +++ b/.config/nvim/autoload/dead/functions.vim @@ -11,12 +11,12 @@ function! dead#functions#Relativize(v) abort endfunction function! dead#functions#JumpToNextHeading(direction, count) - let col = col(".") - silent execute a:direction == "up" ? '?^#' : '/^#' + let col = col('.') + silent execute a:direction ==? 'up' ? '?^#' : '/^#' if a:count > 1 - silent execute "normal! " . repeat("n", a:direction == "up" && col != 1 ? a:count : a:count - 1) + silent execute 'normal! ' . repeat('n', a:direction ==? 'up' && col != 1 ? a:count : a:count - 1) endif - silent execute "normal! " . col . "|" + silent execute 'normal! ' . col . '|' unlet col endfunction @@ -27,3 +27,20 @@ function! dead#functions#NewMail() 0r ~/.config/nvim/templates/correo.skeleton | w | $ endfunction command! Mail call dead#functions#NewMail() + +" Ripgrep advanced +function! dead#functions#RipgrepFzf(query, fullscreen) + let command_fmt = 'rg --column --line-number --no-heading --color=always --smart-case %s || true' + let initial_command = printf(command_fmt, shellescape(a:query)) + let reload_command = printf(command_fmt, '{q}') + let spec = {'options': ['--phony', '--query', a:query, '--bind', 'change:reload:'.reload_command]} + call fzf#vim#grep(initial_command, 1, fzf#vim#with_preview(spec), a:fullscreen) +endfunction + +command! -nargs=* -bang RG call dead#functions#RipgrepFzf(, 0) + +" Git grep +command! -bang -nargs=* GGrep + \ call fzf#vim#grep( + \ 'git grep --line-number '.shellescape(), 0, + \ fzf#vim#with_preview({'dir': systemlist('git rev-parse --show-toplevel')[0]}), 0) diff --git a/.config/nvim/autoload/dead/statusline.vim b/.config/nvim/autoload/dead/statusline.vim index cd663b2..1fbae11 100644 --- a/.config/nvim/autoload/dead/statusline.vim +++ b/.config/nvim/autoload/dead/statusline.vim @@ -8,12 +8,12 @@ endfunction function! dead#statusline#StatusLine() abort let l:statusline='' - let l:statusline.='%#TabLineFill#%{dead#statusline#LinterStatus()} ' - let l:statusline.='%#User6#%{fugitive#head()} ' - let l:statusline.='%#User1#%{GitStatus()} ' + let l:statusline.='%#User9#%f %m' + let l:statusline.=' %#User8#%{fugitive#head()} ' + let l:statusline.='%#User7#%{GitStatus()}' let l:statusline.='%{dead#statusline#LinePasteMode()}' let l:statusline.='%= ' - let l:statusline.='%#User1#%p%% %l:%c ' + let l:statusline.='%#User9#%p%% ☰ %l:%c ' let l:statusline.=dead#statusline#ModeColor() let l:statusline.=dead#statusline#CurrentMode() return l:statusline @@ -22,26 +22,21 @@ endfunction function! dead#statusline#StatusLineNC() abort let l:statusline='' let l:statusline.='%#User1#' - let l:statusline.='%= ' - let l:statusline.='%f ' + let l:statusline.='%m' + let l:statusline.='%=' + let l:statusline.='%F' return l:statusline endfunction function! dead#statusline#HelpStatusLine() abort let l:statusline='' - let l:statusline.='%= ' + let l:statusline.='%#User1#' + let l:statusline.='%f' + let l:statusline.='%=' let l:statusline.='%h' return l:statusline endfunction -function! dead#statusline#FMStatusLine() abort - let l:statusline='' - let l:statusline.='%#User8#' - let l:statusline.='%= ' - let l:statusline.='% ' - return l:statusline -endfunction - function! dead#statusline#UpdateInactiveWindows() for winnum in range(1, winnr('$')) if winnum != winnr() @@ -60,7 +55,7 @@ function! dead#statusline#LinePasteMode() abort endfunction function! dead#statusline#RefreshStatusLine(mode) - if (a:mode == "active" && &filetype !=? 'help') + if (a:mode ==? 'active' && &filetype !=? 'help') setlocal statusline=%!dead#statusline#StatusLine() else setlocal statusline=%!dead#statusline#StatusLineNC() @@ -68,20 +63,6 @@ function! dead#statusline#RefreshStatusLine(mode) if &filetype ==? 'help' setlocal statusline=%!dead#statusline#HelpStatusLine() endif - if &filetype ==? 'Defx' - setlocal statusline=%!dead#statusline#FMStatusLine() - endif -endfunction - -function! dead#statusline#LinterStatus() abort - let l:counts = ale#statusline#Count(bufnr('')) - let l:all_errors = l:counts.error + l:counts.style_error - let l:all_non_errors = l:counts.total - l:all_errors - return l:counts.total == 0 ? '' : printf( - \ ' :%d  :%d', - \ l:all_non_errors, - \ l:all_errors - \) endfunction function! GitStatus() abort @@ -91,3 +72,25 @@ function! GitStatus() abort let [ l:added, l:modified, l:removed ] = GitGutterGetHunkSummary() return printf('+%d ~%d -%d', l:added, l:modified, l:removed) endfunction + +let g:modes={ + \ 'n' : ['%3*','NORMAL'], + \ 'no' : ['%3*','OPERATOR PENDING'], + \ 'v' : ['%5*','VISUAL'], + \ 'V' : ['%5*','V·LINE'], + \ '' : ['%5*','V·BLOCK'], + \ 's' : ['%7*','SELECT'], + \ 'S' : ['%7*','S·LINE'], + \ '' : ['%7*','S·BLOCK'], + \ 'i' : ['%4*','INSERT'], + \ 'R' : ['%2*','REPLACE'], + \ 'Rv' : ['%2*','V·REPLACE'], + \ 'c' : ['%6*','COMMAND'], + \ 'cv' : ['%6*','VIM EX'], + \ 'ce' : ['%6*','EX'], + \ 'r' : ['%1*','PROMPT'], + \ 'rm' : ['%1*','MORE'], + \ 'r?' : ['%1*','CONFIRM'], + \ '!' : ['%*1','SHELL'], + \ 't' : ['%*1','TERMINAL'], + \} diff --git a/.config/nvim/autoload/dead/tabline.vim b/.config/nvim/autoload/dead/tabline.vim deleted file mode 100644 index eee82ff..0000000 --- a/.config/nvim/autoload/dead/tabline.vim +++ /dev/null @@ -1,32 +0,0 @@ -scriptencoding utf-8 - -function! dead#tabline#Tabline() abort - let s = '' - for i in range(tabpagenr('$')) - let tab = i + 1 - let winnr = tabpagewinnr(tab) - let buflist = tabpagebuflist(tab) - let bufnr = buflist[winnr - 1] - let bufname = bufname(bufnr) - let bufmodified = getbufvar(bufnr, '&mod') - - let s .= '%' . tab . 'T' - let s .= (tab == tabpagenr() ? '%#TabLineSel#' : '%#TabLine#') - let s .= ' ' . tab .' ' - let s .= (bufname !=? '' ? fnamemodify(bufname, ':f') . ' ' : '[Untitled] ') - - if bufmodified - let s .= ' + ' - endif - endfor - - if &filetype ==? 'Defx' - let s = '' - endif - - let s .= '%#TabLineFill#' - if (exists('g:tablineclosebutton')) - let s .= '%=%999XX' - endif - return s -endfunction diff --git a/.config/nvim/coc-settings.json b/.config/nvim/coc-settings.json index 4804569..31735a3 100644 --- a/.config/nvim/coc-settings.json +++ b/.config/nvim/coc-settings.json @@ -1,17 +1,52 @@ { - "coc.preferences.hoverTarget": "float", - "coc.preferences.useQuickfixForLocations": true, - "coc.preferences.bracketEnterImprove": false, - "diagnostic.displayByAle": true, + "coc.preferences.formatOnSaveFiletypes": [ + "javascript", + "html", + "css", + "json", + "jsonc", + "sh" + ], + "codeLens.enable": true, + "diagnostic.errorSign": "𝐗", + "diagnostic.warningSign": "➤", + "diagnostic.infoSign": "●", + "diagnostic-languageserver.mergeConfig": true, + "diagnostic-languageserver.filetypes": { + // lint `sh` (includes `bash`) files + "sh": "shellcheck", + "html": "prettier", + "vim": "vint" + }, + "diagnostic-languageserver.formatFiletypes": { + // format `sh` (includes `bash`) files using formatter defined below + "sh": "shfmt" + }, + "diagnostic-languageserver.formatters": { + // define our formatter so that we can reference it from + // `diagnostic-languageserver.formatFiletypes` + "shfmt": { + "command": "shfmt", + // all the below args are entirely optional + // primarily listed here to call out that flags which take an + // argument (such as `-i ` for specifying indentation) + // should be split into two strings, the flag and then the value + "args": ["-p", "-ci", "-sr"] + } + }, + "list.alignColumns": true, "suggest.echodocSupport": true, "suggest.maxPreviewWidth": 100, - "suggest.noselect": false, - "suggest.removeDuplicateItems": true, - "session.saveOnVimLeave": false, + "snippets.ultisnips.enable": true, + "snippets.loadFromExtensions": true, "snippets.extends": { "javascriptreact": ["javascript"], "typescript": ["javascript"] }, + "tailwindCSS.enable": true, + "tailwindCSS.validate": true, + "tailwindCSS.emmetCompletions": true, + "tailwindCSS.lint.cssConflict": "warning", "tsserver.npm": "/home/deadguy/.config/yarn/bin/yarn", "typescript.format.insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets": true, "typescript.format.insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces": true, diff --git a/.config/nvim/colors/srcery.vim b/.config/nvim/colors/srcery.vim index ee799ff..b579717 100644 --- a/.config/nvim/colors/srcery.vim +++ b/.config/nvim/colors/srcery.vim @@ -42,7 +42,7 @@ let s:bright_white = ['#FCE8C3', 15] " xterm colors. let s:orange = ['#FF5F00', 202] let s:bright_orange = ['#FF8700', 208] -let s:hard_black = ['#121212', 233] +let s:hard_black = ['#080808', 233] let s:xgray1 = ['#262626', 235] let s:xgray2 = ['#303030', 236] let s:xgray3 = ['#3A3A3A', 237] @@ -79,6 +79,10 @@ if !exists('g:srcery_underline') let g:srcery_underline=1 endif +if !exists('g:srcery_underline_match_paren') + let g:srcery_underline_match_paren=1 +endif + if !exists('g:srcery_inverse') let g:srcery_inverse=1 endif @@ -173,11 +177,15 @@ call s:HL('SrceryCyan', s:cyan) call s:HL('SrceryBlack', s:black) call s:HL('SrceryRedBold', s:red, s:none, s:bold) +call s:HL('SrceryRedItalic', s:red, s:none, s:italic) call s:HL('SrceryGreenBold', s:green, s:none, s:bold) call s:HL('SrceryYellowBold', s:yellow, s:none, s:bold) call s:HL('SrceryBlueBold', s:blue, s:none, s:bold) call s:HL('SrceryMagentaBold', s:magenta, s:none, s:bold) call s:HL('SrceryCyanBold', s:cyan, s:none, s:bold) +call s:HL('SrceryCyanItalic', s:cyan, s:none, s:italic) +call s:HL('SrceryBrightMagenta', s:bright_magenta, s:none, s:italic) +call s:HL('SrceryBrightBlue', s:bright_blue, s:none, s:italic) call s:HL('SrceryBrightRed', s:bright_red, s:none) call s:HL('SrceryBrightGreen', s:bright_green, s:none) @@ -192,7 +200,9 @@ call s:HL('SrceryBrightWhite', s:bright_white) call s:HL('SrceryOrange', s:orange) call s:HL('SrceryBrightOrange', s:bright_orange) call s:HL('SrceryOrangeBold', s:orange, s:none, s:bold) +call s:HL('SrceryOrangeItalic', s:orange, s:none, s:italic) call s:HL('SrceryHardBlack', s:hard_black) +call s:HL('SrceryXgray4Italic', s:xgray4, s:none, s:italic) call s:HL('SrceryXgray1', s:xgray1) call s:HL('SrceryXgray2', s:xgray2) call s:HL('SrceryXgray3', s:xgray3) @@ -302,6 +312,10 @@ if v:version >= 700 endif endif +if g:srcery_underline_match_paren == 1 + call s:HL('MatchParen', s:bright_magenta, s:none, s:underline) +endif + if v:version >= 703 " Highlighted screen columns call s:HL('ColorColumn', s:none, s:xgray2) @@ -311,7 +325,7 @@ if v:version >= 703 " Line number of CursorLine if g:srcery_transparent_background == 1 && !has('gui_running') - call s:HL('CursorLineNr', s:yellow, s:none) + call s:HL('CursorLineNr', s:yellow, s:none, s:bold) else call s:HL('CursorLineNr', s:yellow, s:black) endif @@ -345,7 +359,7 @@ if g:srcery_transparent_background == 1 && !has('gui_running') call s:HL('StatusLineNC', s:bright_black, s:none, s:underline) " The column separating vertically split windows - call s:HL('VertSplit', s:bright_white, s:none) + call s:HL('VertSplit', s:hard_black, s:none) " Current match in wildmenu completion call s:HL('WildMenu', s:blue, s:none, s:bold) @@ -376,7 +390,7 @@ hi! link WarningMsg SrceryRedBold " Gutter: {{{ " Line number for :number and :# commands -call s:HL('LineNr', s:bright_black) +call s:HL('LineNr', s:xgray2) if g:srcery_transparent_background == 1 && !has('gui_running') " Column where signs are displayed @@ -438,7 +452,7 @@ hi! link Operator Normal hi! link Keyword SrceryRed " Variable name -hi! link Identifier SrceryCyan +hi! link Identifier SrceryCyanItalic " Function name hi! link Function SrceryYellow @@ -454,7 +468,7 @@ hi! link Macro SrceryOrange hi! link PreCondit SrceryCyan " Generic constant -hi! link Constant SrceryBrightMagenta +hi! link Constant SrceryBrightMagentaItalic " Character constant: 'c', '/n' hi! link Character SrceryBrightMagenta " Boolean constant: TRUE, false @@ -465,11 +479,11 @@ hi! link Number SrceryBrightMagenta hi! link Float SrceryBrightMagenta " Generic type -hi! link Type SrceryBrightBlue +hi! link Type SrceryBrightBlueItalic " static, register, volatile, etc -hi! link StorageClass SrceryOrange +hi! link StorageClass SrceryOrangeItalic " struct, union, enum, etc. -hi! link Structure SrceryCyan +hi! link Structure SrceryCyanItalic " typedef hi! link Typedef SrceryMagenta @@ -484,9 +498,9 @@ endif if v:version >= 700 " Popup menu: normal item - call s:HL('Pmenu', s:bright_white, s:xgray2) + call s:HL('Pmenu', s:white, s:xgray1) " Popup menu: selected item - call s:HL('PmenuSel', s:bright_white, s:magenta, s:bold) + call s:HL('PmenuSel', s:black, s:blue, s:bold) if g:srcery_transparent_background == 1 && !has('gui_running') " Popup menu: scrollbar @@ -505,6 +519,7 @@ endif if g:srcery_transparent_background == 1 && !has('gui_running') call s:HL('DiffDelete', s:red, s:none) call s:HL('DiffAdd', s:green, s:none) + call s:HL('DiffAdded', s:xgray1, s:none) call s:HL('DiffChange', s:cyan, s:none) call s:HL('DiffText', s:yellow, s:none) else @@ -662,6 +677,7 @@ call s:HL('CocErrorHighlight', s:none, s:none, s:undercurl, s:red) call s:HL('CocWarningHighlight', s:none, s:none, s:undercurl, s:bright_orange) call s:HL('CocInfoHighlight', s:none, s:none, s:undercurl, s:yellow) call s:HL('CocHintHighlight', s:none, s:none, s:undercurl, s:blue) +call s:HL('CocUnderline', s:none, s:none, s:undercurl, s:white) " }}} " CtrlP: "{{{ diff --git a/.config/nvim/ftplugin/gitconfig.vim b/.config/nvim/ftplugin/gitconfig.vim deleted file mode 100644 index e7e03aa..0000000 --- a/.config/nvim/ftplugin/gitconfig.vim +++ /dev/null @@ -1,2 +0,0 @@ -setlocal noexpandtab -setlocal nolist diff --git a/.config/nvim/ftplugin/help.vim b/.config/nvim/ftplugin/help.vim index 44fe1ce..d44a571 100644 --- a/.config/nvim/ftplugin/help.vim +++ b/.config/nvim/ftplugin/help.vim @@ -20,10 +20,12 @@ setlocal nonumber setlocal noruler setlocal colorcolumn=0 setlocal signcolumn=no -" setlocal statusline= wincmd L +" Quick close +nnoremap q :helpclose + " Jump to links with enter nmap diff --git a/.config/nvim/ftplugin/mail.vim b/.config/nvim/ftplugin/mail.vim index 3ca7063..d0e2ae7 100644 --- a/.config/nvim/ftplugin/mail.vim +++ b/.config/nvim/ftplugin/mail.vim @@ -1,9 +1,12 @@ -" The virgin plugin vs the chad local options setlocal nonumber norelativenumber laststatus=0 showmode setlocal signcolumn=no textwidth=80 wrap sw=2 -setlocal tabstop=2 expandtab softtabstop=2 linebreak -setlocal autoindent noruler colorcolumn=80 -setlocal spell spelllang=es_AR,en_us +setlocal tabstop=2 noexpandtab softtabstop=0 linebreak +setlocal autoindent ruler colorcolumn=80 +setlocal complete+=kspell +setlocal spell spelllang=es,en_us +setlocal formatoptions& +setlocal formatoptions+=tqnw +setlocal formatlistpat=^\\s*\\(\\d\\+\\\|[a-z]\\)[\\].)]\\s* function! s:OnExit(job_id, code, event) dict if a:code == 0 @@ -43,11 +46,14 @@ function! s:SendMail() startinsert endfunction -nnoremap [s -nnoremap ]s -nnoremap z= -nnoremap zg +" Spellcheck +nnoremap [s +nnoremap ]s +nnoremap z= +nnoremap z=1 +nnoremap zg inoremap u[s1z=`]au + nnoremap :call SendMail() nnoremap f gg/From::nohlsearch4lC: nnoremap t gg/To::nohlsearch2lC: diff --git a/.config/nvim/init.vim b/.config/nvim/init.vim index 83259a5..60e3eea 100644 --- a/.config/nvim/init.vim +++ b/.config/nvim/init.vim @@ -6,7 +6,7 @@ endif if filereadable('~/.local/share/npm/bin/neovim-node-host') let g:node_host_prog = '~/.local/share/npm/bin/neovim-node-host' endif -if executable("rg") +if executable('rg') set grepprg=rg\ --vimgrep set grepformat=%f:%l:%c:%m endif @@ -28,23 +28,22 @@ aug colores au! au ColorScheme * call dead#colores#Barra() au ColorScheme * call dead#colores#Maquillaje() - au ColorScheme * call dead#colores#MyHighlights() aug END let g:srcery_transparent_background = 1 let g:srcery_italic = 1 +let g:srcery_inverse_matches = 1 let g:srcery_underline = 1 +let g:srcery_underline_match_paren = 1 let g:srcery_undercurl = 1 colorscheme srcery -if filereadable(expand("~/.local/share/nvim/site/autoload/plug.vim")) +if filereadable(expand('~/.local/share/nvim/site/autoload/plug.vim')) call plug#begin(stdpath('data') . '/plugged') - Plug 'dense-analysis/ale' Plug 'lervag/vimtex', {'for': 'latex'} - Plug 'neoclide/coc.nvim', {'branch': 'release', 'for': ['javascript', 'html', 'css', 'json', 'typescript', 'jsx', 'tsx']} + Plug 'neoclide/coc.nvim', {'branch': 'release', 'for': ['javascript', 'html', 'css', 'json', 'jsonc', 'typescript', 'jsx', 'tsx', 'sh', 'vim']} Plug 'fatih/vim-go', {'for': 'go', 'do': ':GoInstallBinaries'} Plug 'tpope/vim-fugitive' Plug 'airblade/vim-gitgutter' Plug 'junegunn/fzf.vim' - Plug 'Shougo/defx.nvim', { 'do': ':UpdateRemotePlugins' } call plug#end() endif diff --git a/.config/nvim/plugin/ale.vim b/.config/nvim/plugin/ale.vim deleted file mode 100644 index f539d97..0000000 --- a/.config/nvim/plugin/ale.vim +++ /dev/null @@ -1,24 +0,0 @@ -let g:ale_lint_delay = 0 -let g:ale_disable_lsp = 1 -let g:ale_fix_on_save = 1 -let g:ale_linters_explicit = 1 -let g:ale_use_global_executables = 1 -let g:ale_close_preview_on_insert = 1 -let g:ale_sign_highlight_linenrs = 1 -let g:ale_echo_cursor = 0 -let g:ale_virtualtext_cursor = 1 -let g:ale_set_highlights = 1 -let g:ale_set_signs = 1 -let g:ale_javascript_eslint_suppress_missing_config = 1 -let g:ale_sign_error = '𝐗' -let g:ale_sign_warning = '➤' -let g:ale_sign_info = '●' -let g:ale_loclist_msg_format = '[%linter%] %s% (code)% [%severity%]' -let g:ale_linter_aliases = { 'jsx': ['css', 'javascript'] } -let g:ale_fixers = { '*': ['remove_trailing_lines', 'trim_whitespace'] } -let g:ale_pattern_options = { -\ '\.min\.js$': {'ale_linters': [], 'ale_fixers': []}, -\ '\.min\.css$': {'ale_linters': [], 'ale_fixers': []}, -\} -nmap (ale_previous_wrap) -nmap (ale_next_wrap) diff --git a/.config/nvim/plugin/autocmds.vim b/.config/nvim/plugin/autocmds.vim index 09330e5..e4c48df 100644 --- a/.config/nvim/plugin/autocmds.vim +++ b/.config/nvim/plugin/autocmds.vim @@ -7,15 +7,13 @@ if !exists('autocommands_loaded') && has('autocmd') aug OnInsert au BufWinEnter,FocusGained,InsertLeave,WinEnter * call dead#functions#Relativize(1) au BufWinLeave,FocusLost,InsertEnter,WinLeave * call dead#functions#Relativize(0) - au InsertLeave * setlocal nopaste + au InsertEnter * setlocal relativenumber + au InsertLeave * setlocal nopaste norelativenumber au InsertLeave,CompleteDone * if pumvisible() == 0 | pclose | endif aug END aug FileTypes au BufNewFile ~/doc/blog/*.md 0r ~/.config/nvim/templates/wiki.skeleton - au FileType gitcommit,gitrebase,gitconfig set bufhidden=delete - au BufNewFile,BufRead requirements*.txt set syntax=python - au FileType fzf tnoremap au BufRead,BufNewFile /tmp/neomutt* set filetype=mail aug END @@ -35,10 +33,10 @@ if !exists('autocommands_loaded') && has('autocmd') aug MyTerminal au TermOpen * setlocal wrap nonumber norelativenumber noruler signcolumn=no - au TermOpen * set laststatus=0 showtabline=0 + au TermOpen * set laststatus=0 " workaround for a segfault: https://github.com/neovim/neovim/issues/11548#issuecomment-583081783 " immediately enter insert mode when switching to a terminal au BufEnter term://* startinsert! - au TermClose * set laststatus=2 showtabline=2 + au TermClose * set laststatus=2 aug END endif diff --git a/.config/nvim/plugin/fm.vim b/.config/nvim/plugin/fm.vim index 177c0ef..da8ce16 100644 --- a/.config/nvim/plugin/fm.vim +++ b/.config/nvim/plugin/fm.vim @@ -1,80 +1,8 @@ let g:netrw_dirhistmax=0 let g:netrw_banner = 0 let g:netrw_liststyle= 3 +nnoremap :Vex! -let g:fzf_layout = { 'window': { 'width': 0.8, 'height': 0.8 } } - -aug defx_things - au! - " Close defx if it's the only buffer left in the window - au WinEnter * if &ft == 'defx' && winnr('$') == 1 | q | endif - " Move focus to the next window if current buffer is defx - au TabLeave * if &ft == 'defx' | wincmd w | endif - au FileType defx do WinEnter | call s:defx_my_settings() -aug END - -call defx#custom#option('_', { - \ 'columns': 'mark:indent:git:icon:filename:type', - \ 'winwidth': 30, - \ 'buffer_name': '', - \ 'split': 'vertical', - \ 'direction': 'topleft', - \ 'show_ignored_files': 0, - \ 'toggle': 1, - \ 'resume': 1 -\ }) - -call defx#custom#column('icon', { - \ 'directory_icon': '▷', - \ 'opened_icon': '▼', - \ 'root_icon': '~', -\ }) - -call defx#custom#column('mark', { - \ 'readonly_icon': '', - \ 'selected_icon': '', -\ }) - -function! s:defx_my_settings() abort - - setl nonumber - setl norelativenumber - setl listchars= - setl nofoldenable - setl foldmethod=manual - - nnoremap o defx#do_action('open_tree', 'toggle') - nnoremap l defx#do_action('open_tree') - nnoremap h defx#do_action('close_tree') - nnoremap defx#do_action('multi', ['drop', 'quit']) - nnoremap defx#do_action('multi', [['open', 'botright vsplit'], 'quit']) - nnoremap defx#do_action('multi', [['open', 'botright split'], 'quit']) - nnoremap t defx#do_action('multi', [['drop', 'tabnew'], 'quit']) - nnoremap D defx#do_action('new_directory') - nnoremap F defx#do_action('new_multiple_files') - nnoremap dd defx#do_action('remove') - nnoremap r defx#do_action('rename') - nnoremap x defx#do_action('execute_system') - nnoremap . defx#do_action('toggle_ignored_files') - nnoremap y defx#do_action('yank_path') - nnoremap defx#do_action('cd', ['..']) - nnoremap ~ defx#async_action('cd') - nnoremap q defx#do_action('quit') - nnoremap ' defx#do_action('toggle_select') . 'j' - nnoremap * defx#do_action('toggle_select_all') - nnoremap defx#do_action('redraw') - nnoremap S defx#do_action('toggle_sort', 'Time') - nnoremap cd defx#do_action('change_vim_cwd') - - nnoremap / defx#do_action('cd', getcwd()) - nnoremap c defx#do_action('copy') - nnoremap m defx#do_action('move') - nnoremap p defx#do_action('paste') - - nnoremap j - \ line('.') == line('$') ? 'gg' : 'j' - nnoremap k - \ line('.') == 1 ? 'G' : 'k' -endfunction - -nnoremap :Defx -toggle +" let g:fzf_layout = { 'window': { 'width': 1.0, 'height': 0.9 } } +let g:fzf_layout = { 'window': { 'width': 1.0, 'height': 0.7, 'yoffset': 1.0, 'border': 'top' } } +let g:fzf_preview_window = ['right:60%', 'ctrl-/'] diff --git a/.config/nvim/plugin/gitgutter.vim b/.config/nvim/plugin/gitgutter.vim index f868b12..ef64c40 100644 --- a/.config/nvim/plugin/gitgutter.vim +++ b/.config/nvim/plugin/gitgutter.vim @@ -1,8 +1,8 @@ -let g:gitgutter_enabled = 0 -let g:gitgutter_realtime = 0 -let g:gitgutter_eager = 0 +let g:gitgutter_enabled = 1 let g:gitgutter_terminal_reports_focus=0 let g:gitgutter_map_keys = 0 let g:gitgutter_highlight_linenrs = 1 let g:gitgutter_set_sign_backgrounds = 1 let g:gitgutter_grep = 'rg --color=never' + +let g:fugitive_summary_format = "%an\t%s" diff --git a/.config/nvim/plugin/lateks.vim b/.config/nvim/plugin/lateks.vim index eaa3ac5..dd2e0ab 100644 --- a/.config/nvim/plugin/lateks.vim +++ b/.config/nvim/plugin/lateks.vim @@ -1,4 +1,3 @@ -let g:tex_flavor='latex' let g:Tex_DefaultTargetFormat ='pdf' let g:vimtex_compiler_progname = 'nvr' let g:vimtex_view_method = 'zathura' @@ -8,3 +7,10 @@ let g:vimtex_complete_enable = 1 let g:vimtex_view_use_temp_files = 2 set conceallevel=1 let g:tex_conceal='abdmg' + +let g:vimtex_log_ignore = [ + \ 'Underfull', + \ 'Overfull', + \ 'specifier changed to', + \ 'Token not allowed in a PDF string', + \ ] diff --git a/.config/nvim/plugin/mappings/fzf.vim b/.config/nvim/plugin/mappings/fzf.vim index 65d466f..77a928c 100644 --- a/.config/nvim/plugin/mappings/fzf.vim +++ b/.config/nvim/plugin/mappings/fzf.vim @@ -2,5 +2,5 @@ nnoremap :Helptags nnoremap :Files =expand("%:h")/ nnoremap :Files nnoremap :Buffers -nnoremap :Rg +nnoremap RG nnoremap :Commits diff --git a/.config/nvim/plugin/mappings/git.vim b/.config/nvim/plugin/mappings/git.vim index d087188..4843b2f 100644 --- a/.config/nvim/plugin/mappings/git.vim +++ b/.config/nvim/plugin/mappings/git.vim @@ -6,6 +6,7 @@ nmap {c (GitGutterPrevHunk) nmap }c (GitGutterNextHunk) nnoremap ff :G +nnoremap fc :GCheckout nnoremap fd :Gvdiffsplit! nnoremap fh :diffget //2 nnoremap fl :diffget //3 diff --git a/.config/nvim/plugin/mappings/insert.vim b/.config/nvim/plugin/mappings/insert.vim index 7cd59c2..ccd3096 100644 --- a/.config/nvim/plugin/mappings/insert.vim +++ b/.config/nvim/plugin/mappings/insert.vim @@ -6,12 +6,12 @@ inoremap u inoremap u " Navigate the complete menu items like CTRL+n / CTRL+p would. -inoremap pumvisible() ? "" :"" -inoremap pumvisible() ? "" : "" +" inoremap pumvisible() ? "" :"" +" inoremap pumvisible() ? "" : "" " Select the complete menu item like CTRL+y would. -inoremap pumvisible() ? "" : "" -inoremap pumvisible() ? "" :"" +" inoremap pumvisible() ? "" : "" +" inoremap pumvisible() ? "" :"" " Cancel the complete menu item like CTRL+e would. inoremap pumvisible() ? "" : "" diff --git a/.config/nvim/plugin/mappings/normal.vim b/.config/nvim/plugin/mappings/normal.vim index a8aa158..61f4711 100644 --- a/.config/nvim/plugin/mappings/normal.vim +++ b/.config/nvim/plugin/mappings/normal.vim @@ -22,8 +22,8 @@ nnoremap K nnoremap J " Resize splits -nnoremap :vertical resize -2 -nnoremap :vertical resize +2 +nnoremap :vertical resize -1 +nnoremap :vertical resize +1 nnoremap :resize -1 nnoremap :resize +1 @@ -33,13 +33,14 @@ nnoremap nnoremap nnoremap -" Gotta Go Fast (save, buffers, quit, messages, newlines, SOF, EOF) +" Gotta Go Fast (save, buffers, quit, messages, indent, SOF, EOF) nnoremap g :w! nnoremap b :ls:b nnoremap c :close nnoremap q :q! nnoremap Q :qa! nnoremap m :messages +nnoremap = gg=G nnoremap gg nnoremap ¿ G diff --git a/.config/nvim/plugin/settings.vim b/.config/nvim/plugin/settings.vim index 9ce9a32..f5c9050 100644 --- a/.config/nvim/plugin/settings.vim +++ b/.config/nvim/plugin/settings.vim @@ -6,16 +6,12 @@ set clipboard^=unnamedplus set number set noshowmode set noshowcmd -set showtabline=2 +set showtabline=0 set noswapfile set hidden set lazyredraw -set showmatch set matchpairs+=<:> -set cpoptions-=m -set nojoinspaces set updatetime=100 -set synmaxcol=200 set splitbelow set splitright set notimeout @@ -26,29 +22,21 @@ set shortmess+=aoIOWsc set foldmethod=marker set foldclose=all set foldlevelstart=10 -set selectmode=key -set keymodel=startsel -set tabstop=2 -set shiftwidth=2 -set softtabstop=2 -set shiftround -set linebreak -set breakindent set nosmarttab -set title -set redrawtime=500 set ttimeoutlen=10 set nowritebackup set undofile set undolevels=1000 set undoreload=10000 +set nrformats+=alpha set complete+=kspell set completeopt=menu,menuone,noinsert,noselect set listchars+=precedes:<,extends:> set diffopt+=algorithm:histogram,indent-heuristic set diffopt+=foldcolumn:0 +set diffopt+=vertical set fillchars=diff:\ ,eob:\ ,stlnc:\ ,stl:\ ,vert:\│ -set formatoptions+=nl +set formatoptions+=n set formatoptions-=crot let formatlistpat='^\s*\(\d\+[\]:.)}\t ]\|[*-][\t ]\)\s*' match ErrorMsg '^\(<\|=\|>\)\{7\}\([^=].\+\)\?$' diff --git a/.config/nvim/plugin/statusline.vim b/.config/nvim/plugin/statusline.vim deleted file mode 100644 index bd7bbde..0000000 --- a/.config/nvim/plugin/statusline.vim +++ /dev/null @@ -1,23 +0,0 @@ -scriptencoding utf-8 - -let g:modes={ - \ 'n' : ['%3*','NORMAL'], - \ 'no' : ['%3*','N·OPERATOR PENDING'], - \ 'v' : ['%5*','VISUAL'], - \ 'V' : ['%5*','V·LINE'], - \ '' : ['%5*','V·BLOCK'], - \ 's' : ['%7*','SELECT'], - \ 'S' : ['%7*','S·LINE'], - \ '' : ['%7*','S·BLOCK'], - \ 'i' : ['%4*','INSERT'], - \ 'R' : ['%2*','REPLACE'], - \ 'Rv' : ['%2*','V·REPLACE'], - \ 'c' : ['%6*','COMMAND'], - \ 'cv' : ['%6*','VIM EX'], - \ 'ce' : ['%6*','EX'], - \ 'r' : ['%1*','PROMPT'], - \ 'rm' : ['%1*','MORE'], - \ 'r?' : ['%1*','CONFIRM'], - \ '!' : ['%*1','SHELL'], - \ 't' : ['%*1','TERMINAL'] - \} diff --git a/.config/nvim/plugin/tabline.vim b/.config/nvim/plugin/tabline.vim deleted file mode 100644 index 40770d6..0000000 --- a/.config/nvim/plugin/tabline.vim +++ /dev/null @@ -1 +0,0 @@ -set tabline=%!dead#tabline#Tabline() diff --git a/.config/sxhkd/sxhkdrc b/.config/sxhkd/sxhkdrc index 5482dfb..de4c852 100644 --- a/.config/sxhkd/sxhkdrc +++ b/.config/sxhkd/sxhkdrc @@ -54,8 +54,8 @@ super + ctrl + {d,p} super + {_,shift} + g {grabar,corte} -super + {z,x,v,c} - $TERMINAL {_,--class=flota,--class=flota -e pulsemixer,--class=flota -e nvim +Mail +1bw +startinsert} +super + {z,x,v,c,i} + $TERMINAL {_,--class=flota,--class=flota -e pulsemixer,--class=flota -e nvim +Mail +1bw +startinsert,-e irk} super + {F1,F2,F3} {fecha,tapa,notifocus} diff --git a/.config/zathura/zathurarc b/.config/zathura/zathurarc index ac3788e..ec8ddd1 100644 --- a/.config/zathura/zathurarc +++ b/.config/zathura/zathurarc @@ -1,13 +1,15 @@ set adjust-open "best-fit" set pages-per-row 1 set scroll-full-overlap 0.01 -set scroll-page-aware "true" set scroll-step 100 set selection-clipboard clipboard +set scroll-page-aware "true" set window-title-basename "true" set window-title-home-tilde "true" set statusbar-basename "true" set statusbar-home-tilde "true" +set zoom-center "true" +set render-loading "false" map r reload map R rotate diff --git a/.config/zsh/conf/03_aliases.zsh b/.config/zsh/conf/03_aliases.zsh index 2919856..8729de5 100644 --- a/.config/zsh/conf/03_aliases.zsh +++ b/.config/zsh/conf/03_aliases.zsh @@ -6,7 +6,8 @@ alias \ z='zathura' \ b='bombadillo' \ g='git' \ - se='sudoedit' \ + vv='vi' \ + se='doas vi' \ am='alsamixer -c 1' \ pm='pulsemixer' \ nb='newsboat -q' \ @@ -14,7 +15,6 @@ alias \ ttx='txtnish timeline' \ ytv='straw-viewer' \ vdf='nvim -d' \ - irc='catgirl' \ play='mpd && ncmpcpp' \ pyserv='python -m http.server' @@ -22,7 +22,7 @@ alias \ alias \ xk='xbps-query' \ deps='xbps-query -vRx' \ - upa='sudo xi' \ + upa='doas xi' \ revdeps='xbps-query -vRX' \ xp='xpkg -m > ~/doc/xbpaketes' @@ -41,7 +41,7 @@ alias \ alias \ lxs='tlmgr search --global' \ lxl='tlmgr search' \ - lxi='sudo tlmgr install' + lxi='doas tlmgr install' # Transmission alias \ @@ -78,7 +78,7 @@ alias \ ls='ls -AFt --color=always --group-directories-first' \ grep='grep --color=tty -d skip' \ dmesg='dmesg --color=always' \ - vsv='sudo vsv -c yes' \ + vsv='doas vsv -c yes' \ ip='ip -c' \ # Con opciones por defecto @@ -93,13 +93,12 @@ alias \ dd='dd status=progress' \ dfc='dfc -dmT' \ wget="wget --no-hsts" - slrn='slrn -i ~/.config/slrn/rc -f ~/.config/slrn/jnewsrc.club --create' # Comandos alias \ - sudo='sudo ' \ - reboot='sudo reboot' \ - shutdown='sudo shutdown -h now' \ + sudo='doas ' \ + reboot='doas reboot' \ + shutdown='doas shutdown -h now' \ path='echo -e ${PATH//:/\\n}' \ wp='sxiv-rifle ~/img/wallpaper >/dev/null 2>&1' \ pwn='chmod +x' \ diff --git a/.config/zsh/conf/10_plugins.zsh b/.config/zsh/conf/10_plugins.zsh index 2d2b8bc..1ba2f26 100644 --- a/.config/zsh/conf/10_plugins.zsh +++ b/.config/zsh/conf/10_plugins.zsh @@ -2,9 +2,16 @@ foreach plugin ( zsh-autopair/autopair.plugin.zsh zsh-system-clipboard/zsh-system-clipboard.plugin.zsh zsh-history-substring-search/zsh-history-substring-search.plugin.zsh + forgit/forgit.plugin.zsh ) { source $ZDOTDIR/conf/$plugin } +FORGIT_COPY_CMD='xclip -selection clipboard' + +FORGIT_LOG_FZF_OPTS=' +--bind="ctrl-e:execute(echo {} |grep -Eo [a-f0-9]+ |head -1 |xargs git show |vim -)" +' + HISTORY_SUBSTRING_SEARCH_ENSURE_UNIQUE=1 typeset -g ZSH_SYSTEM_CLIPBOARD_TMUX_SUPPORT='true' diff --git a/.config/zsh/conf/11_lf-icons.zsh b/.config/zsh/conf/11_lf-icons.zsh index fdb4568..28b0cae 100644 --- a/.config/zsh/conf/11_lf-icons.zsh +++ b/.config/zsh/conf/11_lf-icons.zsh @@ -20,11 +20,9 @@ mail= :\ trash= :\ Trash= :\ bin= :\ -hexagons= :\ +hexagons= :\ xresources= :\ xinitrc= :\ -.Xdefaults= :\ -.Xresources= :\ .bashprofile= :\ .zprofile= :\ .bashrc= :\ @@ -38,16 +36,12 @@ xinitrc= :\ gitignore= :\ .jack-settings= :\ .mime.types= :\ -.nvidia-settings-rc= :\ .pam_environment= :\ .profile= :\ .recently-used= :\ .selected_editor= :\ .vimrc= :\ -.xinputrc= :\ -.xserverrc= :\ config= :\ -dropbox= :\ exact-match-case-sensitive-1.txt=X1:\ exact-match-case-sensitive-2=X2:\ favicon.ico= :\ @@ -64,17 +58,15 @@ node_modules= :\ procfile= :\ react.jsx= :\ user-dirs.dirs= :\ -Makefile= :\ +Makefile= :\ TODO= :\ LICENSE= :\ COPYING= :\ *.vim= :\ *.dmg= :\ -*.tlf= :\ -*.flf= :\ *.toml= :\ -*.m3u= :\ -*.pls= :\ +*.m3u= :\ +*.pls= :\ *.woff=𝑾:\ *.woff2=𝑾:\ *.eot=𝑬:\ @@ -86,7 +78,6 @@ COPYING= :\ *.doc= :\ *.docx= :\ *.webp= :\ -*.aseprite= :\ *.bib=﬜ :\ *.7z= :\ *.ai= :\ diff --git a/.config/zsh/tmux.zsh b/.config/zsh/tmux.zsh index 972a239..815b16c 100644 --- a/.config/zsh/tmux.zsh +++ b/.config/zsh/tmux.zsh @@ -40,6 +40,17 @@ tmux_sessions() { : # Start terminal normally fi } -if [[ -z $TMUX ]]; then + +tmux_base_session(){ +client_cnt="$(tmux list-clients | wc -l 2>/dev/null)" +if [[ $client_cnt -eq 0 ]]; then + tmux new-session -d -s z + tmux attach-session -t z +else tmux_sessions fi +} + +if [[ -z $TMUX ]]; then + tmux_base_session +fi diff --git a/.local/bin/ae b/.local/bin/ae index f59c33c..34d64ce 100755 --- a/.local/bin/ae +++ b/.local/bin/ae @@ -1,4 +1,4 @@ #!/bin/sh cd ~/.local/bin || exit -fd -c always -t f -d 1 | fzf -m --cycle --preview='bat --color=always {}' --height='45%' | xargs -r "$EDITOR" +fd -c always -t f -d 1 | fzf +m --cycle --preview-window=right:90%:wrap --preview='bat --color=always {}' --height='45%' | xargs -r "$EDITOR" diff --git a/.local/bin/brillo b/.local/bin/brillo index 26aad4c..6a2f35a 100755 --- a/.local/bin/brillo +++ b/.local/bin/brillo @@ -1,19 +1,19 @@ #!/bin/sh send_notification() { - icon="$HOME/.local/share/icons/Marwaita-Dark/24x24/actions/contrast.svg" - dunstify -i "$icon" -r 5555 -u low " $(printf %.0f%% "$(xbacklight -get)")" + icon="$XDG_DATA_HOME/icons/Haiku/scalable/status/dialog-information.svg" + dunstify -i "$icon" -r 5555 -u low " $(printf %.0f%% "$(xbacklight -get)")" } case $1 in - up) - # increase the backlight by 5% - xbacklight -inc 5 - send_notification - ;; - down) - # decrease the backlight by 5% - xbacklight -dec 5 - send_notification - ;; + up) + # increase the backlight by 5% + xbacklight -inc 5 + send_notification + ;; + down) + # decrease the backlight by 5% + xbacklight -dec 5 + send_notification + ;; esac diff --git a/.local/bin/bspmonis b/.local/bin/bspmonis index 49a96cc..c8ce2e8 100755 --- a/.local/bin/bspmonis +++ b/.local/bin/bspmonis @@ -4,12 +4,14 @@ NUM=$(bspc query -M --names | awk 'END {print NR}') if [ "$NUM" = 1 ]; then bspc monitor -d 1 2 3 4 5 6 7 8 9 10 - bspc config top_padding 0 - bspc config bottom_padding 0 - bspc config single_monocle true - bspc config borderless_monocle true + bspc config top_padding 0 + bspc config bottom_padding 0 + bspc config single_monocle true + bspc config borderless_monocle true + bspc config remove_disabled_monitors true + bspc config remove_unplugged_monitors true bspc rule -a Firefox:Navigator state=tiled desktop='^2' - hsetroot -solid #080808 + hsetroot -solid "#080808" elif [ "$NUM" = 2 ]; then pri=$(bspc query -M --names | awk NR==1) sec=$(bspc query -M --names | awk NR==2) @@ -19,8 +21,10 @@ elif [ "$NUM" = 2 ]; then bspc config -m "$pri" bottom_padding 0 bspc config -m "$sec" top_padding 3 bspc config -m "$sec" bottom_padding 23 - bspc config single_monocle false - bspc config borderless_monocle false + bspc config single_monocle false + bspc config borderless_monocle false + bspc config remove_unplugged_monitors false + bspc config remove_disabled_monitors false bspc rule -a Firefox:Navigator state=tiled desktop='^6' randbg & fi diff --git a/.local/bin/cachetear b/.local/bin/cachetear index 5fb5d72..b5a9127 100755 --- a/.local/bin/cachetear +++ b/.local/bin/cachetear @@ -1,5 +1,7 @@ #!/bin/sh -notify-send -u critical -i ~/img/.icn/control.png "Limpieza Mensual" "Es hora de vaciar el cache" & +ICON="$XDG_DATA_HOME/icons/Haiku/scalable/actions/process-stop.svg" + +notify-send -u critical -i "$ICON" "Limpieza Mensual" "Es hora de vaciar el cache" & sleep 10s alacritty --class=flota -e sudo xbps-remove -vO diff --git a/.local/bin/corte b/.local/bin/corte index 22b1655..aae0709 100755 --- a/.local/bin/corte +++ b/.local/bin/corte @@ -1,18 +1,21 @@ #!/bin/sh +ICON_OK="$XDG_DATA_HOME/icons/Haiku/scalable/mimetypes/gnome-mime-video.svg" +ICON_I="$XDG_DATA_HOME/icons/Haiku/scalable/emblems/emblem-important.svg" + if [ -f "/tmp/blaze-pid" ]; then - recpid="$(cat /tmp/blaze-pid)" - # kill with SIGTERM, allowing finishing touches. - kill -15 "$recpid" - rm -f /tmp/blaze-pid - # even after SIGTERM, ffmpeg may still run, so SIGKILL it. - ( - sleep 3 - kill -9 "$recpid" - ) >/dev/null 2>&1 & - notify-send -t 5000 "Grabación Terminada" - exit + recpid="$(cat /tmp/blaze-pid)" + # kill with SIGTERM, allowing finishing touches. + kill -15 "$recpid" + rm -f /tmp/blaze-pid + # even after SIGTERM, ffmpeg may still run, so SIGKILL it. + ( + sleep 3 + kill -9 "$recpid" + ) > /dev/null 2>&1 & + notify-send -t 5000 -i "$ICON_OK" "Grabación Terminada" + exit else - notify-send -t 5000 "Grabación inactiva" - exit 1 + notify-send -t 5000 -i "$ICON_I" "Grabación inactiva" + exit 1 fi diff --git a/.local/bin/escribir b/.local/bin/escribir index eebcb4d..44ea77c 100755 --- a/.local/bin/escribir +++ b/.local/bin/escribir @@ -50,7 +50,7 @@ articulo() { fi } -abrir() { ${TERMINAL:-alacritty} --class=flota -e nvim "$@"; } +abrir() { ${TERMINAL:-alacritty} --class=flota -e "$EDITOR" "$@"; } listar() { rofi -dmenu "$@"; } diff --git a/.local/bin/fecha b/.local/bin/fecha index 7cbe01a..389bb99 100755 --- a/.local/bin/fecha +++ b/.local/bin/fecha @@ -1,3 +1,4 @@ #!/bin/sh -notify-send -u low -t 5000 -i ~/img/.icn/calendar.png "$(date +'%A %d de %B %H:%M')" +ICON="$XDG_DATA_HOME/icons/Haiku/scalable/apps/evolution-calendar.svg" +notify-send -u low -t 5000 -i "$ICON" "$(date +'%A %d de %B %H:%M')" diff --git a/.local/bin/grabar b/.local/bin/grabar index 0f59012..929e7b0 100755 --- a/.local/bin/grabar +++ b/.local/bin/grabar @@ -4,6 +4,9 @@ # https://github.com/cherrry9/blaze/ # modificado por deadguy +ICON_NO="$XDG_DATA_HOME/icons/Haiku/scalable/actions/process-stop.svg" +ICON_RECORD="$XDG_DATA_HOME/icons/Haiku/scalable/devices/gnome-dev-camera.svg" + output="$HOME/vid/Screen/$(date '+%F_%H_%M').mp4" fps=60 m() { rofi -dmenu -i -no-custom "$@"; } @@ -11,78 +14,78 @@ m() { rofi -dmenu -i -no-custom "$@"; } method="$(printf "Pantalla\nSelección" | m -p " ")" if [ "$method" = "Pantalla" ]; then - # get information about the display - monitors="$(xrandr --listmonitors | awk 'NR>1 { printf $NF"\n" }')" + # get information about the display + monitors="$(xrandr --listmonitors | awk 'NR>1 { printf $NF"\n" }')" - # if there's only one display, use that and skip asking - if [ "$(printf "%b\n" "$monitors" | wc -l)" = 1 ]; then - display="$monitors" - else # if there are other displays ask the user which one to use - [ ! "$display" ] && display="$(printf "%b" "$monitors" | m -p "Pantalla")" - fi + # if there's only one display, use that and skip asking + if [ "$(printf "%b\n" "$monitors" | wc -l)" = 1 ]; then + display="$monitors" + else # if there are other displays ask the user which one to use + [ ! "$display" ] && display="$(printf "%b" "$monitors" | m -p "Pantalla")" + fi - set -- $(xrandr -q | grep "$display" | grep -oP '\d*x\d*\+\d*\+\d*' | tr '+x' ' ') + set -- $(xrandr -q | grep "$display" | grep -oP '\d*x\d*\+\d*\+\d*' | tr '+x' ' ') - width="$1" - height="$2" - offX="$3" - offY="$4" + width="$1" + height="$2" + offX="$3" + offY="$4" - sonido="$(printf "Sí\nNo" | m -p "Audio")" + sonido="$(printf "Sí\nNo" | m -p "Audio")" - if [ "$sonido" = "Sí" ]; then - # find default audio device - pacmd="$(pacmd list-sources | grep -i -B 1 output)" - dev="$(echo "$pacmd" | grep -i '\* index' || - echo "$pacmd" | grep -i 'index' | head -n 1)" - audio="-f pulse -i $(echo "$dev" | grep -o '[0-9]')" - else - audio="" - fi + if [ "$sonido" = "Sí" ]; then + # find default audio device + pacmd="$(pacmd list-sources | grep -i -B 1 output)" + dev="$(echo "$pacmd" | grep -i '\* index' || + echo "$pacmd" | grep -i 'index' | head -n 1)" + audio="-f pulse -i $(echo "$dev" | grep -o '[0-9]')" + else + audio="" + fi elif [ "$method" = "Selección" ]; then - gif="$(printf "Sí\nNo" | m -p "Gif")" + gif="$(printf "Sí\nNo" | m -p "Gif")" - if [ "$gif" = "Sí" ]; then - output="$HOME/vid/Screen/$(date '+%F_%H_%M').gif" - fps=15 - fi + if [ "$gif" = "Sí" ]; then + output="$HOME/vid/Screen/$(date '+%F_%H_%M').gif" + fps=15 + fi - # select an area and make each number a separate word - set -- $(slop -f '%w %h %x %y') + # select an area and make each number a separate word + set -- $(slop -f '%w %h %x %y') - # get information about the display - width="$1" - height="$2" - offX="$3" - offY="$4" + # get information about the display + width="$1" + height="$2" + offX="$3" + offY="$4" - [ "$((width % 2))" = 1 ] && width="$((width + 1))" - [ "$((height % 2))" = 1 ] && height="$((height + 1))" + [ "$((width % 2))" = 1 ] && width="$((width + 1))" + [ "$((height % 2))" = 1 ] && height="$((height + 1))" else - notify-send -t 3000 -u critical "Método inválido" - exit 1 + notify-send -t 3000 -u critical -i "$ICON_NO" "Método inválido" + exit 1 fi # ask the user if they want to start the recording [ ! "$ready" ] && ready="$(printf "Sí\nNo" | m -p "Empezar")" [ "$ready" = "Sí" ] && { - notify-send -t 2000 "Grabando" + notify-send -t 2000 -i "$ICON_RECORD" "Grabando" - ffmpeg \ - -loglevel error \ - -y \ - -thread_queue_size 4096 \ - $audio \ - -f x11grab \ - -draw_mouse 1 \ - -s "${width}x$height" \ - -r "$fps" \ - -i "$DISPLAY.0+$offX,$offY" \ - -pix_fmt yuv420p \ - -q:v 0 \ - "$output" & + ffmpeg \ + -loglevel error \ + -y \ + -thread_queue_size 4096 \ + $audio \ + -f x11grab \ + -draw_mouse 1 \ + -s "${width}x$height" \ + -r "$fps" \ + -i "$DISPLAY.0+$offX,$offY" \ + -pix_fmt yuv420p \ + -q:v 0 \ + "$output" & - echo $! >/tmp/blaze-pid + echo $! > /tmp/blaze-pid } diff --git a/.local/bin/minve b/.local/bin/minve index 55e730a..c6a8c00 100755 --- a/.local/bin/minve +++ b/.local/bin/minve @@ -3,31 +3,31 @@ file="/tmp/.minimized" touch "$file" lines=$(awk 'END{print NR}' "$file") -icon="$XDG_DATA_HOME/icons/Marwaita-Dark/24x24/categories/preferences-system-windows.svg" +icon="$HOME/img/.icn/Deskbar_Window_Visible.svg" case $1 in -hide) - if [ "$lines" -ge 15 ]; then - notify-send -i "$icon" "15 ventanas minimizadas" "Mejor cerrar algunas antes de esconder todavía más" - else - focusedNode=$(bspc query -N -n .focused) - focusedID=$(bspc query -D -d --names) - focusedName=$(xprop -id "$focusedNode" WM_NAME | cut -d\" -f2) + hide) + if [ "$lines" -ge 15 ]; then + notify-send -i "$icon" "15 ventanas minimizadas" "Mejor cerrar algunas antes de esconder todavía más" + else + focusedNode=$(bspc query -N -n .focused) + focusedID=$(bspc query -D -d --names) + focusedName=$(xprop -id "$focusedNode" WM_NAME | cut -d\" -f2) - echo "$focusedNode $focusedID $focusedName" >> "$file" - xdo hide "$focusedNode" - notiflines="$((lines +1))" - notify-send -i "$icon" "${notiflines} ventanas escondidas." "$focusedName" - fi - ;; -show) - [ -z "$file" ] && exit + echo "$focusedNode $focusedID $focusedName" >> "$file" + xdo hide "$focusedNode" + notiflines="$((lines + 1))" + notify-send -i "$icon" "${notiflines} ventanas escondidas." "$focusedName" + fi + ;; + show) + [ -z "$file" ] && exit - sel=$(awk '{print $2,$3}' "$file" | rofi -dmenu -p ' ') - selectedID=$(awk -v pat="$sel" '$0~pat {print $1}' "$file") - selectedDesktop=$(awk -v pat="$sel" '$0~pat {print $2}' "$file") - bspc desktop -f "$selectedDesktop" - xdo show "$selectedID" - sed -i "/${sel}/d" "$file" - ;; + sel=$(awk '{print $2,$3}' "$file" | rofi -dmenu -p ' ') + selectedID=$(awk -v pat="$sel" '$0~pat {print $1}' "$file") + selectedDesktop=$(awk -v pat="$sel" '$0~pat {print $2}' "$file") + bspc desktop -f "$selectedDesktop" + xdo show "$selectedID" + sed -i "/${sel}/d" "$file" + ;; esac diff --git a/.local/bin/pantallazo b/.local/bin/pantallazo index f987dfa..78e57f7 100755 --- a/.local/bin/pantallazo +++ b/.local/bin/pantallazo @@ -2,20 +2,25 @@ file=$HOME/img/scrot/"$(date +%F_%H_%M)".png vent=$(bspc query -N -n .focused) +icon="$XDG_DATA_HOME/icons/Haiku/scalable/apps/applets-screenshooter.svg" + +notify() { + notify-send -i "$icon" "Pantalla Capturada" +} case "$(printf "Seleccion\\nVentana\\nPantalla\\nCopiar seleccion\\nCopiar ventana\\nCopiar pantalla" | rofi -dmenu -p " ")" in -"Seleccion") maim -us "$file" ;; -"Ventana") maim -ui "$(printf "%d\n" $vent)" "$file" ;; -"Pantalla") - conectados=$(xrandr | awk '( $2 == "connected" ) { count++ } END { print count }') - if [ "$conectados" = 1 ]; then - maim -u "$file" - elif [ "$conectados" = 2 ]; then - moni="$(xrandr | awk '( $2 == "connected" ) { print $1 }' | rofi -dmenu -p "Pantalla")" - maim -u "$moni" "$file" - fi - ;; -"Copiar seleccion") maim -us | xclip -selection clipboard -t image/png ;; -"Copiar ventana") maim -ui "$(printf "%d\n" "$vent")" | xclip -selection clipboard -t image/png ;; -"Copiar pantalla") maim -u | xclip -selection clipboard -t image/png ;; + "Seleccion") maim -us "$file" ;; + "Ventana") maim -ui "$(printf "%d\n" $vent)" "$file" ;; + "Pantalla") + conectados=$(xrandr | awk '( $2 == "connected" ) { count++ } END { print count }') + if [ "$conectados" = 1 ]; then + maim -u "$file" + elif [ "$conectados" = 2 ]; then + moni="$(xrandr | awk '( $2 == "connected" ) { print $1 }' | rofi -dmenu -p "Pantalla")" + maim -u "$moni" "$file" + fi + ;; + "Copiar seleccion") maim -us | xclip -selection clipboard -t image/png && notify ;; + "Copiar ventana") maim -ui "$(printf "%d\n" "$vent")" | xclip -selection clipboard -t image/png && notify ;; + "Copiar pantalla") maim -u | xclip -selection clipboard -t image/png && notify ;; esac diff --git a/.local/bin/tsd b/.local/bin/tsd index 62cfdd5..7fbd42c 100755 --- a/.local/bin/tsd +++ b/.local/bin/tsd @@ -1,7 +1,6 @@ #!/bin/zsh -icon1="$HOME/img/.icn/trans1.png" -icon2="$HOME/img/.icn/trans2.png" +icon="$XDG_DATA_HOME/icons/Haiku/scalable/apps/transmission.svg" killall transmission-daemon 2> /dev/null transmission-daemon --foreground --log-info 2>&1 | while read line; do @@ -10,9 +9,9 @@ transmission-daemon --foreground --log-info 2>&1 | while read line; do grep -v "Saved.*variant.c:" | while read line; do echo $line | grep -q "Queued for verification (verify.c:" && - notify-send -i "$icon1" --app-name="Transmission Started" "${line#* * }" + notify-send -i "$icon" --app-name="Transmission Started" "${line#* * }" echo $line | grep -q "changed from .Incomplete. to .Complete." && - notify-send -i "$icon2" --app-name="Transmission Complete" "${line#* * }" + notify-send -i "$icon" --app-name="Transmission Complete" "${line#* * }" # echo $line | systemd-cat --identifier="TransWrap" --priority=5 done 2>&1 > /dev/null done&disown diff --git a/.local/bin/tv b/.local/bin/tv index 8a6be6e..e767b34 100755 --- a/.local/bin/tv +++ b/.local/bin/tv @@ -20,15 +20,8 @@ tele() { mpv https://twitch.tv/"$canal" } -shutub() { - video="$(rofi -theme dprompt -dmenu -i -p " ")" 2>/dev/null - [ -z "$video" ] && exit 0 - mpv https://www.youtube.com/watch?v="$video" -} - -MENU="$(printf "Twitch\\nYoutube\\nTuto" | $m -p " ")" +MENU="$(printf "Twitch\\nTuto" | $m -p " ")" case $MENU in 'Twitch') tele ;; -'Youtube') shutub ;; 'Tuto') tutos ;; esac diff --git a/.local/bin/unimon b/.local/bin/unimon index fe0e2a7..388e3b3 100755 --- a/.local/bin/unimon +++ b/.local/bin/unimon @@ -5,8 +5,8 @@ pri=$(xrandr | awk '( $2 == "connected" ) { print $1 }' | sed -sn 1p) xrandr --output "$pri" --primary --auto --scale 1.0x1.0 "$(xrandr | awk '( $2 == "disconnected" {print "--output", $1, "--off"}' | paste -sd ' ')" if [ -e /tmp/bspwm_0_0-socket ]; then - bspc config remove_disabled_monitors - bspc config remove_unplugged_monitors + bspc config remove_disabled_monitors true + bspc config remove_unplugged_monitors true bspc monitor -d 1 2 3 4 5 6 7 8 9 10 bspc rule -a Firefox:Navigator state=tiled, desktop='^2' fi diff --git a/.local/bin/upd b/.local/bin/upd index 0fd38cb..58ebfde 100755 --- a/.local/bin/upd +++ b/.local/bin/upd @@ -1,6 +1,6 @@ #!/bin/sh -sudo xbps-install -Su +doas xbps-install -Su echo "Actualizando la lista de paquetes..." paclist echo "Listo." diff --git a/.local/sv/wallpaper/run b/.local/sv/wallpaper/run index d86ee25..42559d9 100755 --- a/.local/sv/wallpaper/run +++ b/.local/sv/wallpaper/run @@ -1,5 +1,3 @@ #!/bin/sh -conectados=$(xrandr | awk '( $2 == "connected" ) { count++ } END { print count }') - -[ "$conectados" = 2 ] && exec snooze -H \* -s 1h -t ./timefile sh -c 'randbg ; touch ./timefile' || exit +exec snooze -H \* -s 1h -t ./timefile sh -c 'randbg ; touch ./timefile' diff --git a/.zshenv b/.zshenv index 60e8136..746426f 100644 --- a/.zshenv +++ b/.zshenv @@ -5,6 +5,7 @@ else export EDITOR="nvim" fi +export EXINIT="set ai ic nu sm smd" export VISUAL="$EDITOR" export GIT_EDITOR="$EDITOR" export TERMINAL="alacritty" @@ -29,7 +30,7 @@ export GPG_TTY=$(tty) export GNUPGHOME="${XDG_DATA_HOME:-$HOME/.local/share}/gnupg" export SSH_ASKPASS="/bin/gnome-ssh-askpass" export PASSWORD_STORE_DIR="${XDG_DATA_HOME:-$HOME/.local/share}/pass" -eval $(keychain --dir ~/.local/share/keychain --quiet --eval --noask --agents ssh,gpg id_rsa) +eval $(keychain --dir ~/.local/share/keychain --quiet --eval --noask --clear --agents ssh,gpg id_ed25519) export NOTMUCH_CONFIG="${XDG_CONFIG_HOME:-$HOME/.config}/notmuch-config" export WGETRC="${XDG_CONFIG_HOME:-$HOME/.config}/wget/wgetrc" @@ -53,15 +54,15 @@ eval "$(sed 's/^[^#].*/export &/g;t;d' ${DIR:-$XDG_CONFIG_HOME}/user-dirs.dirs)" # }}} # FZF {{{ export FZF_DEFAULT_OPTS="--cycle \ - --color=bg:-1,hl:#5fff87,bg+:-1,hl+:#ffaf5f \ + --color=bg:-1,hl:#5fff87,bg+:-1,hl+:#ffaf5f,border:#080808 \ --color=info:#af87ff,prompt:#5fff87,pointer:#ff87d7,marker:#ff87d7,spinner:#ff87d7 \ --reverse \ --inline-info \ --no-bold \ --ansi \ --pointer='🡢' \ - --marker='⦁' \ - --preview-window :wrap:noborder" + --marker='⦁ ' \ + --preview-window :wrap:sharp" export FZF_DEFAULT_COMMAND="fd -t f -c always -H" export FZF_COMPLETION_OPTS='+c -x' @@ -85,6 +86,6 @@ export LESSHISTFILE="-" # }}} # Path {{{ typeset -U PATH path -path=(~/.local/bin ~/.config/yarn/bin ~/.local/share/npm/bin $path[@]) +path=(~/.local/bin ~/.config/yarn/bin ~/.local/share/npm/bin $GOPATH/bin $path[@]) # }}} # vim:foldmethod=marker:foldlevel=0 diff --git a/doc/xbpaketes b/doc/xbpaketes index 9af4323..da03dc0 100644 --- a/doc/xbpaketes +++ b/doc/xbpaketes @@ -1,4 +1,5 @@ ImageMagick +MesaLib-devel alacritty alsa-plugins-ffmpeg alsa-plugins-jack @@ -13,6 +14,7 @@ bombadillo bspwm catgirl chrony +cmake cpupower cryptsetup delta @@ -25,13 +27,14 @@ elogind faac fd ffmpeg +ffmpeg-devel figlet file-roller firefox +fontconfig-devel freepats fzf gcc -giada git git-extras git-libsecret @@ -49,19 +52,23 @@ hsetroot htop hugo i3lock-color +inetutils-telnet intel-ucode isync -iwd jack keychain krita lf +libX11-devel +libXcursor-devel +libXi-devel libopenal libressl-devel librsvg librsvg-utils libva-intel-driver lm_sensors +love maim mdadm mlocate @@ -79,11 +86,13 @@ neovim-remote newsboat nfs-utils nicotine+ +ninja nodejs notmuch noto-fonts-cjk noto-fonts-emoji noto-fonts-ttf +opendoas openjdk11 p7zip pass @@ -97,7 +106,6 @@ pulseaudio pulsemixer python3 python3-pip -python3-urwid qjackctl ripgrep rkhunter @@ -106,7 +114,6 @@ setxkbmap shellcheck shfmt simple-mtpfs -slrn snooze socklog-void straw-viewer