1 About mairix and mairix.el

Mairix is a tool for indexing and searching words in locally stored mail. It was written by Richard Curnow and is licensed under the GPL. Mairix comes with most popular GNU/Linux distributions, but it also runs under Windows (with Cygwin), macOS and Solaris. The website can be found at http://www.rpcurnow.force9.co.uk/mairix/index.html

Though mairix might not be as flexible as other search tools like swish++ or namazu, it has the prime advantage of being incredibly fast. On current systems, it can easily search through headers and message bodies of thousands and thousands of mails in well under a second. Building the database necessary for searching might take a minute or two, but only has to be done once fully. Afterwards, the updates are done incrementally and therefore are really fast, too. Additionally, mairix is very easy to set up.

Mairix presents the search results by either populating a virtual maildir/MH folder with symlinks which point to the “real” message files, or if mbox is used, it creates a new mbox file which contains copies of the found messages.

mairix.el is an interface to the mairix search engine. It allows you to call mairix with a search term, easily create searches based on the currently displayed mail, save regularly used searches in your .emacs for future use and lets you call mairix for updating the database. It also lets you easily create search queries using graphical widgets, similar to a customization buffer.

Currently, mairix.el is only tested with mbox output together with RMail, Gnus, or VM as the Emacs mail program. However, it should also work with Maildir or MH, and it should be very easy to integrate other Emacs mail programs into mairix.el (see Extending mairix.el).

If you use Gnus with maildir or MH, you should really use the native Gnus back end nnmairix instead, since it is more tightly integrated into Gnus and has more features.