\version "2.19.17" \language "deutsch" colorGrob = #(define-music-function (parser location my-grob my-color color-on) (symbol? color? boolean?) ;; check for the boolean argument (if color-on ;; either set the color for the grob type #{ \temporary \override #my-grob #'color = #my-color #} ;; or revert it #{ \revert #my-grob #'color #})) colorGrobs = #(define-music-function (parser location my-grob-list my-color color-on) (symbol-list? color? boolean?) (if (null? my-grob-list) ;; issue an empty music expression #{ #} #{ % color the first grob type of the current list \colorGrob #(car my-grob-list) #my-color #color-on % recursively call itself with the remainder % of the current list. \colorGrobs #(cdr my-grob-list) #my-color #color-on #})) colorMusic = #(let ((grob-names (map car all-grob-descriptions))) (define-music-function (parser location my-color music) (color? ly:music?) #{ \colorGrobs #grob-names #my-color ##t %\temporary \override LedgerLineSpanner.color = #my-color %\temporary \override Staff.Clef.color = #my-color #music \stopStaff \colorGrobs #grob-names #my-color ##f %\revert LedgerLineSpanner.color %\revert Staff.Clef.color \startStaff #})) %--------------------------------------------------------------------------------- %----------------------------------------Header und Abkürzungen------------------- %--------------------------------------------------------------------------------- \header { tagline = ##f } global = { \key d\minor \time 3/2 \mergeDifferentlyDottedOn \mergeDifferentlyHeadedOn \set Timing.beamExceptions = #'( (end . ( ((1 . 16) . (4 4 4 4 4 4)) ) ) ) } voiceFive = #(context-spec-music (make-voice-props-set 4) 'Voice) voiceSix = #(context-spec-music (make-voice-props-set 5) 'Voice) colA = #(define-music-function(parser location music)(ly:music?) #{ \colorMusic #(rgb-color 0.72 0 0.196) #music #}) %-------------------------------------------------------------------------------- %--------------------------musikalischer Inhalt---------------------------------- %-------------------------------------------------------------------------------- einsNoten = { \repeat volta 2 { << \new Voice { \voiceOne f''2^\markup {\translate #'(-7 . 3)\bold "Sarabande"} e''2. f''4 | g''4.\turn a''8 fis''2.\prall fis''4 | g''2 e'' d''8 cis'' d''4 | cis''2. h'4 a'2 | c'' h'2. cis''4 | d''4 e'' cis''2.\prall d''4 | e''8 f'' e'' f'' f''2.\prall e''4 | e''1. } \new Voice { \voiceTwo d''2 b'1 | a'2 a'1 | d''2 b' h' | a'1 e'2 | a' g'1 | gis'2 a' g' | b' a' gis'~ | gis'4 gis' a'1 } \new Voice { \voiceTwo \once \override NoteColumn.force-hshift = 0.3 a'2 g'1 | s1. | \override NoteColumn.force-hshift = 0.4 g'2 g' f' } >> } \repeat volta 2{ << \new Voice { \voiceOne e''2 e''1~ | e''2 es''1 | d''2 e''2. f''4 | e''2. d''4 c''2 | f''2 g''2. a''4 | a'' g'' g'' a'' a''8 b'' e''4 | f'' d'' e''2.\upprall f''4 | f''1. | a''2 g''4 fis'' e'' d'' | b'' g'' e''2. f''4 | g''4 e'' cis''2.\prall d''4 | e'' cis'' a'1~ | a'4 h' c'' a' h' cis'' | d'' h' cis'' d'' e'' cis'' | d''4~ d''16 e'' d''32 cis'' d'' e'' e''2.\prall d''4 | d''1. } \new Voice { \voiceTwo a'2 b'2. a'4 | g'2 f'1~ | f'2 g' a' | g'1 g'2 | c''1. | d''2 c'' b' | a' g'4 a' b'2~ | b'4 g' a'1 | d''1 c''2 | b'2. a'4 g'2 | a' a' f' | e'1. | d'1~ d'4 e' | f' d' e' f' g' e' | f' b' a'2 g'~ | g'4 e' f'1 } >> } } zweiNoten = { { << \new Voice \colA { \voiceOne d'2 d'1 | e'2 d'1 | d'2 s1 | e'2 d' cis' | d'2 d'1 | e'1 d'2 | g d' h~ | h4 h cis'1 } \new Voice { \voiceTwo d2 s1 | cis'2 c'1 | b2 g gis | a1 g2 | fis f1 | e2 g b | cis d1 | \afterGrace a1. {\voiceOne \teeny d'8 e'16[ \change Staff = "eins" f' g' a'] h'[ cis'' d'' e'']} } >> } { << \new Voice { \voiceOne cis'2 cis'1~ | cis'2 c'1~ | c'2 b c' | c' d' e' | f'1.~ | f'1 g'2 | c' c'~ c'~ | c'4 b c'1 | d'1.~ | d'1. | cis'2 e' a~ | a2. b4 a g | fis1 g2 | gis g1 | a4 d~ d h, cis2 | d1. } \new Voice { \voiceTwo a2 g2. a4 | b8 g a4 a2.\upprall a4 | b a g2 f | c'~ c' b | a g f | b a g | a4 b c'2 c | f1. | fis2 e fis | g a b | a g4 f e d | cis1. | c1 h,2~ | h, b,1 | a,4 g, a,1 | d,1. } >> } } ossiaNoten = { { \startStaff << \new Voice { \voiceOne a'16 d'' e'' f''~ f''8 e'' e''2. e''8 f'' | g'' b'' a'' g'' fis''2.\prall e''8 fis'' | g''2 f''8 e''~ e''4~ e''16 d'' cis'' d''16~ d''4 | d''4 cis''2 h'4 a'2 | \grace {d'16 a' h' \once \override Tie.thickness = 0.5 c''~} c''2 c''16 a' h'8~ h'2 cis''4 | cis''8 d''16 e'' f''8 e''16 d'' \grace d''8 cis''2. d''4 | e''8 g''16 f'' e'' f'' e'' f'' f''2.\prall e''4 | e''1. } \new Voice { \voiceTwo s16 d''4*3/4 ~ d''4 b'1 | a'2 a'1 | d''2 b' h' | a'1 e'2 | \grace {s16 a'4*3/4 -\tweak thickness 0.5 ~} a'2 g'1 | gis'2 a' g' | b' a' gis'~ | gis'4 gis' a'1^\mordent } \new Voice { \voiceTwo a'4~ a' g'1 | s1. | g'2 g' f' | s1. | \grace {\once \override Tie.thickness = #0.5 d'4~} d'2 d'1 | s1.*2 | s1 \stopStaff s2 } >> } { s1.*3 | \startStaff << {f''4 e''2 d''4 c''2} \\ {g'1 g'2} >>\stopStaff s1.*4 \once \omit Staff.BarLine \startStaff << {a''2 g''8 a'' g'' fis'' e''4 d''} \\ {d''1 c''2} >> \stopStaff s1. \once \omit Staff.BarLine \startStaff << {g''4 \grace f'' e'' \grace d''8 cis''2. d''4} \\ {a'2 a' f'} >> \stopStaff \startStaff << {e''8 d'' cis'' h' a'1} \\ {e'1.} >>\stopStaff } } ossiazweiNoten = { { s1.*2 | \startStaff << {d'2} \\ {b4 a g2 gis} >>\stopStaff | s1. | \startStaff fis2 f1 \stopStaff | s1. | s2 \startStaff << { d'4. c'8 h2~ | h4 h cis'1\mordent } \\ { d1 | a1. } \\ { s1 | s1 \stopStaff s2 } >> } { s1.*7 \startStaff << {s4 b c'1} \\ {f2. b4 a g} >> \stopStaff } } %--------------------------------------------------------------------------------- %----------------------------------------Partituraufbau--------------------------- %--------------------------------------------------------------------------------- Noten = { << \new StaffGroup { \new Staff = "ossia" \with { \remove "Time_signature_engraver" alignAboveContext = #"main" \hide Clef \hide KeySignature \magnifyStaff #2/3 \global } { \override Staff.BarLine #'allow-span-bar = ##f \key d\minor \set Timing.beamExceptions = #'() \stopStaff \ossiaNoten } } \new StaffGroup { << \set StaffGroup.systemStartDelimiterHierarchy = #'(SystemStartBar (SystemStartBracket (SystemStartBrace a b))) \new Staff = "eins" \with { \consists "Span_arpeggio_engraver" \consists "Bar_number_engraver" } { \global \set Staff.connectArpeggios = ##t { \einsNoten } } \new Staff = "zwei" { \global \clef bass \override Staff.BarLine #'allow-span-bar = ##f { \zweiNoten } } >> } \new StaffGroup { \new Staff = "ossia2" \with { \clef bass \remove "Time_signature_engraver" alignBelowContext = #"main" \time 4/4 \hide KeySignature \hide Clef \magnifyStaff #2/3 } { \set Timing.beamExceptions = #'() \key d\minor \stopStaff \ossiazweiNoten } } >> } %--------------------------------------------------------------------------------- %----------------------------------------Layout----------------------------------- %--------------------------------------------------------------------------------- \score { << \Noten >> } \layout { \context { \Score \override SpacingSpanner.spacing-increment = #3 \remove "Bar_number_engraver" \omit SystemStartBar \override SystemStartBracket.style = #'bar-line \override SystemStartBracket.padding = #-0.1 \override SystemStartBracket.thickness = #1.6 } \context { \StaffGroup \override VerticalAxisGroup.staff-staff-spacing = #'( (basic-distance . 7) (minimum-distance . 5) (padding . 1.5) ) } \context { \Staff \remove "Ledger_line_engraver" } \context { \Voice \consists "Ledger_line_engraver" } } #(set-global-staff-size 16) #(set! paper-alist (cons '("custom-size" . (cons (* 200 mm) (* 300 mm))) paper-alist)) \paper{ system-separator-markup = \markup \draw-hline system-system-spacing #'padding = #6 system-system-spacing #'basic-distance = #25 #(set-paper-size "custom-size" 'landscape) print-page-number = ##t print-first-page-number = ##t oddHeaderMarkup = \markup \null oddFooterMarkup = \markup \null }