mu:run-stats expects the passed-in function to take 3 arguments. The
third argument applies to gnuplot only, which is not applicable to the
count function in msgs-count.scm.
This example shows how to archive and mark a message as read which emphasizes
the importance of order in tagging a message before anything else due to the
implementation of tagging (since it currently uses 'sed').
Previously, the behavior of mu4e-view-headers-next-unread was that the cursor moved in the headers view but did not change the highlight nor the message in the view buffer. This patch updates the function to also select the message in the view buffer which appears to also highlight the message correctly in the header view.
This allows to re-tag a message in a mark action.
Two examples of what one can do with this stuff:
1. G-mail archiving:
(archive
:char "a"
:prompt "archive"
:show-target (lambda (target) "archive")
:action (lambda (docid msg target)
(mu4e~proc-move docid nil "-N")
(mu4e-action-retag-message msg "-\\Inbox")))
2. Tagging:
(tag
:char "g"
:prompt "gtag"
:ask-target (lambda () (read-string "What tag do you want to add?"))
:show-target (lambda (target) target)
:action (lambda (docid msg target)
(mu4e~proc-move docid nil "-N")
(mu4e-action-retag-message msg (concat "+" target))))
Add two new customization variables:
mu4e-index-update-error-continue
mu4e-index-update-error-warning
With these, we can configure what happens when the mail-retrieval
program finishes with a non-zero exit code.
Make the default to warn but continue; it seems quite some users got
bitten by the old behavior of not updating after an error (which may
only be a pseudo-error). offlineimap/mbsync do not document their exit
codes very well, unlike fetchmail.
Also update manual for this.
:get-target is split into:
- :ask-target (run once per bulk operation)
- :dyn-target (run once per message)
A side benefit is that the existence of the target of a move is not
checked for every message when doing bulk moves.
This is a bug fix. Previously, recomputing was done only for refile,
which is wrong: trash target can also be dynamic, and we want to allow
the user to configure more dynamic targets.