Welcome to mu mail - an emacs client for the mu maildir indexing/searching tool. It turns mu into an e-mail-client.
Mu Mail has things in common with programs such as ‘notmuch’ and ‘md’, but - in the opinion of its author - it offers some unique features as well. Basically, the mail handling (deleting, moving etc.) is inspired by Wanderlust (another emacs-based e-mail client) and dired, while it takes some cues from GMail with respect to being search-based. In practice this means that mu mail provides a ‘traditional’ folder-based e-mail client, on top of a search based back-end.
While not necessarily interesting for all users of mu mail, for some it may be interesting to know how mu mail does its job.
Since version 0.9.8, mu has a special
server command, which drops you into
a command line where you can give certain commands to mu (see the
man page). While it would certainly be possible to have specific commands to
get lists of messages, move them, delete them etc., having a running instance
around gets rid of the startup time of mu and especially the message
So, when running mu mail inside emacs, it fires up an instance of ‘mu server’, and communicates with it as long as it runs.
mu mail shows its results only after the mu server reports their completion. Still, the execution is asynchronous, so you do not need wait for anything. We found that, for example, deleting messages is fast enough to allow us to wait for the results. An alternative design would be to update the user-interface already; so far we are quite content with the performance.
Regarding performance, showing large numbers (thousands) of message can still be a bit slower than is desirable. This is an area for improvement still.