267 lines
		
	
	
		
			8.6 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			267 lines
		
	
	
		
			8.6 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| \language "deutsch"
 | |
| 
 | |
| \include "default_style.ily"
 | |
| \include "default_songinfo_style.ily"
 | |
| \include "footer_with_songinfo.ily"
 | |
| 
 | |
| \include #(if (defined? 'customStyleOverridesFile) customStyleOverridesFile "../void.ily")
 | |
| 
 | |
| #(set-default-paper-size songFormatAndSize)
 | |
| #(set-global-staff-size globalSize)
 | |
| 
 | |
| \paper {
 | |
|   property-defaults.fonts.serif = \songChordFont
 | |
|   property-defaults.fonts.sans = \songLyricFont
 | |
|   %annotate-spacing = ##t
 | |
|   % spacing stuff
 | |
|   two-sided = ##t
 | |
|   inner-margin = 1.5\cm
 | |
|   outer-margin = \songMargin
 | |
|   binding-offset = 0\cm
 | |
|   top-margin = \songMargin
 | |
|   bottom-margin = \songMargin
 | |
|   system-system-spacing = #'((basic-distance . 10) (padding . 1.5))
 | |
|   markup-system-spacing = #'((basic-distance . 1))
 | |
|   score-markup-spacing = #'((padding . 2))
 | |
|   top-markup-spacing = #'((basic-distance . 0) (minimum-distance . 0) (padding . 0))
 | |
|   refMarkupFormatter = #(lambda (layout props stanzanumbers)
 | |
|     (interpret-markup layout props
 | |
|     (if (null? stanzanumbers)
 | |
|         refString
 | |
|         (ly:format refStringWithNumbers (string-join (map (lambda (stanzanumber) (ly:format "~a" stanzanumber)) stanzanumbers) ", ")))))
 | |
| }
 | |
| 
 | |
| generalLayout = \layout {
 | |
|   indent = #0
 | |
|   \context {
 | |
|     \Lyrics
 | |
|     \override LyricText.font-size = #lyricSize
 | |
|     \override StanzaNumber.font-size = #lyricSize
 | |
|     \override StanzaNumber.font-family = #'sans
 | |
|     \override LyricText.font-family = #'sans
 | |
|     \override LyricExtender.minimum-length = 0
 | |
|   }
 | |
|   \context {
 | |
|     \Staff
 | |
|     \accidentalStyle modern-voice-cautionary
 | |
|     \consists \Better_Merge_rests_engraver
 | |
|   }
 | |
|   \context {
 | |
|     \Score
 | |
|     \remove "Bar_number_engraver"
 | |
|     \RemoveEmptyStaves
 | |
|     \override VerticalAxisGroup.remove-first = ##t
 | |
|     \overrideTimeSignatureSettings
 | |
|       4/4               % timeSignatureFraction
 | |
|       1/4               % baseMomentFraction
 | |
|       #'(1 1 1 1)       % beatStructure
 | |
|       #'()		% beamExceptions
 | |
|     \overrideTimeSignatureSettings
 | |
|       3/4               % timeSignatureFraction
 | |
|       1/4               % baseMomentFraction
 | |
|       #'(1 1 1 1)       % beatStructure
 | |
|       #'()		% beamExceptions
 | |
|   }
 | |
|   \context {
 | |
|     \Voice
 | |
|     % ich will lines breaken wie ich will!
 | |
|     \remove "Forbid_line_break_engraver"
 | |
|     \override NoteHead.layer = 2
 | |
|     \override Rest.layer = 2
 | |
|     \override Dots.layer = 2
 | |
|     \override Stem.layer = 2
 | |
|     \override Flag.layer = 2
 | |
|     \override Beam.layer = 2
 | |
|     \override Slur.layer = 2
 | |
|     \override Tie.layer = 2
 | |
|     \override Accidental.layer = 2
 | |
|   }
 | |
| }
 | |
| 
 | |
| %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 | |
| %%% kleine Helferlein:
 | |
| 
 | |
| textp = \lyricmode { \markup { \raise #1 \musicglyph #"rests.3" } }
 | |
| 
 | |
| % zweite Stimme alles grau
 | |
| secondVoiceStyle = {
 | |
|   \override NoteHead.color = #grey
 | |
|   \override Rest.color = #grey
 | |
|   \override Dots.color = #grey
 | |
|   \override Stem.color = #grey
 | |
|   \override Flag.color = #grey
 | |
|   \override Beam.color = #grey
 | |
|   \override Slur.color = #grey
 | |
|   \override Tie.color = #grey
 | |
|   \override Accidental.color = #grey
 | |
|   \override NoteHead.layer = 1
 | |
|   \override Rest.layer = 1
 | |
|   \override Dots.layer = 1
 | |
|   \override Stem.layer = 1
 | |
|   \override Flag.layer = 1
 | |
|   \override Beam.layer = 1
 | |
|   \override Slur.layer = 1
 | |
|   \override Tie.layer = 1
 | |
|   \override Accidental.layer = 1
 | |
| }
 | |
| 
 | |
| firstVoiceStyle = {
 | |
|   \override NoteHead.color = #black
 | |
|   \override Rest.color = #black
 | |
|   \override Dots.color = #black
 | |
|   \override Stem.color = #black
 | |
|   \override Flag.color = #black
 | |
|   \override Beam.color = #black
 | |
|   \override Slur.color = #black
 | |
|   \override Tie.color = #black
 | |
|   \override Accidental.color = #black
 | |
| }
 | |
| 
 | |
| % Deprecated: einzelne Noten innerhalb von \secondVoiceStyle mit schwarzem statt grauem Kopf
 | |
| schwarzkopf =
 | |
|   #(define-music-function (parser location noten) (ly:music?)
 | |
|     (begin (ly:warning "\\schwarzkopf brauchts nicht mehr, das kann ersatzlos weg!") noten))
 | |
| 
 | |
| romanStanza =
 | |
|   #(define-music-function (parser location) ()
 | |
|   #{ \override StanzaNumber.style = #'roman #})
 | |
| 
 | |
| override-stanza =
 | |
| #(define-music-function (parser location stanzanumbers) (number-list?)
 | |
| #{
 | |
|   \once \override StanzaNumber.details.custom-stanzanumber-override = #stanzanumbers
 | |
| #}
 | |
| )
 | |
| 
 | |
| #(define (stanza . stanzanumbers)
 | |
| #{
 | |
|   \once \override StanzaNumber.details.custom-realstanza = ##t % set this to signal that there is a real stanza and no repeat signs
 | |
|   \applyContext
 | |
|   #(lambda (context)
 | |
|     (let* ((stanzanumbers-override (ly:assoc-get 'custom-stanzanumber-override (ly:assoc-get 'details (ly:context-grob-definition context 'StanzaNumber) '()) #f))
 | |
|            (stanza-style (ly:assoc-get 'style (ly:context-grob-definition context 'StanzaNumber)))
 | |
|            (stanza-format (lambda (stanzanumber) (format #f (if (eq? stanza-style 'roman) romanStanzaFormat stanzaFormat) stanzanumber))))
 | |
|         (ly:context-set-property! context 'stanza
 | |
|           (string-join (map stanza-format
 | |
|                             (if stanzanumbers-override stanzanumbers-override stanzanumbers))
 | |
|                         ", "))))
 | |
| #}
 | |
| )
 | |
| 
 | |
| ref =
 | |
| #(define-music-function (stanzanumbers lyrics) ((number-list? (list)) ly:music?)
 | |
| #{ \lyricmode {
 | |
|     \once \override StanzaNumber.details.custom-realstanza = ##t % set this to signal that there is a real stanza and no repeat signs
 | |
|     \set stanza = #(make-on-the-fly-markup (lambda (layout props m) ((ly:output-def-lookup layout 'refMarkupFormatter) layout props stanzanumbers)) (make-null-markup))
 | |
|     #lyrics
 | |
|   }
 | |
| #}
 | |
| )
 | |
| 
 | |
| % prints a repStart Sign as stanza if the tag 'repeats is kept.
 | |
| % if there was a stanza already set by the stanza function with StanzaNumber.details.custom-realstanza = ##t we set that also as stanza.
 | |
| repStartWithTag = \lyricmode {
 | |
|   \tag #'repeats {
 | |
|     \applyContext
 | |
|     #(lambda (context)
 | |
|       (let ((lastStanza (ly:context-property context 'stanza))
 | |
|             (printLastStanza (ly:assoc-get 'custom-realstanza (ly:assoc-get 'details (ly:context-grob-definition context 'StanzaNumber) '()) #f))
 | |
|             (stanzaFontSeries (ly:assoc-get 'font-series (ly:context-grob-definition context 'StanzaNumber) 'normal)))
 | |
|       (ly:context-set-property! context 'stanza
 | |
|         (make-concat-markup
 | |
|           (if printLastStanza
 | |
|             (list (make-override-markup `(font-series . ,stanzaFontSeries) lastStanza) (make-hspace-markup 1) repStart)
 | |
|             (list repStart)
 | |
|             )))))
 | |
|     \once \override StanzaNumber.font-series = #'normal
 | |
|   }
 | |
| }
 | |
| 
 | |
| repStopWithTag = \lyricmode {
 | |
|   \tag #'repeats {
 | |
|     \once \override StanzaNumber.font-series = #'normal
 | |
|     \once \override StanzaNumber.direction = 1
 | |
|     \set stanza = \markup { \repStop }
 | |
|   }
 | |
| }
 | |
| 
 | |
| rightHyphen = \lyricmode {
 | |
|   \once \override StanzaNumber.font-series = #'normal
 | |
|   \once \override StanzaNumber.direction = 1
 | |
|   \set stanza = "-"
 | |
| }
 | |
| 
 | |
| leftHyphen = \lyricmode {
 | |
|   \once \override StanzaNumber.font-series = #'normal
 | |
|   \set stanza = "-"
 | |
| }
 | |
| 
 | |
| multiVerseSkips =
 | |
| #(define-music-function (parser location skips) (number?)
 | |
|   #{ \tag #'multiVerse { \repeat unfold #skips { \skip4 } } #})
 | |
| 
 | |
| alt =
 | |
| #(define-music-function (parser location a b) (ly:music? ly:music?)
 | |
|   #{ \tag #'firstVerse { #a } \tag #'multiVerse { #b } #})
 | |
| 
 | |
| updown =
 | |
| #(define-music-function (parser location word) (string?)
 | |
| (let ((first-char (string-take word 1))
 | |
|       (rest (substring word 1 (string-length word))))
 | |
| #{
 | |
|   \lyricmode {
 | |
|     \markup {
 | |
|       \tag #'up #(string-append (string-capitalize first-char) rest)
 | |
|       \tag #'down #(string-append (string-downcase first-char) rest)
 | |
|     }
 | |
|   }
 | |
| #}))
 | |
| 
 | |
| dottedExtender = {
 | |
|   \override LyricExtender.style = #'dotted-line
 | |
|   \override LyricExtender.thickness = 2
 | |
|   \override LyricExtender.Y-offset = 0.1
 | |
|   \override LyricExtender.stencil =
 | |
|     #(lambda (grob)
 | |
|       (let* ((stil (ly:lyric-extender::print grob))
 | |
|              (nostil (null? stil))
 | |
|              (x-ext (if nostil 0 (ly:stencil-extent stil X))))
 | |
|          (if nostil
 | |
|            stil
 | |
|            (make-connected-line
 | |
|              (list
 | |
|                (cons (car x-ext) 0)
 | |
|                (cons (cdr x-ext) 0))
 | |
|              grob))))
 | |
| }
 | |
| 
 | |
| melisOff = \set ignoreMelismata = ##t
 | |
| melisOn = \unset ignoreMelismata
 | |
| 
 | |
| cue =
 | |
| #(define-music-function (zahlen) (number-list?)
 | |
|   #{
 | |
|       \tag #'cues {
 | |
|         \tweak self-alignment-X #LEFT
 | |
|         \mark
 | |
|           #(make-on-the-fly-markup
 | |
|             (lambda (layout props m) (interpret-markup layout (prepend-alist-chain 'cues zahlen props) (ly:output-def-lookup layout 'cueMarkup)))
 | |
|             (make-null-markup))
 | |
|       }
 | |
|   #})
 | |
| 
 | |
| #(define-markup-command (ruf-style layout props text) (string?)
 | |
|    (interpret-markup layout props
 | |
|                      (markup #:italic (string-append "(" text ")"))))
 | |
| rufWithMarkup =
 | |
| #(define-music-function (text) (markup?)
 | |
|    #{
 | |
|      \lyricmode {
 | |
|        \once \override StanzaNumber.font-series = #'normal
 | |
|        \once \override StanzaNumber.direction = 1
 | |
|        \set stanza = #text
 | |
|      }
 | |
|    #})
 | |
| ruf =
 | |
| #(define-music-function (text) (string?)
 | |
|    (rufWithMarkup (make-ruf-style-markup text))) |