]> git.cworth.org Git - obsolete/notmuch-wiki/blobdiff - feature-requests.mdwn
Update news & manpages to notmuch version 0.16
[obsolete/notmuch-wiki] / feature-requests.mdwn
index f4c1dfae6bda0c5251948a99ce7e6652c54a2c0f..cf8dc7b3b60b4388deb12ad0abe53266f40c7dae 100644 (file)
@@ -1,19 +1,34 @@
 [[!img notmuch-logo.png alt="Notmuch logo" class="left"]]
 [[!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.
 
 ## 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.
 
      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.
 
 
      Removes unread and inbox tags, adds deleted tag.
 
@@ -23,7 +38,7 @@
      When used from the thread view, it deletes the currently
      displayed thread (and not just the message)
 
      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
 
 
      Skips current thread without archiving it
 
      beginning of the next thread. 'a' gets you to the next thread,
      but archives the current one.
 
      beginning of the next thread. 'a' gets you to the next thread,
      but archives the current one.
 
-+    add notmuch-message-mode
++    Allow different "real names" for the optional email addresses
 
 
-     This should allow us to override many of the default behaviors of emacs message mode without affecting people using message mode from gnus
-     Things we'd might want to allow here include
+     if only one name is configured, use that for all addresses;
+     if other_names are configured, match those with the other_email addresses
 
 
-++   select from address (with the configured email addresses as default choices to pick from)
-++   set user-agent string
++    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
 
 
-+    allow different "real names" for the optional email addresses
++    Add hooks for retagging:
+   + pre-tag: Called before tagging messages
+   + post-tag: Called after messages got tagged
 
 
-     if only one name is configured, use that for all addresses;
-     if other_names are configured, match those with the other_email addresses
+     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
+     This is problematic with both tools that sync Maildirs and with IMAP
+     servers that consider .notmuch a Maildir subfolder (e.g. dovecot)
 
 
-     Allows to search for messages in a specific folder.
+     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
 
 
 +    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
 
      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.
 
      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 Received: header to the indexed header components
++    Add folder tags to mail automatically
 
 
-     allows for searches based on the arrival path
+     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
 
 
 ## 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
 
 
      Where searchstring is any valid notmuch search