Lilypond is a free music notation program that produces quality sheet music. The music is first written in a text format; Lilypond then processes the file to output a graphical representation.

Due to limitations in Lilypond's input syntax, one class of notational devices, spanners (e.g. slurs), are implemented with the assumption that they must start and end in the same voice. However, it is often desirable to have spanners start and end in different voices; in fact, any music that involves multiple simultaneous voices may use such notation.

Presently, getting Lilypond to produce spanners between voices is not impossible, but requires an awkward workaround using a hidden voice. Although this works, it requires users to artificially add "music" that isn't actually there to compensate for a limitation of Lilypond. This project aims to develop a semantically clear and less confusing method of inputting cross-voice spanners.





  • Jan-Peter