Jerud Legend would benefit from an option (per-Pane) to “strictly” match Filters using only the properties of the individual items
It might be good if it could be set per-filter, or even within a filter. Certainly there are good uses for both kinds of matching, either “strictly” (all “and” terms found within the item) or “hierarchically” (at least one term found in the item, with the rest in its ancestors, but not children). So just a switch you can set in the filter pop-up for “strict ‘and’ matches” or something. Or possibly an addition to the filter syntax where you could specify that the “and” terms within some brackets must all be explictly found together in a matching item, while others could be hierarchically. I think Andrew already suggested that.
Jerud Jeff His concern is only that all descendants of a matching item are shown, even when they don’t match the filter terms.
This is not explicitly true, but practically speaking, it does seem like it much of the time.
I have already showed that a Filter which only matches some children will only result in those children showing.
This is easy to see, no compound terms required. Just filter for text that is unique to a single child (and none of its ancestors). You’ll just get that one child under the parent.
I still believe that it’s explicitly true, all of the time. If the filtered text is unique to the child, then that child is not what I meant by a “descendant of a matching item”. I guess it depends on how broad a view you take of what a “matching item” is.
In wilhelmmedetz’s example of filtering on #t2
:
The status bar shows both as “items matching filter”, even though ‘a’ doesn’t contain the filter term, as can be seen with Legend’s highlighting. I think neither you nor I consider that ‘a’ is matching here, but simply that ancestors of matches are shown because they need to be, in order to show the actual matching item. Ancestors don’t inherit properties or “matchingness” from their descendants, if you want to think of it in those terms, despite the fact that the status bar seems to indicate that they do.
When filtering on #t3
:
The status bar says 4 “items matching filter”. In my view, ‘c’ explicitly matches the filter (as seen by the highlighting) while ‘b’ and ‘d’ do not. But it’s irrelevant here, because ‘a’ is a match, so all of its children are shown, regardless. That’s the behaviour that wilhelmmedetz would like to have an option to change.
Finally, if we filter on #t1
with “collapse matches” on:
The status bar still shows 4 “items matching filter”, even though ‘a’ is collapsed on the basis that it “has no matching children”. So that’s an inconsistency within Legend itself.
I’d be interested to see an example of where an item that explicitly matches a filter - strictly or hierarchically - does not simply get all of its descendants shown. My understanding is still that in outline view, there is a relatively simple principle that the entire branch - all ancestors and non-excluded descendants - of an explicitly matching item are shown, regardless of their properties.