Hi Christopher, > I am committed to the principle of single-source authoring in my textual and > musical worlds.
+1 For archive completeness, I’ve included (below) the example I am playing with — it’s still in progress, but it’s nearly there — which clearly allows single-source authoring. Best, Kieren. %%% SNIPPET BEGINS \version "2.19.80" \paper { indent = 0 ragged-right = ##t system-system-spacing = #'((basic-distance . 6) (minimum-distance . 6) (padding . 2.5) (stretchability . 0)) score-system-spacing.padding = #12 } \layout { \context { \ChordNames \override VerticalAxisGroup.staff-affinity = #DOWN \override VerticalAxisGroup.nonstaff-relatedstaff-spacing = #'((basic-distance . 2.5) (minimum-distance . 2.5) (padding . 1.25) (stretchability . 0)) } \context { \Lyrics \override VerticalAxisGroup.staff-affinity = #UP \override VerticalAxisGroup.nonstaff-relatedstaff-spacing = #'((basic-distance . 5.5) (minimum-distance . 5.5) (padding . 1.25) (stretchability . 0)) } \context { \ChordNames \name LyricSheetChords \alias ChordNames \inherit-acceptability LyricSheetChords ChordNames \override VerticalAxisGroup.nonstaff-nonstaff-spacing = #'((basic-distance . 1) (minimum-distance . 1) (padding . 1) (stretchability . 0)) } \context { \Lyrics \name LyricSheetLyrics \alias Lyrics \inherit-acceptability LyricSheetLyrics Lyrics \override VerticalAxisGroup.staff-affinity = #UP \override VerticalAxisGroup.nonstaff-relatedstaff-spacing = #'((basic-distance . 3) (minimum-distance . 3) (padding . 2) (stretchability . 0)) \override LyricText.self-alignment-X = #-0.9 \override LyricSpace.minimum-distance = #0.75 \override LyricSpace.minimum-length = #0.625 \omit LyricHyphen \override LyricHyphen.minimum-distance = #0 } } theMelody = { e'4 d' c' d' e'4 4 4 4 d'4 4 e' d' c'2 r4 d' e'4 d' c' d' e'4 4 4 4 d'4 4 e' d' c'2. r4 } theChords = \chordmode { c2 f c1 d2:7 g c1 c2 f c1 f2:6 g c1 } lyricsbreak = \tag #'lyricsheet { \bar "" \break } theWords = \lyricmode { Mar -- y had a lit -- tle lamb, \lyricsbreak Its fleece was white as snow. \lyricsbreak And \markup \concat { ev \hspace #-0.125 } -- ery -- where that Mar -- y went \lyricsbreak The lamb was sure to go. } \score { << \new ChordNames \theChords \new Staff \new Voice = "melody" \theMelody \new Lyrics \removeWithTag #'lyricsheet \lyricsto "melody" \theWords >> \layout { ragged-right = ##f \context { \Score \remove "Bar_number_engraver" } } } \pageBreak \score { << \new ChordNames \theChords \new Devnull = "melody" \theMelody \new LyricSheetLyrics \keepWithTag #'lyricsheet \lyricsto "melody" \theWords >> \layout { line-width = 6\in indent = 2\in short-indent = 2\in \context { \Score \override SpacingSpanner.base-shortest-duration = #(ly:make-moment 1000/1) \remove "Bar_number_engraver" \remove "Bar_engraver" } } } %%% SNIPPET ENDS ________________________________ Kieren MacMillan, composer ‣ website: www.kierenmacmillan.info ‣ email: i...@kierenmacmillan.info _______________________________________________ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user