[[!img notmuch-logo.png alt="Notmuch logo" class="left"]]
-#List of features people have requested and ideas that people want to keep thinking about
+# 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
++ Add 'D' keybinding
Removes unread and inbox tags, adds deleted tag.
When used from the thread view, it deletes the currently
displayed thread (and not just the message)
-+ add '???' keybinding
++ Add '???' keybinding
Skips current thread without archiving it
beginning of the next thread. 'a' gets you to the next thread,
but archives the current one.
-+ select from address (with the configured email addresses as default choices to pick from)
-
-+ allow different "real names" for the optional email addresses
++ 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
-+ clicking on "id:Message-ID@example.com" in notmuch-show buffer should search for the referenced message
++ 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
- ATM the Message-ID is clickable but results in composing a
- new email addressed to the Message-Id (which 'looks like' an
- email address) in message mode. Instead clicking or C-c RET
- should search the referenced email and show it in a
- notmuch-show buffer.
++ Add hooks for retagging:
+ + pre-tag: Called before tagging messages
+ + post-tag: Called after messages got tagged
-## notmuch
+ This might be useful if you want to sync for example your Maildirs with the notmuch tags.
+ Allow a custom location for .notmuch
+ Allow anchors in searches
- notmuch search from:domain.org$ only matches if "domain.org" is
+ `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
+ `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
-+ Add feature to move files in the maildir hierarchy
+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"
+ `notmuchsync --move "searchstring" "targetfolder"`
Where searchstring is any valid notmuch search