2. nice line spanners (top- or bottom-aligned, dotted etc.)
That’s what Gould recommends, yes. But I’m not sure how to implement this: One
could
a) use a single number/direction for “alta” ottavations and mirror it for
“bassa” → somehow inflexible and if you use a direction, it’s also confusing.
b) use a pair of numbers/directions → looks complicated but IMO better than a).
c) don’t have a grob property for that at all but just take the “natural”
alignment of the markup. You then would need to set everything different from
bottom-aligned by hand as in
\set Staff.ottavation = \markup \general-align #Y #UP "15"
For cases a) and b) we would need a good name for that grob property. Any ideas?
I find case c) the most elegant *iff* you don’t set ottavation by hand. This
would also need a good convert-ly rule for those who set it by hand in the past.
IIUC, c) is too fragile as you don’t know what the user defines for his
markup. There are different vertical line positions in
https://notat.io/viewtopic.php?f=2&t=522 and even though the bassa
variants are not listed, I guess a pair of numbers is the better,
because more flexible solution.
Here are some naming propositions just from the top of my head:
OttavaBracket.line-positions (plural hints at the pair of numbers)
OttavaBracket.label-positions
OttavaBracket.spanner-alignment
OttavaBracket.self-alignment