Orgel Vorspiel G Dur No 1

Zur Navigation springen Zur Suche springen

\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 = "Orgel Präludium G-Dur"

sop = \relative c'' {
  \time 4/4
  \key g \major
  \oneVoice
  < g d h >2 < g e c >
  < g d h >
  \voiceOne
  h < d a > < d h > < d a > r
  \oneVoice
  < fis, d > < e cis > < g e > < fis d >
  < h g d >1 < a fis d >
  < g e cis >2 < cis a g >
  < d a fis > < a fis >
  %< cis a fis > < a fis d >
  < g e cis > < cis g e >
  < a fis > r
  %q < g e c > < g es c >
  %< g d h >
  < g e cis >2 < cis a g >
  < d a fis > < a fis >
  < cis a e > < cis a g >
  < d a fis >1
  \bar "|."
}

alt = \relative c'' {
  s1 s2 < g d >
  fis g fis
}

ten = \relative c {
  \key g \major
  \clef bass
  g2 c d h
  d g d r
  d e
  cis2 d g, h d1
  a2 e' d2 fis e cis
  d r
  a' e fis d
  e cis d1
}

Struktur =
{
  %\override Score.NonMusicalPaperColumn.page-break-permission = ##f
  \override Score.SpacingSpanner.common-shortest-duration = #(ly:make-moment 1/8)
  %\override PianoStaff.VerticalAxisGroup.staff-staff-spacing.padding = #7
}

kopf=\header {
  title = \markup \line
  {
    \myTitel
  }
  subtitle = "&numero; 1"
  subsubtitle = ##f
  poet = "Notensatz: lilypond.miraheze.org"
  composer = ##f %https://de.wikipedia.org/wiki/Friese_(Familienname)
  piece = ##f
}

\bookpart {
  \paper {
    top-margin = 30\mm
    ragged-right = ##f
    ragged-last = ##f
    ragged-bottom = ##f
    ragged-last-bottom = ##f
    bottom-margin = 30\mm
    indent = #0
    line-width = 165\mm
    print-all-headers = ##f
    #(include-special-characters)
    print-first-page-number = ##t
    first-page-number = #1
    oddFooterMarkup = ##f
    evenFooterMarkup = ##f
    oddHeaderMarkup = #oddFooterMarkup
    evenHeaderMarkup = #evenFooterMarkup
    score-system-spacing.padding = #0
  }
  \kopf
  \score
  {
    <<
      \new PianoStaff="leadsheet"
      <<
        \new Staff="Discant"
        <<
          \new Voice="Alt" { \voiceOne \sop }
          \new Voice { \voiceTwo \alt }
        >>
        \new Staff="Bass"
        <<
          \new Voice { \ten }
          \new NullVoice \Struktur
        >>
      >>
    >>
  }
  \score
  {
    <<
      \new PianoStaff="leadsheet"
      <<
        \new Staff="Discant"
        <<
          \new Voice="Alt" {
            \mark \markup \rounded-box "D-Dur"
            \voiceOne \transpose g d' \sop
          }
          \new Voice { \voiceTwo \transpose g d' \alt }
        >>
        \new Staff="Bass"
        <<
          \new Voice { \transpose g d' \ten }
          \new NullVoice \Struktur
        >>
      >>
    >>
  }
  \score
  {
    <<
      \new PianoStaff="leadsheet"
      <<
        \new Staff="Discant"
        <<
          \new Voice="Alt" {
            \mark \markup \rounded-box "C-Dur"
            \voiceOne \transpose g c' \sop
          }
          \new Voice { \voiceTwo \transpose g c' \alt }
        >>
        \new Staff="Bass"
        <<
          \new Voice { \transpose g c' \ten }
          \new NullVoice \Struktur
        >>
      >>
    >>
  }
  \score
  {
    <<
      \new PianoStaff="leadsheet"
      <<
        \new Staff="Discant"
        <<
          \new Voice="Alt" {
            \mark \markup \rounded-box "F-Dur"
            \voiceOne \transpose g f \sop
          }
          \new Voice { \voiceTwo \transpose g f \alt }
        >>
        \new Staff="Bass"
        <<
          \new Voice { \transpose g f \ten }
          \new NullVoice \Struktur
        >>
      >>
    >>
  }
  \score
  {
    <<
      \new PianoStaff="leadsheet"
      <<
        \new Staff="Discant"
        <<
          \new Voice="Alt" {
            \mark \markup \rounded-box "B-Dur"
            \voiceOne \transpose g b \sop
          }
          \new Voice { \voiceTwo \transpose g b \alt }
        >>
        \new Staff="Bass"
        <<
          \new Voice { \transpose g b \ten }
          \new NullVoice \Struktur
        >>
      >>
    >>
  }
  \score
  {
    <<
      \new PianoStaff="leadsheet"
      <<
        \new Staff="Discant"
        <<
          \new Voice="Alt" {
            \mark \markup \rounded-box "Es-Dur"
            \voiceOne \transpose g es \sop
          }
          \new Voice { \voiceTwo \transpose g es \alt }
        >>
        \new Staff="Bass"
        <<
          \new Voice { \transpose g es \ten }
          \new NullVoice \Struktur
        >>
      >>
    >>
  }
}

\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 = "Orgel Präludium G-Dur"

sop = \relative c'' {
  \time 4/4
  \key g \major
  \oneVoice
  < g d h >2 < g e c >
  < g d h >
  \voiceOne
  h < d a > < d h > < d a > r
  \oneVoice
  < fis, d > < e cis > < g e > < fis d >
  < h g d >1 < a fis d >
  < g e cis >2 < cis a g >
  < d a fis > < a fis >
  %< cis a fis > < a fis d >
  < g e cis > < cis g e >
  < a fis > r
  %q < g e c > < g es c >
  %< g d h >
  < g e cis >2 < cis a g >
  < d a fis > < a fis >
  < cis a e > < cis a g >
  < d a fis >1
  \bar "|."
}

alt = \relative c'' {
  s1 s2 < g d >
  fis g fis
}

ten = \relative c {
  \key g \major
  \clef bass
  g2 c d h
  d g d r
  d e
  cis2 d g, h d1
  a2 e' d2 fis e cis
  d r
  a' e fis d
  e cis d1
}

Struktur =
{
  %\override Score.NonMusicalPaperColumn.page-break-permission = ##f
  \override Score.SpacingSpanner.common-shortest-duration = #(ly:make-moment 1/8)
  %\override PianoStaff.VerticalAxisGroup.staff-staff-spacing.padding = #7
}

kopf=\header {
  title = \markup \line
  {
    \myTitel
  }
  subtitle = "&numero; 1"
  subsubtitle = ##f
  poet = "Notensatz: lilypond.miraheze.org"
  composer = ##f %https://de.wikipedia.org/wiki/Friese_(Familienname)
  piece = ##f
}

\bookpart {
  \paper {
    top-margin = 30\mm
    ragged-right = ##f
    ragged-last = ##f
    ragged-bottom = ##f
    ragged-last-bottom = ##f
    bottom-margin = 30\mm
    indent = #0
    line-width = 165\mm
    print-all-headers = ##f
    #(include-special-characters)
    print-first-page-number = ##t
    first-page-number = #1
    oddFooterMarkup = ##f
    evenFooterMarkup = ##f
    oddHeaderMarkup = #oddFooterMarkup
    evenHeaderMarkup = #evenFooterMarkup
    score-system-spacing.padding = #0
  }
  \kopf
  \score
  {
    <<
      \new PianoStaff="leadsheet"
      <<
        \new Staff="Discant"
        <<
          \new Voice="Alt" { \voiceOne \sop }
          \new Voice { \voiceTwo \alt }
        >>
        \new Staff="Bass"
        <<
          \new Voice { \ten }
          \new NullVoice \Struktur
        >>
      >>
    >>
  }
  \score
  {
    <<
      \new PianoStaff="leadsheet"
      <<
        \new Staff="Discant"
        <<
          \new Voice="Alt" {
            \mark \markup \rounded-box "D-Dur"
            \voiceOne \transpose g d' \sop
          }
          \new Voice { \voiceTwo \transpose g d' \alt }
        >>
        \new Staff="Bass"
        <<
          \new Voice { \transpose g d' \ten }
          \new NullVoice \Struktur
        >>
      >>
    >>
  }
  \score
  {
    <<
      \new PianoStaff="leadsheet"
      <<
        \new Staff="Discant"
        <<
          \new Voice="Alt" {
            \mark \markup \rounded-box "C-Dur"
            \voiceOne \transpose g c' \sop
          }
          \new Voice { \voiceTwo \transpose g c' \alt }
        >>
        \new Staff="Bass"
        <<
          \new Voice { \transpose g c' \ten }
          \new NullVoice \Struktur
        >>
      >>
    >>
  }
  \score
  {
    <<
      \new PianoStaff="leadsheet"
      <<
        \new Staff="Discant"
        <<
          \new Voice="Alt" {
            \mark \markup \rounded-box "F-Dur"
            \voiceOne \transpose g f \sop
          }
          \new Voice { \voiceTwo \transpose g f \alt }
        >>
        \new Staff="Bass"
        <<
          \new Voice { \transpose g f \ten }
          \new NullVoice \Struktur
        >>
      >>
    >>
  }
  \score
  {
    <<
      \new PianoStaff="leadsheet"
      <<
        \new Staff="Discant"
        <<
          \new Voice="Alt" {
            \mark \markup \rounded-box "B-Dur"
            \voiceOne \transpose g b \sop
          }
          \new Voice { \voiceTwo \transpose g b \alt }
        >>
        \new Staff="Bass"
        <<
          \new Voice { \transpose g b \ten }
          \new NullVoice \Struktur
        >>
      >>
    >>
  }
  \score
  {
    <<
      \new PianoStaff="leadsheet"
      <<
        \new Staff="Discant"
        <<
          \new Voice="Alt" {
            \mark \markup \rounded-box "Es-Dur"
            \voiceOne \transpose g es \sop
          }
          \new Voice { \voiceTwo \transpose g es \alt }
        >>
        \new Staff="Bass"
        <<
          \new Voice { \transpose g es \ten }
          \new NullVoice \Struktur
        >>
      >>
    >>
  }
}

#(set-global-staff-size 24)

MollDur =
#(define-music-function (p q m)
   (ly:pitch? ly:pitch? ly:music?)
   #{
     \key $p \major \transpose c $p \naturalizeMusic \transpose $q c { $m }
   #}
   )

#(define-markup-command (text-fromproperty layout props text-1 symbol text-2)
   (markup? symbol? markup?)
   #:category other
   (let ((m (chain-assoc-get symbol props)))
     (if (markup? m)
         ;; prevent infinite loops by clearing the interpreted property:
         (interpret-markup
          layout
          (cons (list (cons symbol `(,property-recursive-markup ,symbol))) props)
          (make-concat-markup (list text-1 m text-2)))
         empty-stencil)))

orgelpre =
%Notensatz für Vorspiel 4stimmig + Umbrüche
#(define-music-function (sop alt ten bas stru p)
   (ly:music? ly:music? ly:music? ly:music? ly:music? ly:pitch?)
   #{
     <<
       \new PianoStaff="leadsheet"
       <<
         \new Staff="up"
         <<
           \new Voice="Alt" { \voiceOne \transpose c $p $sop }
           \new Voice { \voiceTwo \transpose c $p $alt }
         >>
         \new Staff="down"
         <<
           \new Voice { \voiceOne \transpose c $p $ten }
           \new Voice { \voiceTwo \transpose c $p $bas }
           \new NullVoice $stru
         >>
       >>
     >>
   #}
   )

orgelp =
%% Orgelsatz mit Pedal
#(define-music-function (sop alt ten bas ped stru p)
   (ly:music? ly:music? ly:music? ly:music? ly:music? ly:music? number?)
   #{
     <<
       \new PianoStaff="leadsheet"
       <<
         \new Staff="up"
         <<
           \new Voice="Alt" { \voiceOne $sop }
           \new Voice { \voiceTwo $alt }
         >>
         \new Staff="down"
         <<
           \new Voice { \voiceOne $ten }
           \new Voice { \voiceTwo $bas }
           \new NullVoice $stru
         >>
       >>
       \new StaffGroup
       \new Staff="Pedal" \with {
         \magnifyStaff $p
       }
       <<
         \new Voice $ped
       >>
     >>
   #}
   )

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))

\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
    \override TextSpanner.dash-period = #1
    \override TextSpanner.dash-fraction = #0.5
    \override TextSpanner.bound-details.left.text = #"rit."
    \override TextSpanner.bound-details.right.text =
    \markup { \draw-line #'(0 . -1) }
  }
  \context {
    \Lyrics
    \override VerticalAxisGroup.staff-affinity = #CENTER
  }
  \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
    barNumberVisibility = #all-bar-numbers-visible
    \override Timing.beamExceptions = #'()
    \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
  }
}

#(define-markup-command (text-fromproperty layout props text-1 symbol text-2)
   (markup? symbol? markup?)
   #:category other
   (let ((m (chain-assoc-get symbol props)))
     (if (markup? m)
         ;; prevent infinite loops by clearing the interpreted property:
         (interpret-markup
          layout
          (cons (list (cons symbol `(,property-recursive-markup ,symbol))) props)
          (make-concat-markup (list text-1 m text-2)))
         empty-stencil)))

\paper {
  #(include-special-characters)
  indent = #0
  ragged-right = ##f
  ragged-last = ##f
  ragged-bottom = ##f
  ragged-last-bottom = ##f
  print-all-headers = ##f
  print-page-number = ##f
  scoreTitleMarkup = ##f
  bookTitleMarkup =
  \markup {
    %\override #'(baseline-skip . 1)
    \column \override #'(baseline-skip . 1) {
      \fill-line {
        \huge \larger \larger \bold
        \center-column {
          \fromproperty #'header:title
          " "
        }
      }
      \fill-line
      {
        \bold
        \center-column {
          \fromproperty #'header:subtitle
          " "
        }
      }
      \fill-line
      {
        \center-column {
          \fromproperty #'header:subsubtitle
          " "
        }
      }
      \fontsize #-1.5 {
        \fill-line {
          "Notensatz: lilypond.miraheze.org" \fromproperty #'header:composer
        }
        \fill-line {
          ""  \text-fromproperty "Originaltonart: " #'header:key "-Dur"
        }
      }
    }
  }
}