--- /dev/null
+depth = ../../..
+
+STEPMAKE_TEMPLATES=documentation
+
+EXTRA_DIST_FILES= README
+EXTRA_DIST_FILES+=$(call src-wildcard,*.ly)
+EXTRA_DIST_FILES+=$(call src-wildcard,*.ily)
+EXTRA_DIST_FILES+=$(call src-wildcard,*.itexi)
+EXTRA_DIST_FILES+=$(call src-wildcard,*.itely)
+
+include $(depth)/make/stepmake.make
--- /dev/null
+@c -*- coding: utf-8; mode: texinfo; -*-
+@c This file is part of web/download.itexi and
+@c learning/tutorial.itely
+
+@ignore
+ Translation of GIT committish: 0bbabe9eef32b46216a722cc0d49df759227b7be
+
+ 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..
+@end ignore
+
+@c This is about "compiling" a lilypond file
+@c (Learning 1 Tutorial), **not** compiling the
+@c source code.
+
+@macro lilypadOSX
+@warning{Diese Anweisungen gehen davon aus, dass Sie die
+LilyPond-Application benutzen. Wenn Sie eins der Programme benutzen, die in @rweb{Leichteres Editieren} beschrieben sind, schauen
+Sie bitte in der Dokumentation nach, wenn Sie Probleme damit haben,
+eine Datei zu kompilieren.}
+
+
+@subsubheading 1. Schritt: Erstellen Sie eine @file{.ly}-Datei
+
+Wenn Sie das @command{LilyPond.app}-Symbol doppelt klicken, öffnet
+sich eine Beispiel-Datei.
+
+@sourceimage{Learning_Macos_welcome,,,}
+
+Wählen Sie aus den Menüs oben links auf Ihrem Bildschirm
+@w{@code{File > Save}}.
+
+@sourceimage{Learning_Macos_Save_menu,,,}
+
+Wählen Sie einen Namen für die Datei, etwa @file{test.ly}.
+
+@sourceimage{Learning_Macos_Save_file_with_name,,,}
+
+
+@subsubheading 2. Schritt: Kompilieren (mit LilyPad)
+
+Aus den selben Menüs wählen Sie jetzt @w{@code{Compile > Tyepset}}.
+
+@sourceimage{Learning_Macos_Typeset_menu,,,}
+
+Ein neues Fenster öffnet sich, in dem ein Forschrittslog der
+Kompilation der von ihnen gerade gespeicherten Datei gezeigt
+wird.
+
+@sourceimage{Learning_Macos_Compiling_log,,,}
+
+
+@subsubheading 3. Schritt: Ausgabe anschauen
+
+Wenn die Kompilation fertig ist, wird ein PDF mit dem gleichen
+Namen wie das Original erstellt und automatisch mit dem
+Standard-PDF-Programm geöffnet und angezeigt.
+
+@sourceimage{Learning_Macos_pdf_output,,,}
+
+
+@subsubheading Andere Befehle
+
+Um neue LilyPond-Dateien zu erstellen beginnen sie mit
+@w{@code{File > New}}
+
+@sourceimage{Learning_Macos_New_menu,,,}
+
+@noindent
+oder @w{@code{File > Open}} um eine schon existierende Datei zu
+öffnen und zu editieren.
+
+@sourceimage{Learning_Macos_Open_menu,,,}
+
+Sie müssen alle Änderungen an der Datei zuerst speichern, bevor Sie
+wieder @w{@code{Compile > Tyepset}} wählen. Wenn das PDF nicht
+erscheint, schauen Sie im Fortschrittslog nach Fehlern.
+
+Wenn Sie nicht das Standard-PDF-Programm benutzen, das automatisch
+bei Mac OS X dabei ist, und Sie die PDF-Datei noch von einer vorigen
+Kompilation geöffnet haben, können weitere Kompilationen fehlschlagen,
+bis Sie das Original-PDF schließen.
+
+
+
+@end macro
+
+
+@macro lilypadWindows
+@warning{Diese Anweisungen gehen davon aus, dass Sie den installierten
+LilyPad-Editor benutzen. Wenn Sie eins der Programme benutzen, die in @rweb{Alternate input} beschrieben sind, schauen
+Sie bitte in der Dokumentation nach, wenn Sie Probleme damit haben,
+eine Datei zu kompilieren.}
+
+
+@subsubheading 1. Schritt: Erstellen Sie eine @file{.ly}-Datei
+
+Wenn sie auf das LilyPond-Symbol auf dem Desktop doppelklicken,
+öffnet sich ein einfacher Texteditor mit einer Beispieldatei.
+
+@sourceimage{Learning_Win7_Welcome_File_Whole,,,}
+
+Aus dem Menü über der Beispieldatei wählen Sie @w{@code{File > Save as}}.
+Benutzen Sie nicht @w{@code{File > Save}} für die Beispieldatei,
+weil die Datei nicht funktioniert, bis Sie sie mit einem eigenen
+Namen gespeichert haben.
+
+@sourceimage{Learning_Win7_Save_Menu,,,}
+
+Wählen Sie einen Namen für Ihre Datei, etwa @file{test.ly}.
+
+@sourceimage{Learning_Win7_Save_File_With_Name,,,}
+
+
+@subsubheading Schritt 2a: Kompilieren (mit drag-and-drop)
+
+Sie können nach Belieben die Kompilation starten, indem Sie
+entweder:
+
+Die Datei auf das LilyPond-Symbol ziehen.
+
+@sourceimage{Learning_Win7_Open_Dragndrop,,,}
+
+Oder Sie klicken mit der rechten Maustaste auf die Datei und wählen
+Sie aus dem Menü @w{@code{Open with > LilyPond}}.
+
+@sourceimage{Learning_Win7_Open_Context_Menu,,,}
+
+
+@subsubheading Schritt 2b: Kompilieren (mit Doppelklick)
+
+Sie können auch einfach die Datei @file{test.ly} doppelt anklicken.
+
+
+@subsubheading 3. Schritt: Ausgabe anschauen
+
+Während der Kompilation von @file{test.ly} öffnet sich ein
+Kommandofenster sehr schnell und schließt sich wieder. Drei
+zusätzliche Dateien werden in diesem Schritt erstellt.
+
+@sourceimage{Learning_Win7_All_Files_Created,,,}
+
+Das PDF enthält den Notensatz aus der Datei @file{test.ly}.
+
+@sourceimage{Learning_Win7_Pdf_Output,,,}
+
+
+@subsubheading Andere Befehle
+
+Um eine neue Datei zu erstellen, wählen Sie @w{@code{File > New}}
+aus irgendeiner schon erstellten Datei.
+
+@sourceimage{Learning_Win7_New_Menu,,,}
+
+@noindent
+oder @w{@code{File > Open}}, um eine Datei zu öffnen und zu
+bearbeiten, die Sie schon vorher gespeichert hatten.
+
+@sourceimage{Learning_Win7_Open_Menu,,,}
+
+Sie müssen jede neue Änderung erst speichern, bevor Sie die Datei
+kompilieren. Wenn kein PDF erstellt wird, öffnen Sie die Log-Datei
+und schauen Sie nach Fehlern.
+
+@sourceimage{Learning_Win7_Log_File,,,}
+
+Die Log-Datei wird jedes Mal überschrieben, wenn Sie Ihre
+LilyPond-Datei kompilieren.
+
+Die PS-Datei wird intern von LilyPond benutzt um das PDF zu erstellen
+und kann ignoriert werden. Sie wird auch jedes Mal neu überschrieben.
+
+Wenn Sie das PDF in einem PDF-Programm anschauen, müssen Sie es
+zuerst schließen, bevor Sie eine neue Kompilation durchführen
+können, denn es kann einen Fehler bei der Erstellung des neuen
+PDFs geben, wenn das alte noch geöffnet ist.
+
+
+
+
+@end macro
+
+
+@c not lilypad at all, but I ran out of names. :(
+@macro lilypadCommandLine
+@warning{Diese Anweisungen gehen davon aus, dass Sie den installierten
+LilyPad-Editor benutzen. Wenn Sie eins der Programme benutzen, die in @rweb{Alternate input} beschrieben sind, schauen
+Sie bitte in der Dokumentation nach, wenn Sie Probleme damit haben,
+eine Datei zu kompilieren.}
+
+@subsubheading Schritt 1: Erstellen Sie eine @file{.ly}-Datei
+
+
+Erstellen Sie eine Text-Datei mit dem Namen @file{test.ly} und
+geben Sie folgenden Text ein:
+
+@example
+@{
+ c' e' g' e'
+@}
+@end example
+
+@subsubheading Schritt 2: Kompilieren (auf der Kommandozeile)
+
+Um die Datei zu kompilieren, geben sie an der Konsole bzw. Kommandozeile
+
+@example
+lilypond test.ly
+@end example
+
+@noindent
+ein.
+Sie werden ungefähr folgende Meldungen sehen:
+
+
+@example
+lilypond test.ly
+GNU LilyPond @version{}
+»test.ly« wird verarbeitet
+Analysieren...
+Interpretation der Musik...
+Vorverarbeitung der grafischen Elemente...
+Ideale Seitenanzahl wird gefunden...
+Musik wird auf eine Seite angepasst...
+Systeme erstellen...
+Layout nach »test.ps« ausgeben...
+Konvertierung nach »test.pdf«...
+@end example
+
+@subsubheading 3. Schritt: Ausgabe anschauen
+
+Als Ergebnis erhalten Sie ein @file{test.pdf}, das Sie mit den
+Standardprogrammen Ihres Betriebssystemes anschauen können.
+
+
+@end macro
+
+
@c -*- coding: utf-8; mode: texinfo; documentlanguage: de -*-
@ignore
- Translation of GIT committish: 354f8ea159bb5216202e5815685fca8bd7e6919c
+ Translation of GIT committish: 0bbabe9eef32b46216a722cc0d49df759227b7be
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
@seealso
-Notationsreferenz: @ruser{Notenbezeichnungen in anderen Sprachen},
+Notationsreferenz:
+@ruser{Notenbezeichnungen in anderen Sprachen},
@ruser{Versetzungszeichen}, @ruser{Automatische Versetzungszeichen},
@ruser{Tonartbezeichnung}.
-Glossar: @rglos{Pitch names}.
+Glossar:
+@rglos{Pitch names}.
@node Bindebögen und Legatobögen
@lilypond[verbatim,quote,relative=2]
g4~ g c2~
-c4 ~ c8 a8 ~ a2
+c4~ c8 a8~ a2
@end lilypond
geschachtelt werden.
@lilypond[verbatim,quote,relative=2]
-c2~( c8 fis fis4 ~ fis2 g2)
+c2~( c8 fis fis4~ fis2 g2)
@end lilypond
@seealso
-Notationsreferenz: @ruser{Bindebögen}, @ruser{Legatobögen},
+Notationsreferenz:
+@ruser{Bindebögen},
+@ruser{Legatobögen},
@ruser{Phrasierungsbögen}.
@cindex Akzente
@cindex Staccato
-Glossar: @rglos{articulation}.
+Glossar:
+@rglos{articulation}.
Übliche @notation{Artikulationszeichen} können durch Anfügen von Minus
(@q{-}) und einem entsprechenden Zeichen eingegeben werden:
@funindex \!
@funindex !
-Glossar: @rglos{dynamics}, @rglos{crescendo},
+Glossar:
+@rglos{dynamics},
+@rglos{crescendo},
@rglos{decrescendo}.
Die Dynamik innerhalb eines Stückes wird eingegeben, indem man
@seealso
-Notationsreferenz: @ruser{Artikulationszeichen und Verzierungen},
-@ruser{Fingersatzanweisungen}, @ruser{Dynamik}.
+Notationsreferenz:
+@ruser{Artikulationszeichen und Verzierungen},
+@ruser{Fingersatzanweisungen},
+@ruser{Dynamik}.
@node Text hinzufügen
@code{\markup}-Befehl benutzen:
@lilypond[verbatim,quote,relative=2]
-c1^\markup{ \bold espr}
+c1^\markup{ \bold espr }
a1_\markup{
\dynamic f \italic \small { 2nd } \hspace #0.1 \dynamic p
}
@seealso
-Notationsreferenz: @ruser{Text eingeben}.
+Notationsreferenz:
+@ruser{Text eingeben}.
@node Automatische und manuelle Balken
@seealso
-Notationsreferenz: @ruser{Automatische Balken}, @ruser{Manuelle Balken}.
+Notationsreferenz:
+@ruser{Automatische Balken},
+@ruser{Manuelle Balken}.
@node Zusätzliche rhythmische Befehle
@seealso
-Notationsreferenz: @ruser{Verzierungen}, @ruser{Andere rhythmische Aufteilungen},
+Notationsreferenz:
+@ruser{Verzierungen},
+@ruser{Andere rhythmische Aufteilungen},
@ruser{Auftakte}.
@seealso
-Notationsreferenz: @ruser{Notation von Gesang}.
+Notationsreferenz:
+@ruser{Notation von Gesang}.
@node Text zu mehreren Systemen
@seealso
-Notationsreferenz: @ruser{Notation von Gesang}.
+Notationsreferenz:
+@ruser{Notation von Gesang}.
@node Letzter Schliff
@c -*- coding: utf-8; mode: texinfo; documentlanguage: de -*-
@ignore
- Translation of GIT committish: a67150a82a9b14cce6eeb044e54f85ea3a016175
+ Translation of GIT committish: 0bbabe9eef32b46216a722cc0d49df759227b7be
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
@cindex Variablen
@cindex Bezeichner
-Eine gute Möglichkeit zur Vereinfachung sind selbst definierte Variablen (siehe auch @ref{Organizing pieces with variables}.)
-Alle Vorlagen verwenden diese Möglichkeit.
+Eine gute Möglichkeit zur Vereinfachung sind selbst definierte Variablen, wie auch gezeigt in @ref{Organizing pieces with variables}.
+Alle Vorlagen verwenden diese Möglichkeit:
@example
melodie = \relative c' @{
@lilypond[quote,verbatim,fragment,ragged-right,relative=2]
\key g \major
% Voice "1" Voice "2"
-<< { g4 fis8( g) a4 g } \\ { d4 d d d } >> |
+<< { g4 fis8( g) a4 g } \\ { d4 d d d } >>
@end lilypond
Beachte, dass die Hälse der zweiten Stimme nun nach unten zeigen.
@lilypond[quote,verbatim,fragment,ragged-right,relative=2]
\key d \minor
% Voice "1" Voice "2"
-<< { r4 g g4. a8 } \\ { d,2 d4 g } >> |
-<< { bes4 bes c bes } \\ { g4 g g8( a) g4 } >> |
-<< { a2. r4 } \\ { fis2. s4 } >> |
+<< { r4 g g4. a8 } \\ { d,2 d4 g } >>
+<< { bes4 bes c bes } \\ { g4 g g8( a) g4 } >>
+<< { a2. r4 } \\ { fis2. s4 } >>
@end lilypond
Es ist nicht notwendig, für jeden Takt eine eigene
% 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 } >> |
+ << { g4 f e } \\ { r8 e4 d c8 ~ } >>
+ << { d2 e2 } \\ { c8 b16 a b8 g ~ g2 } \\ { s4 b4 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 ~
+ r8 e4 d c8~
}
>>
- << % Bar 2
+ << % Bar 2
% Voice 1 continues
{ d2 e2 }
\\
@lilypond[quote,ragged-right]
\new Staff \relative c'' {
\key aes \major
- << % Voice one
+ << % Voice one
{ c2 aes4. bes8 }
- \\ % Voice two
+ \\ % Voice two
{ aes2 f4 fes }
- \\ % No voice three
- \\ % Voice four
+ \\ % No voice three
+ \\ % Voice four
{
% Ignore these for now - they are explained in Ch 4
\once \override NoteColumn #'force-hshift = #0
\new Staff \relative c'' {
\key aes \major
<<
- { % Voice one
+ { % Voice one
\voiceOneStyle
c2 aes4. bes8
}
\once \override NoteColumn #'force-hshift = #0.5
des2
}
- >> |
- <c ees aes c>1 |
+ >>
+ <c ees aes c>1
}
@end lilypond
@lilypond[quote,verbatim,fragment,ragged-right]
\new Staff \relative c'' {
\key aes \major
- << % erste Stimme
+ << % erste Stimme
{ c2 aes4. bes8 }
- \\ % zweite Stimme
+ \\ % zweite Stimme
{ aes2 f4 fes }
- \\ % Stimme drei auslassen
- \\ % vierte Stimme
+ \\ % Stimme drei auslassen
+ \\ % vierte Stimme
{ <ees c>2 des2 }
- >> |
- <c ees aes c>1 |
+ >>
+ <c ees aes c>1
}
@end lilypond
@lilypond[quote,ragged-right,verbatim]
\relative c'{
% Default behavior or behavior after \oneVoice
- c d8 ~ d e4 ( f g a ) b-> c
+ c d8~ d e4( f g a) b-> c
}
@end lilypond
@lilypond[quote,ragged-right,verbatim]
\relative c'{
\voiceOne
- c d8 ~ d e4 ( f g a ) b-> c
+ c d8~ d e4 (f g a) b-> c
\oneVoice
- c, d8 ~ d e4 ( f g a ) b-> c
+ c, d8~ d e4 (f g a) b-> c
}
@end lilypond
@lilypond[quote,ragged-right,verbatim]
\relative c'{
\voiceTwo
- c d8 ~ d e4 ( f g a ) b-> c
+ c d8~ d e4 (f g a) b-> c
\oneVoice
- c, d8 ~ d e4 ( f g a ) b-> c
+ c, d8~ d e4 (f g 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 e2) | }
% Initiate second voice
\new Voice {
- % Set stems, etc, down
+ % Set stems, etc., down
\voiceTwo
- r8 e4 d c8 ~ | c8 b16 a b8 g ~ g2
+ r8 e4 d c8~ | c8 b16 a b8 g~ g2 |
}
% Initiate third voice
\new Voice {
% Set stems, etc, up
\voiceThree
- s2. | s4 b4 c2
+ s2. | s4 b4 c2 |
}
>>
}
\new Staff \relative c' {
c16^( d e f
<<
- { g4 f e | d2 e2) }
+ { g4 f e | d2 e2) | }
\new Voice {
\voiceTwo
- r8 e4 d c8 ~ |
+ r8 e4 d c8~
<<
- {c8 b16 a b8 g ~ g2}
+ { c8 b16 a b8 g~ g2 }
\new Voice {
\voiceThree
s4 b4 c2
\new Voice {
% Set stems, etc, down
\voiceTwo
- s4 r8 e4 d c8 ~ | c8 b16 a b8 g ~ g2 |
+ s4 r8 e4 d c8~ | c8 b16 a b8 g~ g2 |
}
% Initiate third voice
\new Voice {
@lilypond[quote,verbatim]
global = { \time 6/8 \partial 8 \key f \major}
SopOneMusic = \relative c'' {
- c8 | c([ bes)] a a([ g)] f | f'4. b, | c4.~ c4 }
+ 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' }
+ r8 | r4. r4 c8 | a'([ g)] f f([ e)] d | e([ d)] c bes' | }
SopOneLyrics = \lyricmode {
- Let | flee -- cy flocks the | hills a -- dorn, __ }
+ Let | flee -- cy flocks the | hills a -- dorn, __ | }
SopTwoLyrics = \lyricmode {
- Let | flee -- cy flocks the | hills a -- dorn, }
+ Let | flee -- cy flocks the | hills a -- dorn, | }
\score {
\new ChoirStaff <<
@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 }
+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, }
+ E -- | ter -- nal fa -- ther, | strong to save, | }
VerseTwo = \lyricmode {
- O | Christ, whose voice the | wa -- ters heard, }
+ O | Christ, whose voice the | wa -- ters heard, | }
VerseThree = \lyricmode {
- O | Ho -- ly Spi -- rit, | who didst brood }
+ O | Ho -- ly Spi -- rit, | who didst brood | }
VerseFour = \lyricmode {
- O | Tri -- ni -- ty of | love and pow'r }
+ O | Tri -- ni -- ty of | love and pow'r | }
\score {
\new ChoirStaff <<
\new Staff <<
\clef "bass"
\new Voice = "Tenor" { \voiceOne \TimeKey \TenorMusic }
- \new Voice = "Bass" { \voiceTwo \BassMusic }
+ \new Voice = "Bass" { \voiceTwo \BassMusic }
>>
>>
}
versenotes = \relative c'' {
\clef "treble"
\key g \major
- \time 3/4 g g g b b b
+ \time 3/4
+ g g g | b b b |
}
versewords = \lyricmode {
One two three four five six
versenotes = \relative c'' {
\clef "treble"
\key g \major
- \time 3/4 g g g b b b
+ \time 3/4
+ g g g | b b b |
}
refrainnotesA = \relative c'' {
\time 2/4
- c c g g \bar "|."
+ c c | g g \bar "|."
}
refrainnotesB = \relative c {
\clef "bass"
\key g \major
- c e d d
+ c e | d d |
}
versewords = \lyricmode {
One two three four five six
versenotes = \relative c'' {
\clef "treble"
\key g \major
- \time 3/4 g g g b b b
+ \time 3/4
+ g g g | b b b |
}
refrainnotesA = \relative c'' {
\time 2/4
- c c g g \bar "|."
+ c c | g g \bar "|."
}
refrainnotesB = \relative c {
\clef "bass"
\key g \major
- c e d d
+ c e | d d |
}
versewords = \lyricmode {
One two three four five six
\clef "treble"
\new Voice { % create voice for RH notes
\relative c'' { % start of RH notes
- d4 ees16 c8. |
- d4 ees16 c8. |
+ d4 ees16 c8.
+ d4 ees16 c8.
} % end of RH notes
} % end of RH voice
} % end of RH staff
\new Voice { % create LH voice one
\voiceOne
\relative g { % start of LH voice one notes
- g8 <bes d> ees, <g c> |
- g8 <bes d> ees, <g c> |
+ g8 <bes d> ees, <g c>
+ g8 <bes d> ees, <g c>
} % end of LH voice one notes
} % end of LH voice one
\new Voice { % create LH voice two
\voiceTwo
\relative g { % start of LH voice two notes
- g4 ees |
- g4 ees |
+ g4 ees
+ g4 ees
} % end of LH voice two notes
} % end of LH voice two
>> % end of LH staff
<<
\new Staff \relative c'' {
ais4 aes
- }
+ }
\new Staff \relative c'' {
\set Score.extraNatural = ##f
ais4 aes
- }
+ }
>>
@end lilypond
@seealso
Notationsreferenz:
-@ruser{Die Standardeinstellungen von Kontexten ändern}.
-@c FIXME
-@c uncomment when backslash-node-name issue is resolved -pm
-@c @ruser{Der set-Befehl}.
+@ruser{Die Standardeinstellungen von Kontexten ändern},
+@ruser{Der set-Befehl}.
Referenz der Interna:
@rinternals{Contexts},
\score {
<<
\new Staff <<
- \relative c'' { c a b g }
+ \relative c'' {
+ c a b g
+ }
>>
\new Staff <<
- \relative c' { c a b g }
+ \relative c' {
+ c a b g
+ }
>>
\new Staff <<
\clef "G_8"
- \relative c' { c a b g }
+ \relative c' {
+ c a b g
+ }
>>
\new Staff <<
\clef "bass"
- \relative c { c a b g }
+ \relative c {
+ c a b g
+ }
>>
>>
\layout {
@example
\score @{
<<
- <<
- \new Voice = "eins" @{
- \autoBeamOff
- \SopranNoten
- @}
- \new Lyrics \lyricsto "eins" \SoprText
- >>
- \new Staff \CelloNoten
+ <<
+ \new Voice = "eins" @{
+ \autoBeamOff
+ \SopranNoten
+ @}
+ \new Lyrics \lyricsto "eins" \SoprText
+ >>
+ \new Staff \CelloNoten
>>
\layout @{ @}
\midi @{ @}
upper = \relative a' {
\clef "treble"
\global
- r4 <a d fis>2 <a e' a>4 |
- <d fis d'>4. <d fis d'>8 <a d a'>2 |
- <g cis g'>4 <a d fis> <a cis e>2 |
+ r4 <a d fis>2 <a e' a>4
+ <d fis d'>4. <d fis d'>8 <a d a'>2
+ <g cis g'>4 <a d fis> <a cis e>2
}
lower = \relative c, {
\clef "bass"
\global
- <d d'>4 <d d'>2 <cis cis'>4 |
- <b b'>4. <b' b'>8 <fis fis'>2 |
- <e e'>4 <d d'> <a' a'>2 |
+ <d d'>4 <d d'>2 <cis cis'>4
+ <b b'>4. <b' b'>8 <fis fis'>2
+ <e e'>4 <d d'> <a' a'>2
}
\score {
\new ChoirStaff <<
\new Staff = "sopranos" <<
\set Staff.instrumentName = #"Soprano"
- \new Voice = "sopranos" { \global \sopranoMusic }
+ \new Voice = "sopranos" {
+ \global
+ \sopranoMusic
+ }
>>
- \new Lyrics \lyricsto "sopranos" { \sopranoWords }
+ \new Lyrics \lyricsto "sopranos" {
+ \sopranoWords
+ }
\new Staff = "altos" <<
\set Staff.instrumentName = #"Alto"
- \new Voice = "altos" { \global \altoMusic }
+ \new Voice = "altos" {
+ \global
+ \altoMusic
+ }
>>
- \new Lyrics \lyricsto "altos" { \altoWords }
+ \new Lyrics \lyricsto "altos" {
+ \altoWords
+ }
\new Staff = "tenors" <<
\set Staff.instrumentName = #"Tenor"
- \new Voice = "tenors" { \global \tenorMusic }
+ \new Voice = "tenors" {
+ \global
+ \tenorMusic
+ }
>>
- \new Lyrics \lyricsto "tenors" { \tenorWords }
+ \new Lyrics \lyricsto "tenors" {
+ \tenorWords
+ }
\new Staff = "basses" <<
\set Staff.instrumentName = #"Bass"
- \new Voice = "basses" { \global \bassMusic }
+ \new Voice = "basses" {
+ \global
+ \bassMusic
+ }
>>
- \new Lyrics \lyricsto "basses" { \bassWords }
+ \new Lyrics \lyricsto "basses" {
+ \bassWords
+ }
>> % end ChoirStaff
\new PianoStaff <<
@example
\new ChoirStaff <<
\new Staff = "sopranos" <<
- \set Staff.instrumentName = #"Soprano"
- \new Voice = "sopranos" @{ \global \SopranNoten @}
+ \set Staff.instrumentName = #"Sopran"
+ \new Voice = "sopranos" @{
+ \global
+ \SopranNoten
+ @}
>>
- \new Lyrics \lyricsto "sopranos" @{ \SopranText @}
+ \new Lyrics \lyricsto "sopranos" @{
+ \SopranText
+ @}
\new Staff = "altos" <<
- \set Staff.instrumentName = #"Alto"
- \new Voice = "altos" @{ \global \AltNoten @}
+ \set Staff.instrumentName = #"Alt"
+ \new Voice = "altos" @{
+ \global
+ \AltNoten
+ @}
>>
- \new Lyrics \lyricsto "altos" @{ \AltText @}
+ \new Lyrics \lyricsto "altos" @{
+ \AltText
+ @}
\new Staff = "tenors" <<
\set Staff.instrumentName = #"Tenor"
- \new Voice = "tenors" @{ \global \TenorNoten @}
+ \new Voice = "tenors" @{
+ \global
+ \TenorNoten
+ @}
>>
- \new Lyrics \lyricsto "tenors" @{ \TenorText @}
+ \new Lyrics \lyricsto "tenors" @{
+ \TenorText
+ @}
\new Staff = "basses" <<
\set Staff.instrumentName = #"Bass"
- \new Voice = "basses" @{ \global \BassNoten @}
+ \new Voice = "basses" @{
+ \global
+ \BassNoten
+ @}
>>
- \new Lyrics \lyricsto "basses" @{ \BassText @}
+ \new Lyrics \lyricsto "basses" @{
+ \BassText
+ @}
>> % Ende ChoirStaff
@end example
<< % ChoirStaff und PianoStaff parallel kombinieren
\new ChoirStaff <<
\new Staff = "sopranos" <<
- \new Voice = "sopranos" @{ \global \SopranNoten @}
+ \new Voice = "sopranos" @{
+ \global
+ \sopranoMusic
+ @}
>>
- \new Lyrics \lyricsto "sopranos" @{ \SopranText @}
+ \new Lyrics \lyricsto "sopranos" @{
+ \sopranoWords
+ @}
\new Staff = "altos" <<
- \new Voice = "altos" @{ \global \AltNoten @}
+ \new Voice = "altos" @{
+ \global
+ \altoMusic
+ @}
>>
- \new Lyrics \lyricsto "altos" @{ \AltText @}
+ \new Lyrics \lyricsto "altos" @{
+ \altoWords
+ @}
\new Staff = "tenors" <<
- \clef "G_8" % Tenorschlüssel
- \new Voice = "tenors" @{ \global \TenorNoten @}
+ \clef "G_8" % tenor clef
+ \new Voice = "tenors" @{
+ \global
+ \tenorMusic
+ @}
>>
- \new Lyrics \lyricsto "tenors" @{ \TenorText @}
+ \new Lyrics \lyricsto "tenors" @{
+ \tenorWords
+ @}
\new Staff = "basses" <<
\clef "bass"
- \new Voice = "basses" @{ \global \BassNoten @}
+ \new Voice = "basses" @{
+ \global
+ \bassMusic
+ @}
>>
- \new Lyrics \lyricsto "basses" @{ \BassText @}
- >> % Ende ChoirStaff
+ \new Lyrics \lyricsto "basses" @{
+ \bassWords
+ @}
+ >> % end ChoirStaff
\new PianoStaff <<
\set PianoStaff.instrumentName = #"Piano"
- \new Staff = "oben" \oben
- \new Staff = "unten" \unten
+ \new Staff = "upper" \upper
+ \new Staff = "lower" \lower
>>
>>
@end example
Takte sieht unser Beispiel nun so aus:
@lilypond[quote,verbatim,ragged-right,addversion]
-global = { \key d \major \time 4/4 }
+global = {
+ \key d \major
+ \time 4/4
+}
sopranoMusic = \relative c'' {
\clef "treble"
r4 d2 a4 | d4. d8 a2 | cis4 d cis2 |
upper = \relative a' {
\clef "treble"
\global
- r4 <a d fis>2 <a e' a>4 |
- <d fis d'>4. <d fis d'>8 <a d a'>2 |
- <g cis g'>4 <a d fis> <a cis e>2 |
+ r4 <a d fis>2 <a e' a>4
+ <d fis d'>4. <d fis d'>8 <a d a'>2
+ <g cis g'>4 <a d fis> <a cis e>2
}
lower = \relative c, {
\clef "bass"
\global
- <d d'>4 <d d'>2 <cis cis'>4 |
- <b b'>4. <b' b'>8 <fis fis'>2 |
- <e e'>4 <d d'> <a' a'>2 |
+ <d d'>4 <d d'>2 <cis cis'>4
+ <b b'>4. <b' b'>8 <fis fis'>2
+ <e e'>4 <d d'> <a' a'>2
}
\score {
\new ChoirStaff <<
\new Staff = "sopranos" <<
\set Staff.instrumentName = #"Soprano"
- \new Voice = "sopranos" { \global \sopranoMusic }
+ \new Voice = "sopranos" {
+ \global
+ \sopranoMusic
+ }
>>
- \new Lyrics \lyricsto "sopranos" { \sopranoWords }
+ \new Lyrics \lyricsto "sopranos" {
+ \sopranoWords
+ }
\new Staff = "altos" <<
\set Staff.instrumentName = #"Alto"
- \new Voice = "altos" { \global \altoMusic }
+ \new Voice = "altos" {
+ \global
+ \altoMusic
+ }
>>
- \new Lyrics \lyricsto "altos" { \altoWords }
+ \new Lyrics \lyricsto "altos" {
+ \altoWords
+ }
\new Staff = "tenors" <<
\set Staff.instrumentName = #"Tenor"
- \new Voice = "tenors" { \global \tenorMusic }
+ \new Voice = "tenors" {
+ \global
+ \tenorMusic
+ }
>>
- \new Lyrics \lyricsto "tenors" { \tenorWords }
+ \new Lyrics \lyricsto "tenors" {
+ \tenorWords
+ }
\new Staff = "basses" <<
\set Staff.instrumentName = #"Bass"
- \new Voice = "basses" { \global \bassMusic }
+ \new Voice = "basses" {
+ \global
+ \bassMusic
+ }
>>
- \new Lyrics \lyricsto "basses" { \bassWords }
+ \new Lyrics \lyricsto "basses" {
+ \bassWords
+ }
>> % end ChoirStaff
\new PianoStaff <<
title = "Jesu, meine Freude"
composer = "J. S. Bach"
@}
-TimeKey = @{ \time 4/4 \key c \minor @}
-ManualOneVoiceOneMusic = @{s1@}
-ManualOneVoiceTwoMusic = @{s1@}
-ManualTwoMusic = @{s1@}
-PedalOrganMusic = @{s1@}
+TimeKey = @{
+ \time 4/4
+ \key c \minor
+@}
+ManualOneVoiceOneMusic = @{ s1 @}
+ManualOneVoiceTwoMusic = @{ s1 @}
+ManualTwoMusic = @{ s1 @}
+PedalOrganMusic = @{ s1 @}
\score @{
@}
@example
\new PianoStaff <<
\new Staff = "ManualOne" <<
- \new Voice @{ \ManualOneVoiceOneMusic @}
- \new Voice @{ \ManualOneVoiceTwoMusic @}
+ \new Voice @{
+ \ManualOneVoiceOneMusic
+ @}
+ \new Voice @{
+ \ManualOneVoiceTwoMusic
+ @}
>> % end ManualOne Staff context
\new Staff = "ManualTwo" <<
- \new Voice @{ \ManualTwoMusic @}
+ \new Voice @{
+ \ManualTwoMusic
+ @}
>> % end ManualTwo Staff context
>> % end PianoStaff context
@end example
<< % PianoStaff and Pedal Staff must be simultaneous
\new PianoStaff <<
\new Staff = "ManualOne" <<
- \new Voice @{ \ManualOneVoiceOneMusic @}
- \new Voice @{ \ManualOneVoiceTwoMusic @}
+ \new Voice @{
+ \ManualOneVoiceOneMusic
+ @}
+ \new Voice @{
+ \ManualOneVoiceTwoMusic
+ @}
>> % end ManualOne Staff context
\new Staff = "ManualTwo" <<
- \new Voice @{ \ManualTwoMusic @}
+ \new Voice @{
+ \ManualTwoMusic
+ @}
>> % end ManualTwo Staff context
>> % end PianoStaff context
\new Staff = "PedalOrgan" <<
- \new Voice @{ \PedalOrganMusic @}
+ \new Voice @{
+ \PedalOrganMusic
+ @}
>>
>>
@end example
\new Staff = "ManualOne" <<
\TimeKey % set time signature and key
\clef "treble"
- \new Voice @{ \voiceOne \ManualOneVoiceOneMusic @}
- \new Voice @{ \voiceTwo \ManualOneVoiceTwoMusic @}
+ \new Voice @{
+ \voiceOne
+ \ManualOneVoiceOneMusic
+ @}
+ \new Voice @{
+ \voiceTwo
+ \ManualOneVoiceTwoMusic
+ @}
>> % end ManualOne Staff context
\new Staff = "ManualTwo" <<
\TimeKey
\clef "bass"
- \new Voice @{ \ManualTwoMusic @}
+ \new Voice @{
+ \ManualTwoMusic
+ @}
>> % end ManualTwo Staff context
>> % end PianoStaff context
\new Staff = "PedalOrgan" <<
\TimeKey
\clef "bass"
- \new Voice @{ \PedalOrganMusic @}
+ \new Voice @{
+ \PedalOrganMusic
+ @}
>> % end PedalOrgan Staff
>>
@} % end Score context
title = "Jesu, meine Freude"
composer = "J S Bach"
}
-TimeKey = { \time 4/4 \key c \minor }
+TimeKey = {
+ \time 4/4
+ \key c \minor
+}
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~
+ c 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
+ f 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 Staff = "ManualOne" <<
\TimeKey % set time signature and key
\clef "treble"
- \new Voice { \voiceOne \ManualOneVoiceOneMusic }
- \new Voice { \voiceTwo \ManualOneVoiceTwoMusic }
+ \new Voice {
+ \voiceOne
+ \ManualOneVoiceOneMusic
+ }
+ \new Voice {
+ \voiceTwo
+ \ManualOneVoiceTwoMusic
+ }
>> % end ManualOne Staff context
\new Staff = "ManualTwo" <<
\TimeKey
\clef "bass"
- \new Voice { \ManualTwoMusic }
+ \new Voice {
+ \ManualTwoMusic
+ }
>> % end ManualTwo Staff context
>> % end PianoStaff context
\new Staff = "PedalOrgan" <<
\TimeKey
\clef "bass"
- \new Voice { \PedalOrganMusic }
+ \new Voice {
+ \PedalOrganMusic
+ }
>> % end PedalOrgan Staff context
>>
} % end Score context
@lilypond[quote,verbatim,ragged-right]
fragmentA = \relative c'' { a4 a8. b16 }
fragmentB = \relative c'' { a8. gis16 ees4 }
-violin = \new Staff { \fragmentA \fragmentA \fragmentB \fragmentA }
+violin = \new Staff {
+ \fragmentA
+ \fragmentA
+ \fragmentB
+ \fragmentA
+}
\score {
{
\violin
@c TODO Avoid padtext - not needed with skylining
@lilypond[quote,verbatim,ragged-right]
-dolce = \markup{ \italic \bold dolce }
+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 |
+ c4._\dolce b8 a8 g a b
\padText
- c4.^"hi there!" d8 e' f g d |
- c,4.\fthenp b8 c4 c-. |
+ c4.^"hi there!" d8 e' f g d
+ c,4.\fthenp b8 c4 c-.
}
}
\score {
@example
violin = \relative c'' @{
\repeat volta 2 @{
- c4._\markup@{ \italic \bold dolce @} b8 a8 g a b |
+ 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-. |
+ c4.^"hi there!" d8 e' f g d
+ c,4.\markup @{ \dynamic f \italic \small @{ 2nd @}
+ \hspace #0.1 \dynamic p @} b8 c4 c-.
@}
@}
@end example
@lilypond[quote,ragged-right]
\relative c <<
\new Staff {
- \time 2/4 R2*3
+ \time 2/4
+ R2*3
r4 f8 a cis4 f e d
}
\new Staff {
\clef bass
r4 d,8 f | gis4 c | b bes |
- a8 e f4 | g d | gis f
+ a8 e f4 | g d | gis f |
}
>>
@end lilypond
@c -*- coding: utf-8; mode: texinfo; documentlanguage: de -*-
@ignore
- Translation of GIT committish: 354f8ea159bb5216202e5815685fca8bd7e6919c
+ Translation of GIT committish: 0bbabe9eef32b46216a722cc0d49df759227b7be
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..
@end ignore
+@include included/generating-output.itexi
+
@c \version "2.13.4"
@c Translators: Till Paala, Reinhold Kainhofer
@c Translation checkers: Hajo Bäß
die auf dem System zur Verfügung stehen, untersucht. Aber nach
diesem ersten Mal läuft LilyPond sehr viel schneller.}
-@node MacOS X
-@subsection MacOS X
-@translationof MacOS X
-
-@warning{Diese Anweisungen gehen davon aus, dass Sie die
-LilyPond-Application benutzen. Wenn Sie eins der Programme benutzen, die in @rweb{Leichteres Editieren} beschrieben sind, schauen
-Sie bitte in der Dokumentation nach, wenn Sie Probleme damit haben,
-eine Datei zu kompilieren.}
-
-
-@subsubheading 1. Schritt: Erstellen Sie eine @file{.ly}-Datei
-
-Wenn Sie das @command{LilyPond.app}-Symbol doppelt klicken, öffnet
-sich eine Beispiel-Datei.
-
-@sourceimage{Learning_Macos_welcome,,,}
-
-Wählen Sie aus den Menüs oben links auf Ihrem Bildschirm
-@w{@code{File > Save}}.
-
-@sourceimage{Learning_Macos_Save_menu,,,}
-
-Wählen Sie einen Namen für die Datei, etwa @file{test.ly}.
-@sourceimage{Learning_Macos_Save_file_with_name,,,}
-@subsubheading 2. Schritt: Kompilieren (mit LilyPad)
-Aus den selben Menüs wählen Sie jetzt @w{@code{Compile > Tyepset}}.
-
-@sourceimage{Learning_Macos_Typeset_menu,,,}
-
-Ein neues Fenster öffnet sich, in dem ein Forschrittslog der
-Kompilation der von ihnen gerade gespeicherten Datei gezeigt
-wird.
-
-@sourceimage{Learning_Macos_Compiling_log,,,}
-
-@subsubheading 3. Schritt: Ausgabe anschauen
-
-Wenn die Kompilation fertig ist, wird ein PDF mit dem gleichen
-Namen wie das Original erstellt und automatisch mit dem
-Standard-PDF-Programm geöffnet und angezeigt.
-
-@sourceimage{Learning_Macos_pdf_output,,,}
-
-
-@subsubheading Andere Befehle
-
-Um neue LilyPond-Dateien zu erstellen beginnen sie mit
-@w{@code{File > New}}
-
-@sourceimage{Learning_Macos_New_menu,,,}
-
-@noindent
-oder @w{@code{File > Open}} um eine schon existierende Datei zu
-öffnen und zu editieren.
-
-@sourceimage{Learning_Macos_Open_menu,,,}
-
-Sie müssen alle Änderungen an der Datei zuerst speichern, bevor Sie
-wieder @w{@code{Compile > Tyepset}} wählen. Wenn das PDF nicht
-erscheint, schauen Sie im Fortschrittslog nach Fehlern.
+@node MacOS X
+@subsection MacOS X
+@translationof MacOS X
-Wenn Sie nicht das Standard-PDF-Programm benutzen, das automatisch
-bei Mac OS X dabei ist, und Sie die PDF-Datei noch von einer vorigen
-Kompilation geöffnet haben, können weitere Kompilationen fehlschlagen,
-bis Sie das Original-PDF schließen.
+@cindex Starten des Programms, MacOS X
+@cindex MacOS X, LilyPond starten
+@lilypadOSX
-@cindex Windows, LilyPond starten
@node Windows
@subsection Windows
@translationof Windows
-@warning{Diese Anweisungen gehen davon aus, dass Sie den installierten
-LilyPad-Editor benutzen. Wenn Sie eins der Programme benutzen, die in @rweb{Alternate input} beschrieben sind, schauen
-Sie bitte in der Dokumentation nach, wenn Sie Probleme damit haben,
-eine Datei zu kompilieren.}
-
-@subsubheading 1. Schritt: Erstellen Sie eine @file{.ly}-Datei
-
-Wenn sie auf das LilyPond-Symbol auf dem Desktop doppelklicken,
-öffnet sich ein einfacher Texteditor mit einer Beispieldatei.
-
-@sourceimage{Learning_Win7_Welcome_File_Whole,,,}
-
-Aus dem Menü über der Beispieldatei wählen Sie @w{@code{File > Save as}}.
-Benutzen Sie nicht @w{@code{File > Save}} für die Beispieldatei,
-weil die Datei nicht funktioniert, bis Sie sie mit einem eigenen
-Namen gespeichert haben.
-
-@sourceimage{Learning_Win7_Save_Menu,,,}
-
-Wählen Sie einen Namen für Ihre Datei, etwa @file{test.ly}.
-
-@sourceimage{Learning_Win7_Save_File_With_Name,,,}
-
-
-@subsubheading Schritt 2a: Kompilieren (mit drag-and-drop)
-
-Sie können nach Belieben die Kompilation starten, indem Sie
-entweder:
-
-Die Datei auf das LilyPond-Symbol ziehen.
-
-@sourceimage{Learning_Win7_Open_Dragndrop,,,}
-
-Klicken Sie mit der rechten Maustaste auf die Datei und wählen
-Sie aus dem Menü @w{@code{Open with > LilyPond}}.
-
-@sourceimage{Learning_Win7_Open_Context_Menu,,,}
-
-
-@subsubheading Schritt 2b: Kompilieren (mit Doppelklick)
-
-Oder klicken Sie einfach die Datei @file{test.ly} doppelt an.
-
-
-@subsubheading 3. Schritt: Ausgabe anschauen
-
-Während der Kompilation von @file{test.ly} öffnet sich ein
-Kommandofenster sehr schnell und schließt sich wieder. Drei
-zusätzliche Dateien werden in diesem Schritt erstellt.
-
-@sourceimage{Learning_Win7_All_Files_Created,,,}
-
-Das PDF enthält den Notensatz aus der Datei @file{test.ly}.
-
-@sourceimage{Learning_Win7_Pdf_Output,,,}
-
-
-@subsubheading Andere Befehle
-
-Um eine neue Datei zu erstellen, wählen Sie @w{@code{File > New}}
-aus irgendeiner schon erstellten Datei.
-
-@sourceimage{Learning_Win7_New_Menu,,,}
-
-@noindent
-oder @w{@code{File > Open}}, um eine Datei zu öffnen und zu
-bearbeiten, die Sie schon vorher gespeichert hatten.
-
-@sourceimage{Learning_Win7_Open_Menu,,,}
-
-Sie müssen jede neue Änderung erst speichern, bevor Sie die Datei
-kompilieren. Wenn kein PDF erstellt wird, öffnen Sie die Log-Datei
-und schauen Sie nach Fehlern.
-
-@sourceimage{Learning_Win7_Log_File,,,}
-
-Die Log-Datei wird jedes Mal überschrieben, wenn Sie Ihre
-LilyPond-Datei kompilieren.
-
-Die PS-Datei wird intern von LilyPond benutzt um das PDF zu erstellen
-und kann ignoriert werden. Sie wird auch jedes Mal neu überschrieben.
-
-Wenn Sie das PDF in einem PDF-Programm anschauen, müssen Sie es
-zuerst schließen, bevor Sie eine neue Kompilation durchführen
-können, denn es kann einen Fehler bei der Erstellung des neuen
-PDFs geben, wenn das alte noch geöffnet ist.
+@cindex Windows, LilyPond starten
+@lilypadWindows
-@cindex Unix, LilyPond starten
@node Kommandozeile
@subsection Kommandozeile
@translationof Command-line
-@warning{Diese Anweisungen gehen davon aus, dass Sie den installierten
-LilyPad-Editor benutzen. Wenn Sie eins der Programme benutzen, die in @rweb{Alternate input} beschrieben sind, schauen
-Sie bitte in der Dokumentation nach, wenn Sie Probleme damit haben,
-eine Datei zu kompilieren.}
-
-@subsubheading Schritt 1: Erstellen Sie eine @file{.ly}-Datei
-
-
-Erstellen Sie eine Text-Datei mit dem Namen @file{test.ly} und
-geben Sie folgenden Text ein:
-
-@example
-@{
- c' e' g' e'
-@}
-@end example
-
-@subsubheading Schritt 2: Kompilieren (auf der Kommandozeile)
-
-Um die Datei zu kompilieren, geben sie an der Konsole bzw. Kommandozeile
-
-@example
-lilypond test.ly
-@end example
-
-@noindent
-ein.
-Sie werden ungefähr folgende Meldungen sehen:
-
-
-@example
-lilypond test.ly
-GNU LilyPond @version{}
-»test.ly« wird verarbeitet
-Analysieren...
-Interpretation der Musik...
-Vorverarbeitung der grafischen Elemente...
-Ideale Seitenanzahl wird gefunden...
-Musik wird auf eine Seite angepasst...
-Systeme erstellen...
-Layout nach »test.ps« ausgeben...
-Konvertierung nach »test.pdf«...
-@end example
-
-@subsubheading 3. Schritt: Ausgabe anschauen
+@cindex Unix, LilyPond starten
-Als Ergebnis erhalten Sie ein @file{test.pdf}, das Sie mit den
-Standardprogrammen Ihres Betriebssystemes anschauen können.
+@lilypadCommandLine
der Online-Version.
@menu
-* Ausgelassenes Material::
-* Anklickbare Beispiele::
-* Navigation mit der Tastatur::
-* Überblick über die Handbücher::
+* Ausgelassenes Material::
+* Anklickbare Beispiele::
+* Überblick über die Handbücher::
@end menu
@c KEEP LY
@lilypond[quote]
\relative c'' {
- c-\markup { \bold \huge { Hier klicken! } }
+ c-\markup { \bold \huge { Hier klicken! } }
}
@end lilypond
cut-&-pastable section} bis ganz zum Ende der Datei.
-@node Navigation mit der Tastatur
-@subsection Navigation mit der Tastatur
+@ignore
+
+@n ode Navigation mit der Tastatur
+@s ubsection Navigation mit der Tastatur
@translationof Keyboard navigation
@warning{Diese Funktion gibt es nur für die HTML-Version der Handbücher.}
@c TODO: once this is figured out, insert it here.
Es wird gegenwärtig an dieser Funktion gearbeitet.
-
+@end ignore
@node Überblick über die Handbücher
@c -*- coding: utf-8; mode: texinfo; documentlanguage: de -*-
@ignore
- Translation of GIT committish: 6073b7f6288066f7c3acc1c56800478c3f5f0c57
+ Translation of GIT committish: 0bbabe9eef32b46216a722cc0d49df759227b7be
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
@c NOTE Tuplet brackets collide if notes are high on staff
@c See issue 509
@lilypond[quote,ragged-right,verbatim,fragment,relative=1]
-\times 2/3 { c8[ c c]}
+\times 2/3 { c8[ c c] }
\once \override TupletNumber
#'text = #tuplet-number::calc-fraction-text
\times 2/3 {
c[ 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
{
\time 6/8
{
- r4 b8 b[( g]) g |
- g[( e]) e d[( f]) a |
- a g
+ r4 b8 b[( g]) g
+ g4[( e]) e d[( f]) a
+ a4 g
}
\addlyrics {
The man who feels love's sweet e -- mo -- tion
{
% Increase thickness of all following slurs from 1.2 to 5.0
\override Slur #'thickness = #5.0
- r4 b8 b[( g]) g |
- g[( e]) e d[( f]) a |
- a g
+ r4 b8 b[( g]) g
+ g4[( e]) e d[( f]) a
+ a4 g
}
\addlyrics {
The man who feels love's sweet e -- mo -- tion
r4 b8
% Increase thickness of immediately following slur only
\once \override Slur #'thickness = #5.0
- b[( g]) g |
- g[( e]) e d[( f]) a |
- a g
+ b4[( g]) g
+ g4[( e]) e d[( f]) a
+ a4 g
}
\addlyrics {
The man who feels love's sweet e -- mo -- tion
r4 b8
% Increase thickness of immediately following slur only
\once \override Slur #'thickness = #5.0
- b[( g]) g |
+ b4[( g]) g
% Increase thickness of immediately following slur only
\once \override Slur #'thickness = #5.0
- g[( e]) e d[( f]) a |
- a g
+ g4[( e]) e d[( f]) a
+ a4 g
}
\addlyrics {
The man who feels love's sweet e -- mo -- tion
r4 b8
% Increase thickness of all following slurs from 1.2 to 5.0
\override Slur #'thickness = #5.0
- b[( g]) g |
- g[( e])
+ b4[( g]) g
+ g4[( e])
% Revert thickness of all following slurs to default of 1.2
\revert Slur #'thickness
- e d[( f]) a |
- a g
+ e4 d[( f]) a
+ a4 g
}
\addlyrics {
The man who feels love's sweet e -- mo -- tion
{
\time 6/8
{
- r4 b8 b[( g]) g |
- g[( e]) e d[( f]) a |
- a g
+ r4 b8 b[( g]) g
+ g4[( e]) e d[( f]) a
+ a4 g
}
\addlyrics {
\override LyricText #'font-shape = #'italic
{
\time 12/16
\override BarLine #'stencil = ##f
- c4 b8 c d16 c d8 |
- g, 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 #'stencil = ##f
- c4 b8 c d16 c d8 |
- g, 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 #'break-visibility = #'#(#f #f #f)
- c4 b8 c d16 c d8 |
- g, 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, 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, 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, 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, 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, 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, a16 b8 c d4 e16 |
+ c4 b8 c d16 c d8
+ g,8 a16 b8 c d4 e16
e8
}
@end lilypond
@lilypond[quote,fragment,ragged-right,verbatim,relative=2]
\new Staff ="main" {
- \relative g' {
- r4 g8 g c4 c8 d |
- e4 r8
- <<
- { f c c }
- \new Staff \with {
- alignAboveContext = #"main" }
- { f8 f c }
- >>
- r4 |
- }
- }
+ \relative g' {
+ r4 g8 g c4 c8 d |
+ e4 r8
+ <<
+ { f c c }
+ \new Staff \with {
+ alignAboveContext = #"main" }
+ { f8 f c }
+ >>
+ r4 |
+ }
+}
@end lilypond
Ossia-Systeme werden normalerweise ohne Schlüssel und Taktangabe
@lilypond[quote,fragment,ragged-right,verbatim,relative=2]
\new Staff ="main" {
\relative g' {
- r4 g8 g c4 c8 d |
+ r4 g8 g c4 c8 d
e4 r8
<<
- { f c c }
+ { f8 c c }
\new Staff \with {
alignAboveContext = #"main"
}
{ f8 f c }
}
>>
- r4 |
+ r4
}
}
@end lilypond
@lilypond[quote,fragment,ragged-right,verbatim,relative=2]
\new Staff ="main" {
\relative g' {
- r4 g8 g c4 c8 d |
+ r4 g8 g c4 c8 d
e4 r8
<<
- { f c c }
+ { f8 c c }
\new Staff \with {
alignAboveContext = #"main"
% Don't print clefs in this staff
% Don't print time signatures in this staff
\override TimeSignature #'stencil = ##f
}
- { f8 f c }
+ { f8 f c }
>>
- r4 |
+ r4
}
}
@end lilypond
@lilypond[quote,verbatim,fragment,ragged-right,relative=2]
\new Staff ="main" {
\relative g' {
- r4 g8 g c4 c8 d |
+ r4 g8 g c4 c8 d
e4 r8
<<
- { f c c }
+ { f8 c c }
\new Staff \with {
alignAboveContext = #"main"
\override Clef #'stencil = ##f
% Reduce all font sizes by ~24%
fontSize = #-2
}
- { f8 f c }
+ { f8 f c }
>>
- r4 |
+ r4
}
}
@end lilypond
@lilypond[quote,verbatim,fragment,ragged-right,relative=2]
\new Staff ="main" {
\relative g' {
- r4 g8 g c4 c8 d |
+ r4 g8 g c4 c8 d
e4 r8
<<
- { f c c }
+ { f8 c c }
\new Staff \with {
alignAboveContext = #"main"
\override Clef #'stencil = ##f
% Reduce stem length and line spacing to match
\override StaffSymbol #'staff-space = #(magstep -2)
}
- { f8 f c }
+ { f8 f c }
>>
- r4 |
+ r4
}
}
@end lilypond
@lilypond[quote,fragment,ragged-right,verbatim,relative=2]
c2^"Text1"
-c^"Text2"
-c^"Text3"
-c^"Text4"
+c2^"Text2"
+c2^"Text3"
+c2^"Text4"
@end lilypond
Notensysteme werden in den Standardeinstellungen auch so dicht
@lilypond[quote,ragged-right,verbatim]
<<
\new Staff {
- \relative c' { c a, }
+ \relative c' { c4 a, }
}
\new Staff {
- \relative c'''' { c a, }
+ \relative c'''' { c4 a, }
}
>>
@end lilypond
@lilypond[quote,verbatim,relative=2]
a4 g c a
\override Stem #'direction = #DOWN
-a g c a
+a4 g c a
\override Stem #'direction = #UP
-a g c a
+a4 g c a
\revert Stem #'direction
-a g c a
+a4 g c a
@end lilypond
Hier werden die Konstanten @code{DOWN} und @code{UP}
@lilypond[quote,verbatim,relative=1]
\set fingeringOrientations = #'(left)
<f-2>
-< c-1 e-2 g-3 b-5 > 4
+<c-1 e-2 g-3 b-5>4
\set fingeringOrientations = #'(left)
<f-2>
-< c-1 e-2 g-3 b-5 > 4
+<c-1 e-2 g-3 b-5>4
\set fingeringOrientations = #'(up left down)
<f-2>
-< c-1 e-2 g-3 b-5 > 4
+<c-1 e-2 g-3 b-5>4
\set fingeringOrientations = #'(up left)
<f-2>
-< c-1 e-2 g-3 b-5 > 4
+<c-1 e-2 g-3 b-5>4
\set fingeringOrientations = #'(right)
<f-2>
-< c-1 e-2 g-3 b-5 > 4
+<c-1 e-2 g-3 b-5>4
@end lilypond
@noindent
\override Fingering #'font-size = #-7
\set fingeringOrientations = #'(left)
<f-2>
-< c-1 e-2 g-3 b-5 > 4
+<c-1 e-2 g-3 b-5>4
\set fingeringOrientations = #'(left)
<f-2>
-< c-1 e-2 g-3 b-5 > 4
+<c-1 e-2 g-3 b-5>4
\set fingeringOrientations = #'(up left down)
<f-2>
-< c-1 e-2 g-3 b-5 > 4
+<c-1 e-2 g-3 b-5>4
\set fingeringOrientations = #'(up left)
<f-2>
-< c-1 e-2 g-3 b-5 > 4
+<c-1 e-2 g-3 b-5>4
\set fingeringOrientations = #'(right)
<f-2>
-< c-1 e-2 g-3 b-5 > 4
+<c-1 e-2 g-3 b-5>4
@end lilypond
\dynamicUp
% Start Ottava Bracket
\ottava #1
-c' \startTextSpan
+c'4 \startTextSpan
% Add Dynamic Text and hairpin
-c\pp\<
-c
+c4\pp\<
+c4
% Add Text Script
-c^Text
-c c
+c4^Text
+c4 c
% Add Dynamic Text and terminate hairpin
-c\ff c \stopTextSpan
+c4\ff c \stopTextSpan
% Stop Ottava Bracket
\ottava #0
-c, c c c
+c,4 c c c
@end lilypond
Dieses Beispiel zeigt auch, wie man Text-Strecker erstellt, d.h.
\once \override Staff.OttavaBracket #'outside-staff-priority = #340
% Start Ottava Bracket
\ottava #1
-c' \startTextSpan
+c'4 \startTextSpan
% Add Dynamic Text
-c\pp
+c4\pp
% Add Dynamic Line Spanner
-c\<
+c4\<
% Add Text Script
-c^Text
-c c
+c4^Text
+c4 c
% Add Dynamic Text
-c\ff c \stopTextSpan
+c4\ff c \stopTextSpan
% Stop Ottava Bracket
\ottava #0
-c, c c c
+c,4 c c c
@end lilypond
@cindex Legatobögen und outside-staff-priority
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
-c^\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
@end lilypond
@lilypond[quote,fragment,ragged-right,verbatim,relative=2]
c2^"Text1"
-c^"Text2"
+c2^"Text2"
\once \override TextScript #'outside-staff-priority = #500
-c^"Text3"
-c^"Text4"
+c2^"Text3"
+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"
-c^"Text2"
-c^"Text3"
-c^"Text4"
+c2^"Text2"
+c2^"Text3"
+c2^"Text4"
@end lilypond
Dieses Verhalten wird mit dem @code{\textLengthOff}-Befehl
\key aes \major
\time 9/8
\dynamicUp
-bes4.~\f\< \( bes4 bes8 des4\ff\> c16 bes\! |
-ees,2.~\)\mf ees4 r8 |
+bes4.~\f\< \( bes4 bes8 des4\ff\> c16 bes\!
+ees,2.~\)\mf ees4 r8
@end lilypond
Wenn aber Noten und Dynamikzeichen sehr dicht beieinander
@cindex padding (Verschiebuns-Eigenschaft), Beispiel
@lilypond[quote,fragment,relative=1,verbatim]
-% This will not work, see below:
+% This will not work, see below
\override MetronomeMark #'padding = #3
\tempo 4=120
c1
-% This works:
+% This works
\override Score.MetronomeMark #'padding = #3
\tempo 4=80
d1
@lilypond[quote,ragged-right,verbatim]
sesquisharp = \markup { \sesquisharp }
\relative c'' {
- c
+ c4
% This prints a sesquisharp but the spacing is too small
\once \override Accidental
#'stencil = #ly:text-interface::print
\once \override Accidental #'text = #sesquisharp
- cis c
+ cis4 c
% This improves the spacing
\once \override Score.AccidentalPlacement #'right-padding = #0.6
\once \override Accidental
#'stencil = #ly:text-interface::print
\once \override Accidental #'text = #sesquisharp
- cis
+ cis4
}
@end lilypond
@lilypond[quote,fragment,ragged-right,verbatim,relative=3]
\voiceOne
-< a \2 >
+< a\2 >
\once \override StringNumber #'self-alignment-X = #RIGHT
-< a \2 >
+< a\2 >
@end lilypond
Kollision dieser Art:
@lilypond[quote,verbatim,fragment,ragged-right, relative=1]
-<< {c c c c} \\ {R1} >>
+<< { c4 c c c } \\ { R1 } >>
@end lilypond
Die beste Lösung ist es, die Ganztaktpause nach unten zu
@lilypond[quote,verbatim,fragment,ragged-right, relative=1]
<<
- {c c c c}
-\\
+ { c4 c c c }
+ \\
\override MultiMeasureRest #'staff-position = #-8
- {R1}
+ { R1 }
>>
@end lilypond
@lilypond[quote,fragment,relative=1,verbatim]
\stemUp
-f-5
-\once \override Fingering
- #'extra-offset = #'(-0.3 . -1.8)
-f-5
+f4-5
+\once \override Fingering #'extra-offset = #'(-0.3 . -1.8)
+f4-5
@end lilypond
er den Bogen des Vorschlags vermeidet:
@lilypond[quote,verbatim,fragment,ragged-right,relative=1]
-r4 \acciaccatura e8\( d8 c ~c d c d\)
+r4 \acciaccatura e8\( d8 c~ c d c d\)
@end lilypond
@noindent
@lilypond[quote,verbatim,fragment,ragged-right,relative=1]
r4
\phrasingSlurUp
-\acciaccatura e8\( d8 c ~c d c d\)
+\acciaccatura e8\( d8 c~ c d c d\)
@end lilypond
@noindent
r4
\once \override PhrasingSlur #'positions = #'(-4 . -3)
\acciaccatura
-e8\( d8 c ~c d c d\)
+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} >>
+<< { b,8 ais, b, g, } \\ { e, g e, g } >>
+<< { b,8 ais, b, g, } \\ { e, g e, g } >>
}
@end lilypond
\clef "bass"
<<
\override Beam #'positions = #'(3 . 3)
- {b,8 ais, b, g,}
+ { b,8 ais, b, g, }
\\
- {e, g e, g}
+ { e, g e, g }
>>
- << {b,8 ais, b, g,} \\ {e, g e, g} >>
+ << { b,8 ais, b, g, } \\ { e, g e, g } >>
}
@end lilypond
@cindex force-hshift-Eigenschaft
@cindex Vertikale Verschiebung erzwingen
-@c FIXME: formatting stuff (ie not important right now IMO)
-@c @a nchor Chopin finally corrected TODOgp
-
An diesem Punkt können wir den letzten Feinschliff an unserem
Chopin-Beispiel vornhemen, das wir behandelt haben in
@ref{Ich höre Stimmen}. Wir hatten es in folgende Form
@}
@end example
+@code{keep-inside-line} braucht jedoch sehr viel Berechnungen,
+sodass es sich anbietet, diese Funktion zunächst nicht zu aktivieren
+und erst einzufügen, wenn man die endgültige Version erstellt.
+Auf diese Weise muss man nicht mit der Hand @code{\break}-Befehle
+hinzufügen, um zu vermeiden, dass Text über den rechten Rand der
+Seite hinausragt.
+
@node Fortgeschrittene Optimierungen mit Scheme
@subsection Fortgeschrittene Optimierungen mit Scheme