X-Git-Url: https://git.cworth.org/git?p=obsolete%2Fnotmuch-wiki;a=blobdiff_plain;f=feature-requests.mdwn;h=cf8dc7b3b60b4388deb12ad0abe53266f40c7dae;hp=d2d6c068a936618b667af0c19e26f51d61043114;hb=HEAD;hpb=4f3e942c093abe74ca449482d7be5f56e37debf8 diff --git a/feature-requests.mdwn b/feature-requests.mdwn index d2d6c06..cf8dc7b 100644 --- a/feature-requests.mdwn +++ b/feature-requests.mdwn @@ -1,36 +1,144 @@ [[!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 + + 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 -+ 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) + This might be useful if you want to sync for example your Maildirs with the notmuch tags. ++ Allow a custom location for .notmuch -## notmuch + The notmuch index is currently saved in .notmuch under the user's + Maildir and there's no configuration option to change that. -+ Add folder keyword -Allows to search for messages in a specific folder + This is problematic with both tools that sync Maildirs and with IMAP + servers that consider .notmuch a Maildir subfolder (e.g. dovecot) -+ 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. + A better solution would be to add a configuration option for this so + that it can be put e.g. in ~/.notmuch -+ Add Received: header to the indexed header components -allows for searches based on the arrival path ++ Add a list or pattern for subfolders to ignore -## 3rd part apps + 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 +