\input texinfo @c -*- coding: utf-8; mode: texinfo; documentlanguage: de -*-
@ignore
- Translation of GIT committish: 88b16bead0a1fbd13c5ebae6f3acb6a042ef89f0
+ Translation of GIT committish: 64feeff58e5ce3397de87188a08ac99f7ef8e37b
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
- Guide, node Updating translation committishes..
+ Guide, node Updating translation committishes.
@end ignore
@documentencoding UTF-8
@documentlanguage de
@omflanguage German
@end ignore
-@c Translators: Till Rettig
+@c Translators: Till Paala
@lilyTitlePage{Learning Manual}
@c -*- coding: utf-8; mode: texinfo; documentlanguage: de -*-
@ignore
- Translation of GIT committish: a6039d8aa56d66e91952a3b92ca7878d342e6ebe
+ Translation of GIT committish: 64feeff58e5ce3397de87188a08ac99f7ef8e37b
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
- Guide, node Updating translation committishes..
+ Guide, node Updating translation committishes.
@end ignore
@c \version "2.12.0"
die für eine Stimme auf einem System gebraucht werden.
@menu
+* Taktüberprüfung
* Versetzungszeichen und Tonartbezeichnung (Vorzeichen)::
* Bindebögen und Legatobögen::
* Artikulationszeichen und Lautstärke::
@end menu
+@node Taktüberprüfung
+@subsection Taktüberprüfung
+@translationof Bar checks
+
+Wenn sie auch nicht zwingend vorgeschrieben sind, so sollten Taktüberprüfungen
+in der Eingabedatei benutzt werden, um zu zeigen, wo Taktstriche
+normalerweise sein sollten. Sie werden mit dem @qq{Pipe}-Symbol
+( @code{|}) notiert (Taste AltGr + <). Mithilfe der Taktüberprüfungen
+kann das Programm sicherstellen, dass die eingegebenen Notenlängen auch
+volle Takte an den richtigen Stellen ergeben. Taktüberprüfungen erleichtern
+auch das Lesen des Eingabetextes, weil sie Ordnung in den Text bringen.
+
+@lilypond[verbatim,quote,relative=2]
+g1 | e1 | c2. c'4 | g4 c g e | c4 r r2 |
+@end lilypond
+
+@seealso
+Notationsreferenz:
+@ruser{Takt- und Taktzahlüberprüfung}.
+
+
@node Versetzungszeichen und Tonartbezeichnung (Vorzeichen)
@subsection Versetzungszeichen und Tonartbezeichnung (Vorzeichen)
@translationof Accidentals and key signatures
Sprachen zu benutzen, siehe @ruser{Notenbezeichnungen in anderen Sprachen}.
@lilypond[verbatim,quote,relative=2]
-cis1 ees fisis, aeses
+cis4 ees fisis, aeses
@end lilypond
@lilypond[verbatim,quote,relative=2]
\key d \major
-a1
+a1 |
\key c \minor
-a
+a1 |
@end lilypond
@smallspace
@lilypond[verbatim,quote,relative=2]
\key d \major
-d cis fis
+cis4 d e fis
@end lilypond
@noindent
@lilypond[verbatim,quote,relative=2]
\key aes \major
-b
+aes4 c b c
@end lilypond
Alle diese Versetzungszeichen ausdrücklich zu schreiben, bedeutet vielleicht
@seealso
Notationsreferenz:
@ruser{Notenbezeichnungen in anderen Sprachen},
-@ruser{Versetzungszeichen}, @ruser{Automatische Versetzungszeichen},
+@ruser{Versetzungszeichen},
+@ruser{Automatische Versetzungszeichen},
@ruser{Tonartbezeichnung}.
Glossar:
an die erste der zu verbindenden Noten hängt.
@lilypond[verbatim,quote,relative=2]
-g4~ g c2~
-c4~ c8 a8~ a2
+g4~ g c2~ | c4~ c8 a~ a2
@end lilypond
geben.
@lilypond[verbatim,quote,relative=2]
-a8(\( ais b c) cis2 b'2 a4 cis,\)
+g4\( g8( a) b( c) b4\)
@end lilypond
@sp 1
geschachtelt werden.
@lilypond[verbatim,quote,relative=2]
-c2~( c8 fis fis4~ fis2 g2)
+c4~( c8 d~ d4 e)
@end lilypond
(@q{-}) und einem entsprechenden Zeichen eingegeben werden:
@lilypond[verbatim,quote,relative=2]
-c-. c-- c-> c-^ c-+ c-_
+c4-^ c-+ c-- c-|
+c4-> c-. c2-_
@end lilypond
@subheading Fingersatz
werden, indem nach dem Minus (@q{-}) eine Zahl geschrieben wird:
@lilypond[verbatim,quote,relative=2]
-c-3 e-5 b-2 a-1
+c4-3 e-5 b-2 a-1
@end lilypond
Artikulationszeichen und Fingersätze werden normalerweise
Möglichkeit, wie die Artikulationen platziert werden sollen.
@lilypond[verbatim,quote,relative=2]
-c_-^1 d^. f^4_2-> e^-_+
+c4_-^1 d^. f^4_2-> e^-_+
@end lilypond
@subheading Dynamik
die Note hängt:
@lilypond[verbatim,quote,relative=2]
-c\ff c\mf c\p c\pp
+c4\ff c\mf c\p c\pp
@end lilypond
@notation{Crescendi} und @notation{Decrescendi} werden mit dem
Auch mit dem Befehl @code{\!} kann es explizit beendet werden.
@lilypond[verbatim,quote,relative=2]
-c2\< c2\ff\> c2 c2\!
+c4\< c\ff\> c c\!
@end lilypond
Text können Sie auf folgende Art in die Partitur einfügen:
@lilypond[verbatim,quote,relative=2]
-c1^"espr" a_"legato"
+c2^"espr" a_"legato"
@end lilypond
Zusätzliche Formatierung kann eingesetzt werden, wenn Sie den
@code{\markup}-Befehl benutzen:
@lilypond[verbatim,quote,relative=2]
-c1^\markup{ \bold espr }
-a1_\markup{
+c2^\markup { \bold espr }
+a2_\markup {
\dynamic f \italic \small { 2nd } \hspace #0.1 \dynamic p
}
@end lilypond
@q{]} (AltGr+9).
@lilypond[verbatim,quote,relative=2]
-a8[ ais] d[ ees r d] a b
+a8[ ais] d[ ees r d] c16 b a8
@end lilypond
Wenn Sie die automatischen Balken vollständig oder für
@lilypond[verbatim,quote,relative=2]
\autoBeamOff
-a8 c b4 d8. c16 b4
+a8 c b4 d8. c16 b4 |
\autoBeamOn
-a8 c b4 d8. c16 b4
+a8 c b4 d8. c16 b4 |
@end lilypond
heißt eine Viertelnote Auftakt und @code{\partial 8} eine Achtelnote.
@lilypond[verbatim,quote,relative=2]
-\partial 8
-f8 c2 d
+\partial 8 f8 |
+c2 d |
@end lilypond
@lilypond[verbatim,quote,relative=2]
\times 2/3 { f8 g a }
-\times 2/3 { c r c }
+\times 2/3 { c8 r c }
\times 2/3 { f,8 g16[ a g a] }
\times 2/3 { d4 a8 }
@end lilypond
und Vorschläge mit @code{\acciaccatura}.
@lilypond[verbatim,quote,relative=2]
-c2 \grace { a32[ b] } c2
-c2 \appoggiatura b16 c2
-c2 \acciaccatura b16 c2
+c2 \grace { a32[ b] } c2 |
+c2 \appoggiatura b16 c2 |
+c2 \acciaccatura b16 c2 |
@end lilypond
musikalischer Ausdruck.
@lilypond[verbatim,quote,relative=2]
-{ { a4 g } f g }
+{ { a4 g } f4 g }
@end lilypond
@lilypond[verbatim,quote]
\relative c'' {
<<
- { a4 g }
- { f e }
- { d b }
+ { a2 g }
+ { f2 e }
+ { d2 b }
>>
}
@end lilypond
@lilypond[verbatim,quote]
\relative c'' {
- c2 <<c e>>
- << { e f } { c <<b d>> } >>
+ c2 <<c e>> |
+ << { e f } { c <<b d>> } >> |
}
@end lilypond
@lilypond[verbatim,quote]
\relative c'' {
<<
- \new Staff { \clef treble c }
- \new Staff { \clef bass c,, }
+ \new Staff { \clef "treble" c4 }
+ \new Staff { \clef "bass" c,,4 }
>>
}
@end lilypond
@lilypond[verbatim,quote]
\relative c'' {
<<
- \new Staff { \clef treble \key d \major \time 3/4 c }
- \new Staff { \clef bass c,, }
+ \new Staff { \clef "treble" \key d \major \time 3/4 c4 }
+ \new Staff { \clef "bass" c,,4 }
>>
}
@end lilypond
@lilypond[verbatim,quote]
\relative c'' {
\new PianoStaff <<
- \new Staff { \time 2/4 c4 e g g, }
- \new Staff { \clef bass c,, c' e c }
+ \new Staff { \time 2/4 c4 e | g g, | }
+ \new Staff { \clef "bass" c,,4 c' | e c | }
>>
}
@end lilypond
diese Dauer wird nach der schließenden Klammer geschrieben.
@lilypond[verbatim,quote,relative=2]
-r4 <c e g>4 <c f a>2
+r4 <c e g> <c f a>2
@end lilypond
Akkorde sind im Grunde gleichwertig mit einfachen Noten:
spitzen Klammern gesetzt werden.
@lilypond[verbatim,quote,relative=2]
-r4 <c e g>8[ <c f a>]~ <c f a>2
-r4 <c e g>8( <c e g>\> <c e g>4 <c f a>\!)
+r4 <c e g>8[ <c f a>]~ <c f a>2 |
+r4 <c e g>8( <c e g>\> <c e g>4 <c f a>\!) |
@end lilypond
\relative c'' {
\key g \major
\time 6/8
- d4 b8 c4 a8 d4 b8 g4
+ d4 b8 c4 a8 | d4 b8 g4
}
@end lilypond
\relative c'' {
\key g \major
\time 6/8
- d4 b8 c4 a8 d4 b8 g4
+ d4 b8 c4 a8 | d4 b8 g4
}
\addlyrics {
- Girls and boys come out to play,
+ Girls and boys come | out to play,
}
>>
@end lilypond
\relative c'' {
\key g \major
\time 6/8
- d4 b8 c4 a8 d4 b8 g4
- g8 a4 b8 c b a d4 b8 g4.
+ d4 b8 c4 a8 | d4 b8 g4 g8 |
+ a4 b8 c b a | d4 b8 g4. |
}
\addlyrics {
- Girls and boys come out to play,
- The moon doth shine as bright as day;
+ Girls and boys come | out to play,
+ The | moon doth shine as | bright as day; |
}
>>
@end lilypond
-Die zusätzlichen Noten sind nicht korrekt an den Noten
-positioniert. Das Wort @notation{shine} sollte eigentlich zu
-zwei Noten gesungen werden, nicht nur zu einer. Das wird als
-@notation{Melisma} bezeichnet, wenn eine Silbe zu mehreren
-Noten gesungen wird. Es gibt mehrere Möglichkeiten, eine
-Silbe über mehrere Noten zu erweitern. Die einfachste ist,
-einen Legatobogen über die
-betroffenen Noten zu notieren, zu Einzelheiten siehe
-@ref{Bindebögen und Legatobögen}.
+Wenn dieser Code des obrigen Beispiels kompiliert wird, sollten derartige
+Warnungen in der Ausgabe auf der Konsole/in der Log-Datei auftauchen:
+
+@example
+test.ly:10:29: Warnung: Taktüberprüfung gescheitert bei: 5/8
+ The | moon doth shine as
+ | bright as day; |
+test.ly:10:46: Warnung: Taktüberprüfung gescheitert bei: 3/8
+ The | moon doth shine as | bright as day;
+ |
+@end example
+
+Das ist ein gutes Beispiel für den Nutzen von Taktüberprüfungen. Wenn man
+sich die Noten genauer anschaut, wird klar, dass die neue Textzeile nicht
+korrekt an den Noten ausgerichtet ist. Das Wort @notation{shine} sollte
+zu zwei Noten gesungen werden, nicht nur zu einer. Das nennt man ein
+@notation{Melisma}, eine Silbe Text zu mehreren Noten. Es gibt mehrere
+Möglichkeiten, eine Silbe über mehrere Noten zu verlängern. Die einfachste
+ist es, einen Legatobogen um die betroffenen Noten zu setzen, zu
+Einzelheiten siehe @ref{Bindebögen und Legatobögen}.
@lilypond[verbatim,quote]
<<
\relative c'' {
\key g \major
\time 6/8
- d4 b8 c4 a8 d4 b8 g4
- g8 a4 b8 c( b) a d4 b8 g4.
+ d4 b8 c4 a8 | d4 b8 g4 g8 |
+ a4 b8 c( b) a | d4 b8 g4. |
}
\addlyrics {
- Girls and boys come out to play,
- The moon doth shine as bright as day;
+ Girls and boys come | out to play,
+ The | moon doth shine as | bright as day; |
}
>>
@end lilypond
\relative c'' {
\key g \major
\time 6/8
- d4 b8 c4 a8 d4 b8 g4
- g8 a4 b8 c([ b]) a d4 b8 g4.
+ d4 b8 c4 a8 | d4 b8 g4 g8 |
+ a4 b8 c([ b]) a | d4 b8 g4. |
}
\addlyrics {
- Girls and boys come out to play,
- The moon doth shine as bright as day;
+ Girls and boys come | out to play,
+ The | moon doth shine as | bright as day; |
}
>>
@end lilypond
\relative c'' {
\key g \major
\time 6/8
- d4 b8 c4 a8 d4 b8 g4
- g8 a4 b8 c[ b] a d4 b8 g4.
+ d4 b8 c4 a8 | d4 b8 g4 g8 |
+ a4 b8 c[ b] a | d4 b8 g4. |
}
\addlyrics {
- Girls and boys come out to play,
- The moon doth shine _ as bright as day;
+ Girls and boys come | out to play,
+ The | moon doth shine _ as | bright as day; |
}
>>
@end lilypond
\relative c'' {
\key g \minor
\time 3/2
- g2 a bes bes( a)
- b c4.( bes8 a4. g8 fis4.) g8 fis1
+ g2 a bes | bes2( a) b2 |
+ c4.( bes8 a4. g8 fis4.) g8 | fis1
}
\addlyrics {
- When I am laid,
- am laid __ in earth,
+ When I am | laid,
+ am | laid __ in | earth,
}
>>
@end lilypond
\key g \major
\time 3/4
\partial 4
- d4 g4 g a8( b) g4 g4
- b8( c) d4 d e4 c2
+ d4 | g4 g a8( b) | g4 g b8( c) |
+ d4 d e | c2
}
\addlyrics {
- A -- way in a __ man -- ger,
- no __ crib for a bed, __
+ A -- | way in a __ | man -- ger,
+ no __ | crib for a | bed, __
}
>>
@end lilypond
@lilypond[verbatim,quote,noragged-right]
<<
\relative c' {
- \clef bass
+ \clef "bass"
\key c \major
\time 6/8
- c4.~ c8 d b c([ d]) b c d b c
+ c4.~ c8 d b | c8([ d]) b c d b | c8
}
\addlyrics {
- Lar -- go_al fac -- to -- tum del -- la cit -- tà
+ Lar -- go_al fac -- | to -- tum del -- la cit -- | tà
}
>>
@end lilypond
\key f \major
\time 6/8
\partial 8
- c8 c([ bes]) a a([ g]) f f'4. b, c4.~ c4
+ c8 | c8([ bes]) a a([ g]) f | f'4. b, | c4.~ c4
}
\addlyrics {
- Let flee -- cy flocks the hills a -- dorn, __
+ Let | flee -- cy flocks the | hills a -- | dorn, __
}
\relative c' {
\key f \major
\time 6/8
\partial 8
- r8 r4. r4 c8 a'([ g]) f f([ e]) d e([ d]) c bes'4
+ r8 | r4. r4 c8 | a'8([ g]) f f([ e]) d | e8([ d]) c bes'4
}
\addlyrics {
- Let flee -- cy flocks the hills a -- dorn,
+ Let | flee -- cy flocks the | hills a -- dorn,
}
>>
@end lilypond
}
Cello = \new Staff
{ \relative c {
- \clef bass
+ \clef "bass"
e2 d
}
}
TaktA = { \trioleA \trioleA \trioleA \trioleA }
\relative c'' {
- \TaktA \TaktA
+ \TaktA \TaktA
}
@end lilypond
\aFünfPapier
line-width = \Breite
@}
+
@{
c4^\Name
@}
@example
\version @w{"@version{}"}
+
\header @{
title = "Symphony"
composer = "Ich"
@lilypond[verbatim,quote]
{
- \clef bass
- c' b g, g,
- g, f, f c'
+ \clef "bass"
+ c'4 b g, g, |
+ g,4 f, f c' |
}
@end lilypond
@lilypond[verbatim,quote]
{
- \clef bass
- c, d, e, f,
- g, a, b, c
- d e f g
- a b c' d'
- \clef treble
- e' f' g' a'
- b' c'' d'' e''
- f'' g'' a'' b''
- c'''1
+ \clef "bass"
+ c,4 d, e, f, |
+ g,4 a, b, c |
+ d4 e f g |
+ a4 b c' d' |
+ \clef "treble"
+ e'4 f' g' a' |
+ b'4 c'' d'' e'' |
+ f''4 g'' a'' b'' |
+ c'''1 |
}
@end lilypond
{
\key a \major
\time 6/8
- cis''8. d''16 cis''8 e''4 e''8
- b'8. cis''16 b'8 d''4 d''8
+ cis''8. d''16 cis''8 e''4 e''8 |
+ b'8. cis''16 b'8 d''4 d''8 |
}
@end lilypond
\relative c'' {
\key a \major
\time 6/8
- cis8. d16 cis8 e4 e8
- b8. cis16 b8 d4 d8
+ cis8. d16 cis8 e4 e8 |
+ b8. cis16 b8 d4 d8 |
}
@end lilypond
@c -*- coding: utf-8; mode: texinfo; documentlanguage: de -*-
@ignore
- Translation of GIT committish: e18531db1f79fb685fbd16d6a2a67bf4b6c09915
+ Translation of GIT committish: 64feeff58e5ce3397de87188a08ac99f7ef8e37b
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
- Guide, node Updating translation committishes..
+ Guide, node Updating translation committishes.
@end ignore
@c \version "2.12.0"
@example
\version @w{"@version{}"}
+
\header @{ @}
+
\score @{
@var{...zusammengesetzter Musik-Ausdruck...} % Die gesamten Noten kommen hier hin!
\layout @{ @}
@cindex Variablen
@cindex Bezeichner
-Eine gute Möglichkeit zur Vereinfachung sind selbst definierte Variablen, wie auch gezeigt in @ref{Organizing pieces with variables}.
+Eine gute Möglichkeit zur Vereinfachung sind selbst definierte Variablen, wie auch gezeigt in @ref{Stücke durch Bezeichner organisieren}.
Alle Vorlagen verwenden diese Möglichkeit:
@example
von @code{melodie} (alles nach dem Gleichheitszeichen) und
fügt ihn immer dann ein, wenn ein @code{\melodie}
vorkommt. Die Namen sind frei wählbar, die Variable kann genauso
-gut @code{melodie}, @code{GLOBAL},
-@code{rechteHandklavier}, oder @code{foofoobarbaz} heißen. Für mehr
-Information siehe
-@ref{Tipparbeit sparen durch Bezeichner und Funktionen}.
+gut @code{melodie}, @code{GLOBAL}, @code{rechteHandKlavier},
+oder @code{foofoobarbaz} heißen.
Als Variablenname kann fast jeder beliebige Name benutzt werden,
allerdings dürfen nur Buchstaben vorkommen (also keine Zahlen, Unterstriche,
Sonderzeichen, etc.) und er darf nicht wie ein LilyPond-Befehl
-lauten. Die genauen Einschränkungen sind beschrieben in
-@ruser{Die Dateistruktur}.
+lauten. Für mehr Information siehe
+@ref{Tipparbeit durch Variablen und Funktionen ersparen}. Die genauen
+Einschränkungen sind beschrieben in @ruser{Die Dateistruktur}.
@seealso
Sie sich nicht erinnern, wie man Gesangstext notiert, lesen
Sie noch einmal @code{\addlyrics} in @ref{Setting simple songs}.
+@c KEEP LY
@lilypond[verbatim,quote,ragged-right]
\score {
<<
Also haben wir, wenn wir ein paar Noten und einen Bassschlüssel
für die linke Hand hinzufügen, folgendes Beispiel:
+@c KEEP LY
@lilypond[verbatim,quote,ragged-right]
melodie = \relative c'' { r4 d8\noBeam g, c4 r }
text = \lyricmode { And God said, }
oben = \relative c'' { <g d g,>2~ <g d g,> }
-unten = \relative c { b2 e2 }
+unten = \relative c { b2 e }
\score {
<<
r4 g8 g c4 c8 d |
e4 r8
<<
- { f c c }
+ { f8 c c }
\new Staff {
f8 f c
}
Der Ossia-Abschnitt kann auch oberhalb der Hauptnotenzeile
gesetzt werden:
+@c KEEP LY
@lilypond[verbatim,quote,ragged-right]
\new Staff = "Hauptzeile" {
\relative g' {
r4 g8 g c4 c8 d |
e4 r8
<<
- { f c c }
+ { f8 c c }
\new Staff \with {
- alignAboveContext = #"Hauptzeile" }
- { f8 f c }
+ alignAboveContext = #"Hauptzeile"
+ }{ f8 f c }
>>
r4 |
}
auch möglich:
@lilypond[quote,verbatim,fragment,ragged-right,relative=2]
- { g8\( a b[ c b\) a] }
+ { g8\( a b[ c b\) a] g4 }
@end lilypond
Im Allgemeinen können die verschiedenen Klammerarten,
@lilypond[quote,verbatim,fragment,ragged-right]
{
- r16[ g16 \times 2/3 {r16 e'8] }
- g16( a \times 2/3 {b d) e' }
- g8[( a \times 2/3 {b d') e'~]}
- \times 4/5 {e'32\( a b d' e'} a'4.\)
+ r16[ g \times 2/3 { r16 e'8] }
+ g16( a \times 2/3 { b16 d) e' }
+ g8[( a \times 2/3 { b8 d') e'~] } |
+ \times 4/5 { e'32\( a b d' e' } a'4.\)
}
@end lilypond
@lilypond[quote,verbatim,fragment,ragged-right,relative=2]
\key g \major
-% Voice "1" Voice "2"
-<< { g4 fis8( g) a4 g } \\ { d4 d d d } >>
+% Voice "1" Voice "2"
+<< { g4 fis8( g) a4 g } \\ { d4 d d d } >>
@end lilypond
Beachte, dass die Hälse der zweiten Stimme nun nach unten zeigen.
\new Staff \relative c' {
% Main voice
c16 d e f
- % Voice "1" Voice "2" Voice "3"
- << { g4 f e } \\ { r8 e4 d c8 ~ } >>
- << { d2 e2 } \\ { c8 b16 a b8 g ~ g2 } \\ { s4 b4 c2 } >>
+ % Voice "1" Voice "2" Voice "3"
+ << { g4 f e } \\ { r8 e4 d c8~ } >> |
+ << { d2 e } \\ { c8 b16 a b8 g~ g2 } \\ { s4 b c2 } >> |
}
@end lilypond
\new Staff \relative c' {
% Main voice
c16 d e f
- << % Bar 1
+ << % Bar 1
{
\voiceOneStyle
g4 f e
\voiceTwoStyle
r8 e4 d c8~
}
- >>
+ >> |
<< % Bar 2
% Voice 1 continues
- { d2 e2 }
+ { d2 e }
\\
% Voice 2 continues
- { c8 b16 a b8 g ~ g2 }
+ { c8 b16 a b8 g~ g2 }
\\
{
\voiceThreeStyle
- s4 b4 c2
+ s4 b c2
}
- >>
+ >> |
}
@end lilypond
@cindex relativer Notationsmodus und Polyphonie
Polyphonie ändert nicht die Verhältnisse der Noten innerhalb eines
-@code{\relative @{ @}}-Blocks. Jede Note wird weiterhin relativ zu
+@code{\relative}-Blocks. Jede Note wird weiterhin relativ zu
der vorherigen Note errechnet, oder relativ zur ersten Note des vorigen
Akkords. So ist etwa hier
\new Staff \relative c'' {
\key aes \major
<<
- { c2 aes4. bes8 } \\ { aes2 f4 fes } \\ { <ees c>2 des2 }
- >>
- <c ees aes c>1
+ { c2 aes4. bes8 } \\ { aes2 f4 fes } \\ { <ees c>2 des }
+ >> |
+ <c ees aes c>1 |
}
@end lilypond
<< % erste Stimme
{ c2 aes4. bes8 }
\\ % zweite Stimme
- { aes2 f4 fes }
+ { aes2 f4 fes }
\\ % Stimme drei auslassen
\\ % vierte Stimme
- { <ees c>2 des2 }
+ { <ees c>2 des }
>>
<c ees aes c>1
}
mit Text, Bögen und Dynamikbezeichnung anstellen:
@lilypond[quote,ragged-right,verbatim]
-\relative c'{
+\relative c' {
% Default behavior or behavior after \oneVoice
- c d8~ d e4( f g a) b-> c
+ c4 d8~ d e4( f | g4 a) b-> c |
}
@end lilypond
@lilypond[quote,ragged-right,verbatim]
-\relative c'{
+\relative c' {
\voiceOne
- c d8~ d e4 (f g a) b-> c
+ c4 d8~ d e4( f | g4 a) b-> c |
\oneVoice
- c, d8~ d e4 (f g a) b-> c
+ c,4 d8~ d e4( f | g4 a) b-> c |
}
@end lilypond
@lilypond[quote,ragged-right,verbatim]
-\relative c'{
+\relative c' {
\voiceTwo
- c d8~ d e4 (f g a) b-> c
+ c4 d8~ d e4( f | g4 a) b-> c |
\oneVoice
- c, d8~ d e4 (f g a) b-> c
+ c,4 d8~ d e4( f | g4 a) b-> c |
}
@end lilypond
% Start simultaneous section of three voices
<<
% Continue the main voice in parallel
- { g4 f e | d2 e2) | }
+ { g4 f e | d2 e) | }
% Initiate second voice
\new Voice {
% Set stems, etc., down
\voiceTwo
r8 e4 d c8~
<<
- { c8 b16 a b8 g~ g2 }
+ { c8 b16 a b8 g~ g2 | }
\new Voice {
\voiceThree
- s4 b4 c2
+ s4 b4 c2 |
}
>>
}
% Initiate first voice
\new Voice {
\voiceOne
- c16^( d e f g4 f e | d2 e2) |
+ c16^( d e f g4 f e | d2 e) |
}
% Initiate second voice
\new Voice {
\new Voice {
% Set stems, etc, up
\voiceThree
- s1 | s4 b4 c2 |
+ s1 | s4 b c2 |
}
>>
@end lilypond
@lilypond[quote,verbatim,fragment]
<<
- \new Voice = "one" \relative c'' {
- \autoBeamOff
- \time 2/4
- c4 b8. a16 g4. f8 e4 d c2
+ \new Voice = "one" {
+ \relative c'' {
+ \autoBeamOff
+ \time 2/4
+ c4 b8. a16 | g4. f8 | e4 d | c2 |
+ }
}
\new Lyrics \lyricsto "one" {
- No more let sins and sor -- rows grow.
+ No more let | sins and | sor -- rows | grow. |
}
>>
@end lilypond
nicht als Noten interpretiert werden kann.
@lilypond[quote,verbatim]
-global = { \time 6/8 \partial 8 \key f \major}
+global = { \key f \major \time 6/8 \partial 8 }
+
SopOneMusic = \relative c'' {
- c8 | c([ bes)] a a([ g)] f | f'4. b, | c4.~ c4 | }
-SopTwoMusic = \relative c' {
- r8 | r4. r4 c8 | a'([ g)] f f([ e)] d | e([ d)] c bes' | }
+ c8 | c8([ bes)] a a([ g)] f | f'4. b, | c4.~ c4
+}
SopOneLyrics = \lyricmode {
- Let | flee -- cy flocks the | hills a -- dorn, __ | }
+ Let | flee -- cy flocks the | hills a -- dorn, __
+}
+SopTwoMusic = \relative c' {
+ r8 | r4. r4 c8 | a'8([ g)] f f([ e)] d | e8([ d)] c bes'
+}
SopTwoLyrics = \lyricmode {
- Let | flee -- cy flocks the | hills a -- dorn, | }
+ Let | flee -- cy flocks the | hills a -- dorn,
+}
\score {
\new ChoirStaff <<
Variable wird oft auch mit @qq{global} bezeichnet.
@lilypond[quote,verbatim]
-TimeKey = { \time 4/4 \partial 4 \key c \major}
-SopMusic = \relative c' { c4 | e4. e8 g4 g | a a g | }
-AltoMusic = \relative c' { c4 | c4. c8 e4 e | f f e | }
-TenorMusic = \relative c { e4 | g4. g8 c4. b8 | a8 b c d e4 | }
-BassMusic = \relative c { c4 | c4. c8 c4 c | f8 g a b c4 | }
-VerseOne = \lyricmode {
- E -- | ter -- nal fa -- ther, | strong to save, | }
-VerseTwo = \lyricmode {
- O | Christ, whose voice the | wa -- ters heard, | }
-VerseThree = \lyricmode {
- O | Ho -- ly Spi -- rit, | who didst brood | }
-VerseFour = \lyricmode {
- O | Tri -- ni -- ty of | love and pow'r | }
+keyTime = { \key c \major \time 4/4 \partial 4 }
+
+SopMusic = \relative c' { c4 | e4. e8 g4 g | a4 a g }
+AltoMusic = \relative c' { c4 | c4. c8 e4 e | f4 f e }
+TenorMusic = \relative c { e4 | g4. g8 c4. b8 | a8 b c d e4 }
+BassMusic = \relative c { c4 | c4. c8 c4 c | f8 g a b c4 }
+
+VerseOne =
+ \lyricmode { E -- | ter -- nal fa -- ther, | strong to save, }
+VerseTwo =
+ \lyricmode { O | Christ, whose voice the | wa -- ters heard, }
+VerseThree =
+ \lyricmode { O | Ho -- ly Spi -- rit, | who didst brood }
+VerseFour =
+ \lyricmode { O | Tri -- ni -- ty of | love and pow'r }
\score {
\new ChoirStaff <<
\new Staff <<
\clef "treble"
- \new Voice = "Sop" { \voiceOne \TimeKey \SopMusic }
+ \new Voice = "Sop" { \voiceOne \keyTime \SopMusic }
\new Voice = "Alto" { \voiceTwo \AltoMusic }
\new Lyrics \lyricsto "Sop" { \VerseOne }
\new Lyrics \lyricsto "Sop" { \VerseTwo }
>>
\new Staff <<
\clef "bass"
- \new Voice = "Tenor" { \voiceOne \TimeKey \TenorMusic }
+ \new Voice = "Tenor" { \voiceOne \keyTime \TenorMusic }
\new Voice = "Bass" { \voiceTwo \BassMusic }
>>
>>
}
@end lilypond
-@cindex Strophe und Refrain
-@cindex Refrain
-
-Dieser Abschnitt schließt mit einem Beispiel, das eine Solo-Strophe
-mit anschließendem zweistimmigem Refrain auf zwei Systemen zeigt.
-Die Positionierung des einstimmigen Abschnitss und der mehrstimmigen
-Stelle ist etwas kompliziert; es braucht etwas Aufmerksamkeit,
-um der Erklärung folgen zu können.
-
-Beginnen wir mit einer @code{score}-Umgebung, in der eine
-Chorpartitur (@code{ChoirStaff}) gesetzt wird. Die Partitur soll
-schließlich mit der eckigen Klammer beginnen.
-Normalerweise bräuchten wir spitze Klammern im Quelltext
-nach dem @code{\new ChoirStaff}, damit die Systeme paralell
-gesetzt werden, aber hier wollen wir diese Parallelsierung
-ja erst nach dem Solo. Also benutzen wir geschweifte Klammern.
-Innerhalb der Chorpartitur erstellen wir zuerst das System,
-das die Strophe enthält. Es braucht Noten und Text parallel,
-also setzen wir hier die spitzen Klammern um @code{\new Voice}
-und @code{\new Lyrics}.
-
-@lilypond[quote,verbatim,ragged-right]
-versenotes = \relative c'' {
- \clef "treble"
- \key g \major
- \time 3/4
- g g g | b b b |
-}
-versewords = \lyricmode {
- One two three four five six
-}
-\score {
- \new ChoirStaff {
- \new Staff <<
- \new Voice = "verse" {
- \versenotes \break
- }
- \new Lyrics \lyricsto verse {
- \versewords
- }
- >>
- }
-}
-@end lilypond
-
-@noindent
-Damit erhalten wir die Strophe.
-
-Jetzt soll @notation{refrainA} auf dem selben System gesetzt
-werden, während gleichzeitig in einem neuen System darunter
-@notation{refrainB} gesetzt wird. Damit die Oberstimme das
-gleiche System benutzt, muss alles direkt auf den Zeilenumbruchbefehl
-(@code{\break} folgen, innerhalb der @notation{verse}-Stimme.
-Ja, tatsächlich, @emph{innerhalb} der @notation{verse}-Stimme.
-Hier haben wir diese parallele Stelle isoliert. Weitere Systeme
-könnten auf die gleiche Weise hinzugefügt werden.
-
-@example
-<<
- \refrainnotesA
- \new Lyrics \lyricsto verse @{
- \refrainwordsA
- @}
- \new Staff <<
- \new Voice = "refrainB" @{
- \refrainnotesB
- @}
- \new Lyrics \lyricsto "refrainB" @{
- \refrainwordsB
- @}
- >>
->>
-@end example
-
-Nun schließlich das Resultat mit zwei Systemen für den Refrain,
-man kann gut sehen, wie sich die parallele Stelle innherhalb
-der @notation{verse}-Stimme befindet.
-
-@lilypond[quote,verbatim, ragged-right]
-versenotes = \relative c'' {
- \clef "treble"
- \key g \major
- \time 3/4
- g g g | b b b |
-}
-refrainnotesA = \relative c'' {
- \time 2/4
- c c | g g \bar "|."
-}
-refrainnotesB = \relative c {
- \clef "bass"
- \key g \major
- c e | d d |
-}
-versewords = \lyricmode {
- One two three four five six
-}
-refrainwordsA = \lyricmode {
- la la la la
-}
-refrainwordsB = \lyricmode {
- dum dum dum dum
-}
-\score {
- \new ChoirStaff {
- \new Staff <<
- \new Voice = "verse" {
- \versenotes \break
- <<
- \refrainnotesA
- \new Lyrics \lyricsto "verse" {
- \refrainwordsA
- }
- \new Staff <<
- \new Voice = "refrainB" {
- \refrainnotesB
- }
- \new Lyrics \lyricsto "refrainB" {
- \refrainwordsB
- }
- >>
- >>
- }
- \new Lyrics \lyricsto "verse" {
- \versewords
- }
- >>
- }
-}
-@end lilypond
-
-@cindex book, Benutzung von
-@funindex \book
-@funindex book
-
-Dies ist zwar eine interessante und nützliche Übung um zu
-verstehen, wie sequentielle und parallele Notationsumgebungen
-funktionieren, in der Praxis würde man diesen Code aber
-vielleicht eher in zwei @code{\score}-Umgebungen trennnen
-und diese dann innerhalb einer @code{\book}-Umgebung
-einsetzen, wie im folgenden Beispiel demonstriert:
-
-@lilypond[quote,verbatim,ragged-right]
-versenotes = \relative c'' {
- \clef "treble"
- \key g \major
- \time 3/4
- g g g | b b b |
-}
-refrainnotesA = \relative c'' {
- \time 2/4
- c c | g g \bar "|."
-}
-refrainnotesB = \relative c {
- \clef "bass"
- \key g \major
- c e | d d |
-}
-versewords = \lyricmode {
- One two three four five six
-}
-refrainwordsA = \lyricmode {
- la la la la
-}
-refrainwordsB = \lyricmode {
- dum dum dum dum
-}
-\score {
- \new Staff <<
- \new Voice = "verse" {
- \versenotes
- }
- \new Lyrics \lyricsto "verse" {
- \versewords
- }
- >>
-}
-
-\score {
- \new ChoirStaff <<
- \new Staff <<
- \new Voice = "refrainA" {
- \refrainnotesA
- }
- \new Lyrics \lyricsto "refrainA" {
- \refrainwordsA
- }
- >>
- \new Staff <<
- \new Voice = "refrainB" {
- \refrainnotesB
- }
- \new Lyrics \lyricsto "refrainB" {
- \refrainwordsB
- }
- >>
- >>
-}
-@end lilypond
-
@seealso
Notation Reference: @ruser{Notation von Gesang}.
etwa den Quellcode und die Notenausgabe des folgenden Beispiels:
@lilypond[quote,verbatim,relative=2,fragment]
-cis4 cis2. g4
+cis4 cis2. | a4 a2. |
@end lilypond
Der Quellcode ist sehr kurz und knapp, während in der
<< % start of simultaneous staves section
\time 2/4
\new Staff { % create RH staff
- \key g \minor
\clef "treble"
+ \key g \minor
\new Voice { % create voice for RH notes
\relative c'' { % start of RH notes
d4 ees16 c8.
} % end of RH voice
} % end of RH staff
\new Staff << % create LH staff; needs two simultaneous voices
- \key g \minor
\clef "bass"
+ \key g \minor
\new Voice { % create LH voice one
\voiceOne
\relative g { % start of LH voice one notes
<<
\new Staff \relative c'' {
\set Staff.instrumentName = #"Soprano"
- c4 c
+ c2 c
}
\new Staff \relative c' {
- \set instrumentName = #"Alto" % Wrong!
- d4 d
+ \set instrumentName = #"Alto" % Wrong!
+ d2 d
}
>>
@end lilypond
@lilypond[quote,verbatim,ragged-right]
<<
\new Staff \relative c'' {
- ais4 aes
- }
+ ais2 aes
+ }
\new Staff \relative c'' {
\set Staff.extraNatural = ##f
- ais4 aes
- }
+ ais2 aes
+ }
>>
@end lilypond
@lilypond[quote,verbatim,ragged-right]
<<
\new Staff \relative c'' {
- ais4 aes
+ ais2 aes
}
\new Staff \relative c'' {
\set Score.extraNatural = ##f
- ais4 aes
+ ais2 aes
}
>>
@end lilypond
nicht vom letzten gesetzten Wert.
@lilypond[quote,verbatim,ragged-right,relative=1,fragment]
-c4
+c4 d
% make note heads smaller
\set fontSize = #-4
-d e
+e4 f |
% make note heads larger
\set fontSize = #2.5
-f g
+g4 a
% return to default size
\unset fontSize
-a b
+b4 c |
@end lilypond
Wir haben jetzt gesehen, wie sich die Werte von unterschiedlichen
@lilypond[quote,verbatim,ragged-right]
<<
\new Staff
- \relative c'' {
- gis ges aes ais
- }
- \new Staff \with { extraNatural = ##f }
- \relative c'' {
- gis ges aes ais
+ \relative c'' {
+ gis4 ges aes ais
+ }
+ \new Staff \with { extraNatural = ##f } {
+ \relative c'' {
+ gis ges aes ais
+ }
}
>>
@end lilypond
\new Score \with { extraNatural = ##f } <<
\new Staff {
\relative c'' {
- gis ges aes ais
+ gis4 ges aes ais
}
}
\new Staff {
\relative c'' {
- gis ges aes ais
+ gis4 ges aes ais
}
}
>>
\remove Staff_symbol_engraver
}
\relative c' {
- c4
+ c4 d
\set fontSize = #-4 % make note heads smaller
- d e
+ e4 f |
\set fontSize = #2.5 % make note heads larger
- f g
+ g4 a
\unset fontSize % return to default size
- a b
+ b4 c |
}
@end lilypond
\new Staff <<
\new Voice \with {
\consists Ambitus_engraver
+ } {
+ \relative c'' {
+ \voiceOne
+ c4 a b g
+ }
}
- \relative c'' {
- \voiceOne
- c a b g
- }
- \new Voice
- \relative c' {
- \voiceTwo
- c e d f
+ \new Voice {
+ \relative c' {
+ \voiceTwo
+ c4 e d f
+ }
}
>>
@end lilypond
@lilypond[quote,verbatim,ragged-right]
\new Staff \with {
- \consists Ambitus_engraver
- }
- <<
- \new Voice
- \relative c'' {
- \voiceOne
- c a b g
+ \consists Ambitus_engraver
+}
+<<
+ \new Voice {
+ \relative c'' {
+ \voiceOne
+ c4 a b g
+ }
}
- \new Voice
- \relative c' {
- \voiceTwo
- c e d f
+ \new Voice {
+ \relative c' {
+ \voiceTwo
+ c4 e d f
+ }
}
>>
@end lilypond
@lilypond[quote,verbatim,ragged-right]
\score {
<<
- \new Staff <<
+ \new Staff {
\relative c'' {
- c a b g
+ c4 a b g
}
- >>
- \new Staff <<
+ }
+ \new Staff {
\relative c' {
- c a b g
+ c4 a b g
}
- >>
- \new Staff <<
+ }
+ \new Staff {
\clef "G_8"
\relative c' {
- c a b g
+ c4 a b g
}
- >>
- \new Staff <<
+ }
+ \new Staff {
\clef "bass"
\relative c {
- c a b g
+ c4 a b g
}
- >>
+ }
>>
\layout {
\context {
@example
\version @w{"@version{}"}
melody = \relative c' @{
- \clef treble
+ \clef "treble"
\key c \major
\time 4/4
a4 b c d
@example
\version @w{"@version{}"}
+
melody = \relative c' @{
- \clef treble
+ \clef "treble"
\key c \major
\time 4/4
a4 b c d
@example
\version @w{"@version{}"}
+
SopranNoten = \relative c' @{
- \clef treble
+ \clef "treble"
\key c \major
\time 4/4
a4 b c d
@}
CelloNoten = \relative c @{
- \clef bass
+ \clef "bass"
\key c \major
\time 4/4
d4 g fis8 e d4
@lilypond[quote,verbatim,ragged-right,addversion]
sopranoMusic = \relative c' {
- \clef treble
+ \clef "treble"
\key c \major
\time 4/4
a4 b c d
}
celloMusic = \relative c {
- \clef bass
+ \clef "bass"
\key c \major
\time 4/4
d4 g fis8 e d4
@c The following should appear as music without code
@lilypond[quote,ragged-right]
global = { \key d \major \time 4/4 }
+
sopranoMusic = \relative c'' {
\clef "treble"
r4 d2 a4 | d4. d8 a2 | cis4 d cis2 |
}
sopranoWords = \lyricmode {
- Wor -- thy is the lamb that was slain
+ Wor -- thy | is the lamb | that was slain |
}
altoMusic = \relative a' {
\clef "treble"
Damit erhalten wir folgenden @code{ChoirStaff}:
@example
- \new ChoirStaff <<
- \new Staff = "sopranos" <<
- \set Staff.instrumentName = #"Sopran"
- \new Voice = "sopranos" @{
- \global
- \SopranNoten
- @}
- >>
- \new Lyrics \lyricsto "sopranos" @{
- \SopranText
- @}
- \new Staff = "altos" <<
- \set Staff.instrumentName = #"Alt"
- \new Voice = "altos" @{
- \global
- \AltNoten
- @}
- >>
- \new Lyrics \lyricsto "altos" @{
- \AltText
- @}
- \new Staff = "tenors" <<
- \set Staff.instrumentName = #"Tenor"
- \new Voice = "tenors" @{
- \global
- \TenorNoten
- @}
- >>
- \new Lyrics \lyricsto "tenors" @{
- \TenorText
- @}
- \new Staff = "basses" <<
- \set Staff.instrumentName = #"Bass"
- \new Voice = "basses" @{
- \global
- \BassNoten
- @}
- >>
- \new Lyrics \lyricsto "basses" @{
- \BassText
- @}
- >> % Ende ChoirStaff
+\new ChoirStaff <<
+ \new Staff = "sopranos" <<
+ \set Staff.instrumentName = #"Sopran"
+ \new Voice = "sopranos" @{
+ \global
+ \sopranoMusic
+ @}
+ >>
+ \new Lyrics \lyricsto "sopranos" @{
+ \sopranoWords
+ @}
+ \new Staff = "altos" <<
+ \set Staff.instrumentName = #"Alt"
+ \new Voice = "altos" @{
+ \global
+ \altoMusic
+ @}
+ >>
+ \new Lyrics \lyricsto "altos" @{
+ \altoWords
+ @}
+ \new Staff = "tenors" <<
+ \set Staff.instrumentName = #"Tenor"
+ \new Voice = "tenors" @{
+ \global
+ \tenorMusic
+ @}
+ >>
+ \new Lyrics \lyricsto "tenors" @{
+ \tenorWords
+ @}
+ \new Staff = "basses" <<
+ \set Staff.instrumentName = #"Bass"
+ \new Voice = "basses" @{
+ \global
+ \bassMusic
+ @}
+ >>
+ \new Lyrics \lyricsto "basses" @{
+ \bassWords
+ @}
+>> % end ChoirStaff
@end example
Als nächstes müssen wir das Klaviersystem bearbeiten.
r4 d2 a4 | d4. d8 a2 | cis4 d cis2 |
}
sopranoWords = \lyricmode {
- Wor -- thy is the lamb that was slain
+ Wor -- thy | is the lamb | that was slain |
}
altoMusic = \relative a' {
\clef "treble"
title = "Jesu, meine Freude"
composer = "J. S. Bach"
@}
-TimeKey = @{
- \time 4/4
- \key c \minor
-@}
+keyTime = @{ \key c \minor \time 4/4 @}
ManualOneVoiceOneMusic = @{ s1 @}
ManualOneVoiceTwoMusic = @{ s1 @}
ManualTwoMusic = @{ s1 @}
das zweite nur eine.
@example
- \new PianoStaff <<
- \new Staff = "ManualOne" <<
- \new Voice @{
- \ManualOneVoiceOneMusic
- @}
- \new Voice @{
- \ManualOneVoiceTwoMusic
- @}
- >> % end ManualOne Staff context
- \new Staff = "ManualTwo" <<
- \new Voice @{
- \ManualTwoMusic
- @}
- >> % end ManualTwo Staff context
- >> % end PianoStaff context
+\new PianoStaff <<
+ \new Staff = "ManualOne" <<
+ \new Voice @{
+ \ManualOneVoiceOneMusic
+ @}
+ \new Voice @{
+ \ManualOneVoiceTwoMusic
+ @}
+ >> % Ende ManualOne Systemkontext
+ \new Staff = "ManualTwo" <<
+ \new Voice @{
+ \ManualTwoMusic
+ @}
+ >> % Ende ManualTwo Systemkontext
+>> % Ende PianoStaff Kontext
@end example
Als nächstes soll das System für das Pedal hinzugefügt
kontrollieren, indem die obere Stimme ein
@code{\voiceOne}, die untere dagegen ein @code{\voiceTwo}
erhält. Die Taktart und Tonart werden mit unserer fertigen
-Variable @code{\TimeKey} eingefügt.
+Variable @code{\keyTime} eingefügt.
@example
\score @{
<< % PianoStaff and Pedal Staff must be simultaneous
\new PianoStaff <<
\new Staff = "ManualOne" <<
- \TimeKey % set time signature and key
+ \keyTime % set time signature and key
\clef "treble"
\new Voice @{
\voiceOne
@}
>> % end ManualOne Staff context
\new Staff = "ManualTwo" <<
- \TimeKey
+ \keyTime
\clef "bass"
\new Voice @{
\ManualTwoMusic
>> % end ManualTwo Staff context
>> % end PianoStaff context
\new Staff = "PedalOrgan" <<
- \TimeKey
+ \keyTime
\clef "bass"
\new Voice @{
\PedalOrganMusic
title = "Jesu, meine Freude"
composer = "J S Bach"
}
-TimeKey = {
- \time 4/4
- \key c \minor
-}
+keyTime = { \key c \minor \time 4/4 }
ManualOneVoiceOneMusic = \relative g' {
- g4 g f ees
- d2 c2
+ g4 g f ees |
+ d2 c2 |
}
ManualOneVoiceTwoMusic = \relative c' {
- ees16 d ees8~ ees16 f ees d c8 d~ d c~
- c c4 b8 c8. g16 c b c d
+ ees16 d ees8~ ees16 f ees d c8 d~ d c~ |
+ c8 c4 b8 c8. g16 c b c d |
}
ManualTwoMusic = \relative c' {
- c16 b c8~ c16 b c g a8 g~ g16 g aes ees
- f ees f d g aes g f ees d e8~ ees16 f ees d
+ c16 b c8~ c16 b c g a8 g~ g16 g aes ees |
+ f16 ees f d g aes g f ees d e8~ ees16 f ees d |
}
PedalOrganMusic = \relative c {
- r8 c16 d ees d ees8~ ees16 a, b g c b c8
- r16 g ees f g f g8 c,2
+ r8 c16 d ees d ees8~ ees16 a, b g c b c8 |
+ r16 g ees f g f g8 c,2 |
}
\score {
<< % PianoStaff and Pedal Staff must be simultaneous
\new PianoStaff <<
\new Staff = "ManualOne" <<
- \TimeKey % set time signature and key
+ \keyTime % set time signature and key
\clef "treble"
\new Voice {
\voiceOne
}
>> % end ManualOne Staff context
\new Staff = "ManualTwo" <<
- \TimeKey
+ \keyTime
\clef "bass"
\new Voice {
\ManualTwoMusic
>> % end ManualTwo Staff context
>> % end PianoStaff context
\new Staff = "PedalOrgan" <<
- \TimeKey
+ \keyTime
\clef "bass"
\new Voice {
\PedalOrganMusic
@lilypond[quote,verbatim,ragged-right]
hornNotes = \relative c'' { c4 b dis c }
+
\score {
{
\hornNotes
fragmentA = \relative c'' { a4 a8. b16 }
fragmentB = \relative c'' { a8. gis16 ees4 }
violin = \new Staff {
- \fragmentA
- \fragmentA
- \fragmentB
- \fragmentA
+ \fragmentA \fragmentA |
+ \fragmentB \fragmentA |
}
+
\score {
{
\violin
@lilypond[quote,verbatim,ragged-right]
dolce = \markup { \italic \bold dolce }
padText = { \once \override TextScript #'padding = #5.0 }
-fthenp=_\markup { \dynamic f \italic \small { 2nd } \hspace #0.1 dynamic p }
+fthenp=_\markup {
+ \dynamic f \italic \small { 2nd } \hspace #0.1 dynamic p
+}
+
violin = \relative c'' {
\repeat volta 2 {
c4._\dolce b8 a8 g a b
c,4.\fthenp b8 c4 c-.
}
}
+
\score {
{
\violin
}
-\layout{ragged-right=##t}
+ \layout{ragged-right=##t}
}
@end lilypond
c4._\markup @{ \italic \bold dolce @} b8 a8 g a b
\once \override TextScript #'padding = #5.0
c4.^"hi there!" d8 e' f g d
- c,4.\markup @{ \dynamic f \italic \small @{ 2nd @}
- \hspace #0.1 \dynamic p @} b8 c4 c-.
+ c,4.\markup @{
+ \dynamic f \italic \small @{ 2nd @} \hspace #0.1 \dynamic p
+ @}
+ b8 c4 c-. |
@}
@}
@end example
@lilypond[quote,verbatim,ragged-right]
padText =
-#(define-music-function (parser location padding) (number?)
- #{
- \once \override TextScript #'padding = #$padding
- #})
+#(define-music-function
+ (parser location padding)
+ (number?)
+ #{
+ \once \override TextScript #'padding = $padding
+ #})
\relative c''' {
- c4^"piu mosso" b a b
+ c4^"piu mosso" b a b |
\padText #1.8
- c4^"piu mosso" d e f
+ c4^"piu mosso" d e f |
\padText #2.6
- c4^"piu mosso" fis a g
+ c4^"piu mosso" fis a g |
}
@end lilypond
@example
hornNotes = \relative c @{
\time 2/4
- r4 f8 a cis4 f e d
+ r4 f8 a | cis4 f | e4 d |
@}
@end example
@example
\include "horn-music.ly"
+
\header @{
instrument = "Horn in F"
@}
@lilypond[quote,ragged-right]
\transpose f c' \relative c {
\time 2/4
- r4 f8 a cis4 f e d
+ r4 f8 a | cis4 f | e4 d |
}
@end lilypond
\transpose f c' \relative c {
\time 2/4
\set Score.skipBars = ##t
- R2*3
- r4 f8 a cis4 f e d
+ R2*3 |
+ r4 f8 a | cis4 f | e4 d |
}
@end lilypond
@end example
@noindent
-leading to
+woraus sich ergibt:
@lilypond[quote,ragged-right]
\relative c <<
\new Staff {
+ \clef "treble"
\time 2/4
- R2*3
- r4 f8 a cis4 f e d
+ R2*3 |
+ r4 f8 a | cis4 f | e4 d |
}
\new Staff {
- \clef bass
- r4 d,8 f | gis4 c | b bes |
- a8 e f4 | g d | gis f |
+ \clef "bass"
+ \time 2/4
+ r4 d,8 f | gis4 c | b4 bes |
+ a8 e f4 | g4 d | gis4 f |
}
>>
@end lilypond
@c -*- coding: utf-8; mode: texinfo; documentlanguage: de -*-
@ignore
- Translation of GIT committish: 940a3955254888e14a8c5ef7e835225e5cc3852c
+ Translation of GIT committish: 64feeff58e5ce3397de87188a08ac99f7ef8e37b
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
- Guide, node Updating translation committishes..
+ Guide, node Updating translation committishes.
@end ignore
@c \version "2.12.0"
@lilypondfile[verbatim,lilyquote,ragged-right,texidoc]
{vocal-ensemble-template-with-lyrics-aligned-below-and-above-the-staves.ly}
+@appendixsubsec Sologesang und zweistimmiger Refrain
+
+@lilypondfile[verbatim,lilyquote,ragged-right,texidoc]
+{vocal-ensemble-template-with-verse-and-refrain.ly}
+
@node Orchestervorlage
@appendixsec Orchestervorlage
@c -*- coding: utf-8; mode: texinfo; documentlanguage: de -*-
@ignore
- Translation of GIT committish: a6039d8aa56d66e91952a3b92ca7878d342e6ebe
+ Translation of GIT committish: 64feeff58e5ce3397de87188a08ac99f7ef8e37b
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
@menu
* Eine Quelldatei übersetzen::
* Arbeiten an Eingabe-Dateien::
+* Mit Fehlern umgehen::
* Wie soll das Handbuch gelesen werden::
@end menu
Handbuch gibt der Abschnitt @ref{Wie soll das Handbuch gelesen werden}.}
Zusätzlich unterscheidet LilyPond @strong{Groß- und Kleinschreibung}.
-@w{@code{ @{ c d e @}}} ist zulässiger Code,
-@w{@code{ @{ C D E @}}} dagegen resultiert in einer Fehlermeldung.
+@w{@samp{ @{ c d e @}}} ist zulässiger Code,
+@w{@samp{ @{ C D E @}}} dagegen resultiert in einer Fehlermeldung.
@smallspace
Um eine Notenhöhe um zwei (oder mehr!) Oktaven zu verändern,
werden sukzessive @code{''} oder @code{,,} benutzt -- es muss
sich dabei wirklich um zwei einzelne Apostrophen und nicht um das
-Anführungszeichen @code{"}@tie{} (Taste Shift+2) handeln! Auch
-die Anfangsoktave für einen @code{@w{\relative c'}}-Abschnitt kann so
-verändert werden.
+Anführungszeichen @code{"}@tie{} (Taste Shift+2) handeln!
@subheading Tondauern (Rhythmen)
@lilypond[verbatim,quote]
\relative c'' {
- a a a4. a8
+ a4 a a4. a8
a8. a16 a a8. a8 a4.
}
@end lilypond
@lilypond[verbatim,quote]
\relative c'' {
- a r r2
+ a4 r r2
r8 a r4 r4. r8
}
@end lilypond
@lilypond[verbatim,quote]
\relative c' {
- \clef treble
+ \clef "treble"
c1
- \clef alto
+ \clef "alto"
c1
- \clef tenor
+ \clef "tenor"
c1
- \clef bass
+ \clef "bass"
c1
}
@end lilypond
@lilypond[verbatim,quote]
\relative c, {
+ \clef "bass"
\time 3/4
- \clef bass
- c2 e8 c' g'2.
- f4 e d c4 c, r4
+ c2 e8 c'
+ g'2.
+ f4 e d
+ c4 c, r4
}
@end lilypond
Programmiersprachen: Sie enthalten eine Versionsbezeichnung,
es ist auf Groß- und Kleinschreibung
zu achten und Leerzeichen werden ignoriert. Ausdrücke werden
-mit geschweiften Klammern @{ @} eingeklammert und Kommentare
+mit geschweiften Klammern @w{@code{@{ @}}} eingeklammert und Kommentare
mit dem Prozentzeichen @code{%} auskommentiert
-oder mit @code{%@{ ... %@}} umgeben.
+oder mit @w{@code{%@{ @dots{} %@}}} umgeben.
Wenn das jetzt unverständlich erscheint, sind hier die Erklärungen:
Die Bedeutung eines Zeichens verändert sich, je
nachdem, ob es groß (@w{@code{A, B, S, T}}) oder klein
(@w{@code{a, b, s, t}}) geschrieben wird. Noten müssen
-immer klein geschrieben werden, @w{@code{@{ c d e @}}} funktioniert,
-während @w{@code{@{ C D E @}}} einen Fehler produziert.
+immer klein geschrieben werden, @w{@samp{@{ c d e @}}} funktioniert,
+während @w{@samp{@{ C D E @}}} einen Fehler produziert.
@item @strong{Leerzeichen:}
Es spielt keine Rolle, wie viele Leerzeichen oder Tabulatoren oder
leere Zeilen sich zwischen den Zeichen der Quelldatei befinden.
-@w{@code{@{ c d e @}}} bedeutet das Gleiche wie
-@w{@code{@{ c @ @ @ @ @ d e @}}} oder
+@w{@samp{@{ c d e @}}} bedeutet das Gleiche wie
+@w{@samp{@{ c @ @ @ @ @ d e @}}} oder
@example
-@{ c d
+@{ c4 d
e @}
@end example
@noindent
Natürlich ist das letzte Beispiel etwas schwer zu lesen. Eine gute Daumenregel
-ist es, Code-Blöcke mit der Tab-Taste oder zwei Leerzeichen einzurücken:
+ist es, Code-Blöcke mit zwei Leerzeichen einzurücken:
@example
@{
- c d e
+ c4 d e
@}
@end example
@item @strong{Ausdrücke:}
Auch der kleinste Abschnitt an LilyPond-Code muss in
-@strong{@{ geschweifte Klammern @}} eingeschlossen werden. Diese
+@strong{@{@tie{}geschweifte@tie{}Klammern@tie{}@}} eingeschlossen werden. Diese
Klammern zeigen LilyPond an, dass es sich um einen zusammengehörenden
musikalischen Ausdruck handelt, genauso wie Klammern @q{()} in der Mathematik.
Die Klammern sollten von jeweils einem Leerzeichen umgeben sein, um
Zweideutigkeiten auszuschließen, es sei denn, sie
befinden sich am Anfang oder Ende einer Zeile.
+
Ein LilyPond-Befehl gefolgt von einem einfachen Ausdruck
-in Klammern (wie etwa @code{\relative @{ @}})
+in Klammern (wie etwa @q{@w{@code{@bs{}relative c' @{ @dots{} @}}}})
wird auch als ein einzelner Musikausdruck gewertet.
@cindex Kommentare
ignoriert, weil sie sich in einem Block-Kommentar
befinden.
- f f e e d d c2
+ f4 f e e d d c2
%@}
@end example
@end itemize
+@node Mit Fehlern umgehen
+@section Mit Fehlern umgehen
+@translationof Dealing with errors
+
+@cindex Fehlerlösung
+
+Manchmal erstellt LlilyPond nicht das Notenbild, das Sie erwarten. Dieser
+Abschnitt stellt einige Links zur Verfügung, um Ihnen bei der Problemlösung
+möglicher Schwierigkeiten zu helfen.
+
+
+@menu
+* Allgemeine Fehlerlösungstipps::
+* Einige häufige Fehler::
+@end menu
+
+@node Allgemeine Fehlerlösungstipps
+@subsection Allgemeine Fehlerlösungstipps
+@translationof General troubleshooting tips
+
+Fehlerlösung für LilyPond-Probleme kann eine große Herausforderung für Menschen
+darstellen, die an eine graphische Benutzeroberfläche gewohnt sind, weil
+ungültige Eingabedateien erstellt werden können. Wenn das geschieht, ist
+eine logische Herangehensweise der beste Weg, das Problem zu identifizieren
+und zu lsöen. Einige Richtlinien, wie Sie diese Problemlösung erlernen
+können, finden sich in @rprogram{Troubleshooting}.
+
+
+@node Einige häufige Fehler
+@subsection Einige häufige Fehler
+@translationof Some common errors
+
+@cindex häufige Fehler
+@cindex Fehler, häufige
+
+Es gibt einige übliche Fehler, die schwierig zu lösen sind, wenn man nur die
+Fehlermeldungen der Log-Datei hat. Sie werden näher erklärt in
+@rprogram{Common errors}.
+
+
@node Wie die Handbücher gelesen werden sollen
@section Wie die Handbücher gelesen werden sollen
@cindex Konstruieren von Dateien, Hinweise
@cindex Hinweise zur Konstruktion von Dateien
-LilyPond-Code muss immer von @{ @} Zeichen oder einem
-@code{@w{\relative c'' @{ ... @}}} umgeben sein, wie
+LilyPond-Code muss immer von @code{@{ @}} Zeichen oder einem
+@w{@code{@bs{}relative c'' @{ @dots{} @}}} umgeben sein, wie
gezeigt in @ref{Arbeiten an Eingabe-Dateien}.
Im Rest dieses Handbuchs werden die meisten Beispiel allerdings darauf
verzichten. Um sie zu reproduzieren, können Sie den entsprechenden
Quellcode kopieren und in eine Textdatei einfügen, aber Sie
@strong{müssen} dabei
-@code{@w{\relative c'' @{ @}}} einfügen, wie hier gezeigt:
+@w{@code{@bs{}relative c'' @{ @dots{} @}}} einfügen, wie hier gezeigt:
@example
\relative c'' @{
- ... hier das Beispiel ...
+ @dots{}hier das Beispiel@dots{}
@}
@end example
Warum werden die Klammern hier meist weggelassen? Die meisten
der Beispiele können in ein längeres Musikstück hineinkopiert
werden, und dann ist es natürlich nicht sinnvoll, wenn auch noch
-@code{@w{\relative c'' @{ @}}} dazukommt; ein @code{\relative} darf
+@w{@code{@bs{}relative c'' @{ @dots{} @}}} dazukommt; ein @code{\relative} darf
nicht innerhalb eines anderen @code{\relative} gesetzt werden,
deshalb wird es hier weggelassen, damit die Beispiele auch innerhalb
eines anderen Kontextes funktionieren. Wenn bei jedem
-Beispiel @code{@w{\relative c'' @{ @}}} eingesetzt würde,
+Beispiel @w{@code{@bs{}relative c'' @{ @dots{} @}}} eingesetzt würde,
könnten Sie die kleinen Beispiele der Dokumentation
nicht einfach zu Ihrem eigenen Notentext hinzufügen.
Die meisten Benutzer wollen
im Handbuch weggelassen.
Denken Sie auch daran, dass jede LilyPond-Datei eine Versionsbezeichnung
-haben sollte. Weil die Beispiele in den Handbüchern Schnipsel
-und keine vollständigen Dateien sind, fehlt hier die Versionsbezeichnung.
-Sie sollten sie aber immer in Ihre eigenen Dateien einfügen.
+mit dem @code{\version}-Befehl haben sollte. Weil die Beispiele in den
+Handbüchern Schnipsel und keine vollständigen Dateien sind, fehlt hier
+die Versionsbezeichnung. Sie sollten sie aber immer in Ihre eigenen
+Dateien einfügen.
@node Anklickbare Beispiele
@c KEEP LY
@lilypond[quote]
\relative c'' {
- c-\markup { \bold \huge { Hier klicken! } }
+ c4-\markup { \bold \huge { Hier klicken! } }
}
@end lilypond
@c -*- coding: utf-8; mode: texinfo; documentlanguage: de -*-
@ignore
- Translation of GIT committish: 940a3955254888e14a8c5ef7e835225e5cc3852c
+ Translation of GIT committish: 64feeff58e5ce3397de87188a08ac99f7ef8e37b
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
- Guide, node Updating translation committishes..
+ Guide, node Updating translation committishes.
@end ignore
@c \version "2.12.0"
@cindex Notenkopf, Beispiel für Veränderung
@lilypond[quote,fragment,ragged-right,verbatim,relative=1]
-c d
+c4 d
\override NoteHead #'color = #red
-e f g
+e4 f |
\override NoteHead #'color = #green
-a b c
+g4 a b c |
@end lilypond
@cindex Notenkopf, Beispiel für Veränderung
@lilypond[quote,fragment,ragged-right,verbatim,relative=1]
-c d
+c4 d
\override NoteHead #'color = #red
-e f g
+e4 f |
\override NoteHead #'color = #green
-a
+g4 a
\revert NoteHead #'color
-b c
+b4 c |
@end lilypond
@strong{\once-Präfix}
@cindex Notenkopf, Beispiel für Veränderung
@lilypond[quote,fragment,ragged-right,verbatim,relative=1]
-c d
+c4 d
\once \override NoteHead #'color = #red
-e f g
+e4 f |
\once \override NoteHead #'color = #green
-a b c
+g4 a b c |
@end lilypond
@cindex Notenkopf, Beispiel für Veränderung
@lilypond[quote,fragment,ragged-right,verbatim,relative=1]
- <c e g>4
- \once \override NoteHead #'font-size = #-3
- <c e g>
- <c e g>
+<c e g>4
+\once \override NoteHead #'font-size = #-3
+<c e g>4
+<c e g>4
@end lilypond
Wie man sehen kann, beeinflusst @code{override} @emph{alle}
@cindex @code{\tweak}-Beispiel
@lilypond[quote,fragment,ragged-right,verbatim,relative=1]
- <c e g>4
- <c \tweak #'font-size #-3 e g>4
+<c e g>4
+<c \tweak #'font-size #-3 e g>4
@end lilypond
Beachten Sie, dass die Syntax des @code{\tweak}-Befehls sich
@cindex @code{\tweak}-Beispiel
@lilypond[quote,fragment,ragged-right,verbatim,relative=2]
-a ^Black
- -\tweak #'color #red ^Red
- -\tweak #'color #green _Green
+a4^"Black"
+ -\tweak #'color #red ^"Red"
+ -\tweak #'color #green _"Green"
@end lilypond
@noindent
\tweak #'direction #up
\times 4/3 {
\tweak #'color #red
- \times 2/3 { c8[ c8 c8] }
- \times 2/3 { c8[ c8 c8] }
- \times 2/3 { c8[ c8 c8] }
+ \times 2/3 { c8[ c c] }
+ \times 2/3 { c8[ c c] }
+ \times 2/3 { c8[ c c] }
}
@end lilypond
\once \override TupletNumber
#'text = #tuplet-number::calc-fraction-text
\times 2/3 {
- c[ c]
- c[ c]
+ c8[ c]
+ c8[ c]
\once \override TupletNumber #'transparent = ##t
\times 2/3 { c8[ c c] }
-\times 2/3 { c8[ c c] }
+ \times 2/3 { c8[ c c] }
}
@end lilypond
Das Vorgehen soll an einem konkreten Beispiel einer echten
Komposition demonstriert werden. Hier das Beispiel:
+@c Mozart, Die Zauberflöte Nr. 7 Duett
+
@lilypond[quote,verbatim,relative=2]
{
+ \key es \major
\time 6/8
{
- r4 b8 b[( g]) g
- g4[( e]) e d[( f]) a
- a4 g
+ r4 bes8 bes[( g]) g |
+ g8[( es]) es d[( f]) as |
+ as8 g
}
\addlyrics {
- The man who feels love's sweet e -- mo -- tion
+ The man who | feels love's sweet e -- | mo -- tion
}
}
@end lilypond
@lilypond[quote,verbatim,relative=2]
{
+ \key es \major
\time 6/8
{
% Increase thickness of all following slurs from 1.2 to 5.0
\override Slur #'thickness = #5.0
- r4 b8 b[( g]) g
- g4[( e]) e d[( f]) a
- a4 g
+ r4 bes8 bes[( g]) g |
+ g8[( es]) es d[( f]) as |
+ as8 g
}
\addlyrics {
- The man who feels love's sweet e -- mo -- tion
+ The man who | feels love's sweet e -- | mo -- tion
}
}
@end lilypond
{
\time 6/8
{
- r4 b8
+ \key es \major
+ r4 bes8
% Increase thickness of immediately following slur only
\once \override Slur #'thickness = #5.0
- b4[( g]) g
- g4[( e]) e d[( f]) a
- a4 g
+ bes8[( g]) g |
+ g8[( es]) es d[( f]) as |
+ as8 g
}
\addlyrics {
- The man who feels love's sweet e -- mo -- tion
+ The man who | feels love's sweet e -- | mo -- tion
}
}
@end lilypond
@lilypond[quote,verbatim,relative=2]
{
+ \key es \major
\time 6/8
{
- r4 b8
+ r4 bes8
% Increase thickness of immediately following slur only
\once \override Slur #'thickness = #5.0
- b4[( g]) g
+ bes[( g]) g |
% Increase thickness of immediately following slur only
\once \override Slur #'thickness = #5.0
- g4[( e]) e d[( f]) a
- a4 g
+ g8[( es]) es d[( f]) as |
+ as8 g
}
\addlyrics {
- The man who feels love's sweet e -- mo -- tion
+ The man who | feels love's sweet e -- | mo -- tion
}
}
@end lilypond
@lilypond[quote,verbatim,relative=2]
{
+ \key es \major
\time 6/8
{
- r4 b8
+ r4 bes8
% Increase thickness of all following slurs from 1.2 to 5.0
\override Slur #'thickness = #5.0
- b4[( g]) g
- g4[( e])
+ bes[( g]) g |
+ g8[( es]) es
% Revert thickness of all following slurs to default of 1.2
\revert Slur #'thickness
- e4 d[( f]) a
- a4 g
+ d8[( f]) as |
+ as8 g
}
\addlyrics {
- The man who feels love's sweet e -- mo -- tion
+ The man who | feels love's sweet e -- | mo -- tion
}
}
@end lilypond
@lilypond[quote,fragment,ragged-right,verbatim,relative=2]
{
+ \key es \major
\time 6/8
{
- r4 b8 b[( g]) g
- g4[( e]) e d[( f]) a
- a4 g
+ r4 bes8 bes[( g]) g |
+ g8[( es]) es d[( f]) as |
+ as8 g
}
\addlyrics {
\override LyricText #'font-shape = #'italic
- The man who feels love's sweet e -- mo -- tion
+ The man who | feels love's sweet e -- | mo -- tion
}
}
@end lilypond
\time 12/16
\override BarLine #'stencil = ##f
c4 b8 c d16 c d8
- g,8 a16 b8 c d4 e16
+ g,8 a16 b8 c d4 e16 |
e8
}
@end lilypond
@lilypond[quote,verbatim,relative=2]
{
- c c
+ c4 c
\once \override NoteHead #'stencil = #point-stencil
- c c
+ c4 c
}
@end lilypond
{
\time 12/16
\override Staff.BarLine #'break-visibility = #'#(#f #f #f)
- c4 b8 c d16 c d8
- g,8 a16 b8 c d4 e16
+ c4 b8 c d16 c d8 |
+ g,8 a16 b8 c d4 e16 |
e8
}
@end lilypond
{
\time 12/16
\override Staff.TimeSignature #'transparent = ##t
- c4 b8 c d16 c d8
- g,8 a16 b8 c d4 e16
+ c4 b8 c d16 c d8 |
+ g,8 a16 b8 c d4 e16 |
e8
}
@end lilypond
{
\time 12/16
\override Staff.TimeSignature #'stencil = ##f
- c4 b8 c d16 c d8
- g,8 a16 b8 c d4 e16
+ c4 b8 c d16 c d8 |
+ g,8 a16 b8 c d4 e16 |
e8
}
@end lilypond
{
\time 12/16
\override Staff.BarLine #'color = #white
- c4 b8 c d16 c d8
- g,8 a16 b8 c d4 e16
+ c4 b8 c d16 c d8 |
+ g,8 a16 b8 c d4 e16 |
e8
}
@end lilypond
{
\time 12/16
\override Staff.BarLine #'color = #(x11-color 'white)
- c4 b8 c d16 c d8
- g,8 a16 b8 c d4 e16
+ c4 b8 c d16 c d8 |
+ g,8 a16 b8 c d4 e16 |
e8
}
@end lilypond
{
\time 12/16
\override Staff.BarLine #'color = #(rgb-color 1 1 1)
- c4 b8 c d16 c d8
- g,8 a16 b8 c d4 e16
+ c4 b8 c d16 c d8 |
+ g,8 a16 b8 c d4 e16 |
e8
}
@end lilypond
\override Voice.NoteHead #'color = #(x11-color 'grey85)
\override Voice.Stem #'color = #(x11-color 'grey85)
\override Staff.BarLine #'color = #(x11-color 'grey10)
- c4 b8 c d16 c d8
- g,8 a16 b8 c d4 e16
+ c4 b8 c d16 c d8 |
+ g,8 a16 b8 c d4 e16 |
e8
}
@end lilypond
@cindex direction-Eigenschaft, Beispiel
@lilypond[quote,verbatim,relative=2]
-c-5 a-3 f-1 c'-5
+c4-5 a-3 f-1 c'-5
\override Fingering #'direction = #DOWN
-c-5 a-3 f-1 c'-5
+c4-5 a-3 f-1 c'-5
\override Fingering #'direction = #UP
-c-5 a-3 f-1 c'-5
+c4-5 a-3 f-1 c'-5
@end lilypond
Eine Beeinflussung der @code{direction}-Eigenschaft ist jedoch
@cindex Fingersatz-Beispiel
@lilypond[quote,verbatim,relative=2]
-c-5 a-3 f-1 c'-5
-c_5 a_3 f_1 c'_5
-c^5 a^3 f^1 c'^5
+c4-5 a-3 f-1 c'-5
+c4_5 a_3 f_1 c'_5
+c4^5 a^3 f^1 c'^5
@end lilypond
Die @code{direction}-Eigenschaft wirkt sich nicht auf
@cindex Fingersatz-Beispiel
@lilypond[quote,verbatim,relative=2]
-<c-5 g-3>
-<c-5 g-3 e-2>
-<c-5 g-3 e-2 c-1>
+<c-5 g-3>4
+<c-5 g-3 e-2>4
+<c-5 g-3 e-2 c-1>4
@end lilypond
@noindent
@cindex Fingersatz-Beispiel
@lilypond[quote,verbatim,relative=2]
-<c-5 g-3 e-2 c-1>
-<c^5 g_3 e_2 c_1>
-<c^5 g^3 e^2 c_1>
+<c-5 g-3 e-2 c-1>4
+<c^5 g_3 e_2 c_1>4
+<c^5 g^3 e^2 c_1>4
@end lilypond
Noch bessere Kontrolle über die Positionierung von Fingersatz für
@lilypond[quote,verbatim,relative=1]
\set fingeringOrientations = #'(left)
-<f-2>
+<f-2>4
<c-1 e-2 g-3 b-5>4
\set fingeringOrientations = #'(left)
-<f-2>
+<f-2>4
<c-1 e-2 g-3 b-5>4
\set fingeringOrientations = #'(up left down)
-<f-2>
+<f-2>4
<c-1 e-2 g-3 b-5>4
\set fingeringOrientations = #'(up left)
-<f-2>
+<f-2>4
<c-1 e-2 g-3 b-5>4
\set fingeringOrientations = #'(right)
-<f-2>
+<f-2>4
<c-1 e-2 g-3 b-5>4
@end lilypond
@lilypond[quote,fragment,ragged-right,verbatim,relative=1]
\override Fingering #'font-size = #-7
\set fingeringOrientations = #'(left)
-<f-2>
+<f-2>4
<c-1 e-2 g-3 b-5>4
\set fingeringOrientations = #'(left)
-<f-2>
+<f-2>4
<c-1 e-2 g-3 b-5>4
\set fingeringOrientations = #'(up left down)
-<f-2>
+<f-2>4
<c-1 e-2 g-3 b-5>4
\set fingeringOrientations = #'(up left)
-<f-2>
+<f-2>4
<c-1 e-2 g-3 b-5>4
\set fingeringOrientations = #'(right)
-<f-2>
+<f-2>4
<c-1 e-2 g-3 b-5>4
@end lilypond
= \markup { \small \bold Slower }
% Place dynamics above staff
\dynamicUp
-%Place following Ottava Bracket below Text Spanners
+% Place following Ottava Bracket below Text Spanners
\once \override Staff.OttavaBracket #'outside-staff-priority = #340
% Start Ottava Bracket
\ottava #1
Hier ein Beispiel, das die beiden Möglichkeiten veranschaulicht:
@lilypond[quote,verbatim,relative=2]
-c4( c^\markup { \tiny\sharp } d4.) c8
+c4( c^\markup { \tiny \sharp } d4.) c8
c4(
\once \override TextScript #'avoid-slur = #'inside
\once \override TextScript #'outside-staff-priority = ##f
-c4^\markup { \tiny\sharp } d4.) c8
+c4^\markup { \tiny \sharp } d4.) c8
\once \override Slur #'outside-staff-priority = #500
-c4( c^\markup\tiny\sharp d4.) c8
+c4( c^\markup { \tiny \sharp } d4.) c8
@end lilypond
Eine Änderung der @code{outside-staff-priority} kann auch dazu
@lilypond[quote,fragment,ragged-right,verbatim,relative=2]
c2^"Text1"
-c2^"Text2"
+c2^"Text2" |
\once \override TextScript #'outside-staff-priority = #500
c2^"Text3"
-c2^"Text4"
+c2^"Text4" |
@end lilypond
Damit wird zwar @qq{Text3} ganz richtig über @qq{Text4}
@lilypond[quote,fragment,ragged-right,verbatim,relative=2]
\textLengthOn % Cause notes to space out to accommodate text
c2^"Text1"
-c2^"Text2"
+c2^"Text2" |
c2^"Text3"
-c2^"Text4"
+c2^"Text4" |
@end lilypond
Dieses Verhalten wird mit dem @code{\textLengthOff}-Befehl
@lilypond[quote,fragment,ragged-right,verbatim,relative=2]
% This markup is short enough to fit without collision
-c2^"Tex"
-c''2
-R1
+c2^"Tex" c'' |
+R1 |
+
% This is too long to fit, so it is displaced upwards
-c,,2^"Text"
-c''2
-R1
+c,,2^"Text" c'' |
+R1 |
+
% Turn off collision avoidance
\once \override TextScript #'outside-staff-priority = ##f
-c,,2^"Long Text "
-c''2
-R1
+c,,2^"Long Text " c'' |
+R1 |
+
% Turn off collision avoidance
\once \override TextScript #'outside-staff-priority = ##f
-\textLengthOn % and turn on textLengthOn
+\textLengthOn % and turn on textLengthOn
c,,2^"Long Text " % Spaces at end are honored
-c''2
+c''2 |
@end lilypond
@lilypond[quote,fragment,ragged-right,verbatim,relative=2]
\dynamicUp
-a4\f b\mf c\mp b\p
+a4\f b\mf c\mp b\p |
@end lilypond
@noindent
% This will not work, see below
\override MetronomeMark #'padding = #3
\tempo 4=120
-c1
+c1 |
% This works
\override Score.MetronomeMark #'padding = #3
\tempo 4=80
-d1
+d1 |
@end lilypond
Im zweiten Beispiel können Sie sehen, wie wichtig es ist den richtigen
@lilypond[quote,verbatim,fragment,ragged-right,relative=1]
r4
\once \override PhrasingSlur #'positions = #'(-4 . -3)
-\acciaccatura
-e8\( d8 c~ c d c d\)
+\acciaccatura e8\( d8 c~ c d c d\)
@end lilypond
Hier noch ein weiteres Beispiel aus der Einleitung von Chopins
@lilypond[quote,verbatim,fragment,ragged-right]
{
-\clef "bass"
-<< { b,8 ais, b, g, } \\ { e, g e, g } >>
-<< { b,8 ais, b, g, } \\ { e, g e, g } >>
+ \clef "bass"
+ << { b,8 ais, b, g, } \\ { e, g e, g } >>
+ << { b,8 ais, b, g, } \\ { e, g e, g } >>
}
@end lilypond
\new Staff \relative c'' {
\key aes \major
<<
- { c2 aes4. bes8 } \\
- { aes2 f4 fes } \\
- { \voiceFour
- <ees c>2
- des2
+ { c2 aes4. bes8 }
+ \\
+ { aes2 f4 fes }
+ \\
+ {
+ \voiceFour
+ <ees c>2 des
}
>> |
<c ees aes c>1 |
\new Staff \relative c'' {
\key aes \major
<<
- { c2 aes4. bes8 } \\
- { aes2 f4 fes } \\
- { \voiceFour
- \once \override NoteColumn #'force-hshift = #0 <ees c>2
- \once \override NoteColumn #'force-hshift = #0.5 des2
+ { c2 aes4. bes8 }
+ \\
+ { aes2 f4 fes }
+ \\
+ {
+ \voiceFour
+ \once \override NoteColumn #'force-hshift = #0
+ <ees c>2
+ \once \override NoteColumn #'force-hshift = #0.5
+ des2
}
>> |
<c ees aes c>1 |
@c This example should not be indexed
@lilypond[quote,ragged-right,line-width=5.5\in]
rhMusic = \relative c'' {
- r2
- c4.\( g8 |
+ r2 c4.\( g8 |
\once \override Tie #'staff-position = #3.5
bes1~ |
\bar "||"
\time 6/4
\mergeDifferentlyHeadedOn
\mergeDifferentlyDottedOn
- bes2.^\markup {\bold "Moderato"} r8
+ bes2.^\markup { \bold "Moderato"} r8
<<
- {c,8 d fis bes a | }
+ { c,8 d fis bes a | }
\\
- % Reposition the c2 to the right of the merged note
- {c,8~ \once \override NoteColumn #'force-hshift = #1.0
- % Move the c2 out of the main note column so the merge will work
- \shiftOnn c2}
+ {
+ % Reposition the c2 to the right of the merged note
+ c,8~ \once \override NoteColumn #'force-hshift = #1.0
+ % Move the c2 out of the main note column so the merge will work
+ \shiftOnn c2
+ }
\\
- % Stem on the d2 must be down to permit merging
- {s8 \stemDown \once \override Stem #'transparent = ##t d2}
+ {
+ % Stem on the d2 must be down to permit merging
+ s8 \stemDown
+ \once \override Stem #'transparent = ##t
+ d2
+ }
\\
- {s4 fis4.}
- >>
+ { s4 fis4.}
+ >> |
\mergeDifferentlyHeadedOff
\mergeDifferentlyDottedOff
g2.\)
bes2. r8
% Start polyphonic section of four voices
<<
- {c,8 d fis bes a | }
+ { c,8 d fis bes a | }
\\
- {c,8~ c2 | }
+ { c,8~ c2 | }
\\
- {s8 d2 | }
+ { s8 d2 | }
\\
- {s4 fis4. | }
- >>
- g2.
+ { s4 fis4. | }
+ >> |
+ g2. |
}
lhMusic = \relative c' {
bes2. r8
% Start polyphonic section of four voices
<<
- {c,8 d fis bes a | }
+ { c,8 d fis bes a | }
\\
- {c,8~ c2 | }
+ { c,8~ c2 | }
\\
- {s8 d2 | }
+ { s8 d2 | }
\\
- {s4 fis4. | }
- >>
- g2.\)
+ { s4 fis4. | }
+ >> |
+ g2.\) |
}
lhMusic = \relative c' {
bes2. r8
% Start polyphonic section of four voices
<<
- {c,8 d fis bes a | }
+ { c,8 d fis bes a | }
\\
- {c,8~ c2 | }
+ { c,8~ c2 | }
\\
- {s8 d2 | }
+ { s8 d2 | }
\\
- {s4 fis4. | }
- >>
- g2.\)
+ { s4 fis4. | }
+ >> |
+ g2.\) |
}
lhMusic = \relative c' {
bes1~ |
\bar "||"
\time 6/4
- bes2.^\markup {\bold "Moderato"} r8
+ bes2.^\markup { \bold "Moderato"} r8
\mergeDifferentlyHeadedOn
\mergeDifferentlyDottedOn
% Start polyphonic section of four voices
<<
- {c,8 d fis bes a | }
+ { c,8 d fis bes a | }
\\
- {c,8~ c2 | }
+ { c,8~ c2 | }
\\
- {s8 d2 | }
+ { s8 d2 | }
\\
- {s4 fis4. | }
- >>
+ { s4 fis4. | }
+ >> |
\mergeDifferentlyHeadedOff
\mergeDifferentlyDottedOff
- g2.\)
+ g2.\) |
}
lhMusic = \relative c' {
bes1~ |
\bar "||"
\time 6/4
- bes2.^\markup {\bold "Moderato"} r8
+ bes2.^\markup { \bold "Moderato"} r8
\mergeDifferentlyHeadedOn
\mergeDifferentlyDottedOn
% Start polyphonic section of four voices
<<
- {c,8 d fis bes a | }
+ { c,8 d fis bes a | }
\\
- % Move the c2 out of the main note column so the merge will work
- {c,8~ \shiftOnn c2 | }
+ {
+ % Move the c2 out of the main note column so the merge will work
+ c,8~ \shiftOnn c2
+ }
\\
- % Stem on the d2 must be down to permit merging
- {s8 \stemDown d2 | }
+ {
+ % Stem on the d2 must be down to permit merging
+ s8 \stemDown d2
+ }
\\
- {s4 fis4. | }
- >>
+ { s4 fis4. }
+ >> |
\mergeDifferentlyHeadedOff
\mergeDifferentlyDottedOff
- g2.\)
+ g2.\) |
}
lhMusic = \relative c' {
@lilypond[quote,verbatim,ragged-right,line-width=5.5\in]
rhMusic = \relative c'' {
- r2
- c4.\( g8 |
+ r2 c4.\( g8 |
\once \override Tie #'staff-position = #3.5
bes1~ |
\bar "||"
\time 6/4
- bes2.^\markup {\bold "Moderato"} r8
+ bes2.^\markup { \bold "Moderato"} r8
\mergeDifferentlyHeadedOn
\mergeDifferentlyDottedOn
<<
- {c,8 d fis bes a | }
- \\
- % Reposition the c2 to the right of the merged note
- {c,8~ \once \override NoteColumn #'force-hshift = #1.0
- % Move the c2 out of the main note column so the merge will work
- \shiftOnn c2}
+ { c,8 d fis bes
+ % Reposition the c2 to the right of the merged note
+ c,8~ \once \override NoteColumn #'force-hshift = #1.0
+ % Move the c2 out of the main note column so the merge will work
+ \shiftOnn c2
+ }
\\
- % Stem on the d2 must be down to permit merging
- {s8 \stemDown \once \override Stem #'transparent = ##t d2}
+ {
+ % Stem on the d2 must be down to permit merging
+ s8 \stemDown
+ \once \override Stem #'transparent = ##t
+ d2
+ }
\\
{s4 fis4.}
- >>
+ >> |
\mergeDifferentlyHeadedOff
\mergeDifferentlyDottedOff
- g2.\)
+ g2.\) |
}
lhMusic = \relative c' {
@menu
* Andere Benutzung von Optimierungen::
* Variablen für Optimierungen einsetzen::
+* Globale Formatierung::
* Mehr Information::
* Vermeiden von Optimierungen durch langsamere Übersetzung::
* Fortgeschrittene Optimierungen mit Scheme::
sich in der selben befinden,
@lilypond[quote,fragment,relative=2]
-<< { b8~ b8\noBeam }
-\\ { b[ g8] }
->>
+<< { b8~ b8\noBeam } \\ { b[ g8] } >>
@end lilypond
@noindent
<<
{
\once \override Stem #'transparent = ##t
- b8~ b8\noBeam
+ b8~ b\noBeam
}
\\
- { b[ g8] }
+ { b8[ g] }
>>
@end lilypond
{
\once \override Stem #'transparent = ##t
\once \override Stem #'length = #8
- b8~ b8\noBeam
+ b8~ b\noBeam
}
\\
{ b[ g8] }
\once \override Score.MetronomeMark #'transparent = ##t
% Invisible tempo marking to lengthen fermata in MIDI
\tempo 4=80
- a\fermata
+ a4\fermata
% New tempo for next section
\tempo 4=100
- a a a a
+ a4 a a a
}
\layout { }
\midi { }
\once \override Score.MetronomeMark #'stencil = ##f
% Invisible tempo marking to lengthen fermata in MIDI
\tempo 4=80
- a\fermata
+ a4\fermata
% New tempo for next section
\tempo 4=100
- a a a a
+ a4 a a a
}
\layout { }
\midi { }
\revert Lyrics.LyricText #'font-series
}
-global = { \time 4/4 \partial 4 \key c \major}
-SopranoMusic = \relative c' { c4 | e4. e8 g4 g | a a g }
-AltoMusic = \relative c' { c4 | c4. c8 e4 e | f f e }
-TenorMusic = \relative c { e4 | g4. g8 c4. b8 | a8 b c d e4 }
-BassMusic = \relative c { c4 | c4. c8 c4 c | f8 g a b c4 }
-VerseOne = \lyrics { E -- | ter -- nal \emphasize Fa -- ther, \normal | strong to save, }
-VerseTwo = \lyricmode { O | \emphasize Christ, \normal whose voice the | wa -- ters heard, }
-VerseThree = \lyricmode { O | \emphasize Ho -- ly Spi -- rit, \normal | who didst brood }
-VerseFour = \lyricmode { O | \emphasize Tri -- ni -- ty \normal of | love and pow'r }
+global = { \key c \major \time 4/4 \partial 4 }
+
+SopranoMusic = \relative c' { c4 | e4. e8 g4 g | a4 a g }
+AltoMusic = \relative c' { c4 | c4. c8 e4 e | f4 f e }
+TenorMusic = \relative c { e4 | g4. g8 c4. b8 | a8 b c d e4 }
+BassMusic = \relative c { c4 | c4. c8 c4 c | f8 g a b c4 }
+
+VerseOne = \lyrics {
+ E -- | ter -- nal \emphasize Fa -- ther, | \normal strong to save,
+}
+
+VerseTwo = \lyricmode {
+ O | \emphasize Christ, \normal whose voice the | wa -- ters heard,
+}
+
+VerseThree = \lyricmode {
+ O | \emphasize Ho -- ly Spi -- rit, | \normal who didst brood
+}
+
+VerseFour = \lyricmode {
+ O | \emphasize Tri -- ni -- ty \normal of | love and pow'r
+}
\score {
\new ChoirStaff <<
\clef "treble"
\new Voice = "Soprano" { \voiceOne \global \SopranoMusic }
\new Voice = "Alto" { \voiceTwo \AltoMusic }
- \new Lyrics \lyricsto "Soprano" { \VerseOne }
- \new Lyrics \lyricsto "Soprano" { \VerseTwo }
+ \new Lyrics \lyricsto "Soprano" { \VerseOne }
+ \new Lyrics \lyricsto "Soprano" { \VerseTwo }
\new Lyrics \lyricsto "Soprano" { \VerseThree }
- \new Lyrics \lyricsto "Soprano" { \VerseFour }
+ \new Lyrics \lyricsto "Soprano" { \VerseFour }
>>
\new Staff <<
\clef "bass"
\new Voice = "Tenor" { \voiceOne \TenorMusic }
- \new Voice = "Bass" { \voiceTwo \BassMusic }
+ \new Voice = "Bass" { \voiceTwo \BassMusic }
>>
>>
}
@end lilypond
+@node Globale Formatierung
+@subsection Globale Formatierung
+@translationof Style sheets
+
+Die Ausgabe von LilyPond kann sehr stark verändert werden, siehe
+zu Einzelheiten @ref{Die Ausgabe verändern}. Aber was ist,
+wenn man mehrere Eingabedateien hat, die die gleichen Anpassungen
+erfahren sollen? Oder wenn Sie einfach nur die Anpassungen von
+der eigentlichen Musik trennen wollen? Das lässt sich recht einfach
+erreichen.
+
+Schauen wir uns ein Beispiel an. Sorgen Sie sich nicht, wenn Sie
+den Abschnitt mit den vielen @code{#()} nicht verstehen. Das wird
+erklärt in @ref{Fortgeschrittene Optimierungen mit Scheme}.
+
+@lilypond[quote,verbatim,ragged-right]
+mpdolce =
+#(make-dynamic-script
+ (markup #:hspace 0
+ #:translate '(5 . 0)
+ #:line (#:dynamic "mp"
+ #:text #:italic "dolce")))
+
+inst =
+#(define-music-function
+ (parser location string)
+ (string?)
+ (make-music
+ 'TextScriptEvent
+ 'direction UP
+ 'text (markup #:bold (#:box string))))
+
+\relative c'' {
+ \tempo 4=50
+ a4.\mpdolce d8 cis4--\glissando a |
+ b4 bes a2 |
+ \inst "Clarinet"
+ cis4.\< d8 e4 fis |
+ g8(\! fis)-. e( d)-. cis2 |
+}
+@end lilypond
+
+Es gibt einige Probleme mit sich überschneidender Ausgabe, die wird
+zurechtgerückt mit den Techniken von @ref{Verschieben von Objekten}.
+Aber jetzt zu den Definitionen von @code{mpdolce} und @code{inst}.
+Sie erstellen die gewünschte Ausgabe, aber wir wollen sie vielleicht
+auch in einem anderen Stück verwenden. Wir könnten sie immer wieder
+kopieren und oben in jedes Stück einfügen, aber das ist sehr aufwändig.
+Dadurch werden die Definitionen auch in der Eingabedatei belassen,
+und ich finde diese @code{#()} irgendwie hässlich. Verstecken
+wir sie also:
+
+@example
+%%% in Datei "definitions.ily" speichern
+mpdolce =
+#(make-dynamic-script
+ (markup #:hspace 0
+ #:translate '(5 . 0)
+ #:line (#:dynamic "mp"
+ #:text #:italic "dolce")))
+
+inst =
+#(define-music-function
+ (parser location string)
+ (string?)
+ (make-music
+ 'TextScriptEvent
+ 'direction UP
+ 'text (markup #:bold (#:box string))))
+@end example
+
+Diese Datei wir mit dem @code{\include}-Befehl ziemlich weit oben
+in der Datei eingefügt. (Die Erweiterung @code{.ily} wird benutzt,
+um diese Datei als eine eingefügte, inkludierte zu kennzeichnen, die
+man nicht alleinstehend kompilieren kann.) Jetzt ändern wir die
+Noten (in der Datei @file{"music.ly"}).
+
+@c We have to do this awkward example/lilypond-non-verbatim
+@c because we can't do the \include stuff in the manual.
+
+@example
+\include "definitions.ily"
+
+\relative c'' @{
+ \tempo 4=50
+ a4.\mpdolce d8 cis4--\glissando a |
+ b4 bes a2 |
+ \inst "Clarinet"
+ cis4.\< d8 e4 fis |
+ g8(\! fis)-. e( d)-. cis2 |
+@}
+@end example
+
+@lilypond[quote,ragged-right]
+mpdolce =
+#(make-dynamic-script
+ (markup #:hspace 0
+ #:translate '(5 . 0)
+ #:line (#:dynamic "mp"
+ #:text #:italic "dolce")))
+
+inst =
+#(define-music-function
+ (parser location string)
+ (string?)
+ (make-music
+ 'TextScriptEvent
+ 'direction UP
+ 'text (markup #:bold (#:box string))))
+
+\relative c'' {
+ \tempo 4=50
+ a4.\mpdolce d8 cis4--\glissando a |
+ b4 bes a2 |
+ \inst "Clarinet"
+ cis4.\< d8 e4 fis |
+ g8(\! fis)-. e( d)-. cis2 |
+}
+@end lilypond
+
+Das sieht schon besser aus, aber einige Änderungen könnten wir noch vornehmen.
+Das Glissando ist kaum sichtbar, machen wir es also etwas dicker und
+näher an den Notenkopf. Die Metronombezeichnung soll über dem
+Schlüssel stehen, anstatt über der ersten Note. Und schließlich
+mag mein Kompositionsprofessor keine @qq{C}-Taktangaben, das ändern
+wir also in @qq{4/4}.
+
+Ändern Sie jetzt jedoch nicht @file{music.ly}. Ändern Sie die
+@file{definitions.ily} mit dem Folgenden:
+
+@example
+%%% definitions.ily
+mpdolce =
+#(make-dynamic-script
+ (markup #:hspace 0
+ #:translate '(5 . 0)
+ #:line (#:dynamic "mp"
+ #:text #:italic "dolce")))
+
+inst =
+#(define-music-function
+ (parser location string)
+ (string?)
+ (make-music
+ 'TextScriptEvent
+ 'direction UP
+ 'text (markup #:bold (#:box string))))
+
+\layout@{
+ \context @{
+ \Score
+ \override MetronomeMark #'extra-offset = #'(-9 . 0)
+ \override MetronomeMark #'padding = #'3
+ @}
+ \context @{
+ \Staff
+ \override TimeSignature #'style = #'numbered
+ @}
+ \context @{
+ \Voice
+ \override Glissando #'thickness = #3
+ \override Glissando #'gap = #0.1
+ @}
+@}
+@end example
+
+@lilypond[quote,ragged-right]
+mpdolce =
+#(make-dynamic-script
+ (markup #:hspace 0
+ #:translate '(5 . 0)
+ #:line (#:dynamic "mp"
+ #:text #:italic "dolce")))
+
+inst =
+#(define-music-function
+ (parser location string)
+ (string?)
+ (make-music
+ 'TextScriptEvent
+ 'direction UP
+ 'text (markup #:bold (#:box string))))
+
+\layout{
+ \context {
+ \Score
+ \override MetronomeMark #'extra-offset = #'(-9 . 0)
+ \override MetronomeMark #'padding = #'3
+ }
+ \context {
+ \Staff
+ \override TimeSignature #'style = #'numbered
+ }
+ \context {
+ \Voice
+ \override Glissando #'thickness = #3
+ \override Glissando #'gap = #0.1
+ }
+}
+
+\relative c'' {
+ \tempo 4=50
+ a4.\mpdolce d8 cis4--\glissando a |
+ b4 bes a2 |
+ \inst "Clarinet"
+ cis4.\< d8 e4 fis |
+ g8(\! fis)-. e( d)-. cis2 |
+}
+@end lilypond
+
+Das sieht besser aus! Aber nehmen wir an, Ich will dieses Stück publizieren.
+Mein Professor mag die @qq{C}-Taktangabe nicht, mir gefällt sie aber sehr
+gut. Kopieren wir also die Datei @file{definitions.ily} nach
+@file{web-publish.ily} und verändern diese. Weil die Noten als PDF
+auf dem Monitor dargestellt werden sollen, wird auch die Notengröße
+global geändert.
+
+@example
+%%% definitions.ily
+mpdolce =
+#(make-dynamic-script
+ (markup #:hspace 0
+ #:translate '(5 . 0)
+ #:line (#:dynamic "mp"
+ #:text #:italic "dolce")))
+
+inst =
+#(define-music-function
+ (parser location string)
+ (string?)
+ (make-music
+ 'TextScriptEvent
+ 'direction UP
+ 'text (markup #:bold (#:box string))))
+
+#(set-global-staff-size 23)
+
+\layout@{
+ \context @{
+ \Score
+ \override MetronomeMark #'extra-offset = #'(-9 . 0)
+ \override MetronomeMark #'padding = #'3
+ @}
+ \context @{
+ \Staff
+ @}
+ \context @{
+ \Voice
+ \override Glissando #'thickness = #3
+ \override Glissando #'gap = #0.1
+ @}
+@}
+@end example
+
+@lilypond[quote,ragged-right]
+mpdolce =
+#(make-dynamic-script
+ (markup #:hspace 0
+ #:translate '(5 . 0)
+ #:line (#:dynamic "mp"
+ #:text #:italic "dolce")))
+
+inst =
+#(define-music-function
+ (parser location string)
+ (string?)
+ (make-music
+ 'TextScriptEvent
+ 'direction UP
+ 'text (markup #:bold (#:box string))))
+
+#(set-global-staff-size 23)
+
+\layout{
+ \context { \Score
+ \override MetronomeMark #'extra-offset = #'(-9 . 0)
+ \override MetronomeMark #'padding = #'3
+ }
+ \context { \Voice
+ \override Glissando #'thickness = #3
+ \override Glissando #'gap = #0.1
+ }
+}
+
+\relative c'' {
+ \tempo 4=50
+ a4.\mpdolce d8 cis4--\glissando a |
+ b4 bes a2 |
+ \inst "Clarinet"
+ cis4.\< d8 e4 fis |
+ g8(\! fis)-. e( d)-. cis2 |
+}
+@end lilypond
+
+In der Eingabedatei muss jetzt nur noch die Zeile
+@code{\include "definitions.ily"} mit
+@code{\include "web-publish.ily"} ersetzt werden. Das könnte
+man natürlich noch besser machen. Es könnte eine Datei
+@file{definitions.ily} mit allen Definitionen (also
+@code{mpdolce} und @code{inst}) geben, eine Datei
+@file{web-publish.ily}, die nur die @code{\layout}-Veränderung
+enthält und eine Datei @file{university.ily}, die nur die
+Prozedur enthält, die Ausgabe meinem Professor angenehm zu machen.
+Der Anfang von @file{music.ly} würde dann folgendermaßen aussehen:
+
+@example
+\include "definitions.ily"
+
+%%% nur eine der zwei Zeilen auskommentieren!
+\include "web-publish.ily"
+%\include "university.ily"
+@end example
+
+Diese Herangehensweise kann auch schon nützlich sein, wenn man
+nur ein paar Stimmen schreiben will. Ich habe eine ganze Anzahl
+an @qq{Stylesheets} für meine Projekte. Ich fange jede Datei mit
+der Zeile @code{\include "../global.ily"} an, die etwa folgendes
+einbindet:
+
+@example
+%%% global.ily
+\version @w{"@version{}"}
+
+#(ly:set-option 'point-and-click #f)
+
+\include "../init/init-defs.ly"
+\include "../init/init-layout.ly"
+\include "../init/init-headers.ly"
+\include "../init/init-paper.ly"
+@end example
+
+
+
@node Mehr Information
@subsection Mehr Information
@translationof Other sources of information
@lilypond[quote,verbatim,ragged-right]
#(define (color-notehead grob)
- "Color the notehead according to its position on the staff."
- (let ((mod-position (modulo (ly:grob-property grob 'staff-position) 7)))
- (case mod-position
- ;; Return rainbow colors
- ((1) (x11-color 'red )) ; for C
- ((2) (x11-color 'orange )) ; for D
- ((3) (x11-color 'yellow )) ; for E
- ((4) (x11-color 'green )) ; for F
- ((5) (x11-color 'blue )) ; for G
- ((6) (x11-color 'purple )) ; for A
- ((0) (x11-color 'violet )) ; for B
- )
- )
-)
+ "Color the notehead according to its position on the staff."
+ (let ((mod-position (modulo (ly:grob-property grob 'staff-position)
+ 7)))
+ (case mod-position
+ ;; Return rainbow colors
+ ((1) (x11-color 'red )) ; for C
+ ((2) (x11-color 'orange )) ; for D
+ ((3) (x11-color 'yellow )) ; for E
+ ((4) (x11-color 'green )) ; for F
+ ((5) (x11-color 'blue )) ; for G
+ ((6) (x11-color 'purple )) ; for A
+ ((0) (x11-color 'violet )) ; for B
+ )))
\relative c' {
% Arrange to obtain color from color-notehead procedure
\override NoteHead #'color = #color-notehead
- a2 b |
- c2 d |
- e2 f |
- g2 a |
+ a2 b | c2 d | e2 f | g2 a |
}
@end lilypond
--- /dev/null
+%% Translation of GIT committish: 64feeff58e5ce3397de87188a08ac99f7ef8e37b
+
+ texidoc = "
+Diese Vorlage erstellt eine Partitur, die mit Sologesang beginnt und einen
+Refrain für zwei Stimmen enthält. Sie zeigt auch die Benutzung von
+Platzhalter-Pausen innerhalb der @code{\global}-Variable, um Taktwechsel
+(und andere Elemente, die für alle Stimmen gleich sind) für das gesamte
+Stück zu definieren.
+
+"
+ doctitle = "Sologesang und zweistimmiger Refrain"