diff options
author | Sean Whitton <spwhitton@spwhitton.name> | 2017-08-05 10:20:58 -0400 |
---|---|---|
committer | Sean Whitton <spwhitton@spwhitton.name> | 2017-08-05 10:20:58 -0400 |
commit | 39e12afbbd1ae53f07f4162854da69b5e7ba0c24 (patch) | |
tree | bae4e4690e41b9b5425082de67d33f8237848f6d /.fmail | |
parent | f6ed664a8fb9ed25dcb33ce747cce21cff453990 (diff) | |
download | dotfiles-39e12afbbd1ae53f07f4162854da69b5e7ba0c24.tar.gz |
fix path to notmuch hooks
Diffstat (limited to '.fmail')
-rwxr-xr-x | .fmail/.notmuch/hooks/post-new | 15 | ||||
-rwxr-xr-x | .fmail/.notmuch/hooks/pre-new | 44 |
2 files changed, 59 insertions, 0 deletions
diff --git a/.fmail/.notmuch/hooks/post-new b/.fmail/.notmuch/hooks/post-new new file mode 100755 index 00000000..c8532d44 --- /dev/null +++ b/.fmail/.notmuch/hooks/post-new @@ -0,0 +1,15 @@ +#!/bin/sh + +. $HOME/.shenv + +# mark all sent mail as read +notmuch tag -unread -- folder:sent + +# mark all drafts as drafts, and as read +notmuch tag -unread +draft -- folder:drafts + +# mark all spam as spam +notmuch tag +spam -- folder:spam + +# mark all trash as trash +notmuch tag +deleted -- folder:trash diff --git a/.fmail/.notmuch/hooks/pre-new b/.fmail/.notmuch/hooks/pre-new new file mode 100755 index 00000000..6af993dd --- /dev/null +++ b/.fmail/.notmuch/hooks/pre-new @@ -0,0 +1,44 @@ +#!/bin/sh + +. $HOME/.shenv + +# The primary purpose of my pre-new and post-new scripts is to +# maintain the 'draft', 'spam', 'deleted' and 'unread' tags such that +# the only data in the notmuch database that cannot be reproduced from +# the Maildir is which threads have been killed, which is not +# important information. Then there is no need to sync the notmuch +# database between machines. Syncing the maildir with mbsync(1) is +# sufficient. + +# Note that another aspect of this setup is not using an 'inbox' tag. + +# In this script, we move mail according to tags that may have been +# added since the last 'notmuch new' run. Then we sync with my IMAP +# server. Then in the post-new script we add tags to new messages in +# particular folders + +# ensure all drafts are in the drafts folder +floating_drafts=$(notmuch search --output=files -- tag:draft and not folder:drafts) +if [ ! -z "$floating_drafts" ]; then + mdmv $floating_drafts $HOME/.fmail/drafts +fi + +# propagate the 'killed' tag to all messages in the killed message's thread +killed_threads=$(notmuch search --output=threads tag:killed) +if [ ! -z "$killed_threads" ]; then + notmuch tag -unread -- $killed_threads +fi + +# ensure all spam is in the spam folder to train FastMail's spam filter +floating_spam=$(notmuch search --output=files -- tag:spam and not folder:spam) +if [ ! -z "$floating_spam" ]; then + mdmv $floating_spam $HOME/.fmail/spam +fi + +# ensure all deleted messages are in the trash folder +floating_deleted=$(notmuch search --output=files -- tag:deleted and not folder:trash) +if [ ! -z "$floating_deleted" ]; then + mdmv $floating_deleted $HOME/.fmail/trash +fi + +movemail |