## 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 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)
+ Removes unread and inbox tags, adds deleted tag.
+ When used from a search results view, it deletes the thread that
+ the cursor is on.
-## notmuch
+ When used from the thread view, it deletes the currently
+ displayed message inside the thread.
-+ Add folder keyword
-:Allows to search for messages in a specific folder
++ Add 'D' keybinding
-+ 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.
+ Removes unread and inbox tags, adds deleted tag.
-+ Add Received: header to the indexed header components
-:allows for searches based on the arrival path
+ When used from a search results view, it deletes the thread that
+ the cursor is on (just like 'd')
-## 3rd part apps
+ 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 submmodule in main (better for emacs package managers among other things).
+
+## notmuch
+
++ 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
-+ Add feature to move files in the maildir hierarchy
-:notmuchsync --move "searchstring" "targetfolder"
-:Where searchstring is any valid notmuch search
+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
+