Title: Using emacs to manage mails with mu4e
       Author: Solène
       Date: 15 June 2017
       Tags: emacs email
       Description: 
       
       In this article we will see how to fetch, read and manage your emails
       from Emacs using mu4e. The process is the following: mbsync command
       (while mbsync is the command name, the software name is **isync**)
       create a mirror of an imap account into a Maildir format on your
       filesystem. **mu** from mu4e will create a database from the Maildir
       directory using xapian library (full text search database), then mu4e
       (mu for emacs) is the GUI which queries xapian database to manipulates
       your mails.
       
       Mu4e handles with dynamic bookmarks, so you can have some predefined
       filters instead of having classic folders. You can also do a query and
       reduce the results with successives queries.
       
       You may have heard about using notmuch with emacs to manage mails,
       mu4e and notmuch doesn't do the same job. While notmuch is a nice tool
       to find messages from queries and create filters, it operates as a
       read-only tool and can't do anything with your mail. mu4e let you
       write mail, move, delete, flag etc... AND still allow to make complex
       queries.
       
       I wrote this article to allow people to try mu4e quickly, you may want
       to read both isync and mu4e manual to have a better configuration
       suiting your needs.
       
       ## Installation 
       
       On OpenBSD you need to install 2 packages:
       
           # pkg_add mu4 isync
       
       
       ## isync configuration
       
       We need to configure isync to connect to the IMAP server: 
       
       Edit the file **~/.mbsyncrc**, there is a trick to not have the
       password in clear text in the configuration file, see isync
       configuration manual for this:
       
           iMAPAccount my_imap
           Host my_host_domain.info
           User imap_user
           Pass my_pass_in_clear_text
           SSLType IMAPS
       
           Account my_imap
       
           Path ~/Maildir/my_imap/
           Inbox ~/Maildir/my_imap/Inbox
           SubFolders Legacy
       
           Master :my_imap-remote:
           Slave :my_imap-local:
           Patterns *
           Create Slave
           Expunge Both
       
       
       ## mu4e / emacs configuration 
       
       We need to configure mu4e in order to tell where to find the mail
       folder. Add this to your **~/.emacs** file.
       
           (require 'mu4e)
           (setq mu4e-maildir "~/Maildir/my_imap/"
                 mu4e-sent-folder "/Sent Messages/"
                 mu4e-trash-folder "/Trash"
                 mu4e-drafts-folder "/Drafts")
       
       
       ## First start
       
       A few commands are needed in order to make everything works. We need
       to create the base folder as mbsync command won't do the job for some
       reason, and we need mu to index the mails the first time.
       
       mbsync can takes a moment because it will download ALL your mails.
       
           $ mkdir -p ~/Maildir/my_imap
           $ mbsync -aC
           $ mu init --maildir=~/Maildir/my_imap
           $ mu index
       
       
       ## How to use mu4e
       
       start emacs, run **M-x mu4e RET** and enjoy, the documentation of mu4e
       is well done. Press "U" at mu4e screen to synchronize with imap
       server.
       
       A query for mu4e looks like this:
       
           list:misc.openbsd.org flag:unread avahi
       
       and which are unread and which contains "avahi" pattern.
       
           date:20140101..20150215 urgent
       
       15th february 2015 containing word "urgent".
       
       
       ## Additional notes
       
       The current setup doesn't handle sending mails, I'll write another
       article about this. This requires configuring a smtp authentification
       and an identify for mu4e.
       
       Also, you may need to tweak mbsync configuration or mu4e
       configuration, some settings must be changed depending on the imap
       server, this is particuliarly important for deleted mails.