[Top][All Lists]

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

„Anonymous” properties, deafening engravers and font features

From: Valentin Petzel
Subject: „Anonymous” properties, deafening engravers and font features
Date: Thu, 18 Nov 2021 21:51:59 +0100


I have three ideas for maybe useful features for Lilypond:

First, Lilypond is very strict about what values grob/context properties can 
take. While this is generally a good thing it can be hindering, as properties 
are more or less hard coded. So I suggest that maybe we could have some sort 
of identifier for „custom” properties that skip the type check. This would be 
useful for extended scripting where we want to store arbitrary information.

For example we might have Staves that should behave differently if certain 
other Staves are present. E.g. if we have some splitted staves and we want to 
have voices behave differently depending on whether they are in a separate 
staff or in the common staff. So for this it would be nice if we could simply 
save information in the Staff context that tells us things like how many 
different Parts we currently have in the Staff, for example.

For example we could handle properties that begin with „custom” as custom 
properties, so we could say \override Staff.custom-my-property = something.

Second it would be very useful if we could somehow give engravers some sort of 
filtering option that would allow us to make them not to listen to certain 
events, so that we’d basically be able to disable/enable engravers outside of 
withing the score, or even disable engravers for certain Types of events or 
for events that fit some condition (like having a certain tag).

Third: Using font-features with Lilypond is a bit weird, as using \override 
#'(font-features featureA featureB bla bla . ()) will override any previously 
applied font-features. So I suggest adding markup functions addFontFeature and 
removeFontFeature like in the appended example to make this easier.

What are your takes on this?


Description: Text Data

Attachment: signature.asc
Description: This is a digitally signed message part.

reply via email to

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