Ioan-Adrian Ratiu <adi@adirat.com> writes: > With this it now becomes possible to order the search results by > filesize using the --sort=biggest-first/smallest-first args. You should mention that you are also changing the library API, as well as adding new search options to notmuch-show and notmuch-search. > > diff --git a/lib/notmuch.h b/lib/notmuch.h > index f90458ce..b7bf3526 100644 > --- a/lib/notmuch.h > +++ b/lib/notmuch.h > @@ -743,6 +743,14 @@ typedef enum { > */ > NOTMUCH_SORT_MESSAGE_ID, > /** > + * Smallest first. > + */ > + NOTMUCH_SORT_SMALLEST_FIRST, > + /** > + * Biggest first > + */ > + NOTMUCH_SORT_BIGGEST_FIRST, > + /** > * Do not sort. > */ At the moment the ABI is unstable on master, but that will change with the next release. Depending on when this is merged, it may need to bump the library version. I think just bumping LIBNOTMUCH_MINOR should be ok. > +++ b/lib/query.cc > @@ -330,6 +330,12 @@ _notmuch_query_search_documents (notmuch_query_t *query, > case NOTMUCH_SORT_MESSAGE_ID: > enquire.set_sort_by_value (NOTMUCH_VALUE_MESSAGE_ID, FALSE); > break; > + case NOTMUCH_SORT_SMALLEST_FIRST: > + enquire.set_sort_by_value (NOTMUCH_VALUE_FILESIZE, FALSE); > + break; > + case NOTMUCH_SORT_BIGGEST_FIRST: > + enquire.set_sort_by_value (NOTMUCH_VALUE_FILESIZE, TRUE); > + break; > case NOTMUCH_SORT_UNSORTED: > break; > } > diff --git a/notmuch-search.c b/notmuch-search.c > index 019e14ee..65ecfaab 100644 > --- a/notmuch-search.c > +++ b/notmuch-search.c > @@ -778,6 +778,8 @@ static const notmuch_opt_desc_t common_options[] = { > { NOTMUCH_OPT_KEYWORD, &search_context.sort, "sort", 's', > (notmuch_keyword_t []){ { "oldest-first", NOTMUCH_SORT_OLDEST_FIRST }, > { "newest-first", NOTMUCH_SORT_NEWEST_FIRST }, > + { "smallest-first", NOTMUCH_SORT_SMALLEST_FIRST }, > + { "biggest-first", NOTMUCH_SORT_BIGGEST_FIRST }, > { 0, 0 } } }, > { NOTMUCH_OPT_KEYWORD, &search_context.format_sel, "format", 'f', > (notmuch_keyword_t []){ { "json", NOTMUCH_FORMAT_JSON }, These new options should be documented, and tested.