On Wed, 22 Dec 2021, at 22:50, Oleg A. Mamontov wrote:
> The feature of neomutt that completely determines my choice is an
> elegant built-in integration with notmuch. Really worth to try.
Like Oleg I see the notmuch integration including the notmuch:// protocol for
folders as the biggest selling point of notmuch these days plus the Lua
scripting interface.
That being said, while I could see myself not being able to do without that
much notmuch in a business setting where mutt would be front and center of my
emailing and day-to-day work; for my private use, mutt is enough --- I use
notmuch mainly for search across mailboxes and detailed search, and for that,
these trusty macros have been in my muttrc for years unchanged and do the job:
macro generic,index,pager <F2> \
"<shell-escape>mbsync -aq<enter><shell-escape>notmuch new<enter>" "fetch mail"
macro index <F7> \
"<enter-command>set my_old_pipe_decode=\$pipe_decode
my_old_wait_key=\$wait_key nopipe_decode nowait_key<enter>\
<shell-escape>notmuch-mutt -r --prompt search<enter>\
<change-folder-readonly>`echo
${XDG_CACHE_HOME:-$HOME/.cache}/notmuch/mutt/results`<enter>\
<enter-command>set pipe_decode=\$my_old_pipe_decode
wait_key=\$my_old_wait_key<enter>" \
"notmuch: search mail"
macro index <F8> \
"<enter-command>set my_old_pipe_decode=\$pipe_decode
my_old_wait_key=\$wait_key nopipe_decode nowait_key<enter>\
<pipe-message>notmuch-mutt -r thread<enter>\
<change-folder-readonly>`echo
${XDG_CACHE_HOME:-$HOME/.cache}/notmuch/mutt/results`<enter>\
<enter-command>set pipe_decode=\$my_old_pipe_decode
wait_key=\$my_old_wait_key<enter>" \
"notmuch: reconstruct thread"
Most of my email processing these days is also happening server-side (starting
from SPF, DKIM, DMARC, ARC and ending at Sieve) so that I simply do not need
turing-complete script bindings via Lua in my MUA. This used to be different
(msmtp > procmail > (filter chain) > mailbox, but not anymore.