]> git.cworth.org Git - notmuch-wiki/blob - feature-requests.mdwn
Add TODO file like to feature request page
[notmuch-wiki] / feature-requests.mdwn
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
3
4 ## TODO list
5
6 See the [devel/TODO file](http://git.notmuchmail.org/git/notmuch/blob/HEAD:/devel/TODO) in the
7 [notmuch git repository](http://git.notmuchmail.org/git/notmuch).
8
9 ## Emacs client
10
11 +    Add 'd' keybinding
12
13      Removes unread and inbox tags, adds deleted tag.
14
15      When used from a search results view, it deletes the thread that
16      the cursor is on.
17
18      When used from the thread view, it deletes the currently
19      displayed message inside the thread.
20
21 +    Add 'D' keybinding
22
23      Removes unread and inbox tags, adds deleted tag.
24
25      When used from a search results view, it deletes the thread that
26      the cursor is on (just like 'd')
27
28      When used from the thread view, it deletes the currently
29      displayed thread (and not just the message)
30
31 +    Add '???' keybinding
32
33      Skips current thread without archiving it
34
35      Right now 'n' gets me to the end of a thread, but not to the
36      beginning of the next thread. 'a' gets you to the next thread,
37      but archives the current one.
38
39 +    Allow different "real names" for the optional email addresses
40
41      if only one name is configured, use that for all addresses;
42      if other_names are configured, match those with the other_email addresses
43
44 +    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).
45  
46 ## notmuch
47
48 +    Add hooks for retagging:
49    + pre-tag: Called before tagging messages
50    + post-tag: Called after messages got tagged
51
52      This might be useful if you want to sync for example your Maildirs with the notmuch tags.
53
54 +    Allow a custom location for .notmuch
55
56      The notmuch index is currently saved in .notmuch under the user's
57      Maildir and there's no configuration option to change that.
58
59      This is problematic with both tools that sync Maildirs and with IMAP
60      servers that consider .notmuch a Maildir subfolder (e.g. dovecot)
61
62      A better solution would be to add a configuration option for this so
63      that it can be put e.g. in ~/.notmuch
64
65 +    Add a list or pattern for subfolders to ignore
66
67      Some people are crazy enough to archive e.g. their Spam in their
68      Maildir and perhaps they'd prefer not having them indexed on notmuch.
69
70      Having a configuration option to exclude or include certain subparts of
71      the user's Maildir would be a very nice feature to have.
72
73 +    Index more headers.  Some desired headers:
74
75   + Received: allows for searches based on the arrival path
76   + Reply-To: allows for searches based on the return address
77
78 +    Allow anchors in searches
79
80      `notmuch search from:domain.org$` only matches if "domain.org" is
81      at the end of the From: header
82
83      `notmuch search from:^username` only matches if "username" is at
84      the beginning of the From: header (right after the ':')
85
86      This leaves the interesting question if we want a way to bind to
87      the actual address component.
88
89 +    Add folder tags to mail automatically
90
91      Add the name of the IMAP folder as the tag for mails.  This way,
92      server-side filtering can be directly used by notmuch to tag all
93      incoming mail.
94
95 +    Make message store code modular
96
97      Notmuch is built on the assumption that the message store is a
98      collection of message files in directories (roughly Maildir
99      format). This performs suboptimally for a wide range of systems,
100      especially with large numbers of messages. Modularising the
101      message store code to move this assumption into the implementation
102      rather than the interface would allow adding support for different
103      message stores like the traditional [mbox
104      formats](http://homepage.ntlworld.com./jonathan.deboynepollard/FGA/mail-mbox-formats.html)
105      as well as more experimental approaches like using git as an object
106      storage (similar to how [[nmbug]] operates).
107
108 +    Put content of all non-multipart content-types in results of `notmuch show --format=json ...`
109
110      In the JSON-format output of the `show` command, only text/plain
111      parts' content is included.  Including the content of parts having any
112      non-multipart content-type would assist with those who wished to access
113      their mail through notmuch's `show` command (because of having written
114      their MUA in a language with no library bindings or access to them
115      [e.g. Perl, Lua or shell]) and also had a mailcap or similar MIME-type
116      mapping system with which to actually view HTML files, images and the like.
117
118 ## 3rd party apps
119
120 ### notmuchsync
121
122 NOTE: most of notmuchsync's functionality has been integrated in
123       notmuch 0.5. It probably doesn't make much sense to requests
124       features for it, rather than notmuch itself.
125
126 +    DONE: id:"878w8niy83.fsf@SSpaeth.de"
127      Add feature to move files in the maildir hierarchy
128
129      `notmuchsync --move "searchstring" "targetfolder"`
130
131      Where searchstring is any valid notmuch search
132