Ein Haus voll Glorie schauet

Zur Navigation springen Zur Suche springen


Lilypond-Code

\version "2.20.0"
\language "deutsch"
make-midi-list =
#(define-void-function (name score tempolist)
   ((string? #f) ly:score? list?)
   (for-each
    (lambda (tempo)
      (ly:book-process
       (apply
        ly:make-book
        $defaultpaper
        $defaultheader
        (list score))
       $defaultpaper
       #{
         \midi {
           \tempo 4 = $tempo
         }
       #}
       (format #f "~a_~a"
         (or name "midi")
         tempo)))
    tempolist))

#(define ((chord-name->german-markup-text-alteration B-instead-of-Bb) pitch lowercase?)

   (define (pitch-alteration-semitones pitch)
     (inexact->exact (round (* (ly:pitch-alteration pitch) 2))))

   (define (conditional-string-downcase str condition)
     (if condition
         (string-downcase str)
         str))

   (let* ((name (ly:pitch-notename pitch))
          (alt-semitones  (pitch-alteration-semitones pitch))
          (n-a (if (member (cons name alt-semitones) `((6 . -1) (6 . -1)))
                   (cons 7 (+ (if B-instead-of-Bb 1 1) alt-semitones))
                   (cons name alt-semitones))))
     (make-line-markup
      (list
       (make-simple-markup
        (conditional-string-downcase
         (vector-ref #("C" "D" "E" "F" "G" "A" "H" "B") (car n-a))
         lowercase?))
       (let ((alteration (/ (cdr n-a) 2)))
         (cond
          ((and (equal? lowercase? #f) (= alteration FLAT) (= (car n-a) 7)) (make-simple-markup ""))
          ((and (= alteration FLAT) (or (= (car n-a) 5) (= (car n-a) 2) )) (make-simple-markup "s"))
          ((= alteration FLAT) (make-simple-markup "es"))
          ((and (= alteration DOUBLE-FLAT) (or (= (car n-a) 5)(= (car n-a) 2) )) (make-simple-markup "ses"))
          ((= alteration DOUBLE-FLAT) (make-simple-markup "eses"))
          ((= alteration SHARP) (make-simple-markup "is"))
          ((= alteration DOUBLE-SHARP) (make-simple-markup "isis"))
          (else empty-markup)))))))

#(define germanChords (chord-name->german-markup-text-alteration #t))

\layout {
  \context {
    \Voice
    beamExceptions = #'()
    \override BreathingSign.text =
    \markup { \musicglyph #"scripts.lvarcomma" }
    \override Stem.neutral-direction = #down
    \override Script.outside-staff-priority = #'()
    \override Script.padding = #1
    \override Tie.thickness = #1
    \override PhrasingSlur.thickness = #3
    \override Rest.voiced-position = #0
    \override MultiMeasureRest.expand-limit = #3
  }
  \context {
    \Staff
    printPartCombineTexts = ##f
    beamExceptions = #'()
    \override BreathingSign.text =
    \markup { \musicglyph #"scripts.lvarcomma" }
    \override InstrumentName.font-features = #'("smcp")
  }
  \context {
    \Score
    \override VerticalAxisGroup.remove-first = ##t
    skipBars = ##f
    \override MetronomeMark.font-size = #1
    \override MetronomeMark.font-shape = #'caps
    \override BarLine.thick-thickness = 5
    \override Timing.beamExceptions = #'()
    barNumberVisibility = #all-bar-numbers-visible
    \override BarNumber.color = #(rgb-color 0.7 0.7 0.7)
    \override BarNumber.layer = #-200
    \override BarNumber.padding = #0.4
    \override BarNumber.outside-staff-priority =#'()
    \override BarNumber.after-line-breaking = ##f
    \override BarNumber.font-size = #-1
    \override BarNumber.font-series = #'bold
    \override BarNumber.self-alignment-X = #0
    \override BarNumber.break-visibility = #end-of-line-invisible
  }
  \context {
    \ChordNames
    chordNameLowercaseMinor = ##f
    \remove Staff_performer
    chordRootNamer = #germanChords
    \override ChordName.font-name = #"Orator10 BT"
    chordNoteNamer = #(chord-name->german-markup #f)
    \override ChordName.X-offset =
    #ly:self-alignment-interface::aligned-on-x-parent
    \override ChordName.self-alignment-X = #CENTER
    \override ChordName.font-name = #"Arial Narrow"
    \override ChordName.layer = #2
    \override ChordName.font-size = #-0.5
    noChordSymbol = ##f
  }
  \context {
    \Lyrics
    \override VerticalAxisGroup.staff-affinity = #CENTER
  }
} 
myTitel = "Ein Haus voll Glorie schauet"
mycomp=\markup \line \fontsize #0 {
  "M: Adolf Lohmann"
}

sop = \relative c' {
  \time 2/2
  \override Score.RehearsalMark.break-align-symbols = #'(time-signature)
  \override Score.TimeSignature.break-align-anchor-alignment = #CENTER
  \mark \markup { \fontsize #-3.5 \note #"2" #UP }
  \key g \major
  \autoBeamOff
  \numericTimeSignature
  \partial 4
  d4
  d g e fis
  g2 d4 \breathe d
  e e d c
  h2 r4 h8( c)
  d4 d e fis
  g ( h ) a \breathe g
  fis e8 ( fis ) g4 e d2 r
  g2 h
  a4. fis8 d4 r
  g2 h
  a4. fis8 d4 \breathe d
  g g a a h2 r4 h4
  d c8( h ) a4 a
  g2.
  \bar "|."
}

alt = \relative c' {
  d4 h h c a
  h2 h4 h
  c a fis a
  g2 s4 g8 a
  h4 h c a
  h g' fis h,
  d cis8 d h4 cis
  a2 s
  h d
  d4. d8 a4 s
  h2 h
  cis4. d8 a4 c

  h4 h d fis
  g2 s4 d
  f e c4 d
  h2.
}

ten = \relative c {
  \key g \major
  \numericTimeSignature
  \clef bass
  fis4
  g d c c
  d2 ~ d4 d
  c2 c2
  d2 r4 d
  h2 c2
  d2 d4 d ~
  d e d4 cis
  fis2 r
  d2 h
  c c4 r
  d2 e
  cis4. d8 fis4 \breathe c4
  d2 fis
  g r4 d4
  f e d c h2.
}

bas = \relative c {
  d4 ~ d h g a
  h2 g4 g
  g a a2
  g2 s4 h
  g2 g4 fis
  g2 a4 g
  a a g a
  a2 s
  h g
  a a4 s
  h2 g
  a2. a4
  g2 a
  h s4 h
  g2 a
  g2.
}

Akk=
\chordmode {
  d4:7
  g2 c4 d
  g1
  c4 a:m d2:7
  g s4 g8 d:7
  g2 c4 d
  g2 d4 g
  d a8 d g4 a
  d1
  g
  d
  g2 e:m
  a4. d8 d4 d:7
  g2 d
  g1
  g4:7 c d2:7
  g2
}

Struktur =
{
  \override Score.NonMusicalPaperColumn.page-break-permission = ##f
  \override Score.SpacingSpanner.common-shortest-duration = #(ly:make-moment 1/16)
  \override PianoStaff.VerticalAxisGroup.staff-staff-spacing =
  #'((basic-distance . 20)
     (padding . 6))
  %\tempo 4=88
}

lyr = \lyricmode {
  \set stanza = #"1."
  Ein Haus voll Glo -- rie schau --et
  weit ü -- ber al -- le Land,
  aus ew -- gem Stein er -- bau -- et
  von Got -- tes Meis -- ter -- hand.
  Gott, wir lo -- ben dich,
  Gott, wir prei -- sen dich.
  O lass im Hau -- se dein
  uns all ge -- bor -- gen sein.
}

kopf=\header {
  title = \myTitel
  subtitle = "GL 478 (alt: 639)"
  subsubtitle = ##f
  poet= "Notensatz: lilypond.miraheze.org"
  composer = "T&M: Joseph Hermann Mohr (1834-1892) 1875"
  piece = ##f
}

%ccc=
\bookpart {
  \paper {
    top-margin = 20\mm
    ragged-right = ##f
    ragged-last = ##f
    ragged-bottom = ##t
    ragged-last-bottom = ##t
    bottom-margin = 25\mm
    indent = #0
    line-width = 160\mm
    print-all-headers = ##t
    #(include-special-characters)
    print-first-page-number = ##t
    first-page-number = #1
    oddFooterMarkup = ##f
    evenFooterMarkup = ##f
    oddHeaderMarkup = #oddFooterMarkup
    evenHeaderMarkup = #evenFooterMarkup
    markup-system-spacing.padding = #4
    system-system-spacing.padding = #8
    markup-markup-spacing.padding = #1
  }
  \score
  {
    <<
      \new ChordNames \Akk
      <<
        \new PianoStaff="leadsheet"
        <<
          \new Staff="Discant"
          <<
            \new Voice="Alt" { \voiceOne \sop }
            \new Voice { \voiceTwo \alt }
          >>
          \new Lyrics \lyricsto Alt \lyr
          \new Staff="Bass"
          <<
            \new Voice { \voiceOne \ten }
            \new Voice { \voiceTwo \bas }
            \new NullVoice \Struktur
          >>
        >>
      >>
    >>
    \kopf
  }
}