Compare commits
2 Commits
main
...
62251a0446
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
62251a0446 | ||
|
|
e0943edba6 |
1
.gitignore
vendored
1
.gitignore
vendored
@@ -3,7 +3,6 @@
|
|||||||
*.ps
|
*.ps
|
||||||
*.midi
|
*.midi
|
||||||
*.mid
|
*.mid
|
||||||
*.csv
|
|
||||||
*.log
|
*.log
|
||||||
*~
|
*~
|
||||||
|
|
||||||
|
|||||||
5
.gitmodules
vendored
5
.gitmodules
vendored
@@ -1,6 +1,3 @@
|
|||||||
[submodule "lilypond-common-includes"]
|
[submodule "lilypond-common-includes"]
|
||||||
path = lilypond-common-includes
|
path = lilypond-common-includes
|
||||||
url = https://git.zahlenlabyrinth.de/Notenbund/lilypond-common-includes
|
url = https://git.zahlenlabyrinth.de/boernel/lilypond-common-includes
|
||||||
[submodule "lilypond-song-includes"]
|
|
||||||
path = lilypond-song-includes
|
|
||||||
url = ../lilypond-song-includes.git
|
|
||||||
|
|||||||
29
data/authors.json
Normal file
29
data/authors.json
Normal file
@@ -0,0 +1,29 @@
|
|||||||
|
{
|
||||||
|
"dude": {
|
||||||
|
"name": "Krasser Dude",
|
||||||
|
"trail_name": "dud",
|
||||||
|
"birth_year": "1950",
|
||||||
|
"organization": "Bund der krassen Dudes"
|
||||||
|
},
|
||||||
|
|
||||||
|
"kumpel": {
|
||||||
|
"name": "Krasser Kumpel",
|
||||||
|
"trail_name": "dudekumpel",
|
||||||
|
"death_year": "2050",
|
||||||
|
"organization": "Bund der krassen Kumpels"
|
||||||
|
},
|
||||||
|
|
||||||
|
"arlettgrygar": {
|
||||||
|
"name": "Arlett Grygar",
|
||||||
|
"trail_name": "",
|
||||||
|
"birth_year": "1992",
|
||||||
|
"organization": "BdP Stamm Goldener Reiter"
|
||||||
|
},
|
||||||
|
|
||||||
|
"tux": {
|
||||||
|
"name": "Christoph Wagner",
|
||||||
|
"trail_name": "tux",
|
||||||
|
"birth_year": "1985",
|
||||||
|
"organization": "BdP Stamm Goldener Reiter"
|
||||||
|
}
|
||||||
|
}
|
||||||
7
data/songs.json
Normal file
7
data/songs.json
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
{
|
||||||
|
"a-song-id": {
|
||||||
|
"title": "Krasse Vorlage",
|
||||||
|
"composer": "kumpel",
|
||||||
|
"poet": "dude"
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -1,124 +0,0 @@
|
|||||||
\version "2.25.8"
|
|
||||||
|
|
||||||
\include "../../lilypond-custom-includes/base_config.ily"
|
|
||||||
|
|
||||||
#(set! paper-alist (cons '("testformat" . (cons (* 176 mm) (* 15 mm))) paper-alist))
|
|
||||||
\paper {
|
|
||||||
#(set-paper-size "testformat")
|
|
||||||
}
|
|
||||||
|
|
||||||
\bookpart {
|
|
||||||
\header {
|
|
||||||
authors = #'(
|
|
||||||
("kumpelerbe" text melody))
|
|
||||||
year_text = "1600"
|
|
||||||
year_melody = "1600"
|
|
||||||
}
|
|
||||||
\markup { \print-songinfo }
|
|
||||||
}
|
|
||||||
|
|
||||||
\bookpart {
|
|
||||||
\header {
|
|
||||||
authors = #'(
|
|
||||||
("kumpel" text melody))
|
|
||||||
year_text = "1600"
|
|
||||||
year_melody = "1800"
|
|
||||||
}
|
|
||||||
\markup { \print-songinfo }
|
|
||||||
}
|
|
||||||
|
|
||||||
\bookpart {
|
|
||||||
\header {
|
|
||||||
authors = #'(
|
|
||||||
("kumpel" text melody))
|
|
||||||
year_melody = "1800"
|
|
||||||
}
|
|
||||||
\markup { \print-songinfo }
|
|
||||||
}
|
|
||||||
|
|
||||||
\bookpart {
|
|
||||||
\header {
|
|
||||||
year_text = "1500"
|
|
||||||
authors = #'(
|
|
||||||
("kumpel" text))
|
|
||||||
}
|
|
||||||
\markup { \print-songinfo }
|
|
||||||
}
|
|
||||||
|
|
||||||
\bookpart {
|
|
||||||
\header {
|
|
||||||
authors = #'(
|
|
||||||
("kumpel" melody))
|
|
||||||
}
|
|
||||||
\markup { \print-songinfo }
|
|
||||||
}
|
|
||||||
|
|
||||||
\bookpart {
|
|
||||||
\header {
|
|
||||||
authors = #'(
|
|
||||||
("kumpel" melody)
|
|
||||||
("dude" text composition melody))
|
|
||||||
}
|
|
||||||
\markup { \print-songinfo }
|
|
||||||
}
|
|
||||||
|
|
||||||
\bookpart {
|
|
||||||
\header {
|
|
||||||
authors = #'(
|
|
||||||
("kumpel" (verse 1))
|
|
||||||
("dude" melody (voice 1) (voice 2)))
|
|
||||||
}
|
|
||||||
\markup { \print-songinfo }
|
|
||||||
}
|
|
||||||
|
|
||||||
\bookpart {
|
|
||||||
\header {
|
|
||||||
authors = #'(
|
|
||||||
("kumpel" text (verse 2))
|
|
||||||
("dude" (verse 2) (verse 3)))
|
|
||||||
}
|
|
||||||
\markup { \print-songinfo }
|
|
||||||
}
|
|
||||||
|
|
||||||
\bookpart {
|
|
||||||
\header {
|
|
||||||
authors = #'(
|
|
||||||
("kumpel" text (voice 2) (voice 3))
|
|
||||||
("dude" (voice 2) (voice 3))
|
|
||||||
("nocheiner" (voice 4)))
|
|
||||||
}
|
|
||||||
\markup { \print-songinfo }
|
|
||||||
}
|
|
||||||
|
|
||||||
\bookpart {
|
|
||||||
\header {
|
|
||||||
year_composition = "2001"
|
|
||||||
year_melody = "1901"
|
|
||||||
authors = #'(
|
|
||||||
("kumpel" text composition)
|
|
||||||
("dude" composition))
|
|
||||||
}
|
|
||||||
\markup { \print-songinfo }
|
|
||||||
}
|
|
||||||
|
|
||||||
\bookpart {
|
|
||||||
\header {
|
|
||||||
authors = #'(
|
|
||||||
("kumpel" interlude)
|
|
||||||
("dude" bridge)
|
|
||||||
("" melody))
|
|
||||||
}
|
|
||||||
\markup { \print-songinfo }
|
|
||||||
}
|
|
||||||
|
|
||||||
\bookpart {
|
|
||||||
\header {
|
|
||||||
year_melody = "1800"
|
|
||||||
year_translation = "2010"
|
|
||||||
authors = #'(
|
|
||||||
("kumpel" translation)
|
|
||||||
("dude" text (meloverse 1))
|
|
||||||
("" melody))
|
|
||||||
}
|
|
||||||
\markup { \print-songinfo }
|
|
||||||
}
|
|
||||||
@@ -1,93 +0,0 @@
|
|||||||
\version "2.25.8"
|
|
||||||
%songStyle = #'büdel
|
|
||||||
|
|
||||||
\include "../../lilypond-custom-includes/base_config.ily"
|
|
||||||
\include "../../lilypond-song-includes/liedbausteine/sandbox.ly"
|
|
||||||
|
|
||||||
HEADER = \bookpart {
|
|
||||||
|
|
||||||
\paper {
|
|
||||||
%page-count = #1 % dieser Befehl quetscht alles auf diese Seitenanzahl
|
|
||||||
%markup-system-spacing.padding = 4 %Abstand zwischen Titel und Noten
|
|
||||||
%top-system-spacing.padding = 6 %Abstand zwischen Seitenrand und obersten Notensystem (wenn was anderes da steht wie z.B. Titel/ Text, greift das nicht) gut um z.B. noten auf der zweiten Seite runter zu machen
|
|
||||||
#(layout-set-staff-size 13) %Größe ändern
|
|
||||||
}
|
|
||||||
|
|
||||||
\header {
|
|
||||||
\basicSongInfo
|
|
||||||
titlesize = 11
|
|
||||||
titletopspace = 2
|
|
||||||
categories = "see"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
\transposeGlobal d e
|
|
||||||
|
|
||||||
MUSIC =
|
|
||||||
{
|
|
||||||
<<
|
|
||||||
\songChords
|
|
||||||
\new ChoirStaff = "firstStaff"
|
|
||||||
<<
|
|
||||||
\new Voice = "firstVoice" { << \firstVoice { s4 \repeat unfold 4 { s1 } \break } >> }
|
|
||||||
\addlyrics { \firstVerse }
|
|
||||||
\addlyrics { \refLyrics }
|
|
||||||
>>
|
|
||||||
>>
|
|
||||||
}
|
|
||||||
|
|
||||||
TEXT = \markuplist
|
|
||||||
{
|
|
||||||
%\fontsize #-1 %Text in den Strophen kleiner
|
|
||||||
%\vspace #1.5 %Abstand zwischen Strophen
|
|
||||||
|
|
||||||
\group-verses {
|
|
||||||
\override #'(verse-vspace . 0.8) %abstand der Verse voneinander kleiner
|
|
||||||
\chordverse #(stanza 3) \thirdVerseMarkup
|
|
||||||
|
|
||||||
\nochordverse \refString \fourthVerseMarkup
|
|
||||||
}
|
|
||||||
|
|
||||||
\group-verses {
|
|
||||||
\vspace #5
|
|
||||||
|
|
||||||
\nochordverse #(stanza 5) \fifthVerseMarkup
|
|
||||||
|
|
||||||
\nochordverse #(stanza 6) \sixthVerseMarkup
|
|
||||||
|
|
||||||
\nochordverse #(stanza 7) \seventhVerseMarkup
|
|
||||||
}
|
|
||||||
|
|
||||||
\override #'(verse-cols . 2) %Spalten
|
|
||||||
%\override #'(verse-ordering-horizontal . #t) % Verse horizontal fortlaufend anordnen
|
|
||||||
% \override #'(verse-hspace . -5) %Abstand zwischen Spalten geringer
|
|
||||||
%\translate #'(2 . 0) %das nächste was er printed, printed er nicht dahin wo es eigentlich hinkommt sondern verschiebt es um (x.y)
|
|
||||||
\group-verses {
|
|
||||||
\override #`(verse-break-voice . ,#{ s4 \repeat unfold 2 { s1 } \break #})
|
|
||||||
\chordlyrics \refLyrics
|
|
||||||
\chordverse #(stanza 8) \columnVerseMarkup
|
|
||||||
|
|
||||||
\chordverse #(stanza 9) \columnVerseMarkup
|
|
||||||
|
|
||||||
\override #'(intraverse-vspace . 3) % Abstand der Zeilen eines Verses vergrößern
|
|
||||||
\chordverse #(stanza 10) \columnVerseMarkup
|
|
||||||
|
|
||||||
\chordverse #"XI." \columnVerseMarkup
|
|
||||||
|
|
||||||
\override #'(custom-verse-breaks "Strophen" "auch" "krass")
|
|
||||||
\chordverse #(stanza 11) \columnVerseMarkup
|
|
||||||
}
|
|
||||||
\group-verses {
|
|
||||||
%\override #'(baseline-skip . 1) %Damit verändert man den Abstand der Notenzeilen
|
|
||||||
\bridgeverse
|
|
||||||
\chordverse #""
|
|
||||||
#"(,\\repeats-around-chords { a:m c } d)"
|
|
||||||
\score {
|
|
||||||
\chords { \repeats-around-chords { a4:m c } d }
|
|
||||||
\layout { \generalLayout }
|
|
||||||
}
|
|
||||||
}
|
|
||||||
\fret-chord #"x;2;4;4;4;o;" #"h:1.3.5.11"
|
|
||||||
}
|
|
||||||
|
|
||||||
\include "public_includes/layout_bottom.ily"
|
|
||||||
213
lieder/vorlage/vorlage.ly
Normal file
213
lieder/vorlage/vorlage.ly
Normal file
@@ -0,0 +1,213 @@
|
|||||||
|
\version "2.18.0"
|
||||||
|
%songStyle = #'büdel
|
||||||
|
|
||||||
|
\include "../../lilypond-custom-includes/base_config.ly"
|
||||||
|
|
||||||
|
HEADER = \bookpart {
|
||||||
|
|
||||||
|
\paper {
|
||||||
|
%page-count = #1 % dieser Befehl quetscht alles auf diese Seitenanzahl
|
||||||
|
%markup-system-spacing.padding = 4 %Abstand zwischen Titel und Noten
|
||||||
|
%top-system-spacing.padding = 6 %Abstand zwischen Seitenrand und obersten Notensystem (wenn was anderes da steht wie z.B. Titel/ Text, greift das nicht) gut um z.B. noten auf der zweiten Seite runter zu machen
|
||||||
|
}
|
||||||
|
|
||||||
|
\header {
|
||||||
|
title = "Liedtitel"
|
||||||
|
alttitle = "Alternativtitel"
|
||||||
|
titlesize = 11
|
||||||
|
titletopspace = 2
|
||||||
|
poetId = "dude"
|
||||||
|
composerId = "dude"
|
||||||
|
copyright = "Fumpeverlag"
|
||||||
|
categories = "see"
|
||||||
|
songinfo = "Hintergrund
|
||||||
|
|
||||||
|
Übersetzung
|
||||||
|
|
||||||
|
Aussprache"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
LAYOUT = \layout {
|
||||||
|
\generalLayout
|
||||||
|
% #(layout-set-staff-size 13) %alles kleiner machen
|
||||||
|
% #(define fonts (default-pango (- globalSize 1))) %Notengröße kleiner machen
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
global = {
|
||||||
|
%\transposeGlobal a g
|
||||||
|
%Takt
|
||||||
|
\time 4/4
|
||||||
|
%\set Timing.beatStructure = #'(3 2 2) % Befehl für manuelle Balkenverknüpfung (hier 7/8)
|
||||||
|
%Tonart
|
||||||
|
\key c \major
|
||||||
|
}
|
||||||
|
|
||||||
|
firstVerse = \lyricmode {
|
||||||
|
\set stanza = "1."
|
||||||
|
Hier \repeat unfold 6 { _ } ist der Text für Stro -- phe eins. \set ignoreMelismata = ##t \unset ignoreMelismata % Bindebögen irgnorieren
|
||||||
|
}
|
||||||
|
|
||||||
|
secondVerse = \lyricmode {
|
||||||
|
\set stanza = "2."
|
||||||
|
Mit _ ü -- ber -- springt man No -- ten. \markup { \bold { fett! krass } }
|
||||||
|
"Mehrere Silben" auf ei -- ne No -- te. Me -- lis -- ma -- \set ignoreMelismata = ##t ta aus \unset ignoreMelismata und wieder an
|
||||||
|
}
|
||||||
|
|
||||||
|
firstVoice = \relative c' {
|
||||||
|
\global
|
||||||
|
%\clef "bass" % Bassschlüssel
|
||||||
|
\partial 4 % Auftakt
|
||||||
|
a'4 % mit ' und , oktaviert man
|
||||||
|
\repeat volta 2 { % Wiederholung
|
||||||
|
d,4 e fis g
|
||||||
|
a8 a (a) a d,4~d % Bindebögen
|
||||||
|
<< { \voiceTwo
|
||||||
|
g4. c,8 c4 d
|
||||||
|
}
|
||||||
|
\new Voice { \voiceOne \secondVoiceStyle
|
||||||
|
g4. g8 g4 f
|
||||||
|
}
|
||||||
|
>> \oneVoice
|
||||||
|
}
|
||||||
|
\alternative { %Klammer eins und zwei
|
||||||
|
{e2. a4}
|
||||||
|
{e2. r4}
|
||||||
|
}
|
||||||
|
\break %Zeilenumbruch
|
||||||
|
e1 \noBreak
|
||||||
|
e1
|
||||||
|
e2^\markup \bold "I. hier einsetzen!" (f)
|
||||||
|
e1 \mark \markup { \italic { fine } }
|
||||||
|
a1_\markup { \italic Zwischenspiel } a1
|
||||||
|
\once \override Score.TimeSignature.stencil = ##f \time 2/4 %unsichtbarer Taktwechsel (ansonsten nur \time macht sichtbaren Taktwechsel)
|
||||||
|
a2 <a c>2
|
||||||
|
r2 \once \override Score.RehearsalMark.break-visibility = #end-of-line-visible
|
||||||
|
\once \override Score.RehearsalMark.self-alignment-X = #RIGHT
|
||||||
|
\mark "D.C. al Fine"
|
||||||
|
|
||||||
|
\bar "|."
|
||||||
|
}
|
||||||
|
|
||||||
|
bridge = \relative c' {
|
||||||
|
\global
|
||||||
|
\time 3/4
|
||||||
|
a4 h c a h c
|
||||||
|
}
|
||||||
|
|
||||||
|
bridgeVerse = \lyricmode {
|
||||||
|
\set stanza = "Bridge:"
|
||||||
|
Das hier ist ei -- ne Bridge
|
||||||
|
}
|
||||||
|
|
||||||
|
MUSIC =
|
||||||
|
{
|
||||||
|
<<
|
||||||
|
\chords {
|
||||||
|
s4 d2 h:m fis:m b g1 \klamm{a2. d4} c1/h
|
||||||
|
e \once \set chordChanges = ##f e %gleichbl. Akkord sichtbar machen
|
||||||
|
h:1.3.5.11
|
||||||
|
}
|
||||||
|
\new ChoirStaff = "firstStaff"
|
||||||
|
<<
|
||||||
|
\new Voice = "firstVoice" { \firstVoice }
|
||||||
|
\addlyrics { \firstVerse }
|
||||||
|
\addlyrics { \secondVerse }
|
||||||
|
>>
|
||||||
|
>>
|
||||||
|
}
|
||||||
|
|
||||||
|
BRIDGE =
|
||||||
|
{
|
||||||
|
<<
|
||||||
|
\chords { a2:m a:m a:m a:m }
|
||||||
|
\new Voice { \bridge }
|
||||||
|
\addlyrics { \bridgeVerse }
|
||||||
|
>>
|
||||||
|
}
|
||||||
|
|
||||||
|
TEXT = \markuplist
|
||||||
|
{
|
||||||
|
%\fontsize #-1 %Text in den Strophen kleiner
|
||||||
|
%\vspace #1.5 %Abstand zwischen Strophen
|
||||||
|
\group-verses {
|
||||||
|
\override #'(verse-vspace . 0.8) %abstand der Verse voneinander kleiner
|
||||||
|
\chordverse #"3."
|
||||||
|
#"Test (Akk,a:m)orde (ü,a:1.3.7+.9)ber den (Stro,d:m)phen (test)
|
||||||
|
\\repStart sind (sup,e)er \\underline {(cool,a:m)} \\repStop
|
||||||
|
und (sie,a:m) sind (jetzt,\\klamm{d:m}) auch (klam,\\klamm { d })mer(bar,\\klamm g)
|
||||||
|
\\italic { hier i(s,fis)t mal was (kur,d:m)siv } – das k(lap,g:m)pt (je,a)tzt"
|
||||||
|
|
||||||
|
\nochordverse #"4."
|
||||||
|
#"Hier ist leider nicht genug (Platz,g)
|
||||||
|
für (Akk,a:m)orde über den (Stro,d:m)phen
|
||||||
|
\\repStart deswegen \\concat{ \\underline { wer } den } die hier mittels \\bold { nochordverse } automatisch
|
||||||
|
entfernt! \\repStop"
|
||||||
|
}
|
||||||
|
|
||||||
|
\group-verses {
|
||||||
|
\vspace #5
|
||||||
|
|
||||||
|
\nochordverse #"5."
|
||||||
|
#"Hier geht die 5. Strophe los, die zusammen mit der 6. auf
|
||||||
|
eine Seite soll"
|
||||||
|
|
||||||
|
\nochordverse #"6."
|
||||||
|
#"Strophen in einer \\concat{\\char ##x5C group-verses} Umgebung werden aneinander
|
||||||
|
ausgerichtet und auf der Seite zentriert.
|
||||||
|
Man beachte auch wie widerlich der Backslash
|
||||||
|
vor group-verses eingegeben werden muss!
|
||||||
|
Falls ihr mal runde (Klammern) braucht: \\concat{\\char ##x28 Klammer} auf und Klammer \\concat{zu \\char ##x29 }"
|
||||||
|
|
||||||
|
\nochordverse #"7."
|
||||||
|
#"Wir achten bitte auch auf typografisch korrekte Zeichen.
|
||||||
|
Ein deutsches Apostroph sieht so aus ’ und nicht so '
|
||||||
|
Ein Gedankenstrich, wie er auch zur Trennung von Jahreszahlen
|
||||||
|
genutzt wird ist so – und nicht so -
|
||||||
|
Anführungszeichen sind so „ und so “"
|
||||||
|
}
|
||||||
|
\override #'(verse-cols . 2) %Spalten
|
||||||
|
%\override #'(verse-ordering-horizontal . #t) % Verse horizontal fortlaufend anordnen
|
||||||
|
% \override #'(verse-hspace . -5) %Abstand zwischen Spalten geringer
|
||||||
|
%\translate #'(2 . 0) %das nächste was er printed, printed er nicht dahin wo es eigentlich hinkommt sondern verschiebt es um (x.y)
|
||||||
|
\group-verses {
|
||||||
|
\chordverse #"8."
|
||||||
|
#"Stro(phen,a:m) können jetzt auch in (Spal,f)ten!
|
||||||
|
Voll (krass,e) (eh,a:m)!"
|
||||||
|
|
||||||
|
\chordverse #"9."
|
||||||
|
#"Stro(phen,a:m) können jetzt auch in (Spal,f)ten!
|
||||||
|
Voll (krass,e) (eh,a:m)!"
|
||||||
|
|
||||||
|
\override #'(intraverse-vspace . 3) % Abstand der Zeilen eines Verses vergrößern
|
||||||
|
\chordverse #"10."
|
||||||
|
#"Stro(phen,a:m) können jetzt auch in (Spal,f)ten!
|
||||||
|
Voll (krass,e) (eh,a:m)!"
|
||||||
|
|
||||||
|
\chordverse #"11."
|
||||||
|
#"Stro(phen,a:m) können jetzt auch in (Spal,f)ten!
|
||||||
|
Voll (krass,e) (eh,a:m)!"
|
||||||
|
|
||||||
|
\chordverse #"12."
|
||||||
|
#"Stro(phen,a:m) können jetzt auch in (Spal,f)ten!
|
||||||
|
Voll (krass,e) (eh,a:m)"
|
||||||
|
}
|
||||||
|
\group-verses {
|
||||||
|
%\override #'(baseline-skip . 1) %Damit verändert man den Abstand der Notenzeilen
|
||||||
|
\score {
|
||||||
|
\inline-score
|
||||||
|
\BRIDGE
|
||||||
|
\layout { \generalLayout }
|
||||||
|
}
|
||||||
|
\chordverse #""
|
||||||
|
#"(,\\repeats-around-chords { a:m c } d)"
|
||||||
|
\score {
|
||||||
|
\chords { \repeats-around-chords { a4:m c } d }
|
||||||
|
\layout { \generalLayout }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
\fret-chord #"x;2;4;4;4;o;" #"h:1.3.5.11"
|
||||||
|
}
|
||||||
|
|
||||||
|
\include "../../lilypond-common-includes/standalone_output.ly"
|
||||||
@@ -1,14 +1,53 @@
|
|||||||
\version "2.25.27"
|
\version "2.18.0"
|
||||||
|
|
||||||
\include "../../lilypond-custom-includes/base_config.ily"
|
\include "../../lilypond-custom-includes/base_config.ly"
|
||||||
\include "../../lilypond-song-includes/liedbausteine/00_vorlage_light.ly"
|
|
||||||
|
|
||||||
HEADER = \bookpart {
|
HEADER = \bookpart {
|
||||||
\header {
|
\header {
|
||||||
\basicSongInfo
|
title = "Titel"
|
||||||
%infotext = ""
|
songId = "a-song-id"
|
||||||
categories = ""
|
categories = ""
|
||||||
|
songinfo = "wasauchimmer"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
\include "public_includes/layout_bottom.ily"
|
global = {
|
||||||
|
%Takt
|
||||||
|
\time 4/4
|
||||||
|
%Tonart
|
||||||
|
\key c \major
|
||||||
|
}
|
||||||
|
|
||||||
|
firstVerse = \lyricmode {
|
||||||
|
\set stanza = "1."
|
||||||
|
Lyrics
|
||||||
|
}
|
||||||
|
|
||||||
|
firstVoice = \relative c' {
|
||||||
|
\global
|
||||||
|
c
|
||||||
|
\bar "|."
|
||||||
|
}
|
||||||
|
|
||||||
|
MUSIC = {
|
||||||
|
<<
|
||||||
|
\chords {
|
||||||
|
c
|
||||||
|
}
|
||||||
|
\new ChoirStaff = "firstStaff"
|
||||||
|
<<
|
||||||
|
\new Voice = "firstVoice" { \firstVoice }
|
||||||
|
\addlyrics { \firstVerse }
|
||||||
|
>>
|
||||||
|
>>
|
||||||
|
}
|
||||||
|
|
||||||
|
TEXT = \markuplist {
|
||||||
|
\group-verses {
|
||||||
|
\chordverse #"2."
|
||||||
|
#"(Stro,a:m)phen(text,g)
|
||||||
|
(G,a:m)ras (ist,c) (grün,f)"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
\include "../../lilypond-common-includes/standalone_output.ly"
|
||||||
81
lieder/vorlage_satz/vorlage_satz.ly
Normal file
81
lieder/vorlage_satz/vorlage_satz.ly
Normal file
@@ -0,0 +1,81 @@
|
|||||||
|
\version "2.18.0"
|
||||||
|
|
||||||
|
\include "../../lilypond-custom-includes/base_config.ly"
|
||||||
|
|
||||||
|
HEADER = \bookpart {
|
||||||
|
\header {
|
||||||
|
title = "Chorsatz"
|
||||||
|
alttitle = ""
|
||||||
|
composerId = "dude"
|
||||||
|
songId = "a-song-id"
|
||||||
|
categories = ""
|
||||||
|
songinfo = ""
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
global = {
|
||||||
|
%Takt
|
||||||
|
\time 4/4
|
||||||
|
%Tonart
|
||||||
|
\key e \minor
|
||||||
|
}
|
||||||
|
|
||||||
|
firstVerse = \lyricmode {
|
||||||
|
\set stanza = "1."
|
||||||
|
Stimmumfang
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
secondVerse = \lyricmode {
|
||||||
|
\set stanza = ""
|
||||||
|
}
|
||||||
|
|
||||||
|
Sopran = \relative c'' { \set Staff.midiInstrument = #"choir aahs"
|
||||||
|
\global
|
||||||
|
c,1 a' fis'
|
||||||
|
|
||||||
|
\bar "|."
|
||||||
|
}
|
||||||
|
|
||||||
|
Alt = \relative c' {
|
||||||
|
\global
|
||||||
|
g d' d'
|
||||||
|
}
|
||||||
|
|
||||||
|
Tenor = \relative c {
|
||||||
|
\global
|
||||||
|
\clef bass %\clef "treble_8"
|
||||||
|
c1 a' fis'
|
||||||
|
}
|
||||||
|
|
||||||
|
Bass = \relative c {
|
||||||
|
\global
|
||||||
|
\clef bass
|
||||||
|
e, g' c
|
||||||
|
}
|
||||||
|
|
||||||
|
MUSIC = {
|
||||||
|
<<
|
||||||
|
\chords {
|
||||||
|
}
|
||||||
|
\new ChoirStaff = "firstStaff"
|
||||||
|
<<
|
||||||
|
\new Voice = "Sopran" { \Sopran }
|
||||||
|
\addlyrics { \firstVerse }
|
||||||
|
\addlyrics { \secondVerse }
|
||||||
|
\new Voice = "Alt" { \Alt}
|
||||||
|
\new Voice = "Tenor" { \Tenor}
|
||||||
|
\new Voice = "Bass" { \Bass }
|
||||||
|
|
||||||
|
>>
|
||||||
|
>>
|
||||||
|
}
|
||||||
|
|
||||||
|
TEXT = \markuplist {
|
||||||
|
\group-verses {
|
||||||
|
\chordverse #"3."
|
||||||
|
#""
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
\include "../../lilypond-common-includes/standalone_output.ly"
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
\version "2.25.80"
|
\version "2.18"
|
||||||
|
|
||||||
% point and click blows up the pdf
|
% point and click blows up the pdf
|
||||||
\pointAndClickOff
|
\pointAndClickOff
|
||||||
@@ -6,18 +6,20 @@
|
|||||||
imagePagePath = "categories"
|
imagePagePath = "categories"
|
||||||
songPath = "../../lieder"
|
songPath = "../../lieder"
|
||||||
|
|
||||||
\include "../../lilypond-custom-includes/base_config.ily"
|
\include "../../lilypond-custom-includes/base_config.ly"
|
||||||
\include "public_includes/book_top.ily"
|
\include "../../lilypond-common-includes/book_include.ly"
|
||||||
|
\include "../../lilypond-common-includes/toc_include.ly"
|
||||||
|
|
||||||
% Brauchen wir jedes Lied als Einzelausgabe mit Midi und PDF?
|
% Brauchen wir jedes Lied als Einzelausgabe mit Midi und PDF?
|
||||||
#(define noStandaloneOutput #t)
|
#(define noStandaloneOutput #t)
|
||||||
|
|
||||||
%Liedteil -> hier werden alle Lieder inkludiert
|
%Liedteil -> hier werden alle Lieder inkludiert
|
||||||
%Reihenfolge im Liederbuch: Von oben nach unten
|
%Reihenfolge im Liederbuch: Von oben nach unten
|
||||||
|
\includeSong "vorlage"
|
||||||
\blankpage
|
\blankpage
|
||||||
\includeSong "vorlage_light"
|
\includeSong "vorlage_light"
|
||||||
\imagepage #125 "see.eps"
|
\imagepage #125 "see.eps"
|
||||||
|
\includeSong "vorlage_satz"
|
||||||
%Zur Übersichtlichkeit:
|
%Zur Übersichtlichkeit:
|
||||||
%A
|
%A
|
||||||
%B
|
%B
|
||||||
@@ -58,12 +60,10 @@ songPath = "../../lieder"
|
|||||||
pdfkeywords = "Liederbuch, Pfadfinder, bündisch"
|
pdfkeywords = "Liederbuch, Pfadfinder, bündisch"
|
||||||
}
|
}
|
||||||
|
|
||||||
\paper {
|
|
||||||
first-page-number = 1
|
|
||||||
}
|
|
||||||
|
|
||||||
%Eine Seite mit dem Cover könnte so aussehen:
|
%Eine Seite mit dem Cover könnte so aussehen:
|
||||||
\bookpart {
|
\bookpart {
|
||||||
|
%\markup { \epsfile #X #120 #"images/front.eps" }
|
||||||
|
%\markup \fill-line { \center-column { \vspace #1 \pad-x #9 \customEps #95 #"Dateiname.dt" \vspace #1 } }
|
||||||
\paper {
|
\paper {
|
||||||
print-page-number = ##f
|
print-page-number = ##f
|
||||||
inner-margin = 0
|
inner-margin = 0
|
||||||
@@ -74,31 +74,18 @@ songPath = "../../lieder"
|
|||||||
last-bottom-spacing = #'((basic-distance . 0) (minimum-distance . 0) (padding . 0))
|
last-bottom-spacing = #'((basic-distance . 0) (minimum-distance . 0) (padding . 0))
|
||||||
page-count = 1
|
page-count = 1
|
||||||
}
|
}
|
||||||
\markup {
|
|
||||||
\title-to-pdf-toc "Titelseite"
|
|
||||||
" "
|
|
||||||
%\epsfile #X #120 #"images/front.eps"
|
|
||||||
%\fill-line { \center-column { \vspace #1 \pad-x #9 \customEps #95 #"Dateiname.dt" \vspace #1 } }
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
% Seite
|
% Seite
|
||||||
\bookpart {
|
\bookpart {
|
||||||
\paper { print-page-number = ##f }
|
\paper { print-page-number = ##f }
|
||||||
\markup {
|
\markup { \vspace #2 \fill-line { \null
|
||||||
\title-to-pdf-toc "Vorwort"
|
\override #'(font-name . "Old Standard TT") \fontsize #0.5 \override #'(line-width . 115) \left-column { \justify-string #"
|
||||||
\vspace #2
|
Hier steht lustiger Text"
|
||||||
\fill-line {
|
" "
|
||||||
\override #'(font-name . "Old Standard TT")
|
\fill-line { "blublub" }
|
||||||
\fontsize #0.5
|
|
||||||
\override #'(line-width . 115)
|
|
||||||
\left-column {
|
|
||||||
\justify-string #"
|
|
||||||
Hier steht lustiger Text"
|
|
||||||
" "
|
|
||||||
\fill-line { "blublub" }
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
\null }
|
||||||
}
|
}
|
||||||
% muss drinbleiben, damit die Kategoriebildchen alle reingeladen und referenziert werden können:
|
% muss drinbleiben, damit die Kategoriebildchen alle reingeladen und referenziert werden können:
|
||||||
\markuplist { \embed-category-images }
|
\markuplist { \embed-category-images }
|
||||||
@@ -107,58 +94,36 @@ Hier steht lustiger Text"
|
|||||||
% die Liederausgabe
|
% die Liederausgabe
|
||||||
\songs
|
\songs
|
||||||
|
|
||||||
%Kategorienverzeichnis
|
|
||||||
\bookpart {
|
|
||||||
\markuplist {
|
|
||||||
\index-in-columns-with-title #'categories \column {
|
|
||||||
\title-to-pdf-toc "Kategorienverzeichnis"
|
|
||||||
\fontsize #5 \sans \bold \fill-line { \null "Inhaltsverzeichnis nach Kategorien" \null }
|
|
||||||
\vspace #1
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
\bookpart {
|
|
||||||
\markuplist {
|
|
||||||
\index-in-columns-with-title #'authors \column {
|
|
||||||
\title-to-pdf-toc "Autor*innenverzeichnis"
|
|
||||||
\fontsize #5 \sans \bold \fill-line { \null "Autor*innenverzeichnis" \null }
|
|
||||||
\vspace #1
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
% Inhaltsverzeichnis
|
% Inhaltsverzeichnis
|
||||||
\bookpart {
|
\bookpart {
|
||||||
\indexSection #"A" \markup { "A" }
|
\indexSection #"A" \markup { "A" }
|
||||||
\indexSection #"B" \markup { "B" }
|
\indexSection #"B" \markup { "B" }
|
||||||
\indexSection #"C" \markup { "C" }
|
\indexSection #"C" \markup { "C" }
|
||||||
\indexSection #"D" \markup { "D" }
|
\indexSection #"D" \markup { "D" }
|
||||||
\indexSection #"E" \markup { "E" }
|
\indexSection #"E" \markup { "E" }
|
||||||
\indexSection #"F" \markup { "F" }
|
\indexSection #"F" \markup { "F" }
|
||||||
\indexSection #"G" \markup { "G" }
|
\indexSection #"G" \markup { "G" }
|
||||||
\indexSection #"H" \markup { "H" }
|
\indexSection #"H" \markup { "H" }
|
||||||
\indexSection #"I" \markup { "I" }
|
\indexSection #"I" \markup { "I" }
|
||||||
\indexSection #"J" \markup { "J" }
|
\indexSection #"J" \markup { "J" }
|
||||||
\indexSection #"K" \markup { "K" }
|
\indexSection #"K" \markup { "K" }
|
||||||
\indexSection #"L" \markup { "L" }
|
\indexSection #"L" \markup { "L" }
|
||||||
\indexSection #"M" \markup { "M" }
|
\indexSection #"M" \markup { "M" }
|
||||||
\indexSection #"N" \markup { "N" }
|
\indexSection #"N" \markup { "N" }
|
||||||
\indexSection #"O" \markup { "O" }
|
\indexSection #"O" \markup { "O" }
|
||||||
\indexSection #"P" \markup { "P" }
|
\indexSection #"P" \markup { "P" }
|
||||||
\indexSection #"Q" \markup { "Q" }
|
\indexSection #"Q" \markup { "Q" }
|
||||||
\indexSection #"R" \markup { "R" }
|
\indexSection #"R" \markup { "R" }
|
||||||
\indexSection #"S" \markup { "S" }
|
\indexSection #"S" \markup { "S" }
|
||||||
\indexSection #"T" \markup { "T" }
|
\indexSection #"T" \markup { "T" }
|
||||||
\indexSection #"U" \markup { "U" }
|
\indexSection #"U" \markup { "U" }
|
||||||
\indexSection #"V" \markup { "V" }
|
\indexSection #"V" \markup { "V" }
|
||||||
\indexSection #"W" \markup { "W" }
|
\indexSection #"W" \markup { "W" }
|
||||||
\indexSection #"X" \markup { "X" }
|
\indexSection #"X" \markup { "X" }
|
||||||
\indexSection #"Y" \markup { "Y" }
|
\indexSection #"Y" \markup { "Y" }
|
||||||
\indexSection #"Z" \markup { "Z" }
|
\indexSection #"Z" \markup { "Z" }
|
||||||
\markuplist {
|
\markuplist {
|
||||||
\index-in-columns-with-title #'alphabetical \column {
|
\index-in-columns-with-title #'alphabetical \column {
|
||||||
\title-to-pdf-toc "Inhaltsverzeichnis"
|
|
||||||
\fontsize #5 \sans \bold \fill-line { \null "Inhaltsverzeichnis" \null }
|
\fontsize #5 \sans \bold \fill-line { \null "Inhaltsverzeichnis" \null }
|
||||||
\vspace #.5
|
\vspace #.5
|
||||||
\justify {
|
\justify {
|
||||||
@@ -169,7 +134,16 @@ Hier steht lustiger Text"
|
|||||||
}
|
}
|
||||||
\vspace #1
|
\vspace #1
|
||||||
}
|
}
|
||||||
\write-toc-csv %gibt eine csv Datei mit allen Liedern aus
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
\bookpart {
|
||||||
|
\markuplist {
|
||||||
|
\index-in-columns-with-title #'categories \column {
|
||||||
|
\fontsize #5 \sans \bold \fill-line { \null "Inhaltsverzeichnis nach Kategorien" \null }
|
||||||
|
\vspace #1
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
Submodule lilypond-common-includes updated: 71c8c0385c...bedb2c0e22
@@ -1,14 +0,0 @@
|
|||||||
#(ly:set-option 'relative-includes #t)
|
|
||||||
#(define include-path-unextended (if (defined? 'include-path-unextended) include-path-unextended #t))
|
|
||||||
#(if include-path-unextended
|
|
||||||
(let* ((custom-include-dir (dirname (current-filename)))
|
|
||||||
(project-dir (dirname custom-include-dir))
|
|
||||||
(pool-dir (string-append project-dir file-name-separator-string "lilypond-song-includes")))
|
|
||||||
(ly:parser-append-to-include-path custom-include-dir)
|
|
||||||
(ly:parser-append-to-include-path pool-dir))
|
|
||||||
(set! include-path-unextended #f))
|
|
||||||
|
|
||||||
customStyleOverridesFile = "custom_style_overrides.ily"
|
|
||||||
|
|
||||||
\include "categories.ily"
|
|
||||||
\include "../lilypond-common-includes/public_includes/layout_top.ily"
|
|
||||||
9
lilypond-custom-includes/base_config.ly
Normal file
9
lilypond-custom-includes/base_config.ly
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
#(ly:set-option 'relative-includes #t)
|
||||||
|
|
||||||
|
defaultSongStyle = #'börnel
|
||||||
|
customStyleOverridesFile = "../lilypond-custom-includes/custom_style_overrides.ly"
|
||||||
|
|
||||||
|
\include "categories.ly"
|
||||||
|
\include "../lilypond-common-includes/general_include.ly"
|
||||||
|
AUTHOR_DATA = #(call-with-input-file "../../data/authors.json" json->scm)
|
||||||
|
SONG_DATA = #(call-with-input-file "../../data/songs.json" json->scm)
|
||||||
@@ -1,28 +0,0 @@
|
|||||||
songFormatAndSize = "a5"
|
|
||||||
songMargin = 5
|
|
||||||
songInfoFontSize = 0
|
|
||||||
songInfoLineWidthFraction = 0.9
|
|
||||||
songTitleSize = 6
|
|
||||||
songTitleFont = "Liberation Sans"
|
|
||||||
songChordFont = "Liberation Sans"
|
|
||||||
songLyricFont = "Liberation Sans"
|
|
||||||
songChordFontSeries = #'bold
|
|
||||||
songTextChordAlignment = #'left
|
|
||||||
songScoreChordFontSize = 2
|
|
||||||
songTextChordFontSize = \songScoreChordFontSize
|
|
||||||
songTextChordDistance = 2.8
|
|
||||||
songTextLineHeigth = 5.8
|
|
||||||
songTocColumns = 3
|
|
||||||
globalSize = 15
|
|
||||||
lyricSize = 1.6
|
|
||||||
stanzaFormat = "~a."
|
|
||||||
romanStanzaFormat = "~@r."
|
|
||||||
refString = "Ref.:"
|
|
||||||
refStringWithNumbers = "Ref. ~a:"
|
|
||||||
% hübsche Wiederholungszeichen für den Liedtext
|
|
||||||
repStart = "𝄆"
|
|
||||||
repStop = "𝄇"
|
|
||||||
|
|
||||||
customChordPrintings = {
|
|
||||||
<c g>-\markup { \super "4" }
|
|
||||||
}
|
|
||||||
4
lilypond-custom-includes/custom_style_overrides.ly
Normal file
4
lilypond-custom-includes/custom_style_overrides.ly
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
customChordPrintings = {
|
||||||
|
<h dis' fis' e''>-\markup { \small "add11" }
|
||||||
|
<a cis' gis' h'>-\markup { \small "maj9" }
|
||||||
|
}
|
||||||
Submodule lilypond-song-includes deleted from 748a8bf685
@@ -1,988 +0,0 @@
|
|||||||
<snippets>
|
|
||||||
|
|
||||||
<!--
|
|
||||||
Created by Frescobaldi 3.2.
|
|
||||||
|
|
||||||
Every snippet is represented by:
|
|
||||||
title: title text
|
|
||||||
shortcuts: list of shortcut elements, every shortcut is a key sequence
|
|
||||||
body: the snippet text
|
|
||||||
|
|
||||||
The snippet id attribute can be the name of a builtin snippet or a random
|
|
||||||
name like 'n123456'. In the latter case, the title is used to determine
|
|
||||||
whether a snippet is new or updated.
|
|
||||||
-->
|
|
||||||
|
|
||||||
<snippet id="n935672">
|
|
||||||
<title>Abstand </title>
|
|
||||||
<shortcuts />
|
|
||||||
<body>%\vspace(#2)</body>
|
|
||||||
</snippet>
|
|
||||||
|
|
||||||
<snippet id="n258882">
|
|
||||||
<title>Abstand Seitenrand/oberstes Notensystem</title>
|
|
||||||
<shortcuts />
|
|
||||||
<body>HEADER = \bookpart {
|
|
||||||
\paper {
|
|
||||||
top-system-spacing.padding = 6 %Abstand zwischen Seitenrand und obersten Notensystem (wenn was anderes da steht wie z.B. Titel/ Text, greift das nicht) gut um z.B. noten auf der zweiten Seite runter zu machen
|
|
||||||
}</body>
|
|
||||||
</snippet>
|
|
||||||
|
|
||||||
<snippet id="n776888">
|
|
||||||
<title>Abstand Titel/Noten</title>
|
|
||||||
<shortcuts />
|
|
||||||
<body>% nach HEADER = \bookpart {
|
|
||||||
\paper {
|
|
||||||
markup-system-spacing.padding = 2
|
|
||||||
}</body>
|
|
||||||
</snippet>
|
|
||||||
|
|
||||||
<snippet id="n471680">
|
|
||||||
<title>Abstand Titel/oberer Seitenrand</title>
|
|
||||||
<shortcuts />
|
|
||||||
<body>%titletopspace = 1 % nach titlesize</body>
|
|
||||||
</snippet>
|
|
||||||
|
|
||||||
<snippet id="titlecase">
|
|
||||||
<title>Auswahl der Groß-/Kleinschreibung des Titels</title>
|
|
||||||
<shortcuts />
|
|
||||||
<body>-*- python; selection: yes, keep;
|
|
||||||
text = text.title()
|
|
||||||
</body>
|
|
||||||
</snippet>
|
|
||||||
|
|
||||||
<snippet id="uppercase">
|
|
||||||
<title>Auswahl zu Großbuchstaben</title>
|
|
||||||
<shortcuts>
|
|
||||||
<shortcut>Ctrl+U</shortcut>
|
|
||||||
</shortcuts>
|
|
||||||
<body>-*- python; selection: yes, keep;
|
|
||||||
text = text.upper()
|
|
||||||
</body>
|
|
||||||
</snippet>
|
|
||||||
|
|
||||||
<snippet id="lowercase">
|
|
||||||
<title>Auswahl zu Kleinbuchstaben</title>
|
|
||||||
<shortcuts>
|
|
||||||
<shortcut>Ctrl+Shift+U</shortcut>
|
|
||||||
</shortcuts>
|
|
||||||
<body>-*- python; selection: yes, keep;
|
|
||||||
text = text.lower()
|
|
||||||
</body>
|
|
||||||
</snippet>
|
|
||||||
|
|
||||||
<snippet id="template_leadsheet">
|
|
||||||
<title>Basis-Leadsheet</title>
|
|
||||||
<shortcuts />
|
|
||||||
<body>-*- template; template-run;
|
|
||||||
\version "$LILYPOND_VERSION"
|
|
||||||
|
|
||||||
\header {
|
|
||||||
title = ""
|
|
||||||
}
|
|
||||||
|
|
||||||
global = {
|
|
||||||
\time 4/4
|
|
||||||
\key c \major
|
|
||||||
\tempo 4=100
|
|
||||||
}
|
|
||||||
|
|
||||||
chordNames = \chordmode {
|
|
||||||
\global
|
|
||||||
c1
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
melody = \relative c'' {
|
|
||||||
\global
|
|
||||||
c4 d e f
|
|
||||||
$CURSOR
|
|
||||||
}
|
|
||||||
|
|
||||||
words = \lyricmode {
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
\score {
|
|
||||||
<<
|
|
||||||
\new ChordNames \chordNames
|
|
||||||
\new FretBoards \chordNames
|
|
||||||
\new Staff { \melody }
|
|
||||||
\addlyrics { \words }
|
|
||||||
>>
|
|
||||||
\layout { }
|
|
||||||
\midi { }
|
|
||||||
}
|
|
||||||
</body>
|
|
||||||
</snippet>
|
|
||||||
|
|
||||||
<snippet id="template_blank_sheet_music_paper">
|
|
||||||
<title>Blank Music Sheet</title>
|
|
||||||
<shortcuts />
|
|
||||||
<body>-*- template; indent: no; template-run;
|
|
||||||
\version "${LILYPOND_VERSION}"
|
|
||||||
|
|
||||||
{
|
|
||||||
\repeat unfold 12${CURSOR}
|
|
||||||
{
|
|
||||||
s1
|
|
||||||
\break
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
\layout {
|
|
||||||
\context {
|
|
||||||
\Score
|
|
||||||
\remove "Bar_number_engraver"
|
|
||||||
}
|
|
||||||
\context {
|
|
||||||
\Staff
|
|
||||||
\remove "Clef_engraver"
|
|
||||||
\remove "Time_signature_engraver"
|
|
||||||
\remove "Bar_engraver"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
\paper {
|
|
||||||
indent = 0
|
|
||||||
ragged-last-bottom = ##f
|
|
||||||
top-system-spacing = #'((minimum-distance . 10))
|
|
||||||
last-bottom-spacing = #'((minimum-distance . 10))
|
|
||||||
}
|
|
||||||
|
|
||||||
\header {
|
|
||||||
tagline = ##f
|
|
||||||
}
|
|
||||||
|
|
||||||
</body>
|
|
||||||
</snippet>
|
|
||||||
|
|
||||||
<snippet id="template_choir_hymn">
|
|
||||||
<title>Chor-Hymnus</title>
|
|
||||||
<shortcuts />
|
|
||||||
<body>-*- template; template-run;
|
|
||||||
\version "$LILYPOND_VERSION"
|
|
||||||
|
|
||||||
\header {
|
|
||||||
title = ""
|
|
||||||
}
|
|
||||||
|
|
||||||
global = {
|
|
||||||
\time 4/4
|
|
||||||
\key c \major
|
|
||||||
\tempo 4=100
|
|
||||||
}
|
|
||||||
|
|
||||||
soprano = \relative c'' {
|
|
||||||
\global
|
|
||||||
$CURSORc4
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
alto = \relative c' {
|
|
||||||
\global
|
|
||||||
c4
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
tenor = \relative c' {
|
|
||||||
\global
|
|
||||||
c4
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
bass = \relative c {
|
|
||||||
\global
|
|
||||||
c4
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
verseOne = \lyricmode {
|
|
||||||
\set stanza = "1."
|
|
||||||
hi
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
verseTwo = \lyricmode {
|
|
||||||
\set stanza = "2."
|
|
||||||
ha
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
verseThree = \lyricmode {
|
|
||||||
\set stanza = "3."
|
|
||||||
ho
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
\score {
|
|
||||||
\new ChoirStaff <<
|
|
||||||
\new Staff \with {
|
|
||||||
midiInstrument = "choir aahs"
|
|
||||||
instrumentName = \markup \center-column { S A }
|
|
||||||
} <<
|
|
||||||
\new Voice = "soprano" { \voiceOne \soprano }
|
|
||||||
\new Voice = "alto" { \voiceTwo \alto }
|
|
||||||
>>
|
|
||||||
\new Lyrics \with {
|
|
||||||
\override VerticalAxisGroup #'staff-affinity = #CENTER
|
|
||||||
} \lyricsto "soprano" \verseOne
|
|
||||||
\new Lyrics \with {
|
|
||||||
\override VerticalAxisGroup #'staff-affinity = #CENTER
|
|
||||||
} \lyricsto "soprano" \verseTwo
|
|
||||||
\new Lyrics \with {
|
|
||||||
\override VerticalAxisGroup #'staff-affinity = #CENTER
|
|
||||||
} \lyricsto "soprano" \verseThree
|
|
||||||
\new Staff \with {
|
|
||||||
midiInstrument = "choir aahs"
|
|
||||||
instrumentName = \markup \center-column { T B }
|
|
||||||
} <<
|
|
||||||
\clef bass
|
|
||||||
\new Voice = "tenor" { \voiceOne \tenor }
|
|
||||||
\new Voice = "bass" { \voiceTwo \bass }
|
|
||||||
>>
|
|
||||||
>>
|
|
||||||
\layout { }
|
|
||||||
\midi { }
|
|
||||||
}
|
|
||||||
</body>
|
|
||||||
</snippet>
|
|
||||||
|
|
||||||
<snippet id="quotes_s">
|
|
||||||
<title>Einzelne typografische Anführungszeichen</title>
|
|
||||||
<shortcuts>
|
|
||||||
<shortcut>Ctrl+'</shortcut>
|
|
||||||
</shortcuts>
|
|
||||||
<body>-*- menu: text; python;
|
|
||||||
import lasptyqu
|
|
||||||
left, right = lasptyqu.preferred().secondary
|
|
||||||
if text:
|
|
||||||
text = left + text + right
|
|
||||||
else:
|
|
||||||
text = [left, CURSOR, right]
|
|
||||||
</body>
|
|
||||||
</snippet>
|
|
||||||
|
|
||||||
<snippet id="uncomment">
|
|
||||||
<title>Entkommentieren</title>
|
|
||||||
<shortcuts>
|
|
||||||
<shortcut>Ctrl+Alt+C, Ctrl+Alt+U</shortcut>
|
|
||||||
</shortcuts>
|
|
||||||
<body>-*- python; indent: no; menu: comment;
|
|
||||||
import re
|
|
||||||
|
|
||||||
def main():
|
|
||||||
text = globals()['text']
|
|
||||||
# determine state
|
|
||||||
for s in state[::-1]:
|
|
||||||
if s in ('lilypond', 'html', 'scheme'):
|
|
||||||
break
|
|
||||||
else:
|
|
||||||
s = 'lilypond'
|
|
||||||
|
|
||||||
def html(text):
|
|
||||||
if text:
|
|
||||||
text = text.replace('<!-- ', '')
|
|
||||||
text = text.replace(' -->', '')
|
|
||||||
text = text.replace('<!--', '')
|
|
||||||
text = text.replace('-->', '')
|
|
||||||
return text
|
|
||||||
|
|
||||||
def lilypond(text):
|
|
||||||
if text.lstrip().startswith('%{'):
|
|
||||||
if text.lstrip().startswith('%{ '):
|
|
||||||
text = text.lstrip()[3:]
|
|
||||||
else:
|
|
||||||
text = text.lstrip()[2:]
|
|
||||||
if text.rstrip().endswith('%}'):
|
|
||||||
text = text.rstrip()[:-2]
|
|
||||||
else:
|
|
||||||
if not text:
|
|
||||||
cursor.select(cursor.BlockUnderCursor)
|
|
||||||
text = cursor.selection().toPlainText()
|
|
||||||
text = re.compile(r'^(\s*)%+ ?', re.M).sub(r'\1', text)
|
|
||||||
return text
|
|
||||||
|
|
||||||
def scheme(text):
|
|
||||||
return re.compile(r'^(\s*);+', re.M).sub(r'\1', text)
|
|
||||||
|
|
||||||
if s == 'lilypond':
|
|
||||||
text = lilypond(text)
|
|
||||||
elif s == 'html':
|
|
||||||
text = html(text)
|
|
||||||
elif s == 'scheme':
|
|
||||||
text = scheme(text)
|
|
||||||
|
|
||||||
if text != cursor.selection().toPlainText():
|
|
||||||
cursor.insertText(text)
|
|
||||||
|
|
||||||
</body>
|
|
||||||
</snippet>
|
|
||||||
|
|
||||||
<snippet id="color_dialog">
|
|
||||||
<title>Farbe</title>
|
|
||||||
<shortcuts />
|
|
||||||
<body>-*- name: col; python; icon: applications-graphics;
|
|
||||||
|
|
||||||
# Insert a color from a dialog
|
|
||||||
|
|
||||||
|
|
||||||
import inputdialog
|
|
||||||
colors = {
|
|
||||||
(0, 0, 0): "black",
|
|
||||||
(255, 255, 255): "white",
|
|
||||||
(255, 0, 0): "red",
|
|
||||||
(0, 255, 0): "green",
|
|
||||||
(0, 0, 255): "blue",
|
|
||||||
(0, 255, 255): "cyan",
|
|
||||||
(255, 0, 255): "magenta",
|
|
||||||
(255, 255, 0): "yellow",
|
|
||||||
(128, 128, 128): "grey",
|
|
||||||
(128, 0, 0): "darkred",
|
|
||||||
(0, 128, 0): "darkgreen",
|
|
||||||
(0, 0, 128): "darkblue",
|
|
||||||
(0, 128, 128): "darkcyan",
|
|
||||||
(128, 0, 128): "darkmagenta",
|
|
||||||
(128, 128, 0): "darkyellow",
|
|
||||||
}
|
|
||||||
|
|
||||||
color = inputdialog.getColor(view)
|
|
||||||
if color is not None:
|
|
||||||
rgb = color.getRgb()[:-1]
|
|
||||||
|
|
||||||
if rgb in colors:
|
|
||||||
text = '#' + colors[rgb]
|
|
||||||
else:
|
|
||||||
rgb = tuple(map(lambda v: format(v / 255.0, ".4"), rgb))
|
|
||||||
text = "#(rgb-color {0} {1} {2})".format(*rgb)
|
|
||||||
</body>
|
|
||||||
</snippet>
|
|
||||||
|
|
||||||
<snippet id="n043320">
|
|
||||||
<title>Fretchord bauen</title>
|
|
||||||
<shortcuts />
|
|
||||||
<body>\group-verses {
|
|
||||||
\vspace #2
|
|
||||||
\nochordverse #"5."
|
|
||||||
#" "
|
|
||||||
\fret-chord #"x;o;1;2;1;2;" #"a:dim7"
|
|
||||||
}</body>
|
|
||||||
</snippet>
|
|
||||||
|
|
||||||
<snippet id="n976505">
|
|
||||||
<title>Katergorien</title>
|
|
||||||
<shortcuts />
|
|
||||||
<body>categories = "fahrt geschunkel ost"
|
|
||||||
|
|
||||||
% abend anti fahrt feier geschunkel herz irisch jahr jiddisch kanon medi morgen nord ost reisser russisch satz see trist volk Wandern
|
|
||||||
% bis zu drei Kategorien</body>
|
|
||||||
</snippet>
|
|
||||||
|
|
||||||
<snippet id="no_tagline">
|
|
||||||
<title>Keine Tagline</title>
|
|
||||||
<shortcuts />
|
|
||||||
<body>-*- name: nt; python; menu: properties;
|
|
||||||
text = 'tagline = ##f'
|
|
||||||
if state[-1] != 'header':
|
|
||||||
text = '\\header {\n%s\n}' % text
|
|
||||||
</body>
|
|
||||||
</snippet>
|
|
||||||
|
|
||||||
<snippet id="no_barnumbers">
|
|
||||||
<title>Keine Taktzahlen</title>
|
|
||||||
<shortcuts />
|
|
||||||
<body>-*- name: nb; python; menu: properties;
|
|
||||||
text = r'\remove "Bar_number_engraver"'
|
|
||||||
if state[-1] not in ('context', 'with'):
|
|
||||||
text = '\\context {\n\\Score\n%s\n}' % text
|
|
||||||
if state[-1] != 'layout':
|
|
||||||
text = '\\layout {\n%s\n}' % text
|
|
||||||
</body>
|
|
||||||
</snippet>
|
|
||||||
|
|
||||||
<snippet id="last_note">
|
|
||||||
<title>Letzte Note oder Akkord</title>
|
|
||||||
<shortcuts>
|
|
||||||
<shortcut>Ctrl+;</shortcut>
|
|
||||||
</shortcuts>
|
|
||||||
<body>-*- python; menu: music; symbol: note_ellipsis;
|
|
||||||
# This snippet reads back the last entered note or chord and
|
|
||||||
# inserts it again. It removes the octave mark from a note of the first
|
|
||||||
# note of a chord if the music is in relative mode.
|
|
||||||
|
|
||||||
import lydocument
|
|
||||||
import ly.lex.lilypond as lp
|
|
||||||
|
|
||||||
# space needed before cursor?
|
|
||||||
block = cursor.document().findBlock(cursor.selectionStart())
|
|
||||||
beforecursor = block.text()[:cursor.selectionStart()-block.position()]
|
|
||||||
spaceneeded = bool(beforecursor and beforecursor[-1] not in "\t ")
|
|
||||||
|
|
||||||
chordstart, chordend = None, None
|
|
||||||
notestart = None
|
|
||||||
relative = False
|
|
||||||
found = False
|
|
||||||
|
|
||||||
c = lydocument.cursor(cursor)
|
|
||||||
runner = lydocument.Runner.at(c, True)
|
|
||||||
|
|
||||||
for t in runner.backward():
|
|
||||||
if t == '\\relative':
|
|
||||||
relative = True
|
|
||||||
break
|
|
||||||
elif isinstance(t, (lp.Score, lp.Book, lp.BookPart, lp.Name)):
|
|
||||||
break
|
|
||||||
if found:
|
|
||||||
continue
|
|
||||||
if chordend is not None:
|
|
||||||
if isinstance(t, lp.ChordStart):
|
|
||||||
chordstart = runner.position()
|
|
||||||
found = True
|
|
||||||
continue
|
|
||||||
if isinstance(t, lp.ChordEnd):
|
|
||||||
chordend = runner.position() + len(t)
|
|
||||||
elif isinstance(t, lp.Note) and t not in ('R' ,'q', 's', 'r'):
|
|
||||||
notestart = runner.position()
|
|
||||||
found = True
|
|
||||||
|
|
||||||
if found:
|
|
||||||
if chordstart is not None:
|
|
||||||
text = []
|
|
||||||
removeOctave = 1 if relative else 0
|
|
||||||
c.start, c.end = chordstart, chordend
|
|
||||||
for t in lydocument.Source(c):
|
|
||||||
# remove octave from first pitch in relative
|
|
||||||
if isinstance(t, lp.Note):
|
|
||||||
removeOctave -= 1
|
|
||||||
elif isinstance(t, lp.Octave) and removeOctave == 0:
|
|
||||||
continue
|
|
||||||
text.append(t)
|
|
||||||
text = ''.join(text)
|
|
||||||
elif notestart is not None:
|
|
||||||
text = []
|
|
||||||
c.start, c.end = notestart, None
|
|
||||||
for t in lydocument.Source(c):
|
|
||||||
if isinstance(t, lp.Note):
|
|
||||||
text.append(t)
|
|
||||||
elif not relative and isinstance(t, lp.Octave):
|
|
||||||
text.append(t)
|
|
||||||
else:
|
|
||||||
break
|
|
||||||
text = ''.join(text)
|
|
||||||
if spaceneeded:
|
|
||||||
text = " " + text
|
|
||||||
</body>
|
|
||||||
</snippet>
|
|
||||||
|
|
||||||
<snippet id="midi_tempo">
|
|
||||||
<title>MIDI-Tempo</title>
|
|
||||||
<shortcuts />
|
|
||||||
<body>-*- name: mt; python;
|
|
||||||
text = ['tempoWholesPerMinute = #(ly:make-moment ', CURSOR, '100 4)']
|
|
||||||
if state[-1] not in ('context', 'with'):
|
|
||||||
text = ['\\context {\n\\Score\n'] + text + ['\n}']
|
|
||||||
if state[-1] != 'midi':
|
|
||||||
text = ['\\midi {\n'] + text + ['\n}']
|
|
||||||
</body>
|
|
||||||
</snippet>
|
|
||||||
|
|
||||||
<snippet id="m22">
|
|
||||||
<title>Moderne Taktart</title>
|
|
||||||
<shortcuts />
|
|
||||||
<body>-*- name: 22;
|
|
||||||
\numericTimeSignature
|
|
||||||
\time 2/2</body>
|
|
||||||
</snippet>
|
|
||||||
|
|
||||||
<snippet id="times23">
|
|
||||||
<title>N-Tolen</title>
|
|
||||||
<shortcuts>
|
|
||||||
<shortcut>Ctrl+3</shortcut>
|
|
||||||
</shortcuts>
|
|
||||||
<body>-*- menu: blocks; selection: strip;
|
|
||||||
\tuplet 3/2 { $SELECTION }</body>
|
|
||||||
</snippet>
|
|
||||||
|
|
||||||
<snippet id="n829189">
|
|
||||||
<title>Note in Klammern</title>
|
|
||||||
<shortcuts />
|
|
||||||
<body>\parenthesize d</body>
|
|
||||||
</snippet>
|
|
||||||
|
|
||||||
<snippet id="staff_size">
|
|
||||||
<title>Notenzeilen-Größe</title>
|
|
||||||
<shortcuts />
|
|
||||||
<body>-*- name: ss; python;
|
|
||||||
if state[-1] == 'music':
|
|
||||||
text = (
|
|
||||||
"\\set Staff.fontSize = #-1\n"
|
|
||||||
"\\override Staff.StaffSymbol #'staff-space = #(magstep -1)\n")
|
|
||||||
else:
|
|
||||||
text = (
|
|
||||||
"fontSize = #-1\n"
|
|
||||||
"\\override StaffSymbol #'staff-space = #(magstep -1)")
|
|
||||||
if state[-1] == 'new':
|
|
||||||
text = '\\with {\n%s\n}' % text
|
|
||||||
elif state[-1] not in ('context', 'with'):
|
|
||||||
text = '\\context {\n\\Staff\n%s\n}' % text
|
|
||||||
if state[-1] != 'layout':
|
|
||||||
text = '\\layout {\n%s\n}' % text
|
|
||||||
</body>
|
|
||||||
</snippet>
|
|
||||||
|
|
||||||
<snippet id="next_blank_line">
|
|
||||||
<title>Nächste Leerzeile</title>
|
|
||||||
<shortcuts>
|
|
||||||
<shortcut>Alt+Down</shortcut>
|
|
||||||
</shortcuts>
|
|
||||||
<body>-*- python; indent: no;
|
|
||||||
|
|
||||||
import cursortools
|
|
||||||
|
|
||||||
def main():
|
|
||||||
block = cursortools.next_blank(cursor.block())
|
|
||||||
if block:
|
|
||||||
cursor.setPosition(block.position() + block.length() - 1)
|
|
||||||
return cursor
|
|
||||||
|
|
||||||
</body>
|
|
||||||
</snippet>
|
|
||||||
|
|
||||||
<snippet id="repeatunfold">
|
|
||||||
<title>Repeat unfold</title>
|
|
||||||
<shortcuts />
|
|
||||||
<body>-*- menu: blocks; name: repunf; selection: strip;
|
|
||||||
\repeat unfold 2$CURSOR { $SELECTION }</body>
|
|
||||||
</snippet>
|
|
||||||
|
|
||||||
<snippet id="tagline_date_version">
|
|
||||||
<title>Tagline mit Datum und LilyPond-Version</title>
|
|
||||||
<shortcuts />
|
|
||||||
<body>tagline = \markup {
|
|
||||||
Engraved at
|
|
||||||
\simple #(strftime "%Y-%m-%d" (localtime (current-time)))
|
|
||||||
with \with-url #"http://lilypond.org/"
|
|
||||||
\line { LilyPond \simple #(lilypond-version) (http://lilypond.org/) }
|
|
||||||
}
|
|
||||||
</body>
|
|
||||||
</snippet>
|
|
||||||
|
|
||||||
<snippet id="tactus">
|
|
||||||
<title>Taktart (Zahl mit Note)</title>
|
|
||||||
<shortcuts />
|
|
||||||
<body>-*- name: tac;
|
|
||||||
\once \override Staff.TimeSignature #'style = #'()
|
|
||||||
\once \override Staff.TimeSignature #'stencil = #ly:text-interface::print
|
|
||||||
\once \override Staff.TimeSignature #'text = \markup {
|
|
||||||
\override #'(baseline-skip . 0.5)
|
|
||||||
\column { \number $CURSOR1$ANCHOR \tiny \note #"2" #-.6 }
|
|
||||||
}
|
|
||||||
</body>
|
|
||||||
</snippet>
|
|
||||||
|
|
||||||
<snippet id="n650477">
|
|
||||||
<title>Titelgröße</title>
|
|
||||||
<shortcuts />
|
|
||||||
<body> titlesize = 8 </body>
|
|
||||||
</snippet>
|
|
||||||
|
|
||||||
<snippet id="n221947">
|
|
||||||
<title>Tonart</title>
|
|
||||||
<shortcuts />
|
|
||||||
<body>\key c \major
|
|
||||||
% major=dur, minor=moll,
|
|
||||||
% 1# g-dur & e-moll, 2# d-dur und h-moll, 3# a-dur und fis-moll, 4# e-dur und cis-moll, 5# h-dur und gis-moll 6# fis-dur und dis-moll
|
|
||||||
% 1b f-dur und d-moll,2b b-dur und g-moll, 3b es-dur und c-moll, 4b as-dur und f-moll, 5b des-dur und b-moll, 6b ges-dur und es-moll
|
|
||||||
</body>
|
|
||||||
</snippet>
|
|
||||||
|
|
||||||
<snippet id="n732103">
|
|
||||||
<title>Unterstreichen textstrophe</title>
|
|
||||||
<shortcuts />
|
|
||||||
<body>\\underline { }</body>
|
|
||||||
</snippet>
|
|
||||||
|
|
||||||
<snippet id="repeat">
|
|
||||||
<title>Wiederholung</title>
|
|
||||||
<shortcuts>
|
|
||||||
<shortcut>Ctrl+Shift+R</shortcut>
|
|
||||||
</shortcuts>
|
|
||||||
<body>-*- menu: blocks; name: rep; selection: strip; symbol: bar_repeat_start;
|
|
||||||
\repeat volta 2 { $SELECTION }</body>
|
|
||||||
</snippet>
|
|
||||||
|
|
||||||
<snippet id="n175158">
|
|
||||||
<title>Wiederholung textstrophe</title>
|
|
||||||
<shortcuts />
|
|
||||||
<body>\\repStart \\repStop</body>
|
|
||||||
</snippet>
|
|
||||||
|
|
||||||
<snippet id="next_blank_line_select">
|
|
||||||
<title>Wähle bis zur nächsten Leerzeile aus</title>
|
|
||||||
<shortcuts>
|
|
||||||
<shortcut>Alt+Shift+Down</shortcut>
|
|
||||||
</shortcuts>
|
|
||||||
<body>-*- python; indent: no;
|
|
||||||
|
|
||||||
import cursortools
|
|
||||||
|
|
||||||
def main():
|
|
||||||
block = cursortools.next_blank(cursor.block())
|
|
||||||
if block:
|
|
||||||
cursor.setPosition(block.position() + block.length() - 1, cursor.KeepAnchor)
|
|
||||||
return cursor
|
|
||||||
|
|
||||||
</body>
|
|
||||||
</snippet>
|
|
||||||
|
|
||||||
<snippet id="previous_blank_line_select">
|
|
||||||
<title>Wähle bis zur vorherigen Leerzeile aus</title>
|
|
||||||
<shortcuts>
|
|
||||||
<shortcut>Alt+Shift+Up</shortcut>
|
|
||||||
</shortcuts>
|
|
||||||
<body>-*- python; indent: no;
|
|
||||||
|
|
||||||
import cursortools
|
|
||||||
|
|
||||||
def main():
|
|
||||||
block = cursortools.previous_blank(cursor.block())
|
|
||||||
if block:
|
|
||||||
cursor.setPosition(block.position() + block.length() - 1, cursor.KeepAnchor)
|
|
||||||
return cursor
|
|
||||||
|
|
||||||
</body>
|
|
||||||
</snippet>
|
|
||||||
|
|
||||||
<snippet id="removelines">
|
|
||||||
<title>Zeile(n) löschen</title>
|
|
||||||
<shortcuts>
|
|
||||||
<shortcut>Ctrl+K</shortcut>
|
|
||||||
</shortcuts>
|
|
||||||
<body>-*- python;
|
|
||||||
|
|
||||||
import cursortools
|
|
||||||
|
|
||||||
def main():
|
|
||||||
start = end = cursortools.block(cursor)
|
|
||||||
while end.position() + end.length() < cursor.selectionEnd():
|
|
||||||
end = end.next()
|
|
||||||
cursor.setPosition(start.position())
|
|
||||||
cursor.setPosition(end.position(), cursor.KeepAnchor)
|
|
||||||
cursor.movePosition(cursor.EndOfBlock, cursor.KeepAnchor)
|
|
||||||
cursor.movePosition(cursor.NextBlock, cursor.KeepAnchor)
|
|
||||||
cursor.removeSelectedText()
|
|
||||||
|
|
||||||
</body>
|
|
||||||
</snippet>
|
|
||||||
|
|
||||||
<snippet id="header">
|
|
||||||
<title>\header-Vorlage</title>
|
|
||||||
<shortcuts />
|
|
||||||
<body>-*- name: h; menu: blocks;
|
|
||||||
\header {
|
|
||||||
title = "$CURSOR"
|
|
||||||
composer = ""
|
|
||||||
tagline = \markup {
|
|
||||||
Engraved at
|
|
||||||
\simple #(strftime "%Y-%m-%d" (localtime (current-time)))
|
|
||||||
with \with-url #"http://lilypond.org/"
|
|
||||||
\line { LilyPond \simple #(lilypond-version) (http://lilypond.org/) }
|
|
||||||
}
|
|
||||||
}
|
|
||||||
</body>
|
|
||||||
</snippet>
|
|
||||||
|
|
||||||
<snippet id="onceoverride">
|
|
||||||
<title />
|
|
||||||
<shortcuts />
|
|
||||||
<body>-*- name: oo;
|
|
||||||
\once \override </body>
|
|
||||||
</snippet>
|
|
||||||
|
|
||||||
<snippet id="1voice">
|
|
||||||
<title />
|
|
||||||
<shortcuts>
|
|
||||||
<shortcut>Alt+0</shortcut>
|
|
||||||
</shortcuts>
|
|
||||||
<body>-*- name: 1v;
|
|
||||||
\oneVoice</body>
|
|
||||||
</snippet>
|
|
||||||
|
|
||||||
<snippet id="score">
|
|
||||||
<title />
|
|
||||||
<shortcuts />
|
|
||||||
<body>-*- menu: blocks;
|
|
||||||
\score {
|
|
||||||
$SELECTION
|
|
||||||
\layout {}
|
|
||||||
\midi {}
|
|
||||||
}
|
|
||||||
</body>
|
|
||||||
</snippet>
|
|
||||||
|
|
||||||
<snippet id="stanza1">
|
|
||||||
<title />
|
|
||||||
<shortcuts />
|
|
||||||
<body>-*- name: s1;
|
|
||||||
\set stanza = "1."
|
|
||||||
</body>
|
|
||||||
</snippet>
|
|
||||||
|
|
||||||
<snippet id="stanza2">
|
|
||||||
<title />
|
|
||||||
<shortcuts />
|
|
||||||
<body>-*- name: s2;
|
|
||||||
\set stanza = "2."
|
|
||||||
</body>
|
|
||||||
</snippet>
|
|
||||||
|
|
||||||
<snippet id="stanza3">
|
|
||||||
<title />
|
|
||||||
<shortcuts />
|
|
||||||
<body>-*- name: s3;
|
|
||||||
\set stanza = "3."
|
|
||||||
</body>
|
|
||||||
</snippet>
|
|
||||||
|
|
||||||
<snippet id="stanza4">
|
|
||||||
<title />
|
|
||||||
<shortcuts />
|
|
||||||
<body>-*- name: s4;
|
|
||||||
\set stanza = "4."
|
|
||||||
</body>
|
|
||||||
</snippet>
|
|
||||||
|
|
||||||
<snippet id="stanza5">
|
|
||||||
<title />
|
|
||||||
<shortcuts />
|
|
||||||
<body>-*- name: s5;
|
|
||||||
\set stanza = "5."
|
|
||||||
</body>
|
|
||||||
</snippet>
|
|
||||||
|
|
||||||
<snippet id="stanza6">
|
|
||||||
<title />
|
|
||||||
<shortcuts />
|
|
||||||
<body>-*- name: s6;
|
|
||||||
\set stanza = "6."
|
|
||||||
</body>
|
|
||||||
</snippet>
|
|
||||||
|
|
||||||
<snippet id="voice4">
|
|
||||||
<title />
|
|
||||||
<shortcuts>
|
|
||||||
<shortcut>Alt+4</shortcut>
|
|
||||||
</shortcuts>
|
|
||||||
<body>-*- name: v4;
|
|
||||||
\voiceFour</body>
|
|
||||||
</snippet>
|
|
||||||
|
|
||||||
<snippet id="voice1">
|
|
||||||
<title />
|
|
||||||
<shortcuts>
|
|
||||||
<shortcut>Alt+1</shortcut>
|
|
||||||
</shortcuts>
|
|
||||||
<body>-*- name: v1;
|
|
||||||
\voiceOne</body>
|
|
||||||
</snippet>
|
|
||||||
|
|
||||||
<snippet id="voice3">
|
|
||||||
<title />
|
|
||||||
<shortcuts>
|
|
||||||
<shortcut>Alt+3</shortcut>
|
|
||||||
</shortcuts>
|
|
||||||
<body>-*- name: v3;
|
|
||||||
\voiceThree</body>
|
|
||||||
</snippet>
|
|
||||||
|
|
||||||
<snippet id="voice2">
|
|
||||||
<title />
|
|
||||||
<shortcuts>
|
|
||||||
<shortcut>Alt+2</shortcut>
|
|
||||||
</shortcuts>
|
|
||||||
<body>-*- name: v2;
|
|
||||||
\voiceTwo</body>
|
|
||||||
</snippet>
|
|
||||||
|
|
||||||
<snippet id="n597649">
|
|
||||||
<title>anführungszeichen</title>
|
|
||||||
<shortcuts />
|
|
||||||
<body>„ “</body>
|
|
||||||
</snippet>
|
|
||||||
|
|
||||||
<snippet id="n431314">
|
|
||||||
<title>apostroph</title>
|
|
||||||
<shortcuts />
|
|
||||||
<body>’</body>
|
|
||||||
</snippet>
|
|
||||||
|
|
||||||
<snippet id="n301803">
|
|
||||||
<title>bridge noten</title>
|
|
||||||
<shortcuts />
|
|
||||||
<body>bridge = \relative c'' {
|
|
||||||
\global
|
|
||||||
\repeat volta2{
|
|
||||||
d2 a2
|
|
||||||
\tuplet3/2{g4 a h} fis2
|
|
||||||
d'2 a2
|
|
||||||
d4 cis h r4^\markup{3x}
|
|
||||||
}
|
|
||||||
\bar "|."
|
|
||||||
}</body>
|
|
||||||
</snippet>
|
|
||||||
|
|
||||||
<snippet id="n630496">
|
|
||||||
<title>bridge noten</title>
|
|
||||||
<shortcuts />
|
|
||||||
<body>bridge = \relative c'' {
|
|
||||||
\global
|
|
||||||
\repeat volta2{
|
|
||||||
d2 a2
|
|
||||||
\tuplet3/2{g4 a h} fis2
|
|
||||||
d'2 a2
|
|
||||||
d4 cis h r4^\markup{3x}
|
|
||||||
}
|
|
||||||
\bar "|."
|
|
||||||
}
|
|
||||||
</body>
|
|
||||||
</snippet>
|
|
||||||
|
|
||||||
<snippet id="n166584">
|
|
||||||
<title>bridge text + einbau in group-verses</title>
|
|
||||||
<shortcuts />
|
|
||||||
<body>
|
|
||||||
\score {
|
|
||||||
<<
|
|
||||||
\chords { g2 d2 fis2 h2:m g2 d2 fis2 h4:m}
|
|
||||||
\new Staff { \bridge }
|
|
||||||
\addlyrics {
|
|
||||||
\set stanza = "Bridge:"
|
|
||||||
Jo, ho, ho, ho, ho, ho. Jo, ho ho ho ho. }
|
|
||||||
>> \layout { \generalLayout }
|
|
||||||
}</body>
|
|
||||||
</snippet>
|
|
||||||
|
|
||||||
<snippet id="n548402">
|
|
||||||
<title>fermate</title>
|
|
||||||
<shortcuts />
|
|
||||||
<body>\fermata </body>
|
|
||||||
</snippet>
|
|
||||||
|
|
||||||
<snippet id="n124096">
|
|
||||||
<title>fett in textstrophe</title>
|
|
||||||
<shortcuts />
|
|
||||||
<body>\\bold { }</body>
|
|
||||||
</snippet>
|
|
||||||
|
|
||||||
<snippet id="n650709">
|
|
||||||
<title>klammern gepunktet</title>
|
|
||||||
<shortcuts />
|
|
||||||
<body>\once \slurDotted c4</body>
|
|
||||||
</snippet>
|
|
||||||
|
|
||||||
<snippet id="n405405">
|
|
||||||
<title>klammern gepunktet ignorieren:</title>
|
|
||||||
<shortcuts />
|
|
||||||
<body> \set ignoreMelismata = ##t dei -- ner \unset ignoreMelismata
|
|
||||||
</body>
|
|
||||||
</snippet>
|
|
||||||
|
|
||||||
<snippet id="n484766">
|
|
||||||
<title>klammern um Akkord in textstrophe</title>
|
|
||||||
<shortcuts />
|
|
||||||
<body>(jetzt,\\\\klamm{d:m})</body>
|
|
||||||
</snippet>
|
|
||||||
|
|
||||||
<snippet id="n875332">
|
|
||||||
<title>klammern um textstrophe</title>
|
|
||||||
<shortcuts />
|
|
||||||
<body>\\concat{\\char ##x28 Klammer} auf und Klammer \\concat{zu \\char ##x29 }"</body>
|
|
||||||
</snippet>
|
|
||||||
|
|
||||||
<snippet id="n142264">
|
|
||||||
<title>kursiv in textstrophe</title>
|
|
||||||
<shortcuts />
|
|
||||||
<body>\\italic { }</body>
|
|
||||||
</snippet>
|
|
||||||
|
|
||||||
<snippet id="n665054">
|
|
||||||
<title>markup unter den Noten</title>
|
|
||||||
<shortcuts />
|
|
||||||
<body>_\markup {\italic "čaj’ šukarije!"}</body>
|
|
||||||
</snippet>
|
|
||||||
|
|
||||||
<snippet id="n999473">
|
|
||||||
<title>markup über den Noten</title>
|
|
||||||
<shortcuts />
|
|
||||||
<body>^\markup {\italic "čaj’ šukarije!"}</body>
|
|
||||||
</snippet>
|
|
||||||
|
|
||||||
<snippet id="n657891">
|
|
||||||
<title>page-count</title>
|
|
||||||
<shortcuts />
|
|
||||||
<body>% nach HEADER = \bookpart {
|
|
||||||
\paper {
|
|
||||||
%page-count = #1
|
|
||||||
}</body>
|
|
||||||
</snippet>
|
|
||||||
|
|
||||||
<snippet id="n886515">
|
|
||||||
<title>spalten</title>
|
|
||||||
<shortcuts />
|
|
||||||
<body>\override #'(verse-hspace . 2) % horizontaler Abstand zwischen den Spalten
|
|
||||||
\override #'(verse-vspace . 2) % vertikaler Abstand zwischen den Zeilen
|
|
||||||
\override #'(verse-cols . 2) % Anzahl der Spalten
|
|
||||||
% vspace funktioniert hier nicht mehr!
|
|
||||||
\group-verses {
|
|
||||||
\chordverse #"8."
|
|
||||||
#" "
|
|
||||||
|
|
||||||
\chordverse #"9."
|
|
||||||
#" "
|
|
||||||
|
|
||||||
\chordverse #"10."
|
|
||||||
#" "
|
|
||||||
} </body>
|
|
||||||
</snippet>
|
|
||||||
|
|
||||||
<snippet id="n356662">
|
|
||||||
<title>taktwechsel</title>
|
|
||||||
<shortcuts />
|
|
||||||
<body>\time 4/4</body>
|
|
||||||
</snippet>
|
|
||||||
|
|
||||||
<snippet id="n365782">
|
|
||||||
<title>trennstrich</title>
|
|
||||||
<shortcuts />
|
|
||||||
<body>– </body>
|
|
||||||
</snippet>
|
|
||||||
|
|
||||||
<snippet id="n190592">
|
|
||||||
<title>triolen</title>
|
|
||||||
<shortcuts />
|
|
||||||
<body>\tuplet 3/2{cis4 d e} </body>
|
|
||||||
</snippet>
|
|
||||||
|
|
||||||
<snippet id="n721746">
|
|
||||||
<title>wiederholung mit klammer 1 und 2</title>
|
|
||||||
<shortcuts />
|
|
||||||
<body>\repeat volta 2 {
|
|
||||||
c4 g'8 g4 g8
|
|
||||||
g4 d8 d4 d8
|
|
||||||
f4 f8 f (g) f }
|
|
||||||
\alternative {
|
|
||||||
{g es4~es4 es8}
|
|
||||||
{g4 d8 d d4}
|
|
||||||
}</body>
|
|
||||||
</snippet>
|
|
||||||
|
|
||||||
<snippet id="n821959">
|
|
||||||
<title>zweite Stimme in die Notenzeile</title>
|
|
||||||
<shortcuts />
|
|
||||||
<body>{ "noten einzelstimme" << { \voiceOne "noten"
|
|
||||||
} \new Voice { \voiceTwo \secondVoiceStyle "noten"
|
|
||||||
}} >> \oneVoice</body>
|
|
||||||
</snippet>
|
|
||||||
|
|
||||||
</snippets>
|
|
||||||
Reference in New Issue
Block a user