Bundeshymne (Orgel)
Lilypond Score
sop = \relative c'' {
\key d \major
\voiceOne
a2 g4 fis2 g8 ( a )
h2 a4 a8 ( g ) g4
r4
g2 fis4 e2 fis8 ( g )
a2 g4 g8 ( fis ) fis4
r
gis2 a4 h2 cis4 d ( h ) gis a2
r4
\repeat volta 2 {
e2 fis4 a ( g! ) e
fis2 h8 g
fis4 e r4
}
g2 fis4 h2 a4 a8 ( g fis4 ) e fis2
r4
h2 a4 cis2 d8( a) a ( g fis4 ) e d2
r4
\bar "|."
}
alt = \relative c' {
\voiceTwo
e2 d4 c2 d8 e
f2 e4 e8 d d4 s
d2 c4 h2 c8 d
e2 d4
d8 c c4 s
c2 h4
fis'2 g4
e2 d4
h2 s4
h2 c4
e d h
c2 d4
c4 h s
d2 c4
f2 e4
c2 h4
c2 s4
f2 e4
d f e4
c2 h4
g2
}
ten = \relative c' {
\key c \major
\clef bass
c4 g2
g2 ~ g4
f2 e4
d2 r4
g2 ~ g4
g2 ~ g4
g2 g4
g2 r4
a2 g4
fis2 g4
a2 a4
g2 r4
g2 ~ g4
g2 ~ g4
g2 f4
g2 r4
g2 ~ g4
f2 g4
g2 ~ g4 ~
g2 r4
f2 g4
f2 c4
f4 g2
e2 r4
}
bas = \relative c {
c2 d4
e2 h4
c2 c4
h2 s4
h2 c4
g2 c4
c2 d4
h4 c s
d2 ~ d4
d2 ~ d4
c2 d4 ~
d2 s4
g,2 c4
h2 g4
c2 d4
c4 d s
h2 c4
d2 c4
e2 d4
e2 s4
c2 ~ c4
g4 gis a
c2 d4
c2
}
Akk=
\chordmode {
d2 a4:7
d2 a4:7 g2 d4
d a2:7
a2:7 d4
a2 d4
d2 a4:7
a4:7 d2
e2:7 a4
e2 a4
h2:m e4:7
a2.
a2 d4
d4 a2:7
d2 e4:m
d4 a s
a2:7 d4
e2:m d4
d2 a4
d2 s4
g2 d4
a2:7 h4:m
d2 a4:7
d2
}
lyr = \lyricmode {
\set stanza = #"1."
\override LyricText.font-size = #-1
Land der Ber -- ge, Land am Stro -- me,
Land der Äk -- ker, Land der Do -- me,
Land der Häm -- mer, zu -- kunfts -- reich!
\markup \line { \fontsize #2 \char ##x1D106 Hei } -- mat gros -- ser
Töch -- ter und Söh -- \markup \line { ne, \fontsize #2 \char ##x1D107 }
%Volk, be -- gna -- det für das Schö -- ne,
viel -- ge -- rühm -- tes Ö -- ster -- reich.
Viel -- ge -- rühm -- tes Ö -- ster -- reich.
}
Struktur =
{
\override Score.SpacingSpanner.common-shortest-duration = #(ly:make-moment 1/12)
\time 3/4
\tempo \markup \column { " " \fontsize #-1 \italic "Feierlich, doch nicht zu langsam" }
\override Score.NonMusicalPaperColumn.page-break-permission = ##f
\mynote 4
s4
}
kopf = \header {
\markup
\override #'(baseline-skip . 3)
\center-column {
"Bundeshymne"
\fontsize #-3 \line { "GL № " 977 \fontsize #-1 \concat { " (bis 2013 № " "855" ) } }
" "
}
poet = \markup "T: Paula v. Preradovic"
composer = "M: W.A. Mozart"
key = "D"
}
mypaper =
\paper {
top-margin = 20\mm
annotate-spacing = ##f
ragged-bottom = ##f
ragged-last-bottom = ##f
bottom-margin = 20\mm
line-width = 170\mm
}
\bookpart {
\mypaper
\kopf
\score
{
\orgel \sop \alt \ten \bas \Akk \Struktur \lyr c
}
}
Lilypond Score
sop = \relative c'' {
\key d \major
\voiceOne
a2 g4 fis2 g8 ( a )
h2 a4 a8 ( g ) g4
r4
g2 fis4 e2 fis8 ( g )
a2 g4 g8 ( fis ) fis4
r
gis2 a4 h2 cis4 d ( h ) gis a2
r4
\repeat volta 2 {
e2 fis4 a ( g! ) e
fis2 h8 g
fis4 e r4
}
g2 fis4 h2 a4 a8 ( g fis4 ) e fis2
r4
h2 a4 cis2 d8( a) a ( g fis4 ) e d2
r4
\bar "|."
}
alt = \relative c' {
\voiceTwo
e2 d4 c2 d8 e
f2 e4 e8 d d4 s
d2 c4 h2 c8 d
e2 d4
d8 c c4 s
c2 h4
fis'2 g4
e2 d4
h2 s4
h2 c4
e d h
c2 d4
c4 h s
d2 c4
f2 e4
c2 h4
c2 s4
f2 e4
d f e4
c2 h4
g2
}
ten = \relative c' {
\key c \major
\clef bass
c4 g2
g2 ~ g4
f2 e4
d2 r4
g2 ~ g4
g2 ~ g4
g2 g4
g2 r4
a2 g4
fis2 g4
a2 a4
g2 r4
g2 ~ g4
g2 ~ g4
g2 f4
g2 r4
g2 ~ g4
f2 g4
g2 ~ g4 ~
g2 r4
f2 g4
f2 c4
f4 g2
e2 r4
}
bas = \relative c {
c2 d4
e2 h4
c2 c4
h2 s4
h2 c4
g2 c4
c2 d4
h4 c s
d2 ~ d4
d2 ~ d4
c2 d4 ~
d2 s4
g,2 c4
h2 g4
c2 d4
c4 d s
h2 c4
d2 c4
e2 d4
e2 s4
c2 ~ c4
g4 gis a
c2 d4
c2
}
Akk=
\chordmode {
d2 a4:7
d2 a4:7 g2 d4
d a2:7
a2:7 d4
a2 d4
d2 a4:7
a4:7 d2
e2:7 a4
e2 a4
h2:m e4:7
a2.
a2 d4
d4 a2:7
d2 e4:m
d4 a s
a2:7 d4
e2:m d4
d2 a4
d2 s4
g2 d4
a2:7 h4:m
d2 a4:7
d2
}
lyr = \lyricmode {
\set stanza = #"1."
\override LyricText.font-size = #-1
Land der Ber -- ge, Land am Stro -- me,
Land der Äk -- ker, Land der Do -- me,
Land der Häm -- mer, zu -- kunfts -- reich!
\markup \line { \fontsize #2 \char ##x1D106 Hei } -- mat gros -- ser
Töch -- ter und Söh -- \markup \line { ne, \fontsize #2 \char ##x1D107 }
%Volk, be -- gna -- det für das Schö -- ne,
viel -- ge -- rühm -- tes Ö -- ster -- reich.
Viel -- ge -- rühm -- tes Ö -- ster -- reich.
}
Struktur =
{
\override Score.SpacingSpanner.common-shortest-duration = #(ly:make-moment 1/12)
\time 3/4
\tempo \markup \column { " " \fontsize #-1 \italic "Feierlich, doch nicht zu langsam" }
\override Score.NonMusicalPaperColumn.page-break-permission = ##f
\mynote 4
s4
}
kopf = \header {
\markup
\override #'(baseline-skip . 3)
\center-column {
"Bundeshymne"
\fontsize #-3 \line { "GL № " 977 \fontsize #-1 \concat { " (bis 2013 № " "855" ) } }
" "
}
poet = \markup "T: Paula v. Preradovic"
composer = "M: W.A. Mozart"
key = "D"
}
mypaper =
\paper {
top-margin = 20\mm
annotate-spacing = ##f
ragged-bottom = ##f
ragged-last-bottom = ##f
bottom-margin = 20\mm
line-width = 170\mm
}
\bookpart {
\mypaper
\kopf
\score
{
\orgel \sop \alt \ten \bas \Akk \Struktur \lyr c
}
}
#(set-global-staff-size 24)
\include "articulate.ly"
#(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))
editorsColor = #grey
ed =
#(define-music-function (grob col mus)
(symbol-list-or-symbol? (color? editorsColor) ly:music?)
;; for abbreviations, we need a symbol instead of a one-element list
(let ((grob (if (= 1 (length grob)) (car grob) grob)))
(case
grob
;; define abbreviations
;; which call the function recursively with a value
;; leading into the (else) clause
;; (or to _another_ abbreviation)
;; be careful to avoid infinite recursion :-)
;; – abbreviation names must not be actual grob names
;; (at least if they’re used in the corresponding
;; clause) or recursion will be infinite also
;; It is recommended to use singular forms only
;; for abbreviations.
((Caut) #{ \ed Staff.AccidentalCautionary #})
((LedgerLine) #{ % barline is workaround to issue 3949
\stopStaff
\ed Staff.LedgerLineSpanner {
\startStaff
$mus
\stopStaff
}
\startStaff #})
((Mmr) #{ \ed MultiMeasureRest $mus #})
((Note) #{ \ed Staff.Accidental
\ed Beam
\ed Dots
\ed Flag
\ed LedgerLine
\ed NoteHead
\ed Rest
\ed Stem $mus #})
((Pitch) #{ \ed NoteHead $mus #})
((Suggest) #{ \ed Staff.AccidentalSuggestion #})
((StemWithFlag) #{ \ed Stem \ed Flag $mus #})
((Tuplet) #{ \ed TupletNumber \ed TupletBracket $mus #})
;; ‘normal’ case
(else
#{
\override $grob . color = #col
$mus
\revert $grob . color
#}))))
#(define new-stil
(lambda (grob)
(let* ((sz (ly:grob-property grob 'font-size 0.0))
(mult (magstep sz))
(dir (ly:grob-property grob 'direction))
(thick 0.15)
(radius 0.7)
(scaled-radius (* mult radius))
(ps-command-string
(format #f
"
0 ~a translate
~a setlinewidth
~a 0 moveto
0 0 ~a 180 0 ~a
stroke
"
;mult
(* thick dir)
thick
(- scaled-radius)
scaled-radius
(if (negative? dir) "arcn" "arc"))))
(ly:make-stencil
(list 'embedded-ps
(format #f
"
gsave currentpoint translate
~a
grestore
"
ps-command-string))
(cons (- scaled-radius) scaled-radius)
(cons
(if (negative? dir) 0 (- scaled-radius))
(if (negative? dir) scaled-radius 0))))))
soft =
-\tweak stencil #new-stil \fermata
#(define-markup-command (golo-schu layout props titel nr ton)
(string? string? string?)
(interpret-markup layout props
#{
\markup
{
\column {
\override #'(baseline-skip . 2)
\column
{
\fill-line \override #'(baseline-skip . 2.5) {
\huge \larger \larger \bold
\center-column
{
$titel
\fontsize #-3 \line { "GL № 711/" $nr \fontsize #-1 \concat { " (bis 2013 № 802/" $nr ) } }
" "
}
}
\column
\fontsize #-1.5
{
\fill-line {
"T: Josel Ph. Neumann (1774-1849)" "M: Franz Schubert (1797-1828)"
}
\fill-line {
"Notensatz: lilypond.miraheze.org" "Deutsche Messe D872"
}
\fill-line {
"" \concat { "Originaltonart: " $ton "-Dur" }
}
}
}
}
}
#}
)
)
#(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)))
#(define-markup-command (tonart-fromproperty layout props text-1 symbol symbol2)
(markup? symbol? symbol?)
#:category other
(let* ((m (chain-assoc-get symbol props))
(ton (chain-assoc-get symbol2 props))
(dur (if (markup? ton) ton "-Dur"))
)
(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 dur)))
empty-stencil)))
dropLyrics =
#(define-scheme-function (l)(number?)
#{
\override LyricText.extra-offset = #`(0 . ,l)
\override LyricHyphen.extra-offset = #`(0 . ,l)
\override LyricExtender.extra-offset = #`(0 . ,l)
\override StanzaNumber.extra-offset = #`(0 . ,l)
#}
)
raiseLyrics = {
\revert LyricText.extra-offset
\revert LyricHyphen.extra-offset
\revert LyricExtender.extra-offset
\revert StanzaNumber.extra-offset
}
\paper {
#(include-special-characters)
indent = #0
ragged-right = ##f
ragged-last = ##f
print-all-headers = ##f
print-first-page-number = ##f
oddFooterMarkup = ##f
evenFooterMarkup = ##f
oddHeaderMarkup = #oddFooterMarkup
evenHeaderMarkup = #evenFooterMarkup
bookTitleMarkup = ##f
scoreTitleMarkup =
\markup {
\override #'((baseline-skip . 2) )
\column {
\fill-line \override #'(baseline-skip . 2.5) {
\huge \larger \larger \bold
\center-column {
\fromproperty #'header:title
\fontsize #-2.5 {
\fill-line { \fromproperty #'header:subtitle }
}
\fontsize #-3 \line {
\text-fromproperty "GL № " #'header:new-number ""
\fontsize #-1
\text-fromproperty " (bis 2013 № " #'header:old-number ")"
}
" "
}
}
\fontsize #-1.5 {
\fill-line {
\fromproperty #'header:poet \fromproperty #'header:composer
}
\fill-line {
"Notensatz: lilypond.miraheze.org" ""
\tonart-fromproperty "Originaltonart: " #'header:key #'header:dur
}
\fill-line {
\fromproperty #'header:instrument
\fromproperty #'header:arranger
}
}
}
}
}
orgel =
%Notensatz für Orgelnoten 4stimmig + Text + Harmonisierung + Umbrüche
#(define-music-function (sop alt ten bas akk stru lyr p)
(ly:music? ly:music? ly:music? ly:music? ly:music? ly:music? ly:music? ly:pitch?)
#{
<<
\new ChordNames \transpose c $p $akk
\new PianoStaff="leadsheet"
<<
\new Staff="up"
<<
\new Voice="Alt"
\with { \consists Ambitus_engraver }
{ \voiceOne \transpose c $p $sop }
\new Voice { \voiceTwo \transpose c $p $alt }
>>
\new Lyrics \lyricsto Alt $lyr
\new Staff="down"
<<
\new Voice { \voiceOne \transpose c $p $ten }
\new Voice { \voiceTwo \transpose c $p $bas }
\new NullVoice $stru
>>
>>
>>
#}
)
orgels =
%% simple orgelsatz nur SATBs kein Liedtext
#(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"
\with { \consists Ambitus_engraver }
{ \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
>>
>>
>>
#}
)
orgelo =
% keine Transponiermöglichkeit
#(define-music-function (sop alt ten bas akk stru lyr)
(ly:music? ly:music? ly:music? ly:music? ly:music? ly:music? ly:music?)
#{
<<
\new ChordNames $akk
\new PianoStaff="leadsheet"
<<
\new Staff="up"
<<
\new Voice="Alt"
\with { \consists Ambitus_engraver }
{ \voiceOne $sop }
\new Voice { \voiceTwo $alt }
>>
\new Lyrics \lyricsto Alt $lyr
\new Staff="down"
<<
\new Voice { \voiceOne $ten }
\new Voice { \voiceTwo $bas }
\new NullVoice $stru
>>
>>
>>
#}
)
orgelp =
%% Orgelsatz mit Pedal
#(define-music-function (sop alt ten bas ped akk stru lyr p)
(ly:music? ly:music? ly:music? ly:music? ly:music? ly:music? ly:music? ly:music? ly:pitch?)
#{
<<
\new ChordNames \transpose c $p $akk
\new PianoStaff="leadsheet"
<<
\new Staff="up"
<<
\new Voice="Alt"
\with { \consists Ambitus_engraver }
{ \voiceOne \transpose c $p $sop }
\new Voice { \voiceTwo \transpose c $p $alt }
>>
\new Lyrics \lyricsto Alt $lyr
\new Staff="down"
<<
\new Voice { \voiceOne \transpose c $p $ten }
\new Voice { \voiceTwo \transpose c $p $bas }
\new NullVoice $stru
>>
>>
\new StaffGroup
\new Staff="Pedal" \with {
\magnifyStaff #5/7
}
<<
\new Voice \transpose c $p $ped
>>
>>
#}
)
orgelpo =
%% Orgelnoten mit Pedal ohne Transponierung
#(define-music-function (sop alt ten bas ped akk stru lyr)
(ly:music? ly:music? ly:music? ly:music? ly:music? ly:music? ly:music? ly:music?)
#{
<<
\new ChordNames $akk
\new PianoStaff="leadsheet"
<<
\new Staff="up"
<<
\new Voice="Alt"
\with { \consists Ambitus_engraver }
{ \voiceOne $sop }
\new Voice { \voiceTwo $alt }
>>
\new Lyrics \lyricsto Alt $lyr
\new Staff="down"
<<
\new Voice { \voiceOne $ten }
\new Voice { \voiceTwo $bas }
\new NullVoice $stru
>>
>>
\new StaffGroup
\new Staff="Pedal" \with {
\magnifyStaff #5/7
}
<<
\new Voice $ped
>>
>>
#}
)
orgelly =
%% eine 2. Textzeile unterhalb
#(define-music-function (sop alt ten bas akk stru lyr lyrii p)
(ly:music? ly:music? ly:music? ly:music? ly:music? ly:music? ly:music? ly:music? ly:pitch?)
#{
<<
\new ChordNames \transpose c $p $akk
\new PianoStaff="leadsheet"
<<
\new Staff="up"
<<
\new Voice="Alt"
\with { \consists Ambitus_engraver }
{ \voiceOne \transpose c $p $sop }
\new Voice { \voiceTwo \transpose c $p $alt }
>>
\new Lyrics \lyricsto Alt $lyr
\new Lyrics \lyricsto Alt $lyrii
\new Staff="down"
<<
\new Voice { \voiceOne \transpose c $p $ten }
\new Voice { \voiceTwo \transpose c $p $bas }
\new NullVoice $stru
>>
>>
>>
#}
)
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="up"
<<
\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
>>
>>
>>
#}
)
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 (substring (ly:parser-output-name) 4))
tempo)))
tempolist))
formidi =
%erzeugen des Scores für Midi
#(define-music-function (sop alt ten bas voc)
(ly:music? ly:music? ly:music? ly:music? ly:music?)
#{
<<
\new Staff {
\new Voice {
\set Staff.midiInstrument = "choir aahs"
$voc
}
}
\new Staff <<
\set Staff.midiInstrument = "Church Organ"
\new Voice $sop
\new Voice $alt
\new Voice $ten
\new Voice $bas
>>
>>
#}
)
#(define myMidi "C:/Manuela/_Lilypond/orgel/Golo/midi/")
midi-list =
#(define-void-function (name sop alt ten bas voc tempolist)
((string? #f) ly:music? ly:music? ly:music? ly:music? ly:music? list?)
(for-each
(lambda (tempo)
(ly:book-process
(apply
ly:make-book
$defaultpaper
$defaultheader
(list (scorify-music #{
<<
\unfoldRepeats \new Staff {
\new Voice {
\set Staff.midiInstrument = "choir aahs"
$voc
}
}
\unfoldRepeats \new Staff <<
\set Staff.midiInstrument = "Church Organ"
\new Voice $sop
\new Voice $alt
\new Voice $ten
\new Voice $bas
>>
>>
#})))
$defaultpaper
#{
\midi {
\tempo 4 = $tempo
}
#}
(format #f "~a_~a"
(or name (string-append myMidi (ly:parser-output-name)))
tempo)))
tempolist))
midi-list-paus =
#(define-void-function (name sop alt ten bas voc pause tempolist)
((string? #f) ly:music? ly:music? ly:music? ly:music? ly:music? ly:music? list?)
(for-each
(lambda (tempo)
(ly:book-process
(apply
ly:make-book
$defaultpaper
$defaultheader
(list (scorify-music #{
<<
\unfoldRepeats \new Staff {
\new Voice {
\set Staff.midiInstrument = "choir aahs"
$pause $voc
}
}
\unfoldRepeats
<<
\new Staff \with { midiInstrument = #"church organ" }
{ $pause $sop }
\new Staff \with { midiInstrument = #"church organ" }
{ $pause $alt }
\new Staff \with { midiInstrument = #"church organ" }
{ $pause $ten }
\new Staff \with { midiInstrument = #"church organ" }
{ $pause $bas }
>>
>>
#})))
$defaultpaper
#{
\midi {
\tempo 4 = $tempo
}
#}
(format #f "~a_~a"
(or name (string-append myMidi (ly:parser-output-name)))
tempo)))
tempolist))
mynote =
#(define-music-function (m)
(ly:duration?)
#{
\override Score.RehearsalMark.break-align-symbols = #'(time-signature)
\once \override Score.RehearsalMark.self-alignment-X = #-1
\mark \markup \fontsize #-3.5 \note { $m } #UP
#}
)
mynotes =
#(define-music-function (m n)
(ly:duration? ly:duration?)
#{
\override Score.RehearsalMark.break-align-symbols = #'(time-signature)
\once \override Score.RehearsalMark.self-alignment-X = #-1
\mark \markup \concat { \fontsize #-3.5 \note { $m } #UP " /" \fontsize #-3.5 \note { $n } #UP }
#}
)
myottava =
#(define-music-function (o) (integer?)
(let ((text (case o
((0) #f)
((1 -1) "8")
((2 -2) "15"))))
#{
\ottava #o
\set Staff.ottavation = #text
#}))
chExceptionMusic = {
<c e gis>1-\markup "(m)"
<c f g>1-\markup \super "4"
}
% Convert music to list and prepend to existing exceptions.
chExceptions = #(append
(sequential-music-to-chord-exceptions chExceptionMusic #t)
ignatzekExceptions)
\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
\consists Horizontal_bracket_engraver
\override HorizontalBracket.direction = #UP
\override HorizontalBracket.bracket-flare = #'(0 . 0)
\override HorizontalBracketText.text = \markup \italic "Intro"
\override HorizontalBracket.shorten-pair = #'(.5 . .5)
}
\context {
\Lyrics
\override VerticalAxisGroup.staff-affinity = #CENTER
\override LyricText.font-size = #-1.5
\override StanzaNumber.font-size = #-1.5
}
\context {
\Staff
printPartCombineTexts = ##f
beamExceptions = #'()
\override BreathingSign.text =
\markup { \musicglyph "scripts.lvarcomma" }
\override InstrumentName.font-features = #'("smcp")
\consists #Span_stem_engraver
% \consists Measure_spanner_engraver
% \override MeasureSpanner.text = \markup \italic "Intro"
}
\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 = #'()
\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
\override SystemStartBar.collapse-height = #4
}
\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
chordNameExceptions = #chExceptions
\override ChordName.self-alignment-X = #CENTER
\override ChordName.font-name = #"Arial Narrow"
\override ChordName.layer = #2
\override ChordName.font-size = #-0.5
noChordSymbol = ##f
\consists Horizontal_bracket_engraver
\override HorizontalBracket.direction = #UP
\override HorizontalBracket.bracket-flare = #'(0 . 0)
\override HorizontalBracketText.text = \markup \italic "Intro"
}
\context {
\PianoStaff
\override StaffGrouper.staffgroup-staff-spacing.basic-distance = #2
\override StaffGrouper.staffgroup-staff-spacing.minimum-distance = #0
}
\context {
\StaffGroup
\override SystemStartBracket.collapse-height = #4
\override SystemStartBracket.thickness = #.2
}
}
oob = { \once \override Score.BarNumber.stencil = ##f \bar "" }
bnf = \once \override Score.BarNumber.stencil = ##f
gloria = \markup \override #'(baseline-skip . 2) \left-column {
\line { Gloria: Ehre sei Gott }
\line {
Stichwort: \italic "Herr, erbarme dich unser"
}
\line { manchmal sagt der P so etwas ähnliches wie \italic "Ehre sei Gott in der Höhe" }
}
sanctus = \markup \override #'(baseline-skip . 2) \left-column {
\line { Lobpreis Gottes: Heilig, heilig, heilig }
\line {
Stichwort: \italic "und singen mit den Engeln das Lob deiner Herrlichkeit"
}
}
antwortlied = \markup \override #'(baseline-skip . 2) \left-column {
\line { Antwortlied: nach der ersten Lesung }
\line {
Stichwort: \italic "Wort des lebendigen Gottes"
}
}
gabenbereitung = \markup \override #'(baseline-skip . 2) \left-column {
\wordwrap { Gabenbereitung (Offertorium): Beginn der Eucharistiefeier, nach den Fürbitten }
\vspace #.2
\line {
Stichwort: \italic "darum bitten wir durch Christus, unsern Herrn"
}
}
agnus = \markup \override #'(baseline-skip . 2) \left-column {
\line { Agnus Dei: Pfarrer zerbricht Hostie in mehrere Teile }
\line {
wann: nach dem Friedensgruß
}
}
danklied = \markup \override #'(baseline-skip . 2) \left-column {
\line { Danklied }
\line {
wann: nach der Kommunionausteilung
}
}
auszug = \markup \override #'(baseline-skip . 2) \left-column {
\line { Auszug, Verabschiedung }
\line {
Stichwort: \italic "gehet hin in Frieden"
}
}
halleljua = \markup \override #'(baseline-skip . 3) \left-column {
\line { 1x leise }
\line {
1x leise, Vorbeter singt
}
\line {
1x laut, Gemeinde singt
}
\line { Vorbeter betet }
\line {
1x laut, Gemeinde singt
}
}
noambitus = {
\override AmbitusLine.stencil = ##f
\override AmbitusNoteHead.stencil = ##f
}
myintro =
#(define-music-function (m) ((string? #f) )
#{
\override HorizontalBracketText.text = \markup \italic { "Intro" $m }
#})
%% Zusatztext und extra-offset sind optional
%% es müssen beide Parameter angegeben werden, wenn einer angegeben wird
mybrack =
#(define-music-function (t n m) ((string? #f) (number? 3.5) ly:music?)
#{
{
\once \override HorizontalBracket.Y-extent = #'(0 . 0)
\once \override HorizontalBracketText.Y-extent = #'(0 . 0)
\once \override HorizontalBracket.extra-offset = #`(0 . ,n)
\once \override HorizontalBracketText.extra-offset = #`(0 . ,n)
\once \override HorizontalBracketText.text =
\markup \italic { "Intro" #(or t "") }
<>\startGroup
$m
\stopGroup
}
#})
%% ein optionaler Parameter
%% n ... extra-offset, nach oben verschieben
%% der Standardwert ist für einen ChordNames-context oberhalb berechnet
%% der Zusatztext wird auf \null gesetzt
mybrack-offset =
#(define-music-function (n m) ((number? 3.5) ly:music?)
#{
{
\mybrack "" $n $m
}
#})
#(define (lined-nh grob)
(let* ((default-stil (ly:note-head::print grob))
(default-stil-x-lngth
(interval-length (ly:stencil-extent default-stil X)))
(line-thickness (ly:staff-symbol-line-thickness grob))
(staff-space (ly:staff-symbol-staff-space grob))
(font-size
(assoc-get 'font-size
(ly:prob-property (ly:grob-property grob 'cause) 'tweaks)))
(corr
(if (number? font-size)
(magstep font-size)
1))
(lne
(make-line-stencil
(* 1.9 corr line-thickness)
0
(/ (* 1.25 corr staff-space) -2)
0
(/ (* 1.25 corr staff-space) 2))))
(ly:stencil-add
lne
(ly:stencil-translate-axis
default-stil (* 0.95 corr line-thickness) X)
(ly:stencil-translate-axis
lne (+ (* 1.9 corr line-thickness) default-stil-x-lngth) X))))
#(set-global-staff-size 24)
\include "articulate.ly"
#(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))
editorsColor = #grey
ed =
#(define-music-function (grob col mus)
(symbol-list-or-symbol? (color? editorsColor) ly:music?)
;; for abbreviations, we need a symbol instead of a one-element list
(let ((grob (if (= 1 (length grob)) (car grob) grob)))
(case
grob
;; define abbreviations
;; which call the function recursively with a value
;; leading into the (else) clause
;; (or to _another_ abbreviation)
;; be careful to avoid infinite recursion :-)
;; – abbreviation names must not be actual grob names
;; (at least if they’re used in the corresponding
;; clause) or recursion will be infinite also
;; It is recommended to use singular forms only
;; for abbreviations.
((Caut) #{ \ed Staff.AccidentalCautionary #})
((LedgerLine) #{ % barline is workaround to issue 3949
\stopStaff
\ed Staff.LedgerLineSpanner {
\startStaff
$mus
\stopStaff
}
\startStaff #})
((Mmr) #{ \ed MultiMeasureRest $mus #})
((Note) #{ \ed Staff.Accidental
\ed Beam
\ed Dots
\ed Flag
\ed LedgerLine
\ed NoteHead
\ed Rest
\ed Stem $mus #})
((Pitch) #{ \ed NoteHead $mus #})
((Suggest) #{ \ed Staff.AccidentalSuggestion #})
((StemWithFlag) #{ \ed Stem \ed Flag $mus #})
((Tuplet) #{ \ed TupletNumber \ed TupletBracket $mus #})
;; ‘normal’ case
(else
#{
\override $grob . color = #col
$mus
\revert $grob . color
#}))))
#(define new-stil
(lambda (grob)
(let* ((sz (ly:grob-property grob 'font-size 0.0))
(mult (magstep sz))
(dir (ly:grob-property grob 'direction))
(thick 0.15)
(radius 0.7)
(scaled-radius (* mult radius))
(ps-command-string
(format #f
"
0 ~a translate
~a setlinewidth
~a 0 moveto
0 0 ~a 180 0 ~a
stroke
"
;mult
(* thick dir)
thick
(- scaled-radius)
scaled-radius
(if (negative? dir) "arcn" "arc"))))
(ly:make-stencil
(list 'embedded-ps
(format #f
"
gsave currentpoint translate
~a
grestore
"
ps-command-string))
(cons (- scaled-radius) scaled-radius)
(cons
(if (negative? dir) 0 (- scaled-radius))
(if (negative? dir) scaled-radius 0))))))
soft =
-\tweak stencil #new-stil \fermata
#(define-markup-command (golo-schu layout props titel nr ton)
(string? string? string?)
(interpret-markup layout props
#{
\markup
{
\column {
\override #'(baseline-skip . 2)
\column
{
\fill-line \override #'(baseline-skip . 2.5) {
\huge \larger \larger \bold
\center-column
{
$titel
\fontsize #-3 \line { "GL № 711/" $nr \fontsize #-1 \concat { " (bis 2013 № 802/" $nr ) } }
" "
}
}
\column
\fontsize #-1.5
{
\fill-line {
"T: Josel Ph. Neumann (1774-1849)" "M: Franz Schubert (1797-1828)"
}
\fill-line {
"Notensatz: lilypond.miraheze.org" "Deutsche Messe D872"
}
\fill-line {
"" \concat { "Originaltonart: " $ton "-Dur" }
}
}
}
}
}
#}
)
)
#(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)))
#(define-markup-command (tonart-fromproperty layout props text-1 symbol symbol2)
(markup? symbol? symbol?)
#:category other
(let* ((m (chain-assoc-get symbol props))
(ton (chain-assoc-get symbol2 props))
(dur (if (markup? ton) ton "-Dur"))
)
(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 dur)))
empty-stencil)))
dropLyrics =
#(define-scheme-function (l)(number?)
#{
\override LyricText.extra-offset = #`(0 . ,l)
\override LyricHyphen.extra-offset = #`(0 . ,l)
\override LyricExtender.extra-offset = #`(0 . ,l)
\override StanzaNumber.extra-offset = #`(0 . ,l)
#}
)
raiseLyrics = {
\revert LyricText.extra-offset
\revert LyricHyphen.extra-offset
\revert LyricExtender.extra-offset
\revert StanzaNumber.extra-offset
}
\paper {
#(include-special-characters)
indent = #0
ragged-right = ##f
ragged-last = ##f
print-all-headers = ##f
print-first-page-number = ##f
oddFooterMarkup = ##f
evenFooterMarkup = ##f
oddHeaderMarkup = #oddFooterMarkup
evenHeaderMarkup = #evenFooterMarkup
bookTitleMarkup = ##f
scoreTitleMarkup =
\markup {
\override #'((baseline-skip . 2) )
\column {
\fill-line \override #'(baseline-skip . 2.5) {
\huge \larger \larger \bold
\center-column {
\fromproperty #'header:title
\fontsize #-2.5 {
\fill-line { \fromproperty #'header:subtitle }
}
\fontsize #-3 \line {
\text-fromproperty "GL № " #'header:new-number ""
\fontsize #-1
\text-fromproperty " (bis 2013 № " #'header:old-number ")"
}
" "
}
}
\fontsize #-1.5 {
\fill-line {
\fromproperty #'header:poet \fromproperty #'header:composer
}
\fill-line {
"Notensatz: lilypond.miraheze.org" ""
\tonart-fromproperty "Originaltonart: " #'header:key #'header:dur
}
\fill-line {
\fromproperty #'header:instrument
\fromproperty #'header:arranger
}
}
}
}
}
orgel =
%Notensatz für Orgelnoten 4stimmig + Text + Harmonisierung + Umbrüche
#(define-music-function (sop alt ten bas akk stru lyr p)
(ly:music? ly:music? ly:music? ly:music? ly:music? ly:music? ly:music? ly:pitch?)
#{
<<
\new ChordNames \transpose c $p $akk
\new PianoStaff="leadsheet"
<<
\new Staff="up"
<<
\new Voice="Alt"
\with { \consists Ambitus_engraver }
{ \voiceOne \transpose c $p $sop }
\new Voice { \voiceTwo \transpose c $p $alt }
>>
\new Lyrics \lyricsto Alt $lyr
\new Staff="down"
<<
\new Voice { \voiceOne \transpose c $p $ten }
\new Voice { \voiceTwo \transpose c $p $bas }
\new NullVoice $stru
>>
>>
>>
#}
)
orgels =
%% simple orgelsatz nur SATBs kein Liedtext
#(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"
\with { \consists Ambitus_engraver }
{ \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
>>
>>
>>
#}
)
orgelo =
% keine Transponiermöglichkeit
#(define-music-function (sop alt ten bas akk stru lyr)
(ly:music? ly:music? ly:music? ly:music? ly:music? ly:music? ly:music?)
#{
<<
\new ChordNames $akk
\new PianoStaff="leadsheet"
<<
\new Staff="up"
<<
\new Voice="Alt"
\with { \consists Ambitus_engraver }
{ \voiceOne $sop }
\new Voice { \voiceTwo $alt }
>>
\new Lyrics \lyricsto Alt $lyr
\new Staff="down"
<<
\new Voice { \voiceOne $ten }
\new Voice { \voiceTwo $bas }
\new NullVoice $stru
>>
>>
>>
#}
)
orgelp =
%% Orgelsatz mit Pedal
#(define-music-function (sop alt ten bas ped akk stru lyr p)
(ly:music? ly:music? ly:music? ly:music? ly:music? ly:music? ly:music? ly:music? ly:pitch?)
#{
<<
\new ChordNames \transpose c $p $akk
\new PianoStaff="leadsheet"
<<
\new Staff="up"
<<
\new Voice="Alt"
\with { \consists Ambitus_engraver }
{ \voiceOne \transpose c $p $sop }
\new Voice { \voiceTwo \transpose c $p $alt }
>>
\new Lyrics \lyricsto Alt $lyr
\new Staff="down"
<<
\new Voice { \voiceOne \transpose c $p $ten }
\new Voice { \voiceTwo \transpose c $p $bas }
\new NullVoice $stru
>>
>>
\new StaffGroup
\new Staff="Pedal" \with {
\magnifyStaff #5/7
}
<<
\new Voice \transpose c $p $ped
>>
>>
#}
)
orgelpo =
%% Orgelnoten mit Pedal ohne Transponierung
#(define-music-function (sop alt ten bas ped akk stru lyr)
(ly:music? ly:music? ly:music? ly:music? ly:music? ly:music? ly:music? ly:music?)
#{
<<
\new ChordNames $akk
\new PianoStaff="leadsheet"
<<
\new Staff="up"
<<
\new Voice="Alt"
\with { \consists Ambitus_engraver }
{ \voiceOne $sop }
\new Voice { \voiceTwo $alt }
>>
\new Lyrics \lyricsto Alt $lyr
\new Staff="down"
<<
\new Voice { \voiceOne $ten }
\new Voice { \voiceTwo $bas }
\new NullVoice $stru
>>
>>
\new StaffGroup
\new Staff="Pedal" \with {
\magnifyStaff #5/7
}
<<
\new Voice $ped
>>
>>
#}
)
orgelly =
%% eine 2. Textzeile unterhalb
#(define-music-function (sop alt ten bas akk stru lyr lyrii p)
(ly:music? ly:music? ly:music? ly:music? ly:music? ly:music? ly:music? ly:music? ly:pitch?)
#{
<<
\new ChordNames \transpose c $p $akk
\new PianoStaff="leadsheet"
<<
\new Staff="up"
<<
\new Voice="Alt"
\with { \consists Ambitus_engraver }
{ \voiceOne \transpose c $p $sop }
\new Voice { \voiceTwo \transpose c $p $alt }
>>
\new Lyrics \lyricsto Alt $lyr
\new Lyrics \lyricsto Alt $lyrii
\new Staff="down"
<<
\new Voice { \voiceOne \transpose c $p $ten }
\new Voice { \voiceTwo \transpose c $p $bas }
\new NullVoice $stru
>>
>>
>>
#}
)
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="up"
<<
\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
>>
>>
>>
#}
)
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 (substring (ly:parser-output-name) 4))
tempo)))
tempolist))
formidi =
%erzeugen des Scores für Midi
#(define-music-function (sop alt ten bas voc)
(ly:music? ly:music? ly:music? ly:music? ly:music?)
#{
<<
\new Staff {
\new Voice {
\set Staff.midiInstrument = "choir aahs"
$voc
}
}
\new Staff <<
\set Staff.midiInstrument = "Church Organ"
\new Voice $sop
\new Voice $alt
\new Voice $ten
\new Voice $bas
>>
>>
#}
)
#(define myMidi "C:/Manuela/_Lilypond/orgel/Golo/midi/")
midi-list =
#(define-void-function (name sop alt ten bas voc tempolist)
((string? #f) ly:music? ly:music? ly:music? ly:music? ly:music? list?)
(for-each
(lambda (tempo)
(ly:book-process
(apply
ly:make-book
$defaultpaper
$defaultheader
(list (scorify-music #{
<<
\unfoldRepeats \new Staff {
\new Voice {
\set Staff.midiInstrument = "choir aahs"
$voc
}
}
\unfoldRepeats \new Staff <<
\set Staff.midiInstrument = "Church Organ"
\new Voice $sop
\new Voice $alt
\new Voice $ten
\new Voice $bas
>>
>>
#})))
$defaultpaper
#{
\midi {
\tempo 4 = $tempo
}
#}
(format #f "~a_~a"
(or name (string-append myMidi (ly:parser-output-name)))
tempo)))
tempolist))
midi-list-paus =
#(define-void-function (name sop alt ten bas voc pause tempolist)
((string? #f) ly:music? ly:music? ly:music? ly:music? ly:music? ly:music? list?)
(for-each
(lambda (tempo)
(ly:book-process
(apply
ly:make-book
$defaultpaper
$defaultheader
(list (scorify-music #{
<<
\unfoldRepeats \new Staff {
\new Voice {
\set Staff.midiInstrument = "choir aahs"
$pause $voc
}
}
\unfoldRepeats
<<
\new Staff \with { midiInstrument = #"church organ" }
{ $pause $sop }
\new Staff \with { midiInstrument = #"church organ" }
{ $pause $alt }
\new Staff \with { midiInstrument = #"church organ" }
{ $pause $ten }
\new Staff \with { midiInstrument = #"church organ" }
{ $pause $bas }
>>
>>
#})))
$defaultpaper
#{
\midi {
\tempo 4 = $tempo
}
#}
(format #f "~a_~a"
(or name (string-append myMidi (ly:parser-output-name)))
tempo)))
tempolist))
mynote =
#(define-music-function (m)
(ly:duration?)
#{
\override Score.RehearsalMark.break-align-symbols = #'(time-signature)
\once \override Score.RehearsalMark.self-alignment-X = #-1
\mark \markup \fontsize #-3.5 \note { $m } #UP
#}
)
mynotes =
#(define-music-function (m n)
(ly:duration? ly:duration?)
#{
\override Score.RehearsalMark.break-align-symbols = #'(time-signature)
\once \override Score.RehearsalMark.self-alignment-X = #-1
\mark \markup \concat { \fontsize #-3.5 \note { $m } #UP " /" \fontsize #-3.5 \note { $n } #UP }
#}
)
myottava =
#(define-music-function (o) (integer?)
(let ((text (case o
((0) #f)
((1 -1) "8")
((2 -2) "15"))))
#{
\ottava #o
\set Staff.ottavation = #text
#}))
chExceptionMusic = {
<c e gis>1-\markup "(m)"
<c f g>1-\markup \super "4"
}
% Convert music to list and prepend to existing exceptions.
chExceptions = #(append
(sequential-music-to-chord-exceptions chExceptionMusic #t)
ignatzekExceptions)
\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
\consists Horizontal_bracket_engraver
\override HorizontalBracket.direction = #UP
\override HorizontalBracket.bracket-flare = #'(0 . 0)
\override HorizontalBracketText.text = \markup \italic "Intro"
\override HorizontalBracket.shorten-pair = #'(.5 . .5)
}
\context {
\Lyrics
\override VerticalAxisGroup.staff-affinity = #CENTER
\override LyricText.font-size = #-1.5
\override StanzaNumber.font-size = #-1.5
}
\context {
\Staff
printPartCombineTexts = ##f
beamExceptions = #'()
\override BreathingSign.text =
\markup { \musicglyph "scripts.lvarcomma" }
\override InstrumentName.font-features = #'("smcp")
\consists #Span_stem_engraver
% \consists Measure_spanner_engraver
% \override MeasureSpanner.text = \markup \italic "Intro"
}
\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 = #'()
\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
\override SystemStartBar.collapse-height = #4
}
\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
chordNameExceptions = #chExceptions
\override ChordName.self-alignment-X = #CENTER
\override ChordName.font-name = #"Arial Narrow"
\override ChordName.layer = #2
\override ChordName.font-size = #-0.5
noChordSymbol = ##f
\consists Horizontal_bracket_engraver
\override HorizontalBracket.direction = #UP
\override HorizontalBracket.bracket-flare = #'(0 . 0)
\override HorizontalBracketText.text = \markup \italic "Intro"
}
\context {
\PianoStaff
\override StaffGrouper.staffgroup-staff-spacing.basic-distance = #2
\override StaffGrouper.staffgroup-staff-spacing.minimum-distance = #0
}
\context {
\StaffGroup
\override SystemStartBracket.collapse-height = #4
\override SystemStartBracket.thickness = #.2
}
}
oob = { \once \override Score.BarNumber.stencil = ##f \bar "" }
bnf = \once \override Score.BarNumber.stencil = ##f
gloria = \markup \override #'(baseline-skip . 2) \left-column {
\line { Gloria: Ehre sei Gott }
\line {
Stichwort: \italic "Herr, erbarme dich unser"
}
\line { manchmal sagt der P so etwas ähnliches wie \italic "Ehre sei Gott in der Höhe" }
}
sanctus = \markup \override #'(baseline-skip . 2) \left-column {
\line { Lobpreis Gottes: Heilig, heilig, heilig }
\line {
Stichwort: \italic "und singen mit den Engeln das Lob deiner Herrlichkeit"
}
}
antwortlied = \markup \override #'(baseline-skip . 2) \left-column {
\line { Antwortlied: nach der ersten Lesung }
\line {
Stichwort: \italic "Wort des lebendigen Gottes"
}
}
gabenbereitung = \markup \override #'(baseline-skip . 2) \left-column {
\wordwrap { Gabenbereitung (Offertorium): Beginn der Eucharistiefeier, nach den Fürbitten }
\vspace #.2
\line {
Stichwort: \italic "darum bitten wir durch Christus, unsern Herrn"
}
}
agnus = \markup \override #'(baseline-skip . 2) \left-column {
\line { Agnus Dei: Pfarrer zerbricht Hostie in mehrere Teile }
\line {
wann: nach dem Friedensgruß
}
}
danklied = \markup \override #'(baseline-skip . 2) \left-column {
\line { Danklied }
\line {
wann: nach der Kommunionausteilung
}
}
auszug = \markup \override #'(baseline-skip . 2) \left-column {
\line { Auszug, Verabschiedung }
\line {
Stichwort: \italic "gehet hin in Frieden"
}
}
halleljua = \markup \override #'(baseline-skip . 3) \left-column {
\line { 1x leise }
\line {
1x leise, Vorbeter singt
}
\line {
1x laut, Gemeinde singt
}
\line { Vorbeter betet }
\line {
1x laut, Gemeinde singt
}
}
noambitus = {
\override AmbitusLine.stencil = ##f
\override AmbitusNoteHead.stencil = ##f
}
myintro =
#(define-music-function (m) ((string? #f) )
#{
\override HorizontalBracketText.text = \markup \italic { "Intro" $m }
#})
%% Zusatztext und extra-offset sind optional
%% es müssen beide Parameter angegeben werden, wenn einer angegeben wird
mybrack =
#(define-music-function (t n m) ((string? #f) (number? 3.5) ly:music?)
#{
{
\once \override HorizontalBracket.Y-extent = #'(0 . 0)
\once \override HorizontalBracketText.Y-extent = #'(0 . 0)
\once \override HorizontalBracket.extra-offset = #`(0 . ,n)
\once \override HorizontalBracketText.extra-offset = #`(0 . ,n)
\once \override HorizontalBracketText.text =
\markup \italic { "Intro" #(or t "") }
<>\startGroup
$m
\stopGroup
}
#})
%% ein optionaler Parameter
%% n ... extra-offset, nach oben verschieben
%% der Standardwert ist für einen ChordNames-context oberhalb berechnet
%% der Zusatztext wird auf \null gesetzt
mybrack-offset =
#(define-music-function (n m) ((number? 3.5) ly:music?)
#{
{
\mybrack "" $n $m
}
#})
#(define (lined-nh grob)
(let* ((default-stil (ly:note-head::print grob))
(default-stil-x-lngth
(interval-length (ly:stencil-extent default-stil X)))
(line-thickness (ly:staff-symbol-line-thickness grob))
(staff-space (ly:staff-symbol-staff-space grob))
(font-size
(assoc-get 'font-size
(ly:prob-property (ly:grob-property grob 'cause) 'tweaks)))
(corr
(if (number? font-size)
(magstep font-size)
1))
(lne
(make-line-stencil
(* 1.9 corr line-thickness)
0
(/ (* 1.25 corr staff-space) -2)
0
(/ (* 1.25 corr staff-space) 2))))
(ly:stencil-add
lne
(ly:stencil-translate-axis
default-stil (* 0.95 corr line-thickness) X)
(ly:stencil-translate-axis
lne (+ (* 1.9 corr line-thickness) default-stil-x-lngth) X))))
\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
\consists Horizontal_bracket_engraver
\override HorizontalBracket.direction = #UP
\override HorizontalBracket.bracket-flare = #'(0 . 0)
\override HorizontalBracketText.text = \markup \italic "Intro"
\override HorizontalBracket.shorten-pair = #'(.5 . .5) %% schaut schöner aus über den Akkorden
}
\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
\override SystemStartBar.collapse-height = #4
}
\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 {
\PianoStaff
\override StaffGrouper.staffgroup-staff-spacing.basic-distance = #2
\override StaffGrouper.staffgroup-staff-spacing.minimum-distance = #0
}
\context {
\StaffGroup
\override SystemStartBracket.collapse-height = #4
\override SystemStartBracket.thickness = #.2
}
}
oob = { \once \override Score.BarNumber.stencil = ##f \bar "" }
gloria = \markup \override #'(baseline-skip . 2) \left-column {
\line { Gloria: Ehre sei Gott }
\line {
Stichwort: \italic "Herr, erbarme dich unser"
}
\line { manchmal sagt der P so etwas ähnliches wie \italic "Ehre sei Gott in der Höhe" }
}
sanctus = \markup \override #'(baseline-skip . 2) \left-column {
\line { Lobpreis Gottes: Heilig, heilig, heilig }
\line {
Stichwort: \italic "und singen mit den Engeln das Lob deiner Herrlichkeit"
}
}
antwortlied = \markup \override #'(baseline-skip . 2) \left-column {
\line { Antwortlied: nach der ersten Lesung }
\line {
Stichwort: \italic "Wort des lebendigen Gottes"
}
}
gabenbereitung = \markup \override #'(baseline-skip . 2) \left-column {
\wordwrap { Gabenbereitung (Offertorium): Beginn der Eucharistiefeier, nach den Fürbitten }
\vspace #.2
\line {
Stichwort: \italic "darum bitten wir durch Christus, unsern Herrn"
}
}
agnus = \markup \override #'(baseline-skip . 2) \left-column {
\line { Agnus Dei: Pfarrer zerbricht Hostie in mehrere Teile }
\line {
wann: nach dem Friedensgruß
}
}
danklied = \markup \override #'(baseline-skip . 2) \left-column {
\line { Danklied }
\line {
wann: nach der Kommunionausteilung
}
}
auszug = \markup \override #'(baseline-skip . 2) \left-column {
\line { Auszug, Verabschiedung }
\line {
Stichwort: \italic "gehet hin in Frieden"
}
}
halleljua = \markup \override #'(baseline-skip . 3) \left-column {
\line { 1x leise }
\line {
1x leise, Vorbeter singt
}
\line {
1x laut, Gemeinde singt
}
\line { Vorbeter betet }
\line {
1x laut, Gemeinde singt
}
}
noambitus = {
\override AmbitusLine.stencil = ##f
\override AmbitusNoteHead.stencil = ##f
}
\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
\consists Horizontal_bracket_engraver
\override HorizontalBracket.direction = #UP
\override HorizontalBracket.bracket-flare = #'(0 . 0)
\override HorizontalBracketText.text = \markup \italic "Intro"
\override HorizontalBracket.shorten-pair = #'(.5 . .5) %% schaut schöner aus über den Akkorden
}
\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
\override SystemStartBar.collapse-height = #4
}
\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 {
\PianoStaff
\override StaffGrouper.staffgroup-staff-spacing.basic-distance = #2
\override StaffGrouper.staffgroup-staff-spacing.minimum-distance = #0
}
\context {
\StaffGroup
\override SystemStartBracket.collapse-height = #4
\override SystemStartBracket.thickness = #.2
}
}
oob = { \once \override Score.BarNumber.stencil = ##f \bar "" }
gloria = \markup \override #'(baseline-skip . 2) \left-column {
\line { Gloria: Ehre sei Gott }
\line {
Stichwort: \italic "Herr, erbarme dich unser"
}
\line { manchmal sagt der P so etwas ähnliches wie \italic "Ehre sei Gott in der Höhe" }
}
sanctus = \markup \override #'(baseline-skip . 2) \left-column {
\line { Lobpreis Gottes: Heilig, heilig, heilig }
\line {
Stichwort: \italic "und singen mit den Engeln das Lob deiner Herrlichkeit"
}
}
antwortlied = \markup \override #'(baseline-skip . 2) \left-column {
\line { Antwortlied: nach der ersten Lesung }
\line {
Stichwort: \italic "Wort des lebendigen Gottes"
}
}
gabenbereitung = \markup \override #'(baseline-skip . 2) \left-column {
\wordwrap { Gabenbereitung (Offertorium): Beginn der Eucharistiefeier, nach den Fürbitten }
\vspace #.2
\line {
Stichwort: \italic "darum bitten wir durch Christus, unsern Herrn"
}
}
agnus = \markup \override #'(baseline-skip . 2) \left-column {
\line { Agnus Dei: Pfarrer zerbricht Hostie in mehrere Teile }
\line {
wann: nach dem Friedensgruß
}
}
danklied = \markup \override #'(baseline-skip . 2) \left-column {
\line { Danklied }
\line {
wann: nach der Kommunionausteilung
}
}
auszug = \markup \override #'(baseline-skip . 2) \left-column {
\line { Auszug, Verabschiedung }
\line {
Stichwort: \italic "gehet hin in Frieden"
}
}
halleljua = \markup \override #'(baseline-skip . 3) \left-column {
\line { 1x leise }
\line {
1x leise, Vorbeter singt
}
\line {
1x laut, Gemeinde singt
}
\line { Vorbeter betet }
\line {
1x laut, Gemeinde singt
}
}
noambitus = {
\override AmbitusLine.stencil = ##f
\override AmbitusNoteHead.stencil = ##f
}