diff --git a/.config/mutt/accounts/1-david.julien@posteo.net.muttrc b/.config/mutt/accounts/1-david.julien@posteo.net.muttrc index ac52906..c81d1a9 100644 --- a/.config/mutt/accounts/1-david.julien@posteo.net.muttrc +++ b/.config/mutt/accounts/1-david.julien@posteo.net.muttrc @@ -10,7 +10,8 @@ set message_cachedir = "$XDG_CACHE_HOME/mutt/david.julien@posteo.net/bodies" set mbox_type = Maildir set crypt_autosign = yes -set pgp_sign_as = "0x7F03EA9BEFFCB97F" +set pgp_self_encrypt = yes +set pgp_default_key = "0x7F03EA9BEFFCB97F" bind index,pager gg noop bind index,pager g noop diff --git a/.config/mutt/accounts/2-david.julien@ens-lyon.fr.muttrc b/.config/mutt/accounts/2-david.julien@ens-lyon.fr.muttrc index 9fea223..7c00a8f 100644 --- a/.config/mutt/accounts/2-david.julien@ens-lyon.fr.muttrc +++ b/.config/mutt/accounts/2-david.julien@ens-lyon.fr.muttrc @@ -10,7 +10,8 @@ set message_cachedir = "$XDG_CACHE_HOME/mutt/david.julien@ens-lyon.fr/bodies" set mbox_type = Maildir set crypt_autosign = yes -set pgp_sign_as = "0x9D5279329BB80FA0" +set pgp_self_encrypt = yes +set pgp_default_key = "0x9D5279329BB80FA0" bind index,pager gg noop bind index,pager g noop diff --git a/.config/mutt/accounts/2-david.julien@univ-nantes.fr.muttrc b/.config/mutt/accounts/2-david.julien@univ-nantes.fr.muttrc index 2e15aad..cc03a40 100644 --- a/.config/mutt/accounts/2-david.julien@univ-nantes.fr.muttrc +++ b/.config/mutt/accounts/2-david.julien@univ-nantes.fr.muttrc @@ -10,7 +10,8 @@ set message_cachedir = "$XDG_CACHE_HOME/mutt/david.julien@univ-nantes.fr/bodies" set mbox_type = Maildir set crypt_autosign = yes -set pgp_sign_as = "0x1DD6B2BA6DD78810" +set pgp_self_encrypt = yes +set pgp_default_key = "0x1DD6B2BA6DD78810" bind index,pager gg noop bind index,pager g noop @@ -23,7 +24,7 @@ set signature="$XDG_CONFIG_HOME/mutt/accounts/nantes.signature" unmacro index o macro index o "mailsync" "run mbsync to sync david.julien@univ-nantes.fr" -mailboxes "=Sent" "=Drafts" "=Trash" "=INBOX" "=thesis" "=admin" "=login" "=teaching" "=teaching/X11I020" "=teaching/X11I040" +mailboxes "=Sent" "=Drafts" "=Trash" "=INBOX" "=thesis" "=admin" "=login" "=publications" "=teaching" "=teaching/X11I020" "=teaching/X11I040" set record = "+Sent" macro index,pager gs "=Sent" "go to sent" macro index,pager Ms ";=Sent" "move mail to sent" @@ -49,3 +50,12 @@ macro index,pager Ca ";=admin" "copy mail to admin" macro index,pager gl "=login" "go to login" macro index,pager Ml ";=login" "move mail to login" macro index,pager Cl ";=login" "copy mail to login" +macro index,pager gp "=publications" "go to publications" +macro index,pager Mp ";=publications" "move mail to publications" +macro index,pager Cp ";=publications" "copy mail to publications" +macro index,pager gc2 "=teaching/X11I020" "go to teaching/X11I020" +macro index,pager Mc2 ";=teaching/X11I020" "move mail to teaching/X11I020" +macro index,pager Cc2 ";=teaching/X11I020" "copy mail to teaching/X11I020" +macro index,pager gc4 "=teaching/X11I040" "go to teaching/X11I040" +macro index,pager Mc4 ";=teaching/X11I040" "move mail to teaching/X11I040" +macro index,pager Cc4 ";=teaching/X11I040" "copy mail to teaching/X11I040" diff --git a/.config/mutt/accounts/3-david.julien@mailo.com.muttrc b/.config/mutt/accounts/3-david.julien@mailo.com.muttrc index f9497d2..779517e 100644 --- a/.config/mutt/accounts/3-david.julien@mailo.com.muttrc +++ b/.config/mutt/accounts/3-david.julien@mailo.com.muttrc @@ -10,7 +10,8 @@ set message_cachedir = "$XDG_CACHE_HOME/mutt/david.julien@mailo.com/bodies" set mbox_type = Maildir set crypt_autosign = yes -set pgp_sign_as = "0x86C2FBBE4A4F0F7F" +set pgp_self_encrypt = yes +set pgp_default_key = "0x86C2FBBE4A4F0F7F" bind index,pager gg noop bind index,pager g noop diff --git a/.config/mutt/accounts/4-david.julien@centrale-marseille.fr.muttrc b/.config/mutt/accounts/4-david.julien@centrale-marseille.fr.muttrc index 7e6fcb1..a521c78 100644 --- a/.config/mutt/accounts/4-david.julien@centrale-marseille.fr.muttrc +++ b/.config/mutt/accounts/4-david.julien@centrale-marseille.fr.muttrc @@ -10,7 +10,8 @@ set message_cachedir = "$XDG_CACHE_HOME/mutt/david.julien@centrale-marseille.fr/ set mbox_type = Maildir set crypt_autosign = no -set pgp_sign_as = "0x9F46CD164AE1E813" +set pgp_self_encrypt = yes +set pgp_default_key = "0x9F46CD164AE1E813" bind index,pager gg noop bind index,pager g noop diff --git a/.config/mutt/neomutt.muttrc b/.config/mutt/neomutt.muttrc index a000907..8191acd 100644 --- a/.config/mutt/neomutt.muttrc +++ b/.config/mutt/neomutt.muttrc @@ -3,7 +3,7 @@ # More information : https://github.com/LukeSmithxyz/mutt-wizard -set mailcap_path = /home/swytch/.config/mutt/mailcap:$mailcap_path +set mailcap_path = $XDG_CONFIG_HOME/mutt/mailcap:$mailcap_path set mime_type_query_command = "file --mime-type -b %s" set date_format="%d/%m/%y %I:%M%p" set index_format="%2C %Z %?X?A& ? %D %-15.15F %s (%-4.4c)" diff --git a/.config/nvim/lua/maps.lua b/.config/nvim/lua/maps.lua index 5ee5ec4..e675aee 100644 --- a/.config/nvim/lua/maps.lua +++ b/.config/nvim/lua/maps.lua @@ -18,11 +18,13 @@ vim.keymap.set("n", "", "w! | !compiler %") vim.keymap.set("n", "u", function() require("packer").sync() end) -- telescope -vim.keymap.set("n", "ff", +vim.keymap.set("n", "tf", function() require("telescope.builtin").find_files() end) -vim.keymap.set("n", "fb", +vim.keymap.set("n", "tb", function() require("telescope.builtin").buffers() end) -vim.keymap.set("n", "fl", +vim.keymap.set("n", "tg", + function() require("telescope.builtin").grep_string() end) +vim.keymap.set("n", "tl", function() require("telescope.builtin").live_grep() end) -- colorscheme diff --git a/.config/nvim/lua/plugin/lsp/init.lua b/.config/nvim/lua/plugin/lsp/init.lua index 88be39c..4a22120 100644 --- a/.config/nvim/lua/plugin/lsp/init.lua +++ b/.config/nvim/lua/plugin/lsp/init.lua @@ -55,7 +55,7 @@ end -- nvim-cmp supports additional completion capabilities local capabilities = vim.lsp.protocol.make_client_capabilities() -capabilities = require("cmp_nvim_lsp").update_capabilities(capabilities) +capabilities = require("cmp_nvim_lsp").default_capabilities(capabilities) local servers = { "clangd", "sumneko_lua", "texlab" } lsp_installer.setup { diff --git a/.gitignore b/.gitignore index 3ef6e1e..648d53d 100644 --- a/.gitignore +++ b/.gitignore @@ -4,22 +4,28 @@ !/.xprofile !/.zshenv +!/.local !/.local/bin/ -!/local/src/ -!/.local/state/ +!/.local/src/ +/.local/lib/ +/.local/include/ +/.local/share/ +/.local/state/ !/.config/ /.config/dconf/ /.config/font-manager/ /.config/fontconfig/ -/.config/gnupg/ +/.config/gnupg/* !/.config/gnupg/gpg-agent.conf /.config/libreoffice/ -/.config/mpd/ +/.config/mpd/* !/.config/mpd/mpd.conf /.config/mutt/.mailsynclastrun /.config/nvim/plugin/ /.config/pulse/ +/.config/transmission-daemon/* +/.config/transmission-daemon/settings.json /.config/zsh/.zcompdump /**/*.log diff --git a/.local/bin/mailsync b/.local/bin/mailsync index 26237c4..2ce8de7 100755 --- a/.local/bin/mailsync +++ b/.local/bin/mailsync @@ -13,6 +13,8 @@ # and the GPG home. This is done by searching common profile files for variable # assignments. +timestamp="${XDG_STATE_HOME:-$HOME/.local/state}/mailsynclastrun" + eval "$(grep -h -- \ "^\s*\(export \)\?\(XDG_CACHE_HOME\|XDG_CONFIG_HOME\|XDG_DATA_HOME\)=" \ "$HOME/.zshenv" 2>/dev/null)" @@ -32,25 +34,16 @@ export GPG_TTY=$TTY notify() { notify-send "neomutt" " $2 new mail(s) in \`$1\` account." } -messageinfo() { - notify-send "$from:" "$subject" -} # Check account for new mail. Notify if there is new content. syncandnotify() { acc="$(echo "$account" | sed "s/.*\///")" mbsync "$acc" - new="$(find "${XDG_DATA_HOME:-$HOME/.local/share}"/mail/$acc/*/new/ -type f -newer "${XDG_CONFIG_HOME:-$HOME/.config}/mutt/.mailsynclastrun" | grep -iv "trash" 2>/dev/null)" + new="$(find "${XDG_DATA_HOME:-$HOME/.local/share}"/mail/$acc -path */new/* -type f -newer "$timestamp" | grep -iv -e "trash" -e "drafts" 2>/dev/null)" newcount=$(echo "$new" | sed '/^\s*$/d' | wc -l) if [ "$newcount" -gt "0" ]; then - for file in $new; do - # Extract subject and sender from mail. - from=$(awk '/^From: / && ++n ==1,/^\<.*\>:/' "$file" | perl -CS -MEncode -ne 'print decode("MIME-Header", $_)' | awk '{ $1=""; if (NF>=3)$NF=""; print $0 }' | sed 's/^[[:blank:]]*[\"'\''\<]*//;s/[\"'\''\>]*[[:blank:]]*$//') - subject=$(awk '/^Subject: / && ++n == 1,/^\<.*\>: / && ++i == 2' "$file" | head -n 1 | perl -CS -MEncode -ne 'print decode("MIME-Header", $_)' | sed 's/^Subject: //' | sed 's/^{[[:blank:]]*[\"'\''\<]*//;s/[\"'\''\>]*[[:blank:]]*$//' | tr -d '\n') - messageinfo & - done - notify "$acc" "$newcount" & - [ -n "$(pidof dwmblocks)" ] && kill -40 $(pidof dwmblocks) + notify "$acc" "$newcount" & + [ -n "$(pidof dwmblocks)" ] && kill -40 $(pidof dwmblocks) fi } @@ -66,4 +59,4 @@ wait notmuch new 2>/dev/null #Create a touch file that indicates the time of the last run of mailsync -touch "${XDG_CONFIG_HOME:-$HOME/.config}/mutt/.mailsynclastrun" +touch $timestamp diff --git a/.local/bin/statusbar/sb-mailbox b/.local/bin/statusbar/sb-mailbox index 7302bf2..9c1a625 100755 --- a/.local/bin/statusbar/sb-mailbox +++ b/.local/bin/statusbar/sb-mailbox @@ -13,7 +13,7 @@ unread="" for acc in $(ls "${XDG_DATA_HOME:-$HOME/.local/share}"/mail/) do - new="$(find "${XDG_DATA_HOME:-$HOME/.local/share}"/mail/$acc/*/new/ -type f | grep -iv "trash" | wc -l 2>/dev/null)" + new="$(find "${XDG_DATA_HOME:-$HOME/.local/share}"/mail/$acc -path */new/* -type f | grep -iv -e "trash" -e "drafts" | wc -l 2>/dev/null)" if [ $new -gt 0 ]; then box="" [ -n "$(echo "$acc" | sed -n '/@centrale/p')" ] && box="" @@ -23,6 +23,6 @@ do unread="$unread/$box$new" fi done -[ -n "$unread" ] && unread="($(echo "$unread" | cut -c 2-))" || exit +[ -n "$unread" ] && unread="$(echo "$unread" | cut -c 2-)" || exit printf "  %s%s " "$unread" "$icon"