David Bremner <david@tethera.net> writes: > --- a/lib/notmuch.h > +++ b/lib/notmuch.h > @@ -773,6 +773,10 @@ notmuch_query_create (notmuch_database_t *database, > * Sort values for notmuch_query_set_sort. > */ > typedef enum { > + /** > + * Value was not set > + */ > + NOTMUCH_SORT_UNSET = -1, > /** > * Oldest first. > */ > @@ -791,6 +795,42 @@ typedef enum { > NOTMUCH_SORT_UNSORTED > } notmuch_sort_t; I'm adding a few new keys (from, subject, etc). I don't want to duplicate them in the old notmuch_sort_t enum, I assume to move to the new API there should be something like this as well? diff --git a/lib/notmuch.h b/lib/notmuch.h index d26cc09b..81a9d72f 100644 --- a/lib/notmuch.h +++ b/lib/notmuch.h @@ -787,10 +787,14 @@ typedef enum { NOTMUCH_SORT_NEWEST_FIRST, /** * Sort by message-id. */ NOTMUCH_SORT_MESSAGE_ID, + /** + * Sort by keys. + */ + NOTMUCH_SORT_KEYS, /** * Do not sort. */ NOTMUCH_SORT_UNSORTED } notmuch_sort_t; I've been wanting to sort by multiple keys recently so I figured generalizing this to multiple (key, order) pairs might be a good idea now that we're rethinking the sort api. so then if I wanted to add my current changes I could just add a few more keys like so: diff --git a/lib/notmuch.h b/lib/notmuch.h index a035bdb2..d26cc09b 100644 --- a/lib/notmuch.h +++ b/lib/notmuch.h @@ -809,10 +809,18 @@ typedef enum { NOTMUCH_SORT_KEY_TIMESTAMP, /** * Sort by message-id. */ NOTMUCH_SORT_KEY_MESSAGE_ID, + /** + * Sort by subject. + */ + NOTMUCH_SORT_KEY_SUBJECT, + /** + * Sort by from. + */ + NOTMUCH_SORT_KEY_FROM, } notmuch_sort_key_t; Then we could eventually do something like: --sort date:desc,from:asc Which would mean: sort by date, and then by from. Perhaps it could do something sensible by default without order qualifiers as well: --sort date,from LMK what you think Will _______________________________________________ notmuch mailing list notmuch@notmuchmail.org https://notmuchmail.org/mailman/listinfo/notmuch