1 @c -*- coding: utf-8; mode: texinfo; documentlanguage: de -*-
4 Translation of GIT committish: ac3dd3ad38528113d97f6a8a7b81751c328f1c36
6 When revising a translation, copy the HEAD committish of the
7 version that you are working on. For details, see the Contributors'
8 Guide, node Updating translation committishes.
13 @c Translators: Till Paala
15 @node Allgemeine Eingabe und Ausgabe
16 @chapter Allgemeine Eingabe und Ausgabe
17 @translationof General input and output
19 Dieses Kapitel erklärt allgemeine Fragen zur Eingabe und Ausgabe von
20 Notation mit LilyPond und weniger direkte Fragen der Notation.
25 * Arbeiten an Eingabe-Dateien::
26 * Ausgabe kontrollieren::
32 @section Eingabestruktur
33 @translationof Input structure
35 Das hauptsächliche Eingabeformat von LilyPond sind Textdateien.
36 Üblicherweise werden diese Dateien mit der Endung @file{.ly}
40 * Struktur einer Partitur::
41 * Mehrere Partituren in einem Buch::
42 * Mehrere Ausgabedateien aus einer Eingabedatei::
43 * Dateinamen der Ausgabedateien::
48 @node Struktur einer Partitur
49 @subsection Struktur einer Partitur
50 @translationof Structure of a score
54 Eine @code{\score}-Umgebung muss einen einzelnen musikalischen
55 Ausdruck beinhalten, der durch geschweifte Klammern begrenzt wird:
63 @warning{Es darf @strong{nur ein} äußerer musikalischer Ausdruck
64 in der @code{\score}-Umgebung geschrieben werden, und er @strong{muss}
65 von geschweiften Klammern umgeben sein.}
67 Dieser einzelne musikalische Ausdruck kann beliebige Größe annehmen und
68 andere musikalische Ausdrücke von beliebiger Komplexität beinhalten.
69 Alle diese Beispiele sind musikalische Ausdrücke:
75 @lilypond[verbatim,quote]
82 @lilypond[verbatim,quote]
84 \new Staff { c'4 c' c' c' }
85 \new Staff { d'4 d' d' d' }
93 \new Staff @{ \Flöte @}
94 \new Staff @{ \Oboe @}
97 \new Staff @{ \GeigeI @}
98 \new Staff @{ \GeigeII @}
104 Kommentare bilden eine Ausnahme dieser Regel. (Andere Ausnahmen
105 siehe @ref{Die Dateistruktur}.) Sowohl einzeilige als auch
106 Blockkommentare (eingegrenzt durch @code{%@{ .. %@}}) können
107 an beliebiger Stelle einer Eingabedatei geschrieben werden. Sie
108 können innerhalb oder außerhalb der @code{\score}-Umgebung vorkommen,
109 und innerhalb oder außerhalb des einzelnen musikalischen Ausdrucks
110 innerhalb der @code{\score}-Umgebung.
112 Denken Sie daran, dass auch eine Datei, die nur eine @code{\score}-Umgebung
113 enhält, implizit in eine @code{\book}-Umgebung eingeschlossen wird. Eine
114 @code{\book}-Umgebung in einer Eingabdatei produziert wenigstens eine
115 Ausgabedatei, und standardmäßig wird der Name der Ausagabedatei aus dem
116 Namen der Eingabedatei abgeleitet. @file{fandangoforelephants.ly} produziert
117 also @file{fandangoforelephants.pdf}.
119 Zu weiteren Einzelheiten zu @code{\book}-Umgebungen siehe
120 @ref{Mehrere Partituren in einem Buch},
121 @ref{Mehrere Ausgabedateien aus einer Eingabedatei} und
127 @rlearning{Arbeiten an Eingabe-Dateien},
128 @rlearning{Musikalische Ausdrücke erklärt},
129 @rlearning{Score ist ein (einziger) zusammengesetzter musikalischer Ausdruck}.
132 @ref{Mehrere Partituren in einem Buch},
133 @ref{Mehrere Ausgabedateien aus einer Eingabedatei} und
137 @node Mehrere Partituren in einem Buch
138 @subsection Mehrere Partituren in einem Buch
139 @translationof Multiple scores in a book
142 @cindex Sätze, mehrere
144 Eine Partitur kann mehrere musikalische Stücke und verschiedene
145 Texte beinhalten. Beispiele hierzu sind etwa eine Etüdensammlung
146 oder ein Orchesterstück mit mehreren Sätzen. Jeder Satz wird
147 in einer eigenen @code{\score}-Umgebung notiert:
156 und Texte werden mit einer @code{\markup}-Umgebung geschrieben:
166 Alle Sätze und Texte, die in derselben @file{.ly}-Datei vorkommen,
167 werden normalerweise in eine einzige Ausgabedatei gesetzt.
181 Eine wichtige Ausnahme stellen Dokumente dar,
182 die mit lilypond-book erstellt werden, für die Sie explizit
183 @code{\book}-Umgebungen notieren müssen, weil sonst nur die erste
184 @code{\score}- bzw. @code{\markup}-Umgebung angezeigt wird.
186 Der Kopfbereich für jedes Musikstück kann innerhalb der @code{\score}-Umgebung
187 definiert werden. Die @code{piece}-(Stück)-Bezeichnung aus dieser
188 @code{\header}-Umgebung wird vor jedem Satz ausgegeben. Die Überschrift für
189 ein ganzes Buch kann innerhalb von @code{\book} notiert werden, aber wenn
190 diese Umgebung fehlt, wird die @code{\header}-Umgebung genommen, die auf
191 erster Ebene der Datei notiert ist.
195 title = "Acht Miniaturen"
196 composer = "Igor Stravinsky"
200 \header @{ piece = "Romanze" @}
203 ..Text der zweiten Strophe..
206 ..Text der dritten Strophe..
210 \header @{ piece = "Menuetto" @}
216 Stücke können innerhalb eines Buches mit @code{\bookpart} gruppiert
217 werden. Derartige Buchabschnitte werden durch einen Seitenumbruch
218 voneinander getrennt und können wie auch das ganze Buch selber mit
219 einem Titel innerhalb einer @code{\header}-Umgebung beginnen.
225 subtitle = "Erster Teil"
232 subtitle = "Zweiter Teil"
240 @node Mehrere Ausgabedateien aus einer Eingabedatei
241 @subsection Mehrere Ausgabedateien aus einer Eingabedatei
242 @translationof Multiple output files from one input file
244 Wenn Sie mehrere Ausgabedateien aus derselben @file{.ly}-Datei haben
245 wollen, können Sie mehrere @code{\book}-Umgebungen hinzufügen, wobei
246 jede Umgebung eine neue Ausgabedatei produziert. Wenn Sie keine
247 @code{\book}-Umgebung in der Eingabedatei angeben, wird die Datei von
248 LilyPond implizit als eine große @code{\book}-Umgebung behandelt, siehe
249 auch @ref{Dateistruktur}.
251 Wenn man mehrere Dateien aus einer einzigen Eingabedatei erstellt, stellt
252 LilyPond sicher, dass keine der Ausgabedateien der vorhandenen
253 @code{\book}-Umgebungen eine andere Ausgabedatei, etwa von der vorherigen
254 @code{\book}-Umgebung, überschreibt.
256 Dies geschieht, indem ein Suffix an den Ausgabenamen für jede
257 @code{\book}-Umgebung gehängt wird, die den Dateinamen der Eingabdatei
260 Das Standardverhalten ist es, einen Zahlen-Suffix für die Namen hinzuzufügen,
261 die in Konflikt stehen. Der Code
266 \layout @{ @dots{} @}
270 \layout @{ @dots{} @}
274 \layout @{ @dots{} @}
283 @file{eightminiatures.pdf},
285 @file{eightminiatures-1.pdf} and
287 @file{eightminiatures-2.pdf}.
291 @node Dateinamen der Ausgabedateien
292 @subsection Dateinamen der Ausgabedateien
293 @translationof Output file names
295 @funindex \bookOutputSuffix
296 @funindex \bookOutputName
298 LilyPond stellt die Möglichkeit zur Verfügung zu kontrollieren, welche
299 Dateinamen für welche Back-ends benutzt werden sollen, wenn die Ausgabedateien
302 Im vorhergehenden Abschnitt wurde gezeigt, wir LilyPond gleichnamige
303 Ausgabedateien verhindert, wenn mehrere Ausgabedateien aus derselben
304 Eingabedatei erstellt werden. Es gibt auch die Möglichkeit, eigene
305 Suffixe für jeden @code{\book}-Abschnitt zu definieren, sodass man etwa
306 Dateinamen wie @file{eightminiatures-Romanze.pdf}, @file{eightminiatures-Menuetto.pdf}
307 und @file{eightminiatures-Nocturne.pdf} produzieren kann, indem man
308 eine @code{\bookOutputSuffix}-Angabe in jede @code{\book}-Umgebung
313 \bookOutputSuffix "Romanze"
315 \layout @{ @dots{} @}
318 \bookOutputSuffix "Menuetto"
320 \layout @{ @dots{} @}
323 \bookOutputSuffix "Nocturne"
325 \layout @{ @dots{} @}
329 Man kann auch einen anderen Dateinamen für die Ausgabedatei einer
330 @code{\book}-Umgebung erstellen, indem man @code{\bookOutputName}-Angabe
335 \bookOutputName "Romanze"
337 \layout @{ @dots{} @}
340 \bookOutputName "Menuetto"
342 \layout @{ @dots{} @}
345 \bookOutputName "Nocturne"
347 \layout @{ @dots{} @}
351 Die obige Datei produziert folgene Ausgabedateien:
357 @file{Menuetto.pdf} and
361 @node Die Dateistruktur
362 @subsection Die Dateistruktur
363 @translationof File structure
373 @cindex Dateistruktur
374 @cindex Struktur, Datei
375 @cindex Eingabedatei, Struktur
376 @cindex Quelldatei, Struktur
378 Eine @file{.ly}-Datei kann eine beliebige Anzahl an Ausdrücken
379 auf der obersten Ebene beinhalten, wobei ein Ausdruck der obersten
380 Ebene einer der folgenden sein kann:
384 Eine Ausgabedefinition, wie @code{\paper}, @code{\midi} und
385 @code{\layout}. Derartige Definitionen auf oberster Ebene verändern
386 die globalen Einstellungen für das ganze @qq{Buch}. Wenn mehr
387 als eine derartige Definition desselben Typs angegeben wird, hat
391 Ein direkter Scheme-Ausdruck, wie etwa
392 @code{#(set-default-paper-size "a7" 'landscape)} oder
393 @code{#(ly:set-option 'point-and-click #f)}.
396 Eine @code{\header}-Umgebung. Damit wird die globale Titelei
397 eingestellt. Das ist die Umgebung, in der sich Definition für
398 das ganze Buch befinden, wie Komponist, Titel usw.
401 Eine @code{\score}-Umgebung. Die in ihr enthaltene Partitur wird
402 zusammen mit anderen vorkommenden @code{\score}-Umgebungen gesammelt
403 und in ein @code{\book} zusammengefasst. Dieses Verhalten kann
404 verändert werden, indem die Variable @code{toplevel-score-handler}
405 auf höchster Ebene gesetzt wird. Die Definition des Standards findet sich
406 in der Datei @file{../scm/lily.scm}.
409 Eine @code{\book}-Umgebung fasst mehrere Sätze (d. h. mehrere
410 @code{\score}-Umgebungen) logisch in ein Dokument zusammen.
411 Wenn mehrere @code{\score}-Partituren vorkommen, wird für jede
412 @code{\book}-Umgebung eine eigene Ausgabedatei erstellt, in der
413 alle in der Umgebung enthaltenen Partituren zusammengefasst sind.
414 Der einzige Grund, explizit eine @code{\book}-Umgebung zu setzen,
415 ist, wenn mehrere Ausgabedateien aus einer einzigen Quelldatei
416 erstellt werden sollen. Eine Ausnahme sind lilypond-book-Dokumente,
417 in denen eine @code{\book}-Umgebung explizit hinzugefügt werden
418 muss, wenn mehr als eine @code{\score}- oder @code{\markup}-Umgebung
419 im gleichen Beispiel angezeigt werden soll. Dieses Verhalten
420 kann verändert werden, indem die Variable @code{toplevel-book-handler}
421 auf höchster Ebene gesetzt wird. Die Definition des Standards
422 findet sich in der Datei @file{../scm/lily.scm}.
425 Eine @code{\bookpart}-Umgebung. Ein Buch (@code{\book}) kann in
426 mehrere Teile untergliedert sein, indem @code{\bookpart}-Umgebungen
427 eingesetzt werden. Jeder Buchabschnitt beginnt auf einer neuen
428 Seite und kann eigene Papierdefinitionen in einer @code{\paper}-Umgebung
432 Ein zusammengesetzter musikalischer Ausdruck wie etwa
437 Dieses Beispiel wird von LilyPond automatisch in einer
438 @code{\score}-Umgebung in einem Buch interpretiert und
439 mit anderen @code{\score}-Umgebungen und musikalischen
440 Ausdrücken auf der höchsten Ebene zusammen ausgegeben.
441 Anders gesagt: eine Datei, die nur das obige Beispiel
442 beinhaltet, wird übersetzt zu
458 Dieses Verhalten kann verändert werden, indem die Variable
459 @code{toplevel-music-handler} auf der obersten Ebene gesetzt
460 wird. Die Definition des Standards findet sich in der Datei
461 @file{../scm/lily.scm}.
464 Eine Textbeschriftung, eine Strophe etwa:
467 2. Die erste Zeile der zweiten Strophe.
471 Textbeschriftungen werden über, zwischen oder unter musikalischen
472 Ausdrücken gesetzt, so wie sie notiert werde.
482 Sie kann dann später in der Datei eingesetzt werden, indem @code{\foo}
483 geschrieben wird. Die Bezeichnung der Variable darf nur aus
484 alphabetischen Zeichen bestehen, keine Zahlen, Unter- oder Bindestriche.
488 Das folgende Beispiel zeigt drei Dinge, die auf der obersten Ebene
489 notiert werden können:
493 % Zeilen rechtsbündig setzen
504 An einer beliebigen Stelle der Datei kann jede der folgenden lexikalen
505 Anweisungen notiert werden:
508 @item @code{\version}
509 @item @code{\include}
510 @item @code{\sourcefilename}
511 @item @code{\sourcefileline}
513 Ein einzeiliger Kommentar, beginnend mit @code{%}.
516 Ein mehrzeiliger Kommentar, umgeben von @code{%@{ .. %@}}.
522 Leerzeichen zwischen Einheiten in der Eingabe werden generell ignoriert
523 und können nach Belieben weggelassen werden oder hinzugefügt werden,
524 um die Lesbarkeit des Codes zu verbessern. Mindestens ein Leerzeichen
525 sollte jedoch unter folgenden Umständen immer eingesetzt werden, um
530 Vor und hinter jeder schließenden oder öffnenden Klammer,
532 nach jedem Befehl oder jeder Variable, also jeder Einheit, die mit
535 nach jeder Einheit, die als Scheme-Ausdruck interpretiert werden,
536 also alle Einheiten, die mit @code{#} beginnen.
538 Alle Einheiten von Scheme-Ausdrücken müssen mit Leerzeichen getrennt
541 in Gesangstextabschnitten (@code{lyricmode}) müssen Leerzeichen
542 zwischen alle Ausdrücke in @code{\override}- und @code{\set}-Befehlen
543 gesetzt werden. Insbesondere müssen um Punkte und Gleichzeitszeichen
544 in Befehlen wie @code{\override Score . LyricTex #'font-size = #5)}
545 und vor dem gesamten Befehl geschrieben werden.
551 @rlearning{Wie eine LilyPond-Eingabe-Datei funktioniert}.
556 @translationof Titles and headers
558 Fast alle gedruckten Noten beinhalten einen Titel und den Namen
559 des Komponisten, teilweise wird auch noch sehr viel mehr Information
560 zur Verfügung gestellt.
564 * Eigene Kopf und Fußzeilen sowie Titel::
565 * Verweis auf die Seitenzahlen::
566 * Inhaltsverzeichnis::
570 @node Titel erstellen
571 @subsection Titel erstellen
572 @translationof Creating titles
574 Überschriften können für jede @code{\score}-Umgebung erstellt werden, sowohl
575 für die gesamte Datei (oder eine @code{\book}-Umgebung) als auch für
576 einzelne Buchabschnitte (innerhalb einer @code{\bookpart}-Umgebung).
578 Der Inhalt der Titelei wird aus der @code{\header}-Umgebung übernommen. Die
579 @code{\header}-Umgebung eines Buches unterstützt folgende Felder:
584 Die Widmung der Noten, wird auf oben auf der ersten Seite gesetzt.
588 Die Überschrift der Noten, wird unter der Widmung zentriert gesetzt.
592 Untertitel, zentriert unter der Überschrift.
594 @funindex subsubtitle
596 Unteruntertitel, zentriert unter dem Untertitel.
600 Name des Dichters, linksbündig unter dem Unteruntertitel.
604 Bezeichnung des Instruments, zentriert unter dem Unteruntertitel.
605 Auch oben auf der Seite zentriert (andere als erste Seite).
609 Name des Komponisten, rechtsbündig unter dem Unteruntertitel.
613 Metrum, linksbündig unter dem Dichter.
617 Name des Bearbeiters/Arrangeurs, rechtsbündig unter dem Komponisten.
621 Bezeichnung des Stückes, linksbündig unter dem Metrum.
625 Bezeichnung des Opus, rechtsbündig unter dem Bearbeiter.
627 @cindex Seitenumbruch, erzwingen
628 @funindex breakbefore
631 Hiermit beginnt der Titel auf einer neuen Seite. (Kann die Werte
632 ##t (wahr) oder ##f (falsch) haben.)
636 Anzeige eines Copyright, zentriert unten auf der ersten Seite. Um das
637 Copyright-Symbol zu notieren, siehe @ref{Zeichenkodierung}.
641 Zentriert unten auf der letzten Seite. Enthält standardmäßig: @qq{Music
642 engraving by LilyPond (@var{version})---www.lilypond.org}
646 Hier eine Demonstration der möglichen Felder. Beliebige
647 Formatierungsbefehle für Textbeschriftung können in der Titelei
648 eingesetzt werden. Siehe hierzu auch @ref{Text formatieren}.
651 @lilypond[quote,verbatim,line-width=11.0\cm]
654 paper-height = 10.0\cm
659 dedication = "mir gewidmet"
660 title = \markup \center-column { "Titel erste Zeile" "Titel zweite Zeile, länger" }
661 subtitle = "Untertitel"
662 subsubtitle = #(string-append "Unteruntertitel LilyPond-Version "
665 composer = \markup \center-column { "Komponist" \small "(1847-1973)" }
666 texttranslator = "Übersetzer"
667 meter = \markup { \teeny "m" \tiny "e" \normalsize "t" \large "r" \huge
669 arranger = \markup { \fontsize #8.5 "Be" \fontsize #2.5 "ar" \fontsize
670 #-2.5 "be" \fontsize #-5.3 "i" \fontsize #7.5 "ter" }
671 instrument = \markup \bold \italic "Instrument"
695 Wie schon oben gezeigt, können mehrfache @code{\header}-Umgebungen
696 eingesetzt werden. Wenn das gleiche Feld in mehreren
697 Umgebungen, wird die letzte vorkommende
698 Version benutzt. Hier ein kurzes Beispiel:
702 composer = "Komponist"
710 piece = "Neues Stück" % überschreibt die die vorige Definition
715 Wenn @code{\header} innerhalb der @code{\score}-Umgebung definiert wird,
716 wird normalerweise nur die Information von @code{piece} und @code{opus}
717 ausgegeben. Musikalische Ausdrücke innerhalb von @code{\score} müssen
718 vor @code{\header} gesetzt werden.
720 @lilypond[quote,verbatim,line-width=11.0\cm]
724 title = "title" % not printed
731 @funindex print-all-headers
734 Dieses Verhalten kann verändert werden (sodass alle Angaben aus der
735 Überschrift gesetzt werden, wenn sich @code{\header} innerhalb von
736 @code{\score} befindet), indem man schreibt:
740 print-all-headers = ##t
747 Die Standardfußzeile ist leer mit Ausnahme der ersten Seite, auf der
748 das @code{copyright}-Feld aus der @code{\header}-Umgebung eingefügt wird,
749 und die letzte Seite, auf der das @code{tagline}-Feld eingefügt wird.
750 Der Standardinhalt von @code{tagline} ist @qq{Music engraving by
751 LilyPond (@var{version})---www.lilypond.org}. Gut gesetzte Noten werben sehr effektiv
752 für LilyPond, darum bitten wir darum, diese Zeile stehen zu lassen,
755 Ein Titelfeld kann vollständig entfernt werden, indem es auf
766 @node Eigene Kopf und Fußzeilen sowie Titel
767 @subsection Eigene Kopf- und Fußzeilen sowie Titel
768 @translationof Custom headers footers and titles
770 Kompliziertere Anpassungen können vorgenommen werden, indem die
771 folgenden Variablen innerhalb der @code{\paper}-Umgebung geändert
772 werden. Die Init-Datei @file{../ly/titling-init.ly} enthält das
777 @funindex bookTitleMarkup
779 @item bookTitleMarkup
780 Das ist die Überschrift, die für das gesamte Dokument gilt. Üblicherweise
781 wird hier der Komponist und die Überschrift des Werkes genannt.
783 @funindex scoreTitleMarkup
785 @item scoreTitleMarkup
786 Das ist die Überschrift, die vor jede @code{\score}-Umgebung gesetzt wird.
787 Üblicherweise wird hier etwa die Bezeichnung eines Satzes notiert
788 (im @code{piece}-Feld).
790 @funindex oddHeaderMarkup
792 @item oddHeaderMarkup
793 Das ist der Seitenkopf für ungerade Seiten.
795 @funindex evenHeaderMarkup
797 @item evenHeaderMarkup
798 Das ist der Seitenkopf für gerade Seiten. Wenn undefiniert, wird der
799 ungerade Seitenkopf eingesetzt.
801 Standardmäßig werden die Kopfzeilen so definiert, dass die Seitennummer
802 sich außen befindet und das Instrument zentriert gesetzt wird.
804 @funindex oddFooterMarkup
806 @item oddFooterMarkup
807 Das ist die Fußzeile für ungerade Seiten.
809 @funindex evenFooterMarkup
811 @item evenFooterMarkup
812 Das ist die Fußzeile für gerade Seiten. Wenn undefiniert, wird die
813 ungerade Fußzeile eingesetzt.
815 Standardmäßig wird in der Fußzeile auf der ersten Seite das Copyright
816 und auf der letzten Seite die Tag-Zeile gesetzt.
825 @cindex Layout der Seite
827 @cindex Überschriften
829 Die folgende Definition setzt die Überschrift linksbündig und
830 den Komponisten rechtsbündig auf einer einzelnen Zeile:
834 bookTitleMarkup = \markup @{
836 \fromproperty #'header:title
837 \fromproperty #'header:composer
843 Kopf- und Fußzeile werden mit den Funktionen @code{make-header} und
844 @code{make-footer} erstellt, welche in @code{\paper} definiert werden.
845 Die Standardimplementationen finden sich in @file{ly/paper-defaults-init.ly} und
846 @file{ly/titling-init.ly}.
848 Dieses Beispiel zentriert die Seitenzahlen unten auf jeder Seite:
852 print-page-number = ##t
853 print-first-page-number = ##t
854 oddHeaderMarkup = \markup \fill-line @{ " " @}
855 evenHeaderMarkup = \markup \fill-line @{ " " @}
856 oddFooterMarkup = \markup @{
859 \on-the-fly #print-page-number-check-first
860 \fromproperty #'page:page-number-string
863 evenFooterMarkup = \markup @{
866 \on-the-fly #print-page-number-check-first
867 \fromproperty #'page:page-number-string
874 @node Verweis auf die Seitenzahlen
875 @subsection Verweis auf die Seitenzahlen
876 @translationof Reference to page numbers
878 Eine bestimmte Stelle der Partitur kann mit einem @code{\label}-Befehl
879 markiert werden, sowohl auf oberster Ebene als auch innerhalb eines
880 musikalischen Ausdrucks. Auf diese Marke kann dann verwiesen werden,
881 um die Seitenzahl zu erhalten, auf der die Marke vorkommt. Der
882 Verweis wird mit dem Befehl @code{\page-ref} gefordert (innerhalb
886 @lilypond[verbatim,line-width=11.0\cm]
887 \header { tagline = ##f }
889 \label #'ErstePartitur
893 \pageBreak \mark A \label #'ZeichenA
898 \markup { Die erste Partitur fängt auf
899 Seite \page-ref #'ErstePartitur "0" "?" an.}
900 \markup { Zeichen A befindet sich auf Seite
901 \concat { \page-ref #'ZeichenA "0" "?" . } }
905 Der @code{\page-ref}-Textbeschriftungsbefehl braucht drei Argumente:
909 @item die Marke, ein Scheme-Symbol, etwa @code{#'ErstePartitur},
910 @item eine Beschriftung, die als Platzhalter benutzt wird, um die Breite des Verweisen zu schätzen,
911 @item eine Beschriftung, die anstelle der Seitenzahl gesetzt wird, wenn die Marke unbekannt ist.
914 Der Grund, warum ein Platzhalter benötigt wird, ist dass zu dem Zeitpunkt,
915 an dem die Textbeschriftungen ausgewertet werden, noch keine Seitenumbrüche
916 vorgenommen wurden und die Seitenzahlen deshalb noch nicht bekannt sind.
917 Um hier ein Problem zu vermeiden, wird die eigentliche Auswertung der
918 Textbeschriftung erst später ausgeführt, die Größe des Textes muss aber
919 schon vorher bekannt sein. Die Größe wird mithilfe des Platzhalters
920 bestimmt. Wenn eine Partitur zwischen 10 und 99 Seiten hat, kann man
921 "00" schreiben, also eine zweistellige Zahl.
932 @node Inhaltsverzeichnis
933 @subsection Inhaltsverzeichnis
934 @translationof Table of contents
936 Ein Inhaltsverzeichnis kann eingefügt werden mit dem Befehl
937 @code{\markuplines \table-of-contents}. Die Elemente, die im
938 Inhaltsverzeichnis aufgelistet werden sollen, werden mit dem
939 @code{\tocItem}-Befehl markiert, welches sowohl auf höchster
940 Ebene als auch in einem musikalischen Ausdruck verwendet werden
944 \markuplines \table-of-contents
947 \tocItem \markup "Erste Partitur"
951 \tocItem \markup "Ein bestimmter Punkt innerhalb der ersten Partitur"
956 \tocItem \markup "zweite Partitur"
964 Die Beschriftungen, die benutzt werden um das Inhaltsverzeichnis
965 zu formatieren, sind in der @code{\paper}-Umgebung definiert.
966 Die Standardformatierungselemente sind @code{tocTitleMarkup}
967 um die Überschrift zu formatieren und @code{tocItemMarkup} um
968 die einzelnen Inhaltselemente zu formatieren, bestehend aus
969 dem Titelelement und einer Seitenzahl. Die Variablen können
970 durch den Benutzer geändert werden:
974 %% Übersetzung der Inhaltsverzeichnisüberschrift nach französisch:
975 tocTitleMarkup = \markup \huge \column {
976 \fill-line { \null "Table des matières" \null }
979 %% hier größere Schriftarten
980 tocItemMarkup = \markup \large \fill-line {
981 \fromproperty #'toc:text \fromproperty #'toc:page
986 Die Inhaltsverzeichniselemente Text und Seitenzahl werden
987 in der Definition von @code{tocItemMarkup} aufgerufen mit
988 @code{#'toc:text} und @code{#'toc:page}.
990 Neue Befehle und Beschriftungen können auch definiert werden,
991 um eigene Inhaltsverzeichnisse zu gestalten:
995 @item zuerst muss eine neue Beschriftungsvariable in der
996 @code{\paper}-Umgebung definiert werden
998 @item dann muss die musikalische Funktion definiert werden, die
999 ein Element zum Inhaltsverzeichnis hinzufügt, indem die neue
1000 Variable benutzt wird.
1004 Das folgende Beispiel definiert einen neuen Stil um Akt-Bezeichnungen
1005 einer Oper in das Inhaltsverzeichnis aufzunehmen:
1009 tocActMarkup = \markup \large \column {
1011 \fill-line { \null \italic \fromproperty #'toc:text \null }
1017 #(define-music-function (parser location text) (markup?)
1018 (add-toc-item! 'tocActMarkup text))
1021 @lilypond[line-width=11.0\cm]
1022 \header { tagline = ##f }
1024 tocActMarkup = \markup \large \column {
1026 \fill-line { \null \italic \fromproperty #'toc:text \null }
1032 #(define-music-function (parser location text) (markup?)
1033 (add-toc-item! 'tocActMarkup text))
1036 \markuplines \table-of-contents
1037 \tocAct \markup { Atto Primo }
1038 \tocItem \markup { Coro. Viva il nostro Alcide }
1039 \tocItem \markup { Cesare. Presti omai l'Egizzia terra }
1040 \tocAct \markup { Atto Secondo }
1041 \tocItem \markup { Sinfonia }
1042 \tocItem \markup { Cleopatra. V'adoro, pupille, saette d'Amore }
1047 Die Zeile zwischen dem Inhalt und der Seitenzahl kann mit einer gepunkteten
1048 Linie gefüllt werden:
1050 @lilypond[verbatim,quote]
1051 \header { tagline = ##f }
1053 tocItemMarkup = \tocItemWithDotsMarkup
1057 \markuplines \table-of-contents
1058 \tocItem \markup { Allegro }
1059 \tocItem \markup { Largo }
1066 Installierte Dateien:
1067 @file{../ly/toc-init.ly}.
1069 @funindex \table-of-contents
1073 @code{\table-of-contents},
1078 @node Arbeiten an Eingabe-Dateien
1079 @section Arbeiten an Eingabe-Dateien
1080 @translationof Working with input files
1083 * LilyPond-Dateien einfügen::
1084 * Verschiedene Editionen aus einer Quelldatei::
1085 * Zeichenkodierung::
1086 * LilyPond-Notation anzeigen::
1090 @node LilyPond-Dateien einfügen
1091 @subsection LilyPond-Dateien einfügen
1092 @translationof Including LilyPond files
1095 @cindex einfügen von Dateien
1096 @cindex Dateien einfügen
1098 Ein größeres Projekt kann in einzelne Dateien aufgeteilt werden.
1099 Um eine andere Datei einzubinden, kann der Befehl
1102 \include "andereDatei.ly"
1108 Die Zeile @code{\include "andereDatei.ly"} benimmt sich genauso,
1109 also ob der Inhalt der Datei @file{andereDatei.ly} komplett in die
1110 Hauptdatei eingefügt werden würde. So kann man für ein größeres
1111 Projekt die einzelnen Stimmen der Instrumente getrennt notieren
1112 und sie dann in einer Partitur-Datei benutzen. Meistens werden
1113 in den eingefügten Dateien einige Variablen definiert, die dann
1114 auch in der Hauptdatei eingesetzt werden können. Mit Marken (Tags)
1115 gekennzeichnete Abschnitte können eingesetzt werden, um die
1116 entsprechenden Noten etc. an verschiedenen Stellen in der Datei
1117 zur Verfügung zu stellen. Siehe auch @ref{Verschiedene Editionen aus einer Quelldatei}.
1119 Auf Dateien im aktuellen Verzeichnis kann einfach mit dem Dateinamen
1120 nach dem @code{\include}-Befehl verwiesen werden. Dateien an anderen
1121 Stellen können eingebunden werden, indem entweder ein vollständiger
1122 Pfad oder ein relativer Pfad zu der Datei angegeben wird. Hierbei
1123 sollten die für UNIX typischen Schrägstriche (/) und nicht die
1124 rückwärtsgeneigten von Windows (\) verwendet werden, um die Verzeichnisse
1125 zu trennen. Wenn etwa die Datei @file{kram.ly} ein Verzeichnis
1126 höher liegt als das aktuelle Verzeichnis, sollte der Befehl so
1130 \include "../kram.ly"
1134 Wenn die Orchesterstimmen andererseits in einem Unterordner mit
1135 der Bezeichnung @code{stimmen} liegen, sieht er folgendermaßen
1139 \include "stimmen/VI.ly"
1140 \include "stimmen/VII.ly"
1144 Dateien, die eingebunden werden sollen, können selber auch wiederum
1145 ein @code{\include} enthalten. Diese Einbindung zweiter Ebene
1146 werden erst interpretiert, wenn sie sich in der Hauptdatei befinden,
1147 sodass die Pfadangaben hier nicht relativ zur eingebundenen Datei,
1148 sondern relativ zur Hauptdatei gesetzt werden müssen. Dieses Verhalten
1149 kann jedoch auch verändert werden, indem man lilypond die Option
1150 @code{-drelative-includes} auf der Kommandozeile zuweist (oder indem
1151 man den Befehl @code{#(ly:set-option 'relative-includes #t)} an den
1152 Beginn der Quelldatei schreibt). Mit @code{relative-includes} wird
1153 der Pfad jedes @code{\include}-Befehls als relativ zu der Datei angenommen,
1154 in der sich der Befehl befindet. Dieses Verhalten wird empfohlen und wird
1155 in zukünftigen Versionen von LilyPond den Standard darstellen.
1157 Dateien können auch aus einem Verzeichnis eingebunden werden,
1158 dass im Suchpfad von LilyPond liegt. Hierzu muss auf der
1159 Kommandozeile das entsprechende Verzeichnis angegeben werden
1160 und die Dateien, die eingebunden werden, müssen nur mit ihrem Namen
1161 notiert sein. Wenn etwa die Datei @file{Haupt.ly} kompiliert
1162 werden soll, die Dateien aus dem Unterverzeichnis @file{stimmen}
1163 einbindet, müssen sie sich im Verzeichnis von @file{Haupt.ly}
1164 befinden und dann LilyPond folgendermaßen aufrufen:
1167 lilypond --include=stimmen Haupt.ly
1171 In @file{Haupt.ly} steht:
1179 Dateien, die in vielen Partituren verwendet werden sollen, können
1180 im LilyPond-Verzeichnis @file{../ly} gespeichert werden. (Die
1181 Stelle, an der dieses Verzeichnis sich befindet, hängt vom Betriebssystem
1182 ab, siehe hierzu @rlearning{Mehr Information}). Dateien
1183 in diesem Verzeichnis können einfach mit ihrem Namen eingefügt werden.
1184 So werden auch die Sprachdateien wie etwa @file{deutsch.ly} eingefügt.
1186 LilyPond lädt eine Anzahl an Dateien, wenn das Programm aufgerufen wird.
1187 Diese Dateien sind für den Benutzer nicht ersichtlich, aber die Dateien
1188 können identifiziert werden, indem LilyPond auf der Kommandozeile mit
1189 Option aufgerufen wird: @code{lilypond --verbose}. Hiermit wird
1190 neben anderer Information auch eine Liste von Pfaden und Dateien
1191 aufgeführt, die LilyPond benutzt. Die wichtigeren Dateien werden
1192 im Abschnitt @rlearning{Mehr Information} besprochen.
1193 Diese Dateien können verändert werden, aber Änderungen gehen verloren,
1194 wenn eine neue LilyPond-Version installiert wird.
1196 Eine einfache Beispiele, die die Benutzung von @code{\include} demonstrieren,
1198 @rlearning{Partituren und Stimmen}.
1201 Handbuch zum Lernen:
1202 @rlearning{Mehr Information},
1203 @rlearning{Partituren und Stimmen}.
1207 Wenn eine Datei eingebunden wird, deren Name einer Datei aus
1208 dem Installationsverzeichnis von LilyPond entspricht, wird die
1209 installierte Datei anstelle der eigenen verwendet.
1212 @node Verschiedene Editionen aus einer Quelldatei
1213 @subsection Verschiedene Editionen aus einer Quelldatei
1214 @translationof Different editions from one source
1216 Es gibt verschiedene Funktionen, die es möglich machen, unterschiedliche
1217 Versionen einer Partitur aus der gleichen Quelldatei zu produzieren.
1218 Variablen werden am besten eingesetzt, wenn es darum geht, längere
1219 Notenpassagen und/oder Anmerkungen/Textmarken miteinander auf
1220 verschiedene Weise zu kombinieren. Tag-Marken dagegen werden am
1221 besten eingesetzt, wenn eine von mehreren kurzen alternativen
1222 Notenabschnitten ausgewählt werden soll. Egal welche Methode am
1223 Ende eingesetzt wird: Es erleichtert die Arbeit in jedem Fall, wenn
1224 die eigentlichen Noten und die Struktur der Partitur voneinander
1225 getrennt notiert werden -- so kann die Struktur geändert werden,
1226 ohne dass man Änderungen an den Noten vornehmen muss.
1229 * Variablen benutzen::
1231 * Globale Einstellungen benutzen::
1234 @node Variablen benutzen
1235 @unnumberedsubsubsec Variablen benutzen
1236 @translationof Using variables
1238 @cindex Variablen, Benutzung
1240 Wenn Notenabschnitt in Variablen definiert werden, können sie
1241 an unterschiedlichen Stellen in der Partitur eingesetzt werden,
1242 siehe auch @rlearning{Stücke durch Bezeichner organisieren}. Zum
1243 Beispiel enthält eine Vokalpartitur für ein @notation{a cappella}
1244 Stück oft einen Klavierauszug, der das Einüben einfacher macht.
1245 Der Klavierauszug enthält die gleichen Noten, sodass man sie nur
1246 einmal notieren muss. Noten aus zwei Variablen können auf einem
1247 System kombiniert werden, siehe @ref{Automatische Kombination von Stimmen}.
1250 @lilypond[verbatim,quote]
1251 sopranoMusic = \relative c'' { a4 b c b8( a) }
1252 altoMusic = \relative g' { e4 e e f }
1253 tenorMusic = \relative c' { c4 b e d8( c) }
1254 bassMusic = \relative c' { a4 gis a d, }
1255 allLyrics = \lyricmode {King of glo -- ry }
1257 \new Staff = "Soprano" \sopranoMusic
1258 \new Lyrics \allLyrics
1259 \new Staff = "Alto" \altoMusic
1260 \new Lyrics \allLyrics
1261 \new Staff = "Tenor" {
1265 \new Lyrics \allLyrics
1266 \new Staff = "Bass" {
1270 \new Lyrics \allLyrics
1273 \set Staff.printPartCombineTexts = ##f
1279 \set Staff.printPartCombineTexts = ##f
1289 Unterschiedliche Partituren, die entweder nur den Chor oder das
1290 Klavier zeigen, können produziert werden, indem die Struktur
1291 verändert wird; die Noten müssen dazu nicht verändert werden.
1293 Für längere Partituren können Variablen in eigene Dateien notiert
1294 werden, die dann eingebunden werden, siehe @ref{LilyPond-Dateien einfügen}.
1297 @node Marken benutzen
1298 @unnumberedsubsubsec Marken benutzen
1299 @translationof Using tags
1303 @cindex markierte Noten entfernen
1304 @cindex markierte Noten behalten
1307 @funindex \keepWithTag
1308 @funindex \removeWithTag
1310 @funindex keepWithTag
1311 @funindex removeWithTag
1313 Der @code{\tag #'@var{TeilA}}-Befehl markiert einen musikalischen
1314 Ausdruck mit der Bezeichnung @var{TeilA}. Ausdrücke, die auf diese
1315 Weise markiert werden, können mit ihrer Bezeichnung später ausgewählt
1316 bzw. ausgefiltert werden. Das geschieht mit den Befehlen
1317 @code{\keepWithTag #'@var{Bezeichnung}} bzw. @code{\removeWithTag #'@var{Bezeichnung}}.
1318 Die Wirkung dieser Filter auf die markierten Notenabschnitte ist
1321 @multitable @columnfractions .5 .5
1327 Markierte Noten mit vorgesetztem @code{\keepWithTag #'@var{Bezeichnung}}
1328 @tab Unmarkierte Noten und Noten mit der Marke @var{Bezeichnung} werden
1329 gesetzt, Noten mit einer anderen Marke werden nicht angezeigt.
1332 Markierte Noten mit vorgesetztem @code{\removeWithTag #'@var{Bezeichnung}}
1333 @tab Unmarkierte Noten und Noten mit einer anderen Marke als
1334 @var{Bezeichnung} wird angezeigt, Noten markiert mit @var{Bezeichnung}
1335 werden nicht angezeigt.
1338 Markierte Noten, weder mit vorgesetztem @code{\keepWithTag} noch
1339 @code{\removeWithTag}
1340 @tab Alle markierten und unmarkierten Noten werden angezeigt.
1344 Die Argumente der Befehle @code{\tag}, @code{\keepWithTag} und
1345 @code{\removeWithTag} sollten ein Symbol sein (wie etwa
1346 @code{#'score} oder @code{#'part}), gefolgt von einem musikalischen
1349 Im folgenden Beispiel erscheinen zwei Versionen der Noten, eine
1350 zeigt Triller in normaler Notation, die andere zeigt sie ausgeschrieben:
1352 @lilypond[verbatim,quote]
1353 music = \relative g' {
1355 \tag #'trills { d8.\trill }
1356 \tag #'expand { \repeat unfold 3 { e32 d } }
1361 \keepWithTag #'trills \music
1364 \keepWithTag #'expand \music
1369 Entsprechend können auch Abschnitte ausgeschlossen werden; das
1370 erfordert manchmal weniger Schreibarbeit:
1372 @lilypond[verbatim,quote]
1373 music = \relative g' {
1375 \tag #'trills { d8.\trill }
1376 \tag #'expand {\repeat unfold 3 { e32 d } }
1381 \removeWithTag #'expand
1385 \removeWithTag #'trills
1390 Marken können auch auf Artikulationen, Text usw angewendet werden,
1394 -\tag #'@var{your-tag}
1398 voranstellt (jedoch nach der Note, an die sie gebunden sind). Mit
1399 diesem Code etwa könnte man entweder Fingersatz oder aber einen
1404 c1-\tag #'warn ^"Achtung!"
1407 Mehrfache Marken können mithilfe von mehreren @code{\tag}-Befehlen
1410 @lilypond[quote,verbatim]
1411 music = \relative c'' {
1412 \tag #'a \tag #'both { a4 a a a }
1413 \tag #'b \tag #'both { b4 b b b }
1416 \keepWithTag #'a \music
1417 \keepWithTag #'b \music
1418 \keepWithTag #'both \music
1422 Mehrfache @code{\removeWithTag}-Filter können auf einen
1423 musikalischen Ausdruck angewendet werden, um mehrere unterschiedliche
1424 markierte Abschnitte aus dem Druckbild zu entfernen.
1426 @lilypond[verbatim,quote]
1427 music = \relative c'' {
1428 \tag #'A { a4 a a a }
1429 \tag #'B { b4 b b b }
1430 \tag #'C { c4 c c c }
1431 \tag #'D { d4 d d d }
1440 Zwei oder mehr @code{\keepWithTag}-Filter in einem musikalischen
1441 Ausdruck bewirken, dass @emph{alle} markierten Abschnitte entfernt
1442 werden, weil der erste Befehl alle markierten Abschnitt außer dem
1443 im Befehl genannten wegfiltert und der zweite Befehl dann auch diesen
1444 eben genannten zusätzlich entfernt.
1448 Handbuch zum Lernen:
1449 @rlearning{Stücke durch Bezeichner organisieren}.
1452 @ref{Automatische Kombination von Stimmen},
1453 @ref{LilyPond-Dateien einfügen}.
1457 @c This warning is more general than this placement implies.
1458 @c Rests are not merged whether or not they come from tagged sections.
1459 @c Should be deleted? -td
1463 Multiple rests are not merged if you create a score with more
1464 than one tagged section at the same place.
1469 @node Globale Einstellungen benutzen
1470 @unnumberedsubsubsec Globale Einstellungen benutzen
1471 @translationof Using global settings
1473 @funindex include-settings
1475 Man kann globale Einstellungen aus einer externen Datei einfügen:
1478 lilypond -dinclude-settings=MY_SETTINGS.ly MY_SCORE.ly
1482 Einstellungsgruppen, wie etwa Seitengröße, Schriftart oder Schriftschnitt, können
1483 in eigenen Dateien gespeichert werden. Das ermöglicht es, aus der gleichen
1484 Partitur unterschiedliche Editionen zu erstellen bzw. Standardeinstellungen
1485 für eine ganze Anzahl von Partituren wiederzuverwenden, indem man einfach
1486 die entsprechende Einstellungsdatei angibt.
1488 Diese Technik funktioniert auch gut für globale Formatierungen, wie behandelt
1489 in @rlearning{Globale Formatierung}.
1492 Handbuch zum Lernen:
1493 @rlearning{Stücke durch Bezeichner organisieren},
1494 @rlearning{Globale Formatierung}.
1497 @ref{LilyPond-Dateien einfügen}.
1500 @node Zeichenkodierung
1501 @subsection Zeichenkodierung
1502 @translationof Text encoding
1506 @cindex Nicht-ASCII-Zeichen
1508 LilyPond benutzt alle Zeichen, die durch das Unicode-Konsortium
1509 und ISO/IEC 10646 definiert sind. Hiermit wird den Zeichen
1510 fast aller Schriftsysteme der Welt ein eindeutiger Name und ein
1511 Code-Punkt zugewiesen, mit dem sie identifizierbar sind. Unicode
1512 kann mit mehreren Zeichenkodierungen verwirklicht werden. LilyPond
1513 benutzt die UTF-8-Kodierung (UTF = Unicode Transformation Format),
1514 in der die normalen Zeichen des lateinischen Alphabets mit einem
1515 Byte dargestellt werden, während alle anderen Zeichen zwischen
1516 zwei und vier Byte Länge haben.
1518 Das Aussehen des Zeichens wird bestimmt durch die gerade benutzte
1519 Schriftart (engl. font). In einer Schriftartdatei werden die
1520 Nummern der Unicode-Zeichen einem bestimmten Glyphen zugeordnet.
1521 LilyPond verwendet die Pango-Bibliothek um mehrsprachige Texte
1522 und komplexe Skripte korrekt zu setzen.
1524 LilyPond verändert die Kodierung der Eingabedatei nicht. Das heißt,
1525 dass jeder Text -- Überschriften, Gesangstext, Spielanweisungen etc. --
1526 der nicht nur aus ASCII-Zeichen besteht, in UTF-8 kodiert sein
1527 musst. Am einfachsten geht das, indem man einen Texteditor
1528 einsetzt, der mit Unicode-Zeichen umgehen kann. Die meisten
1529 modernen weit verbreiteten Editoren besitzen heute UTF-8-Unterstützung,
1530 wie etwa vim, Emacs, jEdit oder GEdit. Alle MS Windows-Systeme
1531 nach NT benutzen Unicode intern, sodass sogar Notepad Dateien
1532 in UTF-8 lesen und speichern kann. Ein Editor mit mehr
1533 Funktionen unter Windows ist BabelPad oder Notepad++.
1535 Wenn eine LilyPond-Eingabedatei nicht-ASCII-Zeichen enthält
1536 und nicht in UTF-8 gespeichert ist, gibt es folgende Fehlermeldung:
1539 FT_Get_Glyph_Name () error: invalid argument
1542 Heir ein Beispiel mit Kyrilliza, hebräischem und portugiesischem Text:
1545 %c No verbatim here as the code does not display correctly in PDF
1547 bulgarian = \lyricmode {
1548 Жълтата дюля беше щастлива, че пухът, който цъфна, замръзна като гьон.
1552 hebrew = \lyricmode {
1553 זה כיף סתם לשמוע איך תנצח קרפד עץ טוב בגן.
1557 portuguese = \lyricmode {
1558 à vo -- cê uma can -- ção legal
1564 \addlyrics { \bulgarian }
1565 \addlyrics { \hebrew }
1566 \addlyrics { \portuguese }
1569 Um einen einzelnen Buchstaben zu notieren, für den die Unicode-Ziffernfolge
1570 bekannt ist, der aber nicht auf der Tastatur zu finden ist, kann
1571 der Befehl @code{\char ##xhhhh} oder @code{\char #dddd} innerhalb einer
1572 @code{\markup}-Umgebung benutzt werden. Hierbei bedeutet @code{hhhh} die
1573 hexadezimale Zahl und @code{ddd} die entsprechende dezimale Zahl
1574 für das erforderliche Zeichen. Nullen zu Beginn können ausgelassen werden,
1575 aber normalerweise werden alle vier Zeichen der hexadezimalen Notation
1576 notiert. (Achten Sie darauf, dass Sie @emph{nicht} UTF-8-Codepunkte
1577 einsetzen, weil UTF-8 zusätzliche Bits enthält, die die Nummer der Oktets bezeichnet.) Unicode-Tabellen und ein Verzeichnis der Zeichenbezeichnungen
1578 mit einer hexadezimalen Verweiszahl finden sich auf der Internetseite
1579 des Unicode Consortiums: @uref{http://www.unicode.org/}.
1581 Mit @code{\char ##x03BE} und @code{\char #958} wird
1582 beispielsweise das Unicode-Zeichen U+03BE notiert, welches die
1583 Unicode-Bezeichnung @qq{Greek Small Letter Xi} hat.
1586 Unicode-Zeichen können auf diese Weise notiert werden, und wenn für alle
1587 Zeichen dieses Format angewandt wird, muss die Datei nicht im utf-8-Format
1588 gespeichert werden. Es muss natürlich auch noch eine Schriftart auf
1589 dem System installiert sein, die die notierten Zeichen darstellen kann.
1591 Das nächste Beispiel zeigt, wie Unicode-Zeichen an vier Stellen mit dem
1592 hexadezimalen Code notiert werden: in einem Übungszeichen, als Artikulationszeichen,
1593 im Gesangstext und als normaler Text außerhalb der Partitur.
1595 @lilypond[quote,verbatim]
1598 c1 \mark \markup { \char ##x03EE }
1599 c1_\markup { \tiny { \char ##x03B1 " to " \char ##x03C9 } }
1601 \addlyrics { O \markup { \concat { Ph \char ##x0153 be! } } }
1603 \markup { "Copyright 2008--2011" \char ##x00A9 }
1606 @cindex Copyright-Zeichen
1608 Um das Copyright-Zeichen zu notieren, kann folgender Code eingesetzt werden:
1612 copyright = \markup @{ \char ##x00A9 "2008" @}
1617 @node LilyPond-Notation anzeigen
1618 @subsection LilyPond-Notation anzeigen
1619 @translationof Displaying LilyPond notation
1621 @funindex \displayLilyMusic
1623 Ein musikalischer Ausdruck in LilyPond-Notation kann mit der Funktion
1624 @code{\displayLilyMusic} angezeigt werden. Der Code
1628 \displayLilyMusic \transpose c a, @{ c4 e g a bes @}
1636 @{ a,4 cis e fis g @}
1639 Normalerweise werden diese Zeilen zusammen mit allen anderen
1640 Kompilations-Nachrichten auf der Kommandozeile ausgegeben.
1641 Um sie separat zu speichern und das Ergebnis von @code{\displayLilyMusic}
1643 kann die Ausgabe mit folgendem Befehl in eine Datei umgeleitet werden:
1646 lilypond file.ly >display.txt
1651 @node Ausgabe kontrollieren
1652 @section Ausgabe kontrollieren
1653 @translationof Controlling output
1656 * Notationsfragmente extrahieren::
1657 * Korrigierte Musik überspringen::
1658 * Alternative Ausgabeformate::
1659 * Die Notationsschriftart verändern::
1663 @node Notationsfragmente extrahieren
1664 @subsection Notationsfragmente extrahieren
1665 @translationof Extracting fragments of music
1667 Es ist möglich, kleine Abschnitte einer großen Partitur direkt aus der
1668 Quelldatei zu erzeugen. Das kann damit verglichen werden, dass man
1669 mit der Schere bestimmte Regionen ausschneidet.
1671 Es wird erreicht, indem man die Takte, die ausgeschnitten werden sollen
1672 (engl. to clip = ausschneiden), extra definiert. Mit folgender
1673 Definition beispielsweise
1680 (make-rhythmic-location 5 1 2)
1681 (make-rhythmic-location 7 3 4)))
1686 wird ein Fragment ausgeschnitten, dass auf der Mitte des fünften Taktes
1687 beginnt und im siebten Takt endet. Die Bedeutung von @code{5 1 2} ist:
1688 nach einer Halben in Takt fünf, @code{7 3 4} heißt: nach drei Vierteln
1691 Weitere Bereiche, die ausgeschnitten werden sollen, können definiert
1692 werden, indem mehrere derartige Paare definiert werden.
1694 Um diese Funktion auch nutzen zu können, muss LilyPond mit dem
1695 Parameter @code{-dclip-systems} aufgerufen werden. Die Schnipsel
1696 werden als EPS ausgegeben und dann zu PDF und PNG konvertiert, wenn
1697 diese Formate auch als Parameter angegeben werden.
1699 Zu mehr Information über Ausgabeformate siehe @rprogram{lilypond aufrufen}.
1702 @node Korrigierte Musik überspringen
1703 @subsection Korrigierte Musik überspringen
1704 @translationof Skipping corrected music
1707 @funindex skipTypesetting
1708 @funindex showFirstLength
1709 @funindex showLastLength
1711 Wenn man Noten eingibt oder kopiert, sind meistens nur die Noten nahe dem
1712 Ende (wo gerade neue Noten notiert wurden) wichtig für Kontrolle und
1713 Korrektur. Um die Korrektur zu beschleunigen, kann eingestellt werden,
1714 dass nur die letzten paar Takte angezeigt werden. Das erreicht man
1718 showLastLength = R1*5
1723 in der Quelldatei. Damit werden nur die letzten fünf Takte (in einem
1724 4/4-Takt) eines jeden @code{\score}-Abschnitts übersetzt. Besonders
1725 bei längeren Stücken ist es meistens sehr viel schneller, nur einen
1726 kleinen Teil des Stückes zu setzen als die gesamte Länge. Wenn man
1727 am Anfang eines Stückes arbeitet (weil etwa ein neuer Teil hinzugefügt
1728 werden soll), kann auch die @code{showFirstLength}-Eigenschaft
1731 Nur bestimmte Teile einer Partitur zu überspringen, kann mit der
1732 Eigenschaft @code{Score.skipTypesetting} sehr genau kontrolliert
1733 werden. Für den Bereich, für den sie auf @qq{wahr} gesetzt wird,
1734 wird kein Notensatz ausgegeben.
1736 Diese Eigenschaft kann auch benutzt werden, um die MIDI-Ausgabe zu
1737 kontrollieren. Hiermit werden alle Ereignisse, auch Tempo- und
1738 Instrumentenwechsel ausgelassen. Man muss also sehr genau darauf
1739 achten, dass nichts unerwartetes geschieht.
1741 @lilypond[quote,relative=2,ragged-right,verbatim]
1743 \set Score.skipTypesetting = ##t
1745 \set Score.skipTypesetting = ##f
1749 In polyphoner Notation wirkt sich @code{Score.skipTypesetting} auf
1750 alle Stimmen und Systeme aus, sodass noch mehr Zeit bei der
1751 Übersetzung der Datei gespart wird.
1754 @node Alternative Ausgabeformate
1755 @subsection Alternative Ausgabeformate
1756 @translationof Alternative output formats
1758 @cindex scalable vector graphics output
1759 @cindex skalierbare Vektorgraphik-Ausgabe
1761 @cindex encapsulated postscript output
1765 Das Standardausgabeformat für gedruckte Partituren ist PDF (Portable
1766 Document Forma) und PS (PostScript). SVG (Scalable Vector
1767 Graphics), EPS (Encapsulated PostScript) und PNG (Portable
1768 Network Graphics) gibt es auch als Ausgabeformate über die
1769 Kommandozeile. Siehe @rprogram{Optionen von lilypond auf der Kommandozeile}.
1772 @node Die Notationsschriftart verändern
1773 @subsection Die Notationsschriftart verändern
1774 @translationof Replacing the notation font
1776 Gonville ist eine Alternative zu der Feta-Schriftart, die in LilyPond
1777 eingesetzt wird und kann unter der Adresse
1779 @uref{http://www.chiark.greenend.org.uk/~sgtatham/gonville/ ,http://www.chiark.greenend.org.uk/~sgtatham/gonville/}
1783 heruntergeladen werden. Hier einige Takte Noten mit der Gonville-Schriftart:
1785 @c NOTE: these images are a bit big, but that's important
1786 @c for the font comparison. -gp
1787 @sourceimage{Gonville_after,,,}
1789 Und hier einige Beispieltakte in der Feta-Schriftart:
1791 @sourceimage{Gonville_before,,,}
1793 @subsubheading Installationsanweisungen für MacOS
1795 Laden Sie die Datei herunter und entpacken Sie die ZIP-Datei.
1796 Kopieren Sie das @code{lilyfonts}-Verzeichnis nach
1797 @file{@var{SHARE_DIR}/lilypond/current}; für mehr Information
1798 siehe @rlearning{Mehr Information}.
1799 Benennen Sie das existierende @code{fonts}-Verzeichnis in
1800 @code{fonts_orig} um und benennen Sie das Verzeichnis
1801 @code{lilyfonts} in @code{fonts}. Das alte Verzeichnis
1802 @code{fonts_orig} können Sie einfach in @code{fonts}
1803 zurückbenennen, um wieder nach Feta zu wechseln.
1806 Handbuch zum Lernen: @rlearning{Mehr Information}.
1810 Gonville kann nicht verwendet werden, um Alte Notation zu setzen.
1811 Bitte lesen Sie die Webseite des Autoren zu mehr Information hierzu
1812 und zu anderen Einzelheiten, wie auch der Lizenz von Gonville.
1816 @section MIDI-Ausgabe
1817 @translationof MIDI output
1822 MIDI (Musical Instrument Digital Interface) ist ein Standard zur
1823 Kontrolle und Interaktion mit digitalen Instrumenten. Eine
1824 MIDI-Datei ist eine Anzahl von Noten auf einer Anzahl von
1825 Bändern/Stimmen. Es ist keine eigentliche Klangdatei, denn man
1826 benötigt spezielle Programme die die Notenereignisse in Klang
1829 Der Notensatz von LilyPond kann in MIDI umgewandelt werden, so dass
1830 man sich anhören kann, was man notiert hat. Das hilft oft sehr gut
1831 bei der Überprüfung: falsche Oktaven oder falsche Versetzungszeichen
1832 lassen sich meist sehr gut hören.
1834 Normale MIDI-Ausgabe ist etwas roh; optional kann eine verbesserte und
1835 realistischere MIDI-Ausgabe mit einem @ref{Artikuliere-Skript}
1838 Die MIDI-Ausgabe benötigt einen Kanal für jedes System und einen für
1839 globale Einstellungen. Darum sollte die Quelldatei für eine MIDI-Datei
1840 nicht mehr als 15 Systeme (oder 14 wenn kein Schlagzeug benützt wird)
1841 besitzen. Jedes weitere System bleibt stumm.
1845 * MIDI-Dateien erstellen::
1847 * Was geht in die MIDI-Ausgabe::
1848 * Wiederholungen im MIDI::
1849 * MIDI-Lautstärke kontrollieren::
1850 * Schlagzeug in MIDI::
1851 * Artikuliere-Skript::
1855 @node MIDI-Dateien erstellen
1856 @subsection MIDI-Dateien erstellen
1857 @translationof Creating MIDI files
1859 Um eine MIDI-Datei aus einer LilyPond-Quelldatei zu erstellen, muss
1860 eine @code{\midi}-Umgebung zu der @code{\score}-Umgebung hinzugefügt
1870 Wenn in einer @code{\score}-Umgebung nur eine @code{\midi}-Umgebung,
1871 aber keine @code{\layout}-Umgebung vorkommt, wird nur MIDI produziert.
1872 Wenn auch die Notation gewünscht ist, muss zusätzlich die
1873 @code{\layout}-Umgebung vorhanden sein:
1883 Tonhöhen, Rhythmen, Überbindungen, Dynamik und Tempoänderungen werden
1884 korrekt in das MIDI-Format übersetzt. Dynamikzeichen, Crescendo und
1885 Decrescendo werden in den MIDI-Lautstärkekanal übertragen. Dynamikzeichen
1886 werden in einen bestimmten Lautstärkenwert übersetzt, Crescendo und
1887 Decrescendo erreichen einen Übergang zwischen Lautstärkewerten.
1888 Die Wirkung von Dynamikzeichen kann auch aus der MIDI-Datei entfernt
1889 werden. Siehe hierzu @ref{Der MIDI-Block}.
1891 Das Anfangstempo und spätere Tempoänderungen können mit dem
1892 @code{\tempo}-Befehl innerhalb der Notation notiert werden. Er
1893 bewirkt Tempoänderungen auch in der MIDI-Datei. Der Befehl setzt
1894 gleichzeitig auch eine Tempobezeichnung in die Noten, welches aber
1895 auch unterdrückt werden kann, siehe @ref{Metronomangabe}. Eine
1896 andere Möglichkeit, ein eigenes MIDI-Tempo anzugeben, wird weiter
1897 unten gezeigt, siehe @ref{Der MIDI-Block}.
1899 Aufgrund einiger Einschränkungen auf Windows ist auf Windows-Systemen
1900 die Standarddateierweiterung von MIDI-Dateien @code{.mid}. Andere
1901 Betriebssysteme verwenden weiterhin @code{.midi}. Wenn eine
1902 andere Endung erwünscht ist, kann man die folgende Zeile auf oberster
1903 Ebene der Quelldatei, vor Beginn eines @code{\book}, @code{\bookpart}
1904 oder @code{\score}-Blocks einfügen:
1907 #(ly:set-option 'midi-extension "midi")
1910 Diese Codezeile setzt die Dateiendung auf @code{.midi}.
1912 Als Alternative kann man diese Option auch als Kommandozeilenparameter
1916 lilypond … -dmidi-extension=midi lilyDatei.ly
1919 @unnumberedsubsubsec Instrumentenbezeichnungen
1921 @cindex Instrumentbezeichnungen
1923 @funindex Staff.midiInstrument
1925 Das MIDI-Instrument, mit dem ein bestimmtes System wiedergegeben
1926 werden soll, wird durch die @code{Staff.midiInstrument}-Eigenschaft
1927 bestimmt, die auf eine Instrumentenbezeichnung gesetzt werden muss.
1928 Die Bezeichnungen sind aufgelistet in @ref{MIDI-Instrumente} und müssen
1929 in der dort definierten Schreibweise notiert werden.
1933 \set Staff.midiInstrument = #"glockenspiel"
1939 \new Staff \with @{midiInstrument = #"cello"@} @{
1944 Wenn die Schreibweise nicht genau einem definierten Instrument aus
1945 der Liste entspricht, wird ein Piano-Klang benutzt (@code{"acoustic grand"}).
1949 @lilypondfile[verbatim,lilyquote,ragged-right,texidoc,doctitle]
1950 {changing-midi-output-to-one-channel-per-voice.ly}
1954 Veränderungen der MIDI-Lautstärke sind nur effektiv, wenn sie zu Beginn
1955 einer Note angefordert werden, sodass die Lautstärke während einer Notendauer
1956 nicht geändert werden kann.
1958 Nicht alle MIDI-Spieler können Tempoänderungen richtig wiedergeben.
1959 Spieler, die hierzu in der Lage sind, sind unter Anderen MS Windows Media
1960 Player und @uref{http://@/timidity@/.sourceforge@/.net/,timidity}.
1963 @node Der MIDI-Block
1964 @subsection Der MIDI-Block
1965 @translationof MIDI block
1967 @cindex MIDI-Umgebung
1969 Eine @code{\midi}-Umgebung muss innerhalb von einer @code{\score}-Umgebung
1970 vorkommen, wenn MIDI-Ausgabe gewünscht ist. Sie entspricht der
1971 @code{\layout}-Umgebung, aber ist etwas einfacher aufgebaut. Oft wird
1972 die MIDI-Umgebung einfach leer gelassen, aber hier können auch
1973 Kontexte umgeändert werden, neue Kontexte definiert werden oder
1974 neue Werte definiert werden. Das folgende Beispiel etwa definiert
1975 das MIDI-Tempo, ohne dass in der Partitur eine Metronombezeichnung
1984 tempoWholesPerMinute = #(ly:make-moment 72 4)
1990 Hier wird das Tempo auf 72 Viertelnoten pro Minute definiert. Wenn
1991 das Tempo auf diese Weise definiert wird, kann keine punktierte
1992 Note als Einheit angegeben werden. Wenn sie benötigt wird, muss
1993 man sie in kleinere Einheiten auflösen. Ein Tempo von 90 punktierten
1994 Viertelnoten pro Minute kann beispielsweise dargestellt werden
1995 als 270 Achtelnoten pro Minute:
1998 tempoWholesPerMinute = #(ly:make-moment 270 8)
2001 @cindex MIDI-Kontextdefinitionen
2003 Kontextdefinitionen des @code{\midi}-Kontextes entsprechen
2004 der Syntax, wie sie in der @code{\layout}-Umgebung benutzt
2005 wird. Klangübersetzungsmodule werden @code{performer}
2006 genannt. Die Kontexte für die MIDI-Ausgabe sind in der
2007 Datei @file{../ly/performer-init.ly} definiert, siehe
2008 @rlearning{Mehr Information}. Um beispielsweise
2009 die Auswirkung von Dynamikzeichen aus der MIDI-Ausgabe zu
2010 entfernen, müssen folgende Zeilen eingefügt werden:
2017 \remove "Dynamic_performer"
2022 Eine MIDI-Ausgabe wird nur erstellt, wenn die @code{\midi}-Umgebung
2023 in eine Partiturumgebung eingefügt wird, die mit dem Befehl
2024 @code{\score} beginnt.
2028 @{ @dots{}Noten@dots{} @}
2034 @node Was geht in die MIDI-Ausgabe
2035 @subsection Was geht in die MIDI-Ausgabe
2036 @translationof What goes into the MIDI output?
2039 @unnumberedsubsubsec In MIDI unterstützt
2041 @cindex Tonhöhen in MIDI
2042 @cindex MIDI, Tonhöhen
2043 @cindex Vierteltöne in MIDI
2044 @cindex MIDI, Vierteltöne
2045 @cindex Mikrotöne in MIDI
2046 @cindex MIDI, Mikrotöne
2047 @cindex Akkordsymbole in MIDI
2048 @cindex MIDI, Akkordsymbole
2049 @cindex Rhythmen in MIDI
2050 @cindex MIDI, Rhythmen
2051 @cindex Artikuliere-Skript
2052 @cindex MIDI, Artikuliere-Skript
2053 @cindex MIDI, Artikulationen
2054 @cindex Triller in MIDI
2055 @cindex Verzierungen in MIDI
2056 @cindex Rallantando in MIDI
2057 @cindex Accelerando in MIDI
2059 Die folgenden Notationselemente werden in die MIDI-Ausgabe aufgenommen:
2063 @item Mikrotöne (siehe @ref{Versetzungszeichen}. Für die Ausgabe wird ein
2064 Spieler benötigt, der Tonhöhen verändern kann.)
2065 @item Akkorde, die als Symbole notiert werden
2066 @item Rhythmen, die als Dauern notiert sind, inklusive N-tolen
2067 @item Tremolo, das ohne @q{@code{:}[@var{Zahl}]} notiert ist
2069 @item Dynamikzeichen
2070 @item Crescendi, decrescendi zu mehreren Noten
2071 @item Tempoänderungen, die mit einer Tempo-Bezeichnung eingegeben werden
2075 Durch Einsatz vom @ref{Artikuliere-Skript} können noch einige Elemente
2076 zu der Liste hinzugefügt werden:
2079 @item Artikulationen (Bögen, Staccato usw.)
2081 @item Rallentando und accelerando
2085 @unnumberedsubsubsec In MIDI nicht unterstützt
2087 Folgende Notationselemente werden nicht in die MIDI-Ausgabe einbezogen,
2088 außer am setzt das @ref{Artikuliere-Skript} ein:
2091 @item Rhythmus, der als Anmerkung notiert wird, bspw. Swing
2092 @item Tempoveränderungen, die als Anmerkung ohne Tempobezeichnung notiert werden
2093 @item Staccato und andere Artikulationen und Ornamente
2094 @item Legato- und Phrasierungsbögen
2095 @item Crescendi, decrescendi zu einer einzelnen Note
2096 @item Tremolo, notiert mit @q{@code{:}[@var{number}]}
2097 @item Bezifferter Bass
2098 @item Akkorde mit Mikrotönen
2102 @node Wiederholungen im MIDI
2103 @subsection Wiederholungen im MIDI
2104 @translationof Repeats in MIDI
2106 @cindex Wiederholungen in MIDI
2107 @cindex MIDI und Wiederholungen
2109 @funindex \unfoldRepeats
2111 Mit einigen Veränderungen im Notentext können alle Wiederholungstypen
2112 auch in der MIDI-Ausgabe wiedergegeben werden. Das wird erreicht, indem
2113 die @code{\unfoldRepeats}-Funktion eingesetzt wird. Diese Funktion
2114 verändert alle Wiederholungen in ausgeschriebene Noten.
2116 @lilypond[quote,verbatim]
2118 \repeat tremolo 8 { c'32 e' }
2119 \repeat percent 2 { c''8 d'' }
2120 \repeat volta 2 { c'4 d' e' f' }
2129 Wenn eine Partitur mit diesem @code{\unfoldRepeats}-Befehl erstellt
2130 wird, ist er notwendig,
2131 zwei @code{\score}-Umgebungen einzurichten: in der einen werden die
2132 Wiederholungen ausgeschrieben und nur eine MIDI-Ausgabe produziert,
2133 in der anderen werden die Wiederholungen notiert und als Partitur
2134 gesetzt. Das Beispiel gibt einen Hinweis, wie eine derartige Datei
2143 \unfoldRepeats @var{..music..}
2149 @node MIDI-Lautstärke kontrollieren
2150 @subsection MIDI-Lautstärke kontrollieren
2151 @translationof Controlling MIDI dynamics
2153 Dynamik in der MIDI-Ausgabe wird durch den Dynamic_performer
2154 erstellt, welcher sich in einem @code{Voice}-Kontext befindet.
2155 Es ist möglich, sowohl die generelle Lautstärke einer MIDI-Datei
2156 als auch relative Lautstärken von Dynamikanweisungen und auch
2157 relative Lautstärke von einzelnen Instrumenten einzustellen.
2160 @unnumberedsubsubsec Dynamik-Zeichen
2162 Dynamikanweisungen werden als ein bestimmter Bruch der insgesamt
2163 zur Verfügung stehenden MIDI-Lautstärke notiert. Die Standardbrüche
2164 reichen von 0,25 für @notation{ppppp} bis hin zu 0,95 für
2165 @notation{fffff}. Diese Anweisung befinden sich in der Datei
2166 @file{../scm/midi.scm}, siehe auch @rlearning{Mehr Information}.
2167 Diese Brüche können nach Belieben geändert oder erweitert werden, indem
2168 eine Funktion erstellt wird, die ein Dynamikzeichen als Argument
2169 nimmt und den erforderlichen Bruch ausgibt; schließlich muss noch
2170 @code{Score.dynamicAbsoluteVolumeFunction} auf diese Funktion
2173 Beispielhaft soll gezeigt werden, wie man eine @notation{Rinforzando}-Dynamik,
2174 @code{\rfz}, auch in die MIDI-Ausgabe übernehmen kann. Gleiches gilt
2175 für neue, selbstdefinierte Dynamikzeichen, die in den Standarddefinitionen
2176 nicht enthalten sind. Die Scheme-Funktion, die hier definiert wird,
2177 setzt den Bruch von 0,9 für eine rfz-Anweisung und ruft andernfalls die
2178 Standardanweisungen auf:
2180 @lilypond[verbatim,quote]
2181 #(define (myDynamics dynamic)
2182 (if (equal? dynamic "rfz")
2184 (default-dynamic-absolute-volume dynamic)))
2188 \set Staff.midiInstrument = #"cello"
2189 \set Score.dynamicAbsoluteVolumeFunction = #myDynamics
2201 Alternativ, insbesondere wenn die gesamte Tabelle der MIDI-Lautstärken
2202 umdefiniert werden soll, ist es besser, die
2203 @notation{default-dynamic-absolute-volume}-Prozedur in der Datei
2204 @file{../scm/midi.scm} und die hiermit verknüpfte Tabelle als Modell
2205 zu benutzen. Das letzte Beispiel dieses Abschnittes zeigt, wie das
2206 gemacht werden kann.
2209 @unnumberedsubsubsec MIDI-Lautstärke
2211 Die generellen Mindest- und Höchstwerte für die Lautstärke der MIDI-Datei
2212 wird kontrolliert, indem die Eigenschaften @code{midiMinimumVolume}
2213 und @code{midiMaximumVolume} auf der @code{Score}-Ebene gesetzt
2214 werden. Diese Eigenschaften haben nur Einfluss auf Dynamikzeichen, sodass
2215 ein Dynamikzeichen direkt an den Anfang der Partitur gestellt werden muss,
2216 wenn diese Einstellung von Anfang an Wirkung zeigen soll. Der Bruch,
2217 der dann den einzelnen Dynamikzeichen entspricht, wird mit der
2221 midiMinimumVolume + (midiMaximumVolume - midiMinimumVolume) * Bruch
2225 errechnet. Im folgenden Beispiel wird die generelle MIDI-Lautstärke
2226 auf den Bereich zwischen 0.2 und 0.5 eingeschränkt.
2228 @lilypond[verbatim,quote]
2234 \set Staff.midiInstrument = #"flute"
2235 \new Voice \relative c''' {
2243 \set Staff.midiInstrument = #"clarinet"
2244 \new Voice \relative c'' {
2255 tempoWholesPerMinute = #(ly:make-moment 72 2)
2256 midiMinimumVolume = #0.2
2257 midiMaximumVolume = #0.5
2264 @unnumberedsubsubsec Verschiedene Instrumente angleichen (i)
2266 Wenn die Mindest- und Höchstwerte für die MIDI-Lautstärke
2267 innerhalb eines @code{Staff}-Kontextes gesetzt werden,
2268 kann damit die relative Lautstärke einzelner Instrumente kontrolliert
2269 werden. Damit kann man die Qualität der MIDI-Datei
2270 merklich verbessern.
2272 In diesem Beispiel wird die Lautstärke der Klarinette relativ
2273 zur Lautstärke der Flöte verringert. In jeder Stimme muss
2274 eine Dynamikanweisung für die erste Note gesetzt werden, damit
2275 diese Einstellung korrekt funktioniert.
2277 @lilypond[verbatim,quote]
2283 \set Staff.midiInstrument = #"flute"
2284 \set Staff.midiMinimumVolume = #0.7
2285 \set Staff.midiMaximumVolume = #0.9
2286 \new Voice \relative c''' {
2294 \set Staff.midiInstrument = #"clarinet"
2295 \set Staff.midiMinimumVolume = #0.3
2296 \set Staff.midiMaximumVolume = #0.6
2297 \new Voice \relative c'' {
2308 tempoWholesPerMinute = #(ly:make-moment 72 2)
2315 @unnumberedsubsubsec Verschiedene Instrumente angleichen (ii)
2317 Wenn Mindest- und Höchstwerte für die Lautstärke der MIDI-Datei
2318 nicht vorgegeben werden, nimmt LilyPond standardmäßig einige
2319 Anpassungen für die Lautstärken bestimmter Instrumente vor.
2320 Diese Instrumente und ihre entsprechende Veränderung lassen
2321 sich aus der Tabelle @notation{instrument-equalizer-alist}
2322 in der Datei @file{../scm/midi.scm} entnehmen.
2324 Dieser grundlegende Equalizer kann ersetzt werden, indem die
2325 Funktion @code{instrumentEqualizer} im @code{Score}-Kontext auf
2326 eine neue Scheme-Funktion gesetzt wird, die MIDI-Instrumentbezeichnungen
2327 als einziges Argument akzeptiert und ein Zahlenpaar ausgibt, das
2328 den Höchst- und Mindestwert für die Lautstärke des entsprechenden
2329 Instruments darstellt. Die Ersetzung der Standardfunktion wird
2330 auf gleiche Weise vorgenommen, wie es schon für die
2331 @code{dynamicAbsoluteVolumeFunction} zu Beginn dieses Abschnittes
2332 gezeigt wurde. Der Standard-Equalizer,
2333 @notation{default-instrument-equalizer} in der Datei
2334 @file{../scm/midi.scm} zeigt, wie solche eine Funktion erstellt werden
2337 Das folgende Beispiel definiert für die Flöte und Klarinette relative
2338 Lautstärkewerte, die denen des vorigen Beispiels entsprechen.
2340 @lilypond[verbatim,quote]
2341 #(define my-instrument-equalizer-alist '())
2343 #(set! my-instrument-equalizer-alist
2346 ("flute" . (0.7 . 0.9))
2347 ("clarinet" . (0.3 . 0.6)))
2348 my-instrument-equalizer-alist))
2350 #(define (my-instrument-equalizer s)
2351 (let ((entry (assoc s my-instrument-equalizer-alist)))
2360 \set Score.instrumentEqualizer = #my-instrument-equalizer
2361 \set Staff.midiInstrument = #"flute"
2362 \new Voice \relative c''' {
2370 \set Staff.midiInstrument = #"clarinet"
2371 \new Voice \relative c'' {
2382 tempoWholesPerMinute = #(ly:make-moment 72 2)
2390 @node Schlagzeug in MIDI
2391 @subsection Schlagzeug in MIDI
2392 @translationof Percussion in MIDI
2394 Schlagzeuginstrumente werden üblicherweise in einem @code{DrumStaff}-Kontext
2395 notiert. Aus diese Weise werden sie korrekt in den MIDI-Kanal@tie{}10
2396 ausgegeben. Eine Schlagzeuge mit diskreten Tonhöhen, wie Xylophon,
2397 Marima, Vibraphone, Pauken usw. werden wie @qq{normale} Instrumente
2398 in einem @code{Staff}-Kontext notiert. Nur so lässt sich auch hier
2399 eine richtige MIDI-Ausgabe erreichen.
2401 Einige Instrumente, die keine diskreten Tonhöhen haben, können nicht
2402 über den MIDI-Kanal@tie{}10 erreicht werden und müssen deshalb in
2403 einem normalen @code{Staff}-Kontext mit passenden normalen Tonhöhen
2404 notiert werden. Es handelt sich
2405 um @code{melodic tom, taiko drum, synth drum} u. A.
2407 Viele Schlagzeuginstrumente sind nicht in den MIDI-Standard aufgenommen,
2408 z. B. Kastagnetten. Die einfachste Methode, derartige Instrumente
2409 zu ersetzen, ist, einen Klang auszuwählen, der ihnen halbwegs ähnlich
2415 Weil der MIDI-Standard keine Peitschenschläge kennt, wird ein
2416 Schlagstock (sidestick) für diesen Zweck eingesetzt.
2419 @node Artikuliere-Skript
2420 @subsection Artikuliere-Skript
2421 @translationof The Articulate script
2423 Eine realistischere MIDI-Ausgabe ist möglich, wenn man das
2424 Artikuliere-Skript einsetzt. Es versucht, Artikulationen
2425 (Bögen, Staccato) mit einzubeziehen, indem Noten mit
2426 sequentieller Musik von passender Verlängerung oder Verkürzung
2427 mit entprechenden Skips ersetzt werden. Es versucht auch,
2428 Triller usw. klingen zu lassen und rallantando und
2429 accelerando wahrzunehmen.
2431 Um das Artikuliere-Skript einzusetzen, muss oben in der
2435 \include "articulate.ly"
2439 eingefügt werden. Im @code{\score}-Abschnitt schreibt man
2442 \unfoldRepeats \articulate <<
2443 der Rest der Partitur...
2447 Wenn die Eingabedatei auf diese Art verändert wurd, wird die
2448 Notenausgabe stark verändert, aber die MIDI-Ausgabe produziert
2449 ein besseres Ergebnis.
2451 Wenn auch nicht unbedingt notwendig, damit das Artikuliere-Skript
2452 funktioniert, bietet es sich an, @code{\unfoldRepeats} wie im
2453 Beispiel oben zu verwenden, weil dadurch Abkürzungen wie etwa
2454 Triller ausgeführt werden.
2458 Articulate verkürzt Akkorde und manche Musik (besonders Orgelmusik)
2459 kann schlechter klingen.