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