Hi,

I was delighted to discover the new group tags feature in 8.0, but I'm
getting strange results trying it out with a sparse tree.

It looks like matching a group tag matches not only the subtags, but
also spuriously matches any tag that *contains* the string of a subtag. 

So when I match for the tag 'pop' in the below example, I get not only
Entry 5 which is tagged 'abba', but also Entry 7, tagged
'yabbadabbadoo'. A tag match for 'abba' correctly returns only Entry 5.

Example buffer:

#+TAGS: { a : aa ab } { rock : ac dc } { pop : abba }
* Entry 1 (grouptag)                                                      :a:
* Entry 2 (with subtag)                                               :aa:bb:
* Entry 3 (no subtag)                                                 :ac:dc:
* Entry 4 (with subtag)                                            :bb:ab:dd:
* Entry 5 (no subtag)                                            :bb:cc:abba:
* Entry 6 (no subtag, no 'a' character in tags)                  :bb:dc:bbdb:
* Entry 7 (no subtag, 'abba' sequence in tag)                 :yabbadabbadoo:

* Some sparse tree results

Doing `C-c / m' with the following tags produces the following results:
- rock :: matches Entry 3 and 6, CORRECT
- a :: spurious match of every Entry except 6, the only one without any tag with
       an `a' character, WRONG
  - Expected: match Entry 1, 2, 4
- ab :: matches Entry 4, CORRECT
- abba :: matches Entry 5, CORRECT (no spurious match of Entry 7)
- pop :: matches Entry 5 and 7, WRONG (spurious match of Entry 7)

Yours,
Christian

Reply via email to