Präambulum RW 1

Zur Navigation springen Zur Suche springen
sop = \relative {
  \key f \major
  r8 d'[ f a] d,16 d' cis d a d e, cis'
  < d a f >4 r r8 < b f >[ q \voiceOne q]
  ~ b a16 g a4 ~ a8 g16 f g4
  ~ g8 f16 e f4 e r8 a
  \oneVoice
  b16 d, e f e8 d r a'[ c e]
  a,16 a' gis a e a h, gis' < a e c >4 r
  \voiceOne
  r8 f[ f f] ~ f e16 d e4
  ~ e8 d16 cis d4 ~ d8 c16 h c4
  ~ c8 b16 a b4 a r8 d
  ~ d cis16 d e4 ~ e8 d16 cis d4
  ~ d8 c16 h c4 ~ c8 b16 a b4
  ~ b8 b a4 g2
  f e
  \set Timing.beamExceptions = #'()
  \set Timing.baseMoment = #(ly:make-moment 1/4)
  \set Timing.beatStructure = #'(2 2)  %% abhängig vom Takt
  r8 a g f b2
  a r8 a a a
  b b b b a d d d
  cis f e d cis a g f
e f e d c d d d
~ d cis16 h cis4 d2
  \bar "|."
}

alt = \relative {
  s1 s1
  \voiceTwo
  e'4 ~ e16 e f e d4 ~ d16 d e d
  s1 s s
  s8 c'[ c c] b4. a16 g
  a4 r8 f e4 r8 es
  d4 r8 g ~ g f16 e f4
  e8 a4 g8 f4 ~ f16 f g f
  e4 ~ e16 e f e d4 ~ d16 e f g
  e4 r8 f ~ f4 e
  ~ e d2 cis4
  d2 r8 d es d
  cis8 h16 a d4 cis8 a'[ a a]
  ~ a g g g ~ g f f f
  e a g f e f e d
  cis \staffdown a g f e f f e16 d
  e4 a8 g < a fis >2
}

ten = \relative {
  \clef bass
  \key f \major
  < d d, >2 r8 d[ f a]
  d,16 d' cis d a d f, a d,8 \voiceOne d[ d d]
  c4 r8 c b4 r8 b
  a4 d a s4
  b'2 c
  \oneVoice
  r8 a,[ c e] a,16 a' gis a e a c, e
  a,8 a'[ a a] g4 c8 c,
  f[ a b a] g4 a8 g
  fis d g4 d r8 d
  a a' cis a r d, f d
  r a c a r b d b
  c c' d a b a16 b c8 g
  a g16 a b8 f g f16 g a8 e
  f4 e8 d \voiceOne g2 
  ~ g4 f8 e16 d e4 r
  r2 a4 r a r a r
}

bas = \relative {
  s1 s2
  \voiceTwo
  s8 d,[ d d]
  r8 a' s4 s2
  s2 s4 a'
  ~ a gis a2
  s1 * 8 s2
  r4 g,
  a1 ~ a ~ a ~ a ~ a2
  < d d, >
}

Struktur =
{
  \override Score.NonMusicalPaperColumn.page-break-permission = ##f
  \override Score.SpacingSpanner.common-shortest-duration = #(ly:make-moment 1/12)
  \time 4/4
  \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) }
  s1 * 9 \pageBreak
  s1 *7
  s1\startTextSpan s
  s2 s\stopTextSpan
}

kopf = \header {
  title = "Präambulum RW 1"
  composer = "M: Johann Baptist Peyer (1678-1733)"
}

mypaper =
\paper {
  top-margin = 25\mm
  ragged-bottom = ##f
  ragged-last-bottom = ##f
  bottom-margin = 25\mm
  line-width = 160\mm
  indent = 20
  markup-system-spacing.padding = #10
  system-system-spacing.padding = #6
  markup-markup-spacing.padding = #3
  print-page-number = ##f
}

\bookpart {
  \mypaper
  \kopf
  \score
  {
    <<
      \new PianoStaff
      \with
      {
        instrumentName = \markup \center-column {
          \fontsize #1 "Primi toni"
        }
        \override VerticalAxisGroup.staff-staff-spacing.padding = #4
      }
      <<
        \new Staff="up"
        <<
          \new Voice="melody" { \sop }
          \new Voice { \alt }
          \new Voice \Struktur
        >>
        \new Staff="down"
        <<
          \new Voice { \ten }
          \new Voice { \bas }
        >>
      >>
    >>
  }
}
sop = \relative {
  \key f \major
  r8 d'[ f a] d,16 d' cis d a d e, cis'
  < d a f >4 r r8 < b f >[ q \voiceOne q]
  ~ b a16 g a4 ~ a8 g16 f g4
  ~ g8 f16 e f4 e r8 a
  \oneVoice
  b16 d, e f e8 d r a'[ c e]
  a,16 a' gis a e a h, gis' < a e c >4 r
  \voiceOne
  r8 f[ f f] ~ f e16 d e4
  ~ e8 d16 cis d4 ~ d8 c16 h c4
  ~ c8 b16 a b4 a r8 d
  ~ d cis16 d e4 ~ e8 d16 cis d4
  ~ d8 c16 h c4 ~ c8 b16 a b4
  ~ b8 b a4 g2
  f e
  \set Timing.beamExceptions = #'()
  \set Timing.baseMoment = #(ly:make-moment 1/4)
  \set Timing.beatStructure = #'(2 2)  %% abhängig vom Takt
  r8 a g f b2
  a r8 a a a
  b b b b a d d d
  cis f e d cis a g f
e f e d c d d d
~ d cis16 h cis4 d2
  \bar "|."
}

alt = \relative {
  s1 s1
  \voiceTwo
  e'4 ~ e16 e f e d4 ~ d16 d e d
  s1 s s
  s8 c'[ c c] b4. a16 g
  a4 r8 f e4 r8 es
  d4 r8 g ~ g f16 e f4
  e8 a4 g8 f4 ~ f16 f g f
  e4 ~ e16 e f e d4 ~ d16 e f g
  e4 r8 f ~ f4 e
  ~ e d2 cis4
  d2 r8 d es d
  cis8 h16 a d4 cis8 a'[ a a]
  ~ a g g g ~ g f f f
  e a g f e f e d
  cis \staffdown a g f e f f e16 d
  e4 a8 g < a fis >2
}

ten = \relative {
  \clef bass
  \key f \major
  < d d, >2 r8 d[ f a]
  d,16 d' cis d a d f, a d,8 \voiceOne d[ d d]
  c4 r8 c b4 r8 b
  a4 d a s4
  b'2 c
  \oneVoice
  r8 a,[ c e] a,16 a' gis a e a c, e
  a,8 a'[ a a] g4 c8 c,
  f[ a b a] g4 a8 g
  fis d g4 d r8 d
  a a' cis a r d, f d
  r a c a r b d b
  c c' d a b a16 b c8 g
  a g16 a b8 f g f16 g a8 e
  f4 e8 d \voiceOne g2 
  ~ g4 f8 e16 d e4 r
  r2 a4 r a r a r
}

bas = \relative {
  s1 s2
  \voiceTwo
  s8 d,[ d d]
  r8 a' s4 s2
  s2 s4 a'
  ~ a gis a2
  s1 * 8 s2
  r4 g,
  a1 ~ a ~ a ~ a ~ a2
  < d d, >
}

Struktur =
{
  \override Score.NonMusicalPaperColumn.page-break-permission = ##f
  \override Score.SpacingSpanner.common-shortest-duration = #(ly:make-moment 1/12)
  \time 4/4
  \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) }
  s1 * 9 \pageBreak
  s1 *7
  s1\startTextSpan s
  s2 s\stopTextSpan
}

kopf = \header {
  title = "Präambulum RW 1"
  composer = "M: Johann Baptist Peyer (1678-1733)"
}

mypaper =
\paper {
  top-margin = 25\mm
  ragged-bottom = ##f
  ragged-last-bottom = ##f
  bottom-margin = 25\mm
  line-width = 160\mm
  indent = 20
  markup-system-spacing.padding = #10
  system-system-spacing.padding = #6
  markup-markup-spacing.padding = #3
  print-page-number = ##f
}

\bookpart {
  \mypaper
  \kopf
  \score
  {
    <<
      \new PianoStaff
      \with
      {
        instrumentName = \markup \center-column {
          \fontsize #1 "Primi toni"
        }
        \override VerticalAxisGroup.staff-staff-spacing.padding = #4
      }
      <<
        \new Staff="up"
        <<
          \new Voice="melody" { \sop }
          \new Voice { \alt }
          \new Voice \Struktur
        >>
        \new Staff="down"
        <<
          \new Voice { \ten }
          \new Voice { \bas }
        >>
      >>
    >>
  }
}

#(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"
        }
      }
    }
  }
}