Dear Ángel, all, Thanks a lot for your very precise answer. > https://help.gnome.org/users/evolution/unstable/mail-searching.html.en > https://help.gnome.org/users/evolution/unstable/mail-search-folders-add.html.en > https://help.gnome.org/users/evolution/unstable/mail-search-folders-conditions.html.en Is there a way to directly contribute to those pages?
Best regards, --Martin On 10/28/18 12:09 AM, Ángel wrote: > On 2018-10-25 at 18:50 +0200, Martin Monperrus wrote: >> Hi all, >> >> I don't understand the following configuration option for search >> folders (https://wiki.gnome.org/Apps/Evolution/Search): >> Include threads: >> Where can I find a one-sentence description of each option? > Hello Martin > > Thanks for your question. > > The obvious places to find this would be on one of these locations: > https://help.gnome.org/users/evolution/unstable/mail-searching.html.en > https://help.gnome.org/users/evolution/unstable/mail-search-folders-add.html.en > https://help.gnome.org/users/evolution/unstable/mail-search-folders-conditions.html.en > > But as they don't mention this piece at all, I will attempt to give my > own understanding of this setting. > > First of all, we need to take into account that email can be grouped in > threads based on the reply-to relationship.¹ > > For example, we have your email, this reply to you, and eg. a future > email by André replying to this one, plus another of Milan replying to > that one. > These four emails would be in the same thread (we could call it the > "Option for search folder" thread, but emails on one thread may have > completely different subjects). > > When searching, it may be useful to have some context, not just the > emails that exactly match your search (this setting is available both > for advanced search and search folders). > > So, suppose you searched for all my emails. Which mails from that thread > would show, depending on this setting? > > >> i) None > Only the emails that match the search would match, ie. just my email. > > >> ii) All related > All emails in the same thread are included. > > In the example thread, all the four emails would show as results, even > if only this one would exactly match the From: condition you set. > >> iii) Replies > The result includes the email that match the rest of the query, as well > as all replies descendant of that email. > > In the example thread, it would return three emails: my message and > replies by André and Milan. > > >> iv) Replies and parents > The result includes the email that match the rest of the query, as well > as all parent emails and all replies descendant of that email. > However, siblings and their offspring are not included. > > In the example thread, all four messages would be included, but if > someone else also replied to your original email, that reply would not > be included. > > >> v) No reply or parent > The message will only be shown if it is not replying to anyone and there > is no reply to it, either. > The other options only augment the result set based on the thread, but > this is one a bit different, as it restricts the result to only messages > that are not part of a thread. > > In the example thread, nothing would be returned. > > > Best regards > > > --- > > > ¹ This is constructed in the In-Reply-To and References headers. > Microsoft, its own header. > > > Note: that wiki page is misformatted, it probably stopped being rendered > as it used to be at a GNOME wiki update and nobody noticed. I can work > on fixing it, but my user (ÁngelGonzález) lacks write rights there, so > someone would need to give it edit rights (I'm quite sure that someone > had already marked it as "not a bot" a long time ago, but apparently it > got lost). > > > > > Implementation details: > ----------------------- > > These GUI options map to the _filter_threading_t enum defined on > src/e-util/e-filter-rule.h > > /* threading, if the context supports it */ > enum _filter_threading_t { > E_FILTER_THREAD_NONE, /* don't add any thread matching */ > E_FILTER_THREAD_ALL, /* add all possible threads */ > E_FILTER_THREAD_REPLIES, /* add only replies */ > E_FILTER_THREAD_REPLIES_PARENTS, /* replies plus parents */ > E_FILTER_THREAD_SINGLE /* messages with no replies or parents */ > }; > > which themselves map to the match-threads options "all", "replies", > "replies_parents" and "single" in the internal language. Finally > translated in evolution-data-server src/camel/camel-folder-search.c to > ids 0 to 4 and applied accordingly (see function > folder_search_match_threads) > > I am attaching a small patch that adds some comments to > folder_search_match_threads. > > > Kind regards > > > _______________________________________________ > evolution-list mailing list > evolution-list@gnome.org > To change your list options or unsubscribe, visit ... > https://mail.gnome.org/mailman/listinfo/evolution-list
_______________________________________________ evolution-list mailing list evolution-list@gnome.org To change your list options or unsubscribe, visit ... https://mail.gnome.org/mailman/listinfo/evolution-list