lilypond-user
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Generate staff-less chord and lyrics sheet


From: Kieren MacMillan
Subject: Re: Generate staff-less chord and lyrics sheet
Date: Fri, 7 Dec 2018 10:02:54 -0500

Hi Carl (et al.),

> I really find Kieren's solution to be interesting.

I’m glad!

Below, I’ve done a little custom-context-building, in the hopes we might 
crowd-source a real solution to this problem (which crops up on the list fairly 
often). I’ve added a way (using tags) to break lyrics at appropriate spots, 
independent of breaks in the musical score. I’ve also shown how lyrics could be 
"centred" on the page (using indents, etc.); of course, this could also be done 
using margins, but I wanted to see if it could be done on a single page (equiv. 
in a single bookpart).

Best,
Kieren.

\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 LyricHyphen.minimum-length = #0
    \override LyricHyphen.minimum-distance = #0
    \override LyricText.self-alignment-X = #-0.9
  }
}

lyricsbreak =  \tag #'lyricsheet { \bar "" \break }

theMelody = {
  e'4 d' c' d'
  e'4 4 4 \lyricsbreak 4
  d'4 4 e' d'
  c'2. r4
}

theChords = \chordmode {
  c2 f
  c1
  f2:6 g
  c1
}

theWords = \lyricmode {
  Mar -- y had a lit -- tle lamb,
  Its fleece was white as snow.
}

\score {
  \removeWithTag #'lyricsheet <<
    \new ChordNames \theChords
    \new Staff \new Voice = "melody" \theMelody
    \new Lyrics \lyricsto "melody" \theWords
  >>
  \layout {
    ragged-right = ##f
  }
}

\score {
  \keepWithTag #'lyricsheet <<
    \new ChordNames \theChords
    \new Devnull = "melody" \theMelody
    \new LyricSheetLyrics \lyricsto "melody" \theWords
  >>
  \layout {
    line-width = 6\in
    indent = 2\in
    short-indent = 2\in
    \context {
      \Score
      \remove "Bar_number_engraver"
    }
  }
}
________________________________

Kieren MacMillan, composer
‣ website: www.kierenmacmillan.info
‣ email: address@hidden




reply via email to

[Prev in Thread] Current Thread [Next in Thread]