Skip to content

Introduce property-defaults output def variable

Jean Abou Samra requested to merge jeanas/lilypond:property-defaults into master

The goal behind this change is to allow turning the fonts output def variable into a property, in order to make it settable per-grob. In the current state, that would require the user to specify music fonts twice, once in font-defaults (for glyph lookup with ly:grob-default-font) and once in text-font-defaults (for markups).

The distinction between those two was already fuzzy since alteration-glyph-name-alist was already put in font-defaults in spite of being read in markups.

This commit unifies font-defaults and text-font-defaults into a single variable property-defaults. This is a more general system. property-defaults is not just read when building alist chains, but appended to the grob definition altogether. An example application is

\paper {
  property-defaults.color = "red"
}

Some residual alists defining font-encoding and font-family are still needed; they will hopefully be obviated soon.

Merge request reports