mu/www/cheatsheet.org

4.1 KiB
Raw Blame History

Mu Cheatsheet

#+html:<a href="index.html"><img src="mu.png" border="0" align="right"/></a>

Mu Cheatsheet

Here are some tips for using mu. If you want to know more, please refer to the mu man pages. For a quick warm-up, there's the mu-easy man-page.

Indexing your mail

You can index your mail with:

   $ mu index

If mu did not guess the right Maildir, you can set it explicitly:

   $ mu index --maildir=~/MyMaildir

Excluding directories from indexing

If you want to exclude certain directories from being indexed (for example, directories with spam-messages), put a file called .noindex in the directory to exlude, and it will be ignored when indexing (including its children)

Finding messages

After you have indexed your messages, you can search them. Here are some examples.

messages about Helsinki (in message body, subject, sender, …)

   $ mu find Helsinki

messages to Jack with subject jellyfish containing the word tumbleweed

   $ mu find to:Jack subject:jellyfish tumbleweed

messages between 2 kilobytes and a 2Mb, written in December 2009 with an attachment from Bill

   $ mu find size:2k..2m date:20091201..20093112 flag:attach from:bill

unread messages about soccer or socrates or …

   $ mu find 'subject:soc*' flag:unread

Find contacts

Contacts (names + email addresses) are cached separately, and can be searched with mu cfind (after your messages have been indexed):

all contacts with 'john' in either name or e-mail address

   $ mu cfind john

mu cfind takes a regular expression for matching.

You can export the contact information to a number of formats for use in e-mail clients. For examples:

export all your contacts to the mutt addressbook format

   $ mu cfind --format=mutt-alias

Other formats are: plain, mutt-ab, wl (Wanderlust), org-contact, bbdb and csv (comma-separated values).

Retrieving attachments from messages

You can retrieve attachments from messages using mu extract, which takes a message file as an argument. Without any other arguments, it displays the MIME-parts of the message. You can then get specific attachments:

   $ mu extract --parts=3,4 my-msg-file

will get you parts 3 and 4. You can also extract files based on their name:

   $ mu extract my-msg-file '.*\.jpg'

The second argument is a case-insensitive regular expression, and the command will extract any files matching the pattern in the example, all .jpg-files.

Do not confuse the '.*' regular expression in mu extract (and mu cfind with the '*' wildcard in mu find.

Further processing of matched messages

If you need to process the results of your queries with some other program, you can return the results as a list of absolute paths to the messages found:

For example, to get the number of lines in all your messages mentioning banana, you could use something like:

   $ mu find --fields="'l'" banana | xargs wc -l

Note that we use 'l', so the returned message paths will be quoted. This is useful if you have maildirs with spaces in their names.

For further processing, also the --format=(xml|json|sexp) may be interesting.

Integration with mail clients

The mu-find man page contains examples for mutt and wanderlust.

#+html:<hr/><div align="center">&copy; 2011 Dirk-Jan C. Binnema</div>

<script type="text/javascript"> var gaJsHost = (("https:" = document.location.protocol) ? "https://ssl." : "http://www."); document.write(unescape("%3Cscript src'" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E")); </script> <script type="text/javascript"> var pageTracker = _gat._getTracker("UA-578531-1"); pageTracker._trackPageview(); </script>