lilypond-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Issue 4083: Implement \tagGroup command (issue 137920043 by address@


From: Keith OHara
Subject: Re: Issue 4083: Implement \tagGroup command (issue 137920043 by address@hidden)
Date: Sat, 06 Sep 2014 22:21:46 -0700
User-agent: Opera Mail/12.16 (Win32)

Patch set 5 will probably be fine.

My concern was that someone would be confused that adding to the list of tags 
to keep
  \keepWithTag editorial { ... \tag#'editorial \tag#'score \bar'||'  }
  \keepWithTag part.editorial { ... \tag#'editorial \tag#'score \bar'||'  }
can reduce the things that are kept.  But that will not likely come up, and you 
do explain it in the docstring for \keepWithTag

Don't put too much value on symmetry between how the tags in \keepWithTag, and 
the tags on each given piece of music enter, into the keep-or-remove decision.  
One set defines a single filter, the other describes each item that is going 
through the filter.  The keep-or-remove decision is part of an asymmetric 
operation.


On Sat, 06 Sep 2014 12:45:40 -0700, <address@hidden> wrote:

On 2014/09/06 18:55:42, Keith wrote:
The old patch :
\keepWithTag will keep music if any tag matches,
removing music with unmatching tags,
but ignoring tags in a different tagGroupfrom any of the tags to keep.

But "if any tag matches" becomes very tricky to explain when one needs
to implement a behavior where \tag A { \tag B ... is supposed to be
equivalent to \tag A \tag B ... while \keepWithTag A \keepWithTag B is
different from \keepWithTag A.B even when A and B are in different tag
groups.

The explanation above does cover the points you think might be tricky.

\tag A { \tag B ...   has not to date been equivalent to   \tag A \tag B ...
The explanation above says when B would be "ignored" by keepWithTag.  If A is 
ignored, or if B is ignored, the expressions just above are equivalent.

\keepWithTag A.B might keep more music than \keepWithTag A \keepWithTag B. The 
explanation above seems to make that clear, because it is easier to match "any 
tag" in A and B than to match each of A and B.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]