Erweiterungshandbuch#

Dieses Handbuch versucht, alle wichtigen Techniken zum Erweitern von LilyPond zu behandeln. Wie Sie sehen werden, geht das Verstehen dieser Techniken Hand in Hand mit dem Verständnis von LilyPonds internen Abläufen.

LilyPond hat auch ein offizielles Erweiterungshandbuch, das aber leider weit davon entfernt ist, vollständig zu sein. Das vorliegende Handbuch dient als Ersatz für die nie geschriebenen Teile des Erweiterungshandbuchs.

The guide is structured as follows:

  • First, a general introduction to extending, with examples of the fundamental tools, and an overview of how LilyPond works internally;

  • Details on the interplay between LilyPond and Scheme code, and the different ways of inserting Scheme in LilyPond;

  • A focus on music objects and how to create and transform them;

  • A jump forward in LilyPond’s compilation process, to the backend, explaining how grobs work and how to tweak them;

  • Finally, a jump back to the translation step, which is the bridge between music and the backend; this part reuses notions from the two previous parts.