On Thu, 2020-08-06 at 11:31 +0200, Jean Abou Samra wrote: > > (*) The documentation says "SVG output can optionally contain > metadata for graphical objects (grobs) like note heads, rests, > etc. > This metadata can be standard SVG attributes like id and class, or > non-standard custom attributes. Specify the attributes and their > values > by overriding a grob’s output- attributes property with a Scheme > association list (alist). The values can be numbers, strings, or > symbols. For example: " I suggest "SVG output can optionally > contain > metadata for graphical objects (grobs) like note heads, rests, > etc. > This metadata can be standard SVG attributes like id and class, or > non-standard custom attributes. Specify the attributes and their > values > by overriding a grob’s output- attributes property with a Scheme > association list (alist) or a procedure returning an alist. The > values > can be numbers, strings, or symbols. For example:" > > This is not specific to output-attributes. Any grob property can > be set > to a callback, that is, a (lambda (grob) ...). This is documented > here: > [1]http://lilypond.org/doc/v2.20/Documentation/extending/callback- > funct > ions
Ah, thank you for that. Does convert-ly normally warn if the substitution it makes may be wrong? Changing \override NoteHead.id = #note-id to \override Score.NoteHead.output-attributes.id = #note-id only works if note-id is *not* a callback as I understand it. Richard Shann