This release adds one major feature: NotMuch (email indexing engine) and
one improvement to IfDef which you can all have a good argue about :-)
https://github.com/neomutt/neomutt/releases/tag/neomutt-20160317
## NotMuch
NotMuch is a mail indexing system, which is great if you have all your
mail locally. If not, you can use offlineimap. To compile and run it,
you will need to install NotMuch.
The Notmuch patch is the work of Karel Zak (and many others):
https://github.com/neomutt/neomutt/wiki/notmuch#credits
The original NotMuch patch lived in 'mutt-kz' repo. That repo branched
from Mutt over 4 years ago and since then included many other Mutt
patches (but missed out on a few Mutt upstream fixes).
I rebased mutt-kz onto Mutt-1.5.24 and split out all the minor features.
They were tidied, documented and released as the first NeoMutt patchset.
Next, I rebased mutt-kz onto my updated Sidebar patch.
The new NotMuch branch is *just* the notmuch code working with the
latest release of Mutt and patches.
## Ifdef
The 'ifdef' patch introduced a conditional configuration option, e.g.
ifdef sidebar_visible source ~/.mutt/sidebar.rc
This release extends ifdef's abilities.
The first commit changes how Mutt version info is displayed.
Mutt's approach is traditional, but inflexible.
#ifdef USE_IMAP
"+USE_IMAP "
#else
"-USE_IMAP "
#endif
I've changed this to: struct { char*, int }
#ifdef USE_IMAP
{ "USE_IMAP", 1 },
#else
{ "USE_IMAP", 0 },
#endif
Now, I can query the symbols from within Mutt and I can display them in
a pretty manner (wrapped to 80 columns). Note: the output is the same as
before "+USE_IMAP" or "-USE_IMAP".
int feature_enabled (const char *name);
In order to export this function, I've moved all the version/copyright
functions into a separate file: version.c They were self-contained,
anyway.
The next two commits introduce 'ifndef' and 'finish' config commands,
allowing:
# Top of my sidebar config file
ifndef USE_SIDEBAR finish
Let the discussion commence.
--
Rich Russon (FlatCap) <[email protected]>