X-Git-Url: https://git.notmuchmail.org/git?p=notmuch;a=blobdiff_plain;f=TODO;h=01cdba693777dfe744fc2407a0f2982b08597480;hp=7c984c28c88485af53abc5731f4ad229c60f1438;hb=f8baa023353e8d45a1a2bb90ab12d4ad38765ad9;hpb=cfc671cc2e970a7d8ce162926845ea6619270d64 diff --git a/TODO b/TODO index 7c984c28..01cdba69 100644 --- a/TODO +++ b/TODO @@ -4,11 +4,7 @@ Fix the things that are causing the most pain to new users 2. Allow an easy way to get tags from directory names (if the user has them) -3. Allow an easy way to remove excess tags, (date-based search) - -4. Make emacs fast for big search results (see "lazy searching" below) - -5. Fix Xapian defect #250 so tagging is fast. +3. Fix Xapian defect #250 so tagging is fast. Emacs interface (notmuch.el) ---------------------------- @@ -19,11 +15,7 @@ Add a global keybinding table for notmuch, and then view-specific tables that add to it. Add a command to archive all threads in a search view. - -Lazy searching: call "notmuch search" with --first and --max to fill -just a screenful of results, and then fill in more as ther user pages -through the buffer. - + Add a '|' binding from the search view. Add a binding to run a search from notmuch-show-mode. @@ -112,6 +104,15 @@ indexing. notmuch library --------------- +Provide a sane syntax for date ranges. First, we don't want to require +both endpoints to be specified. For example it would be nice to be +able to say things like "since:2009-01-1" or "until:2009-01-1" and +have the other enpoint be implicit. Second we'de like to support +relative specifications of time such as "since:'2 months ago'". To do +any of this we're probably going to need to break down an write our +own parser for the query string rather than using Xapian's QueryParser +class. + Add support for files that are moved or deleted (which obviously need to be handled differently). @@ -127,6 +128,11 @@ Add support for configuring "virtual tags" which are a tuple of (tag-name, search-specification). The database is responsible for ensuring that the virtual tag is always consistent. +Think about optimizing chunked searches (max-threads > 0) to avoid +repeating work. That would be saving state from the previous chunk and +reusing it if the next search is the next chunk with the same search +string. + General ------- Audit everything for dealing with out-of-memory (and drop xutil.c).