[[!img notmuch-logo.png alt="Notmuch logo" class="left"]] # List of features people have requested and ideas that people want to keep thinking about ********************* **WARNING**: This page is going away. It seems like nobody who works on notmuch reads it regularly, and there is no convenient way to discuss ideas with the people who propose them. Please use [notmuch mailing list](http://notmuchmail.org/mailman/listinfo/notmuch) instead. ********************* ## TODO list See the [devel/TODO file](http://git.notmuchmail.org/git/notmuch/blob/HEAD:/devel/TODO) in the [notmuch git repository](http://git.notmuchmail.org/git/notmuch). ## Emacs client + Add 'd' keybinding Removes unread and inbox tags, adds deleted tag. When used from a search results view, it deletes the thread that the cursor is on. When used from the thread view, it deletes the currently displayed message inside the thread. + Add 'D' keybinding Removes unread and inbox tags, adds deleted tag. When used from a search results view, it deletes the thread that the cursor is on (just like 'd') When used from the thread view, it deletes the currently displayed thread (and not just the message) + Add '???' keybinding Skips current thread without archiving it Right now 'n' gets me to the end of a thread, but not to the beginning of the next thread. 'a' gets you to the next thread, but archives the current one. + Allow different "real names" for the optional email addresses if only one name is configured, use that for all addresses; if other_names are configured, match those with the other_email addresses + Put the the emacs mode in a separate repository and include it as a submodule in main (better for emacs package managers among other things). ## notmuch + Add hooks for retagging: + pre-tag: Called before tagging messages + post-tag: Called after messages got tagged This might be useful if you want to sync for example your Maildirs with the notmuch tags. + Allow a custom location for .notmuch The notmuch index is currently saved in .notmuch under the user's Maildir and there's no configuration option to change that. This is problematic with both tools that sync Maildirs and with IMAP servers that consider .notmuch a Maildir subfolder (e.g. dovecot) A better solution would be to add a configuration option for this so that it can be put e.g. in ~/.notmuch + Add a list or pattern for subfolders to ignore Some people are crazy enough to archive e.g. their Spam in their Maildir and perhaps they'd prefer not having them indexed on notmuch. Having a configuration option to exclude or include certain subparts of the user's Maildir would be a very nice feature to have. + Index more headers. Some desired headers: + Received: allows for searches based on the arrival path + Reply-To: allows for searches based on the return address + Allow anchors in searches `notmuch search from:domain.org$` only matches if "domain.org" is at the end of the From: header `notmuch search from:^username` only matches if "username" is at the beginning of the From: header (right after the ':') This leaves the interesting question if we want a way to bind to the actual address component. + Add folder tags to mail automatically Add the name of the IMAP folder as the tag for mails. This way, server-side filtering can be directly used by notmuch to tag all incoming mail. + Make message store code modular Notmuch is built on the assumption that the message store is a collection of message files in directories (roughly Maildir format). This performs suboptimally for a wide range of systems, especially with large numbers of messages. Modularising the message store code to move this assumption into the implementation rather than the interface would allow adding support for different message stores like the traditional [mbox formats](http://homepage.ntlworld.com./jonathan.deboynepollard/FGA/mail-mbox-formats.html) as well as more experimental approaches like using git as an object storage (similar to how [[nmbug]] operates). + Put content of all non-multipart content-types in results of `notmuch show --format=json ...` In the JSON-format output of the `show` command, only text/plain parts' content is included. Including the content of parts having any non-multipart content-type would assist with those who wished to access their mail through notmuch's `show` command (because of having written their MUA in a language with no library bindings or access to them [e.g. Perl, Lua or shell]) and also had a mailcap or similar MIME-type mapping system with which to actually view HTML files, images and the like. ## 3rd party apps ### notmuchsync NOTE: most of notmuchsync's functionality has been integrated in notmuch 0.5. It probably doesn't make much sense to requests features for it, rather than notmuch itself. + DONE: id:"878w8niy83.fsf@SSpaeth.de" Add feature to move files in the maildir hierarchy `notmuchsync --move "searchstring" "targetfolder"` Where searchstring is any valid notmuch search