Hi,
as you know I'm working on a number of features around the scholarLY
package, and now I'm facing the need to deal with the existing interface.
The openLilyLIb module scholarly.annotate provides commands like
\criticalRemark, \musicalIssue and a few more that attach an annotation
to a score element.
Now, while implementing the commands \tagSpan and \editorialMarkup that
"tag" some music as a finding or editorial decision I gave them the
capability to also create and attach annotations. And since the function
interface to \criticalRemark and friends is somewhat clumsy and limited
in its capability to addressing the annotated music I would like to make
the \tagSpan approach the new standard.
I see two options, both with disadvantages:
* Encourage people to use the new system and "deprecate" the old
syntax (but leave it alone and working). The downside is that the
*names* of the old commands are very much what one would want, so I
wouldn't want to discard them completely.
* Make the old names wrappers around the new technology, so one can
still say \criticalRemark.
The second solution would definitely be what I want the package to
behave like. Basically the following two statements would then be
equivalent:
* \editorialMarkup annotation \with { ann-type = critical-remark
message = "My comment" } { c' d' e' }
* \criticalRemark \with { message = "My comment" } { c' d' e'}
The problem with this is that it would of course break existing
documents. Of course package development is still in a version 0.X
state, so breaking changes are definitely not "illegal", but I would
actually prefer to get some feedback before going into that direction.
I think for most of the cases it would be possible to create a scripted
solution to update instances (like convert-ly), but I'm reluctant to
make any promises about that:
\criticalRemark \with {
message = "Hey"
} NoteHead c'
=>
\critical
Remark \with {
message = "Hey"
} c'
\musicalIssue \with {
message = "Hey"
} Accidental cis'
=>
\musicalIssue \with {
message = "Hey"
item = Accidental
} cis'
but I'm not sure about the other valid syntax options, and not about all
the things that could go wrong when comments in the \with block might
confuse the parser.
Any opinions?
Best
Urs
_______________________________________________
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user