As someone who barely understands LilyPond's internals I appreciate this explanation, but it still leaves me confused. It seems to be saying that grob properties are an additional hierarchical override system below the level of context properties, but I don't see why that's needed when context properties already behave in a similar way. Also, the assignment of properties to the context or grob "genders" seems somewhat arbitrary; I don't see why tempoHideNote should be a context property and BarNumber.break-visibility a grob property, for example.
Especially now that there is a unified dot syntax, could \set and \override be made synonyms that work out internally what kind of property to set, making the distinction an internal detail that most people could ignore? (This is a clarification request, not a feature request. I find it helpful if documentation mentions which features of a design are historical accidents that wouldn't exist if everything were reimplemented from scratch.) https://codereview.appspot.com/21820045/ _______________________________________________ lilypond-devel mailing list [email protected] https://lists.gnu.org/mailman/listinfo/lilypond-devel
