Den Herren will ich loben
- zur Melodie von Melchior Teschner wird im neuen GL das Lied GL 943: Lasst uns den Herrn erheben (unterschiedliche Melodien alt/neu s. 395) (alt: 853) gesungen; im alten GL steht eine andere Melodie
- zur gleichen Melodie werden GL 540: Den Engel lasst uns preisen (alt: 607) • GL 395: Den Herren will ich loben (alt: 261) gesungen
- Version in A-Dur: GL 185: Du hast, o Herr, dein Leben (Melodie 395 Den Herren will ich loben) (alt: 468)
Der Text ist zwar ein anderer, passt jedoch zur Melodie. Im neuen GL steht dieses Lied mit der Nr 418 nach einer Melodie von Gesius/Telemann 1730, im alten GL kommt es nicht vor.
Befiehl du deine Wege
und was dein Herze kränkt
der allertreusten Pflege
des, der den Himmel lenkt.
Der Wolken, Luft und Winden
gibt Wege, Lauf und Bahn,
der wird auch Wege finden
da dein Fuß gehen kann.
Dem Herren mußt du trauen,
wenn dir´s soll wohlergehn.
Auf sein Werk musst du schauen,
wenn dein Werk soll bestehn.
Mit Sorgen und mit Grämen
und mit selbsteigner Pein
läßt Gott sich gar nichts nehmen,
es muß erbeten sein.
Dein´ ew´ge Treu und Gnade,
O Vater, weiß und sieht,
was gut sei oder schade
Dem sterblichen Geblüt;
Und was du dann erlesen,
das treibst du, starker Held,
und bringst zum Stand und Wesen,
was deinem Rat gefällt.
Weg´ hast du allerwegen,
an Mitteln fehlt dir´s nicht.
Dein Tun ist lauter Segen,
dein Gang ist lauter Licht.
Dein Werk kann niemand hindern,
dein´ Arbeit darf nicht ruhn
wenn du, was deinen Kindern
ersprießlich ist, willst tun.
Und ob gleich alle Teufel
hier wollten widerstehn,
so wird doch ohne Zweifel
Gott nicht zurückegehn.
Was er sich vorgenommen
und was er haben will,
das muß doch endlich kommen
zu seinem Zweck und Ziel.
Hoff, o du arme Seele,
hoff und sei unverzagt,
Gott wird dich aus der Höhle,
da dich der Kummer plagt,
mit großen Gnaden rücken.
Erwarte nur die Zeit,
so wirst du schon erblicken
die Sonn´ der schönsten Freud´.
Auf, auf, gib deinem Schmerze
und Sorgen gute Nacht.
Laß fahren, was dein Herze
betrübt und traurig macht.
Bist du doch nicht Regente,
der alles führen soll,
Gott sitzt im Regimente
und führet alles wohl.
Ihn, ihn laß tun und walten,
er ist ein weiser Fürst
und wird sich so verhalten,
dass du dich wundern wirst.
Wenn er, wie ihm gebühret,
mit wunderbarem Rat
die Sach´ hinausgeführet,
die dich bekümmert hat.
Er wird zwar eine Weile
mit seinem Trost verziehn
und tun an seinem Teile,
als hätt´ in seinem Sinn.
Er deiner sich begeben
und sollt´st du für und für
in Angst und Nöten schweben,
frag´ er doch nichts nach dir.
Wird´s aber sich befinden,
dass du ihm treu verbleibst,
so wird er dich entbinden,
da du´s am mind´sten gläubst.
Er wird dein Herze lösen
von der so schweren Last,
die du zu keinem Bösen
bisher getragen hast.
Wohl dir, du Kind der Treue,
Du hast und trägst davon
mit Ruhm und Dankgeschreie
den Sieg und Ehrenkron´.
Gott gibt dir selbst die Palmen
in deine rechte Hand,
und du singst Freudenpsalmen
dem, der dein Leid gewandt.
Mach End´, o Herr, mach Ende
an aller unsrer Not.
Stärk unsre Füß´ und Hände
und laß bis in den Tod
uns allzeit deiner Pflege
und Treu´ empfohlen sein,
so gehen unsre Wege
gewiß zum Himmel ein.
sop = \relative c' {
\key b \major
\repeat volta 2 {
b2
f'4 f g a
b2 b4 \breathe d
c b b a b2
}
r4 b d d c b
a2 f4 \breathe f
b a g g
f2 r4 f
d f g f
f2 d4 \breathe f
es d c c
b2
\bar "{{!}}."
}
alt = \relative c' {
b2 c d4 es
f2 f4 f
es2 es
d2 s4 f
f2 e f4 e d4 c
d f e2 c s4 c
b c d c d2 b4 b
b2 b4 a f2
}
ten = \relative c {
\key b \major
\clef bass
f2 ~ f g4 f ~ f2 f4 \breathe b
g c c2
f,2 r4 b b2 g
c4 cis a4 \breathe a
f2 g2 a r4 a
f2 g4 a
a2 g4 \breathe f
g f f2 d
}
bas = \relative c {
d2 a b4 c
d2 ~ d4 b
es2 f2
d2 s4 d
b2 c
f4 e d4 f
d c c2
f2 s4 c
b a b c d2 d4 d
es4 b c2 b
}
Akk=
\chordmode {
b2
f g4:m f:7 b2 q4 q
c:m b es f:7 b2
s4 b b2 c:7
f4 a d4:m f b f c2
f s4 f b f g4:m f
d2:m g4:m b
es
}
Struktur =
{
\mynote 2
\override Score.NonMusicalPaperColumn.page-break-permission = ##f
\override Score.SpacingSpanner.common-shortest-duration = #(ly:make-moment 1/16)
\time 2/2
\partial 2
}
lyr = \lyricmode {
\set stanza = #"1."
\markup \line { \fontsize #2 \char ##x1D106 Den } Her -- ren will ich lo -- ben,
es jauchzt in Gott mein \markup \line { Geist. \fontsize #2 \char ##x1D107 }
An mir und mei -- nem Stam -- me hat Gro -- ßes er voll -- bracht,
und hei -- lig ist sein Na -- me, ge -- wal -- tig sei -- ne Macht.
}
kopf = \header {
title = "Den Herren will ich loben"
poet = "T: Maria Luise Thurmair"
composer = "M: Melchior Teschner 1614"
new-number = "395"
old-number = "261"
key = "B"
}
mypaper =
\paper {
top-margin = 20\mm
ragged-bottom = ##f
ragged-last-bottom = ##f
bottom-margin = 15\mm
line-width = 160\mm
markup-markup-spacing.padding = #1
}
\bookpart {
\mypaper
\kopf
\score
{
\orgel \sop \alt \ten \bas \Akk \Struktur \lyr c
}
\markup \override #'(baseline-skip . 2) \left-column {
\line { Diese Melodie wird zu verschiedenen Texten gesungen: }
\line {
468 (alt) O Gott, nimm an die Gaben
}
\line {
185 Du hast, o Herr, dein Leben
}
\line {
943 Lasst uns den Herrn erheben
}
}
}
sop = \relative c' {
\key b \major
\repeat volta 2 {
b2
f'4 f g a
b2 b4 \breathe d
c b b a b2
}
r4 b d d c b
a2 f4 \breathe f
b a g g
f2 r4 f
d f g f
f2 d4 \breathe f
es d c c
b2
\bar "{{!}}."
}
alt = \relative c' {
b2 c d4 es
f2 f4 f
es2 es
d2 s4 f
f2 e f4 e d4 c
d f e2 c s4 c
b c d c d2 b4 b
b2 b4 a f2
}
ten = \relative c {
\key b \major
\clef bass
f2 ~ f g4 f ~ f2 f4 \breathe b
g c c2
f,2 r4 b b2 g
c4 cis a4 \breathe a
f2 g2 a r4 a
f2 g4 a
a2 g4 \breathe f
g f f2 d
}
bas = \relative c {
d2 a b4 c
d2 ~ d4 b
es2 f2
d2 s4 d
b2 c
f4 e d4 f
d c c2
f2 s4 c
b a b c d2 d4 d
es4 b c2 b
}
Akk=
\chordmode {
b2
f g4:m f:7 b2 q4 q
c:m b es f:7 b2
s4 b b2 c:7
f4 a d4:m f b f c2
f s4 f b f g4:m f
d2:m g4:m b
es
}
Struktur =
{
\mynote 2
\override Score.NonMusicalPaperColumn.page-break-permission = ##f
\override Score.SpacingSpanner.common-shortest-duration = #(ly:make-moment 1/16)
\time 2/2
\partial 2
}
lyr = \lyricmode {
\set stanza = #"1."
\markup \line { \fontsize #2 \char ##x1D106 Den } Her -- ren will ich lo -- ben,
es jauchzt in Gott mein \markup \line { Geist. \fontsize #2 \char ##x1D107 }
An mir und mei -- nem Stam -- me hat Gro -- ßes er voll -- bracht,
und hei -- lig ist sein Na -- me, ge -- wal -- tig sei -- ne Macht.
}
kopf = \header {
title = "Den Herren will ich loben"
poet = "T: Maria Luise Thurmair"
composer = "M: Melchior Teschner 1614"
new-number = "395"
old-number = "261"
key = "B"
}
mypaper =
\paper {
top-margin = 20\mm
ragged-bottom = ##f
ragged-last-bottom = ##f
bottom-margin = 15\mm
line-width = 160\mm
markup-markup-spacing.padding = #1
}
\bookpart {
\mypaper
\kopf
\score
{
\orgel \sop \alt \ten \bas \Akk \Struktur \lyr c
}
\markup \override #'(baseline-skip . 2) \left-column {
\line { Diese Melodie wird zu verschiedenen Texten gesungen: }
\line {
468 (alt) O Gott, nimm an die Gaben
}
\line {
185 Du hast, o Herr, dein Leben
}
\line {
943 Lasst uns den Herrn erheben
}
}
}
#(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
}