Urs Liska <u...@openlilylib.org> writes: > I'm interested in > - general thoughts on the signature design (as I still lack experience > with Scheme functions)
> % Plain signature of the function draft > annotate = > #(define-void-function (parser location grob type properties annotation) > (string? string? list? string?) > ) > > \relative ges, { > \key ges \major > \clef bass > \time 3/4 > > \repeat tremolo 24 ges32-> -\markup { \dynamic "sfz" } \p \< | > \annotate Script "critremark" > #'(("voice" . "vc1") > ("source" . "Ms. 2") > ("author" . "Urs Liska") > ("date" . "2013-06-06")) > "Tenuto added as in Vc. 2" If your first argument is something like Script, you might want to make it of type symbol? instead. I actually have a syntax sanitizing patch in limbo where unquoted words are not accepted as strings. It is not going to make it into 2.18, but I don't promise I won't push it at some later point of time. It is probably worth considering to make properties of type context-mod? (potentially optional), then you can write the argument as \with { voice = "vc1" source = "Ms. 2" author = "Urs Liska" date = "2013-06-06" } Of course, you might get unsets and overrides and reverts slipped in which you would want to weed out again, but list? is also prone to permitting a lot that you don't want to see. -- David Kastrup _______________________________________________ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user