]> git.donarmstrong.com Git - lilypond.git/blobdiff - Documentation/de/user/introduction.itely
resolve merge
[lilypond.git] / Documentation / de / user / introduction.itely
diff --git a/Documentation/de/user/introduction.itely b/Documentation/de/user/introduction.itely
deleted file mode 100644 (file)
index 69d5f58..0000000
+++ /dev/null
@@ -1,1169 +0,0 @@
-@c -*- coding: utf-8; mode: texinfo; -*-
-@c This file is part of lilypond.tely
-@ignore
-    Translation of GIT committish: 499a511d4166feaada31114e097f86b5e0c56421
-
-    When revising a translation, copy the HEAD committish of the
-    version that you are working on.  See TRANSLATION for details.
-@end ignore
-
-@c \version "2.12.0"
-@c Translators: Till Rettig, Reinhold Kainhofer
-
-@node Introduction
-@chapter Introduction
-
-Dieses Kapitel stellt dem Leser die Idee hinter LilyPond und die Dokumentation
-von LilyPond vor.
-
-@menu
-* Background::
-* About the documentation::
-@end menu
-
-
-@node Background
-@section Background
-
-Dieser Abschnitt behandelt die allgemeinen Ziele und die Architektur von LilyPond.
-
-@menu
-* Engraving::
-* Automated engraving::
-* What symbols to engrave?::
-* Music representation::
-* Example applications::
-@end menu
-
-
-@node Engraving
-@unnumberedsubsec Engraving
-
-@cindex Notensatz
-@cindex Typographie
-@cindex Notengravur
-@cindex Gravur, Notensatz
-@cindex Plattendruck, Noten
-
-Die Kunst des Notensatzes wird auch als Notenstich bezeichnet. Dieser 
-Begriff stammt aus dem traditionellen Notendruck. Noch bis vor etwa 20 
-Jahren wurden Noten erstellt, indem man sie in eine Zink- oder Zinnplatte 
-schnitt oder mit Stempeln schlug. Diese Platte wurde dann mit Druckerschwärze
- versehen, so dass sie in den geschnittenen und gestempelten Vertiefungen 
-blieb. Diese Vertiefungen schwärzten dann ein auf die Platte gelegtes 
-Papier. Das Gravieren wurde vollständig von Hand erledigt. Es war darum 
-sehr mühsam, Korrekturen anzubringen, weshalb man von vornherein richtig
- schneiden musste. Es handelte sich dabei um ein sehr spezialisiertes Handwerk.
-
-Heutzutage wird fast alle gedruckte Musik von Computern erstellt. Das 
-hat einige deutliche Vorteile: Drucke sind billiger als die gravierten
-Platten und der Computersatz kann per E-Mail verschickt werden. Leider
-hat der intensive Einsatz des Computers die graphische Qualität
-des Notensatzes vermindert. Mit dem Computer erstellte Noten sehen 
-langweilig und mechanisch aus, was es erschwert, von ihnen zu spielen.
-
-
-@c introduce illustrating aspects of engraving, font...
-Die Abbildung unten illustriert den Unterschied zwischen  
-traditionellem Notensatz und einem typischen Computersatz. Das 
-dritte Bild zeigt, wie LilyPond die Formen des traditionellen
-Satzes nachahmt. Das linke Bild zeigt ein eingescanntes b-Vorzeichen 
-aus einer 2000 herausgegebenen Edition. Das mittlere Bild
-zeigt das b-Vorzeichen der selben Musik aus einer handgestochenen 
- Bärenreiter-Ausgabe. Das linke Bild zeigt die typischen Makel
-des Computer-Satzes: Die Notenlinien sind sehr dünn, die Schwärze 
-des Vorzeichens entspricht den dünnen Linien und hat eine gerade 
-Form mit scharfen Ecken und Kanten. Im Gegensatz dazu hat das
-Bärenreiter-Vorzeichen dicke, gerade zu sinnlich rundliche
-Formen. Unser Symbol für das Vorzeichen hat neben anderen 
-auch dieses b als Vorbild. Es ist abgerundet und passt zu unseren
-Notenlinien, die sehr viel dicker sind als die der entsprechenden
-Computer-Ausgabe.
-
-@multitable @columnfractions .125 .25 .25 .25 .125
-@item @tab
-@ifnotinfo
-@iftex
-@image{henle-flat-gray,,4cm}
-@end iftex
-@ifnottex
-@image{henle-flat-gray,,,png}
-@end ifnottex
-
-@tab
-@iftex
-@image{baer-flat-gray,,4cm}
-@end iftex
-@ifnottex
-@image{baer-flat-gray,,,png}
-@end ifnottex
-
-@tab
-@iftex
-@image{lily-flat-bw,,4cm}
-@end iftex
-@ifnottex
-@image{lily-flat-bw,,,png}
-@end ifnottex
-@end ifnotinfo
-@ifinfo
-@c workaround for makeinfo-4.6: line breaks and multi-column cookies
-@image{henle-flat-bw,,,png} @image{baer-flat-bw,,,png}
-@image{lily-flat-bw,,,png}
-@end ifinfo
-
-@item @tab
-Henle (2000)
-@tab
-Bärenreiter (1950)
-@tab
-LilyPond Feta-Schriftart (2003)
-
-@end multitable
-
-
-@cindex Musiksymbole
-@cindex Schriftart
-@cindex Dichte
-@cindex Balance
-
-@c introduce illustrating aspects of engraving, spacing...
-Die Verteilung der Noten innerhalb des Taktes sollte ihrer Dauer
-entsprechen. Moderne Partituren zeigen diese Verhältnisse jedoch 
-mit einer mathematischen Präzision, die nur sehr schlechte 
-Ergebnisse bringt. Im nächsten Beispiel ist ein Motiv zweimal
-gesetzt: einmal mit den exakten mathematischen Längenverhältnissen, dann
-mit kleinen Korrekturen. Welches von beiden ist mit dieser Korrektur
-gesetzt?
-
-@cindex Optischer Ausgleich
-@c file spacing-optical.
-@c need to include it here,  because we want two images.
-@lilypond
-\paper {
-  ragged-right = ##t
-  indent = #0.0
-}
-
-music = {
-   c'4 e''4 e'4 b'4 |
-   \stemDown
-   b'8[ e'' a' e'']
-   \stemNeutral
-   e'8[ e'8 e'8 e'8]
-}
-
-\score
-{
-  \music
-  \layout {
-    \context {
-      \Staff
-      \override NoteSpacing #'stem-spacing-correction = #0.6
-    }
-  }
-}
-@end lilypond
-
-@lilypond
-\paper {
-  ragged-right = ##t
-  indent = #0.0
-}
-
-music = {
-   c'4 e''4 e'4 b'4 |
-   \stemDown
-   b'8[ e'' a' e'']
-   \stemNeutral
-   e'8[ e'8 e'8 e'8]
-}
-\score
-{
-  \music
-  \layout {
-    \context {
-      \Staff
-      \override NoteSpacing #'stem-spacing-correction = #0.0
-      \override NoteSpacing #'same-direction-correction = #0.0
-      \override StaffSpacing #'stem-spacing-correction = #0.0
-    }
-  }
-}
-@end lilypond
-
-@cindex normale Rhythmen
-@cindex normale Abstände
-@cindex Abstände, normal
-@cindex Rhythmen, normal
-
-In diesem Ausschnitt kommen nur Viertel vor, Noten, die in einem
- gleichmäßigen Rhythmus gespielt werden. Die Abstände sollten das
- widerspiegeln. Leider lässt uns aber das Auge im Stich: es beachtet
- nicht nur den Abstand von aufeinander folgenden Notenköpfen, sondern
- auch den ihrer Hälse. Also müssen Noten, deren Hälse in direkter
- Folge zuerst nach oben und dann nach unten ausgerichtet sind, weiter
- auseinander gezogen werden, während die unten/oben-Folge engere
- Abstände fordert, und das alles auch noch in Abhängigkeit von der 
-vertikalen Position der Noten. Das obere Beispiel ist mit dieser 
-Korrektur gesetzt, das untere ohne. In letzterem Fall bilden sich 
-für das Auge bei unten/oben-Folgen Notenklumpen mit schmalen Abständen 
-zwischen den Notenhälsen.
-
-@cindex Typographie
-
-Musiker sind üblicherweise zu zu konzentriert, die Musik aufzuführen, 
-als das Aussehen der Noten zu studieren; und diese 
-Beschäftigung mit typographischen Details mag akademisch wirken. 
-Das ist sie aber nicht. Unser Beispielstück hat einen 
-monotonen Rhythmus, und wenn alle Zeilen gleich aussehen, wird 
-das Notenblatt zu einem Labyrinth. Wenn der Spieler auch nur 
-einmal wegschaut oder kurze Zeit unkonzentriert ist, findet er 
-nicht mehr zurück zu der Stelle, an der er war.
-
-Der dichtere Eindruck, den die dickeren Notenlinien und schwereren
-Notationssymbole schaffen, eignet sich auch besser für Noten,
-die weit vom Leser entfernt stehen, etwa auf einem Notenständer.
-Eine sorgfältige Verteilung der Zwischenräume erlaubt es, die 
-Noten sehr dicht zu setzen, ohne dass die Symbole zusammenklumpen. 
-Dadurch werden unnötige Seitenumbrüche vermieden, sodass man 
-nicht so oft blättern muss.
-
-Dies sind die Anforderungen der Typographie: Das Layout sollte
-schön sein -- nicht aus Selbstzweck, sondern um dem Leser zu helfen. Für 
-Aufführungsmaterial ist das umso wichtiger, denn Musiker haben eine begrenzte
-Aufmerksamkeit. Je weniger Mühe nötig ist, die Noten zu erfassen, desto mehr
-Zeit bleibt für die Gestaltung der eigentlichen Musik. Das heißt: Gute 
-Typographie führt zu besseren Aufführungen!
-
-Die Beispiele haben gezeigt, dass der Notensatz eine subtile und 
-komplexe Kunst ist und gute Ergebnisse nur mit viel Erfahrung 
-erlangt werden können, die Musiker normalerweise nicht haben.
-LilyPond stellt unser Bemühen dar, die graphische Qualität
-handgestochener Notenseiten ins Computer-Zeitalter zu transportieren 
-und sie für normale Musiker erreichbar zu machen. Wir haben 
-unsere Algorithmen, die Gestalt der Symbole und die Programm-Einstellungen
-darauf abgestimmt, einen Ausdruck zu erzielen, der der Qualität 
-der alten Editionen entspricht, die wir so gerne betrachten 
-und von denen wir gerne spielen.
-
-
-
-@node Automated engraving
-@unnumberedsubsec Automated engraving
-
-@cindex Notensatz, automatisch
-@cindex automatischer Notensatz
-
-Wie sollen wir also jetzt die Typographie anwenden?
-Wie können wir erwarten, dass wir in der Lage wären, 
-ein Programm zu schreiben, dass den Beruf des 
-Notenstechers ersetzt, wo dieser doch mehr als zehn 
-Jahre braucht, um ein Meister zu werden?
-
-Wir können es tatsächlich nicht! Da Typographie allein 
-durch das menschliche Auge bestimmt ist, kann der Mensch 
-nicht ersetzt werden. Aber sehr viel mechanische Arbeit 
-kann automatisiert werden. Indem etwa LilyPond die üblichen 
-Situationen kennt und bewältigt, können die restlichen 
-Fehler von Hand beseitigt werden. Das ist schon ein 
-großer Fortschritt im Vergleich zu den existierenden 
-Programmen. Und mit der Zeit können immer mehr Fälle 
-automatisiert werden, so dass immer weniger Eingriffe 
-von Hand notwendig werden.
-
-
-Als wir anfingen, haben wir LilyPond vollständig in der Programmiersprache C++
-geschrieben. Das hieß, dass der Funktionsumfang des Programms vollständig durch
-die Programmierer festgelegt war. Das stellte sich aus einer Reihe von Gründen
-als unzureichend heraus:
-
-@itemize @bullet
-@item Wenn LilyPond Fehler macht, muss der Benutzer die
-Einstellungen ändern können. Er muss also Zugang zur 
-Formatierungsmaschinerie haben. Deshalb können die Regeln und 
-Einstellungen nicht beim Kompilieren des Programms festgelegt 
-werden, sondern sie müssen während des Laufes zugänglich sein.
-
-
-@item Notensatz ist eine Frage des Augenmaßes, und damit auch vom
- Geschmack abhängig. Benutzer können mit unseren Entscheidungen 
-unzufrieden sein. Darum müssen also auch die Definitionen des 
-typographischen Stils dem Benutzer zugänglich sein.
-
-@item Schließlich verfeinern wir unseren Formatierungsalgorithmus 
-immer weiter, also müssen die Regeln auch flexibel sein. Die
-Sprache C++ zwingt zu einer bestimmten Gruppierungsmethode, 
-die nicht den Regeln für den Notensatz entspricht.
-@end itemize
-
-@cindex Scheme-Programmiersprache
-
-Diese Probleme wurden angegangen, indem ein Übersetzer für 
-die Programmiersprache Scheme integriert wurde und Teile
-von LilyPond in Scheme neu geschrieben wurden. Die derzeitige 
-Formatierungsarchitektur ist um die Notation von graphischen 
-Objekten herum aufgebaut, die von Scheme-Variablen und -Funktionen
-beschrieben werden. Diese Architektur umfasst Formatierungsregeln,
-typographische Stile und individuelle Formatierungsentscheidungen. 
-Der Benutzer hat direkten Zugang zu den meisten dieser Einstellungen.
-
-Scheme-Variablen steuern Layout-Entscheidungen. Zum Beispiel haben 
-viele graphische Objekte eine Richtungsvariable, die zwischen 
-oben und unten (oder rechts und links) wählen kann. Hier etwa 
-sind zwei Akkorde mit Akzenten und Arpeggien. 
-Beim ersten Akkord sind alle Objekte nach unten (oder links)
- ausgerichtet, beim zweiten nach oben (rechts).
-
-@lilypond[quote,ragged-right]
-\new Score \with {
-   \override SpacingSpanner #'spacing-increment = #3
-   \override TimeSignature #'transparent = ##t
-} \relative c' {
-   \stemDown <e g b>4_>-\arpeggio
-   \override Arpeggio #'direction = #RIGHT
-   \stemUp <e g b>4^>-\arpeggio
-}
-@end lilypond
-
-@cindex Formatierung einer Partitur
-@cindex Partitur, Formatierung
-@cindex Formatierungsregeln
-
-@noindent
-Der Prozess des Notensetzens besteht für das Programm darin,
-die Variablen der graphischen Objekte zu lesen und zu
-schreiben. Einige Variablen haben festgelegte Werte. So 
-ist etwa die Dicke von vielen Linien – ein Charakteristikum 
-des typographischen Stils – von vornherein festgelegt. 
-Wenn sie geändert werden, ergibt sich ein anderer typographischer Eindruck.
-
-@lilypond[quote,ragged-right]
-fragment = {
-   \clef bass f8 as8
-   c'4-~ c'16 as g f e16 g bes c' des'4
-}
-<<
-   \new Staff \fragment
-   \new Staff \with {
-      \override Beam #'thickness = #0.3
-      \override Stem #'thickness = #0.5
-      \override Bar #'thickness = #3.6
-      \override Tie #'thickness = #2.2
-      \override StaffSymbol #'thickness = #3.0
-      \override Tie #'extra-offset = #'(0 .  0.3)
-      }
-      \fragment
->>
-@end lilypond
-
-Formatierungsregeln sind auch vorbelegte Variablen. Zu jedem Objekt gehören
-Variablen, die Prozeduren enthalten. Diese Prozeduren machen die eigentliche 
-Satzarbeit, und wenn man sie durch andere ersetzt, kann die Darstellung 
-von Objekten verändert werden. Im nächsten Beispiel wird die Regel, nach der 
-die Notenköpfe gezeichnet werden, während des Ausschnitts verändert.
-
-@lilypond[quote,ragged-right]
-#(set-global-staff-size 30)
-
-#(define (mc-squared grob orig current)
-  (let* ((interfaces (ly:grob-interfaces grob))
-         (pos (ly:grob-property grob 'staff-position)))
-    (if (memq 'note-head-interface interfaces)
-        (begin
-          (ly:grob-set-property! grob 'stencil
-            (grob-interpret-markup grob
-              (make-lower-markup 0.5
-                (case pos
-                  ((-5) "m")
-                  ((-3) "c ")
-                  ((-2) (make-smaller-markup (make-bold-markup "2")))
-                  (else "bla")))))))))
-
-\new Voice \relative c' {
-  \stemUp
-  \set autoBeaming = ##f
-  \time 2/4
-  <d f g>4
-  \once \override NoteHead #'stencil = #ly:note-head::brew-ez-stencil
-  \once \override NoteHead #'font-size = #-7
-  \once \override NoteHead #'font-family = #'sans
-  \once \override NoteHead #'font-series = #'bold
-  <d f g>4
-  \once \override NoteHead #'style = #'cross
-  <d f g>4
-  \applyOutput #'Voice #mc-squared
-  <d f g>4
-  <<
-    { d8[ es-( fis^^ g] fis2-) }
-    \repeat unfold 5 { \applyOutput #'Voice #mc-squared s8 }
-  >>
-}
-@end lilypond
-
-
-
-@node What symbols to engrave?
-@unnumberedsubsec What symbols to engrave?
-
-@cindex Notensatz
-@cindex Typographie
-@cindex Stempel
-@cindex Matrize
-@cindex Engraver
-@cindex Plugin
-
-Während des Notensatzprozesses entscheidet sich, wo
-Symbole platziert werden. Das kann aber nur gelingen, 
-wenn vorher entschieden wird, @emph{welche} Symbole
-gesetzt werden sollen, also welche Notation benutzt
-werden soll.
-
-Die heutige Notation ist ein System zur Musikaufzeichnung,
-das sich über die letzten 1000 Jahre entwickelt hat. Die 
-Form, die heute üblicherweise benutzt wird, stammt aus dem 
-frühen Barock. Auch wenn sich die grundlegenden Formen (also
-die Notenköpfe, das Fünfliniensystem) nicht verändert haben, 
-entwickeln sich die Details trotzdem immer noch weiter, um 
-die Errungenschaften der Neuen Musik darstellen zu können. Die 
-Notation umfasst also 500 Jahre Musikgeschichte. Ihre Anwendung 
-reicht von monophonen Melodien bis zu ungeheurem Kontrapunkt 
-für großes Orchester.
-
-Wie bekommen wir dieses vielköpfige Monster zu fassen? 
-Unsere Lösung ist es, eine strikte Trennung zwischen der Notation, 
-also welche Symbole benutzt werden, und dem Satz, also wohin sie 
-gesetzt werden, zu machen. Um das Problem anzupacken, haben wir 
-es in kleine (programmierbare) Happen zerteilt, so dass jede Art 
-von Symbol durch ein eigenes Plugin verarbeitet wird. Alle Plugins
- kooperieren durch die LilyPond-Architektur. Sie sind vollständig 
-modular und unabhängig und können somit auch unabhängig voneinander
- entwickelt werden. Der Schreiber, der die Musik in Graphik umwandelt,
- ist ein Kopist oder Notenstecher (engl. engraver). Darum werden 
-die Plugins  als @code{engraver} bezeichnet.
-
-Im nächsten Beispiel wird gezeigt, wie mit dem Plugin für die Notenköpfe, 
-dem @code{Note_heads_engraver} (@qq{Notenkopfstecher}) der Satz begonnen wird.
-
-@lilypond[quote,ragged-right]
-\include "engraver-example.ily"
-
-\score {
-  \topVoice
-  \layout {
-    \context {
-      \Voice
-      \remove "Stem_engraver"
-      \remove "Phrasing_slur_engraver"
-      \remove "Slur_engraver"
-      \remove "Script_engraver"
-      \remove "Beam_engraver"
-      \remove "Auto_beam_engraver"
-    }
-    \context {
-      \Staff
-      \remove "Accidental_engraver"
-      \remove "Key_engraver"
-      \remove "Clef_engraver"
-      \remove "Bar_engraver"
-      \remove "Time_signature_engraver"
-      \remove "Staff_symbol_engraver"
-      \consists "Pitch_squash_engraver"
-    }
-  }
-}
-@end lilypond
-
-@noindent
-Dann fügt ein @code{Staff_symbol_engraver} (@qq{Notensystemstecher}) 
-die Notenlinien hinzu.
-
-@lilypond[quote,ragged-right]
-\include "engraver-example.ily"
-
-\score {
-  \topVoice
-  \layout {
-    \context {
-      \Voice
-      \remove "Stem_engraver"
-      \remove "Phrasing_slur_engraver"
-      \remove "Slur_engraver"
-      \remove "Script_engraver"
-      \remove "Beam_engraver"
-      \remove "Auto_beam_engraver"
-    }
-    \context {
-      \Staff
-      \remove "Accidental_engraver"
-      \remove "Key_engraver"
-      \remove "Clef_engraver"
-      \remove "Bar_engraver"
-      \consists "Pitch_squash_engraver"
-      \remove "Time_signature_engraver"
-    }
-  }
-}
-@end lilypond
-
-@noindent
-Der @code{Clef_engraver} (@qq{Notenschlüsselstecher}) definiert 
-eine Referenzstelle für das System.
-
-@lilypond[quote,ragged-right]
-\include "engraver-example.ily"
-
-\score {
-  \topVoice
-  \layout {
-    \context {
-      \Voice
-      \remove "Stem_engraver"
-      \remove "Phrasing_slur_engraver"
-      \remove "Slur_engraver"
-      \remove "Script_engraver"
-      \remove "Beam_engraver"
-      \remove "Auto_beam_engraver"
-    }
-    \context {
-      \Staff
-      \remove "Accidental_engraver"
-      \remove "Key_engraver"
-      \remove "Bar_engraver"
-      \remove "Time_signature_engraver"
-    }
-  }
-}
-@end lilypond
-
-@noindent
-Der @code{Stem_engraver} (@qq{Halsstecher}) schließlich fügt
- Hälse hinzu.
-
-@lilypond[quote,ragged-right]
-\include "engraver-example.ily"
-
-\score {
-  \topVoice
-  \layout {
-    \context {
-      \Voice
-      \remove "Phrasing_slur_engraver"
-      \remove "Slur_engraver"
-      \remove "Script_engraver"
-      \remove "Beam_engraver"
-      \remove "Auto_beam_engraver"
-    }
-    \context {
-      \Staff
-      \remove "Accidental_engraver"
-      \remove "Key_engraver"
-      \remove "Bar_engraver"
-      \remove "Time_signature_engraver"
-    }
-  }
-}
-@end lilypond
-
-@noindent
-Dem @code{Stem_engraver} wird jeder Notenkopf mitgeteilt, 
-der vorkommt. Jedes Mal, wenn ein Notenkopf erscheint (oder mehrere bei 
-einem Akkord), wird ein Hals-Objekt erstellt und an den 
-Kopf geheftet. Wenn wir dann noch engraver für Balken, Bögen, 
-Akzente, Vorzeichen, Taktlinien, Taktangaben und Tonartbezeichnungen 
-hinzufügen, erhalten wir eine vollständige Notation.
-
-
-@lilypond[quote,ragged-right]
-\include "engraver-example.ily"
-\score { \topVoice }
-@end lilypond
-
-@cindex Polyphonie
-@cindex Mehrstimmigkeit
-@cindex Notensatz, Mehrstimmigkeit
-@cindex Kontexte
-
-Dieses System funktioniert gut für monophone Musik, aber wie geht 
-es mit Polyphonie? Hier müssen sich mehrere Stimmen ein System teilen.
-
-@lilypond[quote,ragged-right]
-\include "engraver-example.ily"
-\new Staff << \topVoice \\ \botVoice >>
-@end lilypond
-
-In diesem Fall benutzen beide Stimmen das System und die Vorzeichen gemeinsam,
-aber die 
-Hälse, Bögen, Balken usw. sind jeder einzelnen Stimme eigen. Die engraver 
-müssen also gruppiert werden. Die Köpfe, Hälse, Bögen usw. werden 
-in einer Gruppe mit dem Namen @qq{Voice context} (Stimmenkontext) 
-zusammengefasst, die engraver für den Schlüssel, die Vorzeichen, 
-Taktstriche usw. dagegen in einer Gruppe mit dem Namen @qq{Staff context} 
-(Systemkontext). Im Falle von Polyphonie hat ein Staff-Kontext dann also 
-mehr als nur einen Voice-Kontext. Auf gleiche Weise können auch mehrere Staff-Kontexte
-in einen großen Score-Kontext (Partiturkontext) eingebunden werden.
-
-
-@seealso
-Programmreferenz: @rinternals{Contexts}.
-
-
-@lilypond[quote,ragged-right]
-\include "engraver-example.ily"
-\score {
-   <<
-      \new Staff << \topVoice \\ \botVoice >>
-      \new Staff << \pah \\ \hoom >>
-   >>
-}
-@end lilypond
-
-@node Music representation
-@unnumberedsubsec Music representation
-
-@cindex Syntax
-@cindex rekursive Strukturen
-
-Idealerweise ist das Eingabeformat für ein höheres Satzsystem die 
-abstrakte Beschreibung des Inhaltes. In diesem Fall wäre das die 
-Musik selber. Das stellt uns aber vor ein ziemlich großes Problem, 
-denn wie können wir definieren, was Musik wirklich ist? Anstatt darauf 
-eine Antwort zu suchen, haben wir die Frage einfach umgedreht. Wir
-schreiben ein Programm, das den Notensatz beherrscht und passen das 
-Format an, so einfach wie möglich zu sein. Wenn es nicht mehr vereinfacht 
-werden kann, haben wir per Definition nur noch den reinen Inhalt. Unser 
-Format dient als die formale Definition eines Musiktextes.
-
-Die Syntax ist gleichzeitig die Benutzerschnittstelle bei LilyPond, 
-darum soll sie einfach zu schreiben sein; z. B. bedeutet
-
-@example
-c'4 d'8
-@end example
-
-@noindent
-eine Viertel c' und eine Achtel d', wie in diesem Beispiel:
-
-@lilypond[quote]
-{
-  c'4 d'8
-}
-@end lilypond
-
-In kleinem Rahmen ist diese Syntax sehr einfach zu benutzen. In 
-größeren Zusammenhängen aber brauchen wir Struktur. Wie sonst kann 
-man große Opern oder Symphonien notieren? Diese Struktur wird 
-gewährleistet durch sog. music expressions (Musikausdrücke): indem 
-kleine Teile zu größeren kombiniert werden, kann komplexere Musik 
-dargestellt werden. So etwa hier:
-
-@lilypond[quote,verbatim,fragment,relative=1]
-f4
-@end lilypond
-
-@noindent
-Gleichzeitig erklingende Noten werden hinzugefügt, indem man alle in @code{<<} und @code{>>} einschließt.
-
-@c < > is not a music expression,
-@c so we use <<>> iso. <> to drive home the point of
-@c expressions.  Don't change this back --hwn.
-@example
-<<c4 d4 e4>>
-@end example
-
-@lilypond[quote,fragment,relative=1]
-\new Voice { <<c4 d4 e>> }
-@end lilypond
-
-@noindent
-Um aufeinanderfolgende Noten darzustellen, werden sie in geschweifte Klammern gefasst:
-
-@code{@{@tie{}@dots{}@tie{}@}}
-
-@example
-@{ f4 <<c4 d4 e4>> @}
-@end example
-
-@lilypond[quote,relative=1,fragment]
-{ f4 <<c d e4>> }
-@end lilypond
-
-@noindent
-Dieses Gebilde ist in sich wieder ein Ausdruck, und kann 
-daher mit einem anderen Ausdruck kombiniert werden (hier mit einer Halben).
-
-@example
-<< g2 \\ @{ f4 <<c4 d4 e4>> @} >>
-@end example
-
-@lilypond[quote,fragment,relative=2]
-\new Voice { << g2 \\ { f4 <<c d e>> } >> }
-@end lilypond
-
-Solche geschachtelten Strukturen können sehr gut in einer 
-kontextunabhängigen Grammatik beschrieben werden. Der Programmcode 
-für den Satz ist auch mit solch einer Grammatik erstellt. Die Syntax 
-von LilyPond ist also klar und ohne Zweideutigkeiten definiert.
-
-Die Benutzerschnittstelle und die Syntax werden als erstes vom Benutzer 
-wahrgenommen. Teilweise sind sie eine Frage des Geschmackes und werden viel
-diskutiert. Auch wenn Geschmacksfragen ihre Berechtigung 
-haben, sind sie nicht sehr produktiv. Im großen Rahmen von LilyPond 
-spielt die Eingabe-Syntax nur eine geringe Rolle, denn eine logische 
-Syntax zu schreiben ist einfach, guten Formatierungscode aber sehr viel 
-schwieriger. Das kann auch die Zeilenzahl der Programmzeilen zeigen: 
-Analysieren und Darstellen nimmt nur etwa 10% des Codes ein:
-
-@node Example applications
-@unnumberedsubsec Example applications
-
-@cindex einfaches Beispiel
-@cindex Beispiel, einfach
-
-Wir haben LilyPond als einen Versuch geschrieben, wie man die Kunst des 
-Musiksatzes in ein Computerprogramm gießen kann. Dieses 
-Programm kann nun dank vieler harter Arbeitsstunden benutzt werden, 
-um sinnvolle Aufgaben zu erledigen. Die einfachste ist dabei der 
-Notendruck.
-
-@lilypond[quote,relative=1]
-{
-  \time 2/4
-  c4 c g'4 g a4 a g2
-}
-@end lilypond
-
-@noindent
-Indem wir Akkordsymbole und einen Text hinzufügen, erhalten wir 
-ein Lead Sheet.
-
-@lilypond[quote,ragged-right]
-<<
-   \chords { c2 c f2 c }
-   \new Staff
-   \relative c' {
-     \time 2/4
-     c4 c g' g a a g2
-   }
-   \addlyrics { twin -- kle twin -- kle lit -- tle star }
->>
-@end lilypond
-
-Mehrstimmige Notation und Klaviermusik kann auch gesetzt werden. Das 
-nächste Beispiel zeigt einige etwas exotischere Konstruktionen:
-
-@lilypond[quote]
-\header {
-  title = "Screech and boink"
-  subtitle = "Random complex notation"
-  composer = "Han-Wen Nienhuys"
-}
-
-\score {
-  \context PianoStaff <<
-    \new Staff = "up" {
-      \time 4/8
-      \key c \minor
-      << {
-        \revert Stem #'direction
-        \change Staff = down
-        \set subdivideBeams = ##t
-        g16.[
-          \change Staff = up
-          c'''32
-          \change Staff = down
-          g32
-          \change Staff = up
-          c'''32
-          \change Staff = down
-          g16]
-        \change Staff = up
-        \stemUp
-        \set followVoice = ##t
-        c'''32([ b''16 a''16 gis''16 g''32)]
-      } \\ {
-        s4 \times 2/3 { d'16[ f' g'] } as'32[ b''32 e'' d'']
-      } \\ {
-        s4 \autoBeamOff d''8.. f''32
-      } \\ {
-        s4 es''4
-      } >>
-    }
-
-    \new Staff = "down" {
-      \clef bass
-      \key c \minor
-      \set subdivideBeams = ##f
-      \override Stem  #'french-beaming = ##t
-      \override Beam  #'thickness = #0.3
-      \override Stem  #'thickness = #4.0
-      g'16[ b16 fis16 g16]
-      << \makeClusters {
-        as16 <as b>
-        <g b>
-        <g cis>
-      } \\ {
-        \override Staff.Arpeggio  #'arpeggio-direction =#down
-        <cis, e, gis, b, cis>4\arpeggio
-      }
-    >> }
-  >>
-  \midi {
-    \context {
-      \Score
-      tempoWholesPerMinute = #(ly:make-moment 60 8)
-    }
-  }
-  \layout {
-    \context {
-      \Staff
-      \consists Horizontal_bracket_engraver
-    }
-  }
-}
-@end lilypond
-
-Die obenstehenden Beispiele wurde manuell erstellt, aber das ist nicht 
-die einzige Möglichkeit. Da der Satz fast vollständig automatisch abläuft, 
-kann er auch von anderen Programmen angesteuert werden, die Musik oder Noten
-verarbeiten. So können etwa ganze Datenbanken musikalischer Fragmente automatisch 
-in Notenbilder umgewandelt werden, die dann auf Internetseiten oder 
-in Multimediapräsentation Anwendung finden.
-
-Dieses Benutzerhandbuch zeigt eine weitere Möglichkeit: Die Noten werden als 
-reiner Text eingegeben und können darum sehr einfach integriert werden
-in andere textbasierte Formate wie etwa @LaTeX{}, HTML oder, wie in diesem 
-Fall, Texinfo. Durch ein spezielles Programm werden die Eingabefragmente durch 
-Notenbilder in der resultierenden PDF- oder HTML-Datei ersetzt. Dadurch ist
-es sehr einfach, Noten und Text zu kombinieren.
-
-
-
-@node About the documentation
-@section About the documentation
-
-@cindex Handbuch zum Lernen
-@cindex Glossar
-@cindex Anwendungsbenutzung
-@cindex Schnipselliste
-@cindex Referenz der Interna
-
-Die Dokumentation zu LilyPond ist unterteilt in mehrere Handbücher.
-
-@c leave these lines wrapping around.  It's some texinfo 4.12 thing. -gp
-@c This is actually a limitation of texi2html. -jm
-@menu
-* About the Learning Manual::  Dieses Handbuch stellt LilyPond vor und vermittelt die Grundkenntnisse, um damit arbeiten zu können.
-* About the Music Glossary::  Dieses Handbuch erklärt zahlreiche musikalische Fachausdrücke inklusive Übersetzungen in verschiedene Sprachen.
-* About the Notation Reference::  Dieses Handbuch stellt den Hauptteil der Dokumentation dar.  Es liefert detaillierte Informationen zum Notensatz mit LilyPond.  Als Voraussetzung werden die Kenntnisse des @qq{Handbuchs zum Lernen} angenommen.
-* About the Application Usage::  Dieses Handbuch diskutiert den konkreten Aufruf des @qq{lilypond}-Programms und wie LilyPond-Notensatz in andere Programme integriert werden kann.
-* About the Snippet List::  Dies ist eine Sammlung von kurzen LilyPond-Beispielen.
-* About the Internals Reference::  Dieses Dokument liefert Referenzwissen über LilyPonds interne Strukturen und ist vor allem bei der Erstellung von tiefergehenden Optimierungen und Anpassungen hilfreich.
-* Other documentation::         Es existieren noch etliche weitere Teile der Dokumentation, wie etwa die @q{Neueigkeiten} Seite oder das Archiv der Mailingliste.
-@end menu
-
-
-@node About the Learning Manual
-@unnumberedsubsec About the Learning Manual
-
-@cindex Handbuch zum Lernen
-
-Dieses Handbuch erklärt die Grundbegriffe von LilyPond und stellt 
-die fundamentalen Konzepte hinter dem Programm vor. Diese Kapitel sollten
-in linearer Reihenfolge gelesen werden.
-
-Am Ende jedes Abschnitts findet sich ein Absatz @strong{Siehe auch}, der
-Kreuzreferenzen zu anderen Abschnitten enthält. Beim ersten Durchlesen
-empfiehlt es sich nicht, diesen gleich zu folgen, da meist noch
-zahlreiche Grundbegriffe zum Verständnis fehlen. Wenn Sie sich durch
-das Handbuch zum Lernen geackert haben, wollen Sie vielleicht einzelne 
-Abschnitte nochmal durchgehen und dann den Kreuzverweisen zur Vertiefung
-der Zusammenhänge folgen.
-
-@itemize
-
-@item
-@ref{Introduction}: erklärt den Hintergrund und das Ziel von LilyPond.
-
-@item
-@ref{Tutorial}: liefert eine einfache Einführung in das Setzen von Musik 
-mit LilyPond. Neulinge sollten mit diesem Kapitel beginnen.
-
-@item
-@ref{Fundamental concepts}: erklärt etliche allgemeine Konzepte
-hinter dem Dateiformat von LilyPond. Wenn Sie sich nicht sicher 
-sind, an welcher Stelle Sie einen Befehl in die Datei einfügen sollen,
-ist dieses Kapitel genau das richtige!
-
-@item
-@ref{Tweaking output}: stellt dar, wie die Standardeinstellungen von 
-LilyPond verändert werden können.
-
-@item
-@ref{Working on LilyPond projects}: liefert Tipps im praktischen Umgang mit
-Lilypond und gibt Hinweise, wie gängige Fehler vermieden werden können. 
-Bevor Sie mit einem großen Projekt beginnen, sollten Sie dieses Kapitel 
-unbedingt gelesen haben!
-
-@end itemize
-
-Das Handbuch zum Lernen enthält auch zahlreiche Anhänge, die nicht
-zum linearen Durchlesen geeignet sind.  Sie sind allerdings zur späteren
-Referenz sehr gut geeignet:
-
-@itemize
-
-@item
-@ref{Templates}: zeigt einige fertige Dokumentvorlagen für diverse
-Stücke mit unterschiedlichen Charakteristika.  Kopieren Sie einfach 
-die Vorlagen in Ihre eigene Datei, fügen Sie die Noten hinzu und Sie 
-sind fertig!
-
-@item
-@ref{Scheme tutorial}: liefert eine kurze Einführung in Scheme, die
-Programmiersprache, die die Musikfunktionen in LilyPond intern benutzen.  
-Dies stellt tiefgehendes Wissen dar, wenn Sie LilyPond bis ins kleinste Detail
-konfigurieren möchten. Die meisten Benutzer brauchen dies jedoch selten bis 
-gar nicht.
-
-@end itemize
-
-
-@node About the Music Glossary
-@unnumberedsubsec About the Music Glossary
-
-@cindex Idiom
-@cindex Jargon
-@cindex Terminologie
-@cindex Übersetzungen
-@cindex Sprachen
-@cindex Glossar
-@cindex Thesaurus
-@cindex Fremdsprache
-
-@rglosnamed{Top,Das Glossar} erklärt musikalische Fachausdrücke und 
-enthält auch deren Übersetzungen in diverse Sprachen.  Wenn Sie mit
-Musiknotation oder der (englisch-sprachigen) Musikterminologie nicht vertraut 
-sind (vor allem, wenn Englisch nicht Ihre Muttersprache ist), ist es
-sehr empfehlenswert, das Glossar immer wieder zu Rate zu ziehen.
-
-
-@node About the Notation Reference
-@unnumberedsubsec About the Notation Reference
-
-@cindex Notationsreferenz
-@cindex Anhänge
-@cindex Referenz zum Notensatz
-
-In diesem Buch werden alle LilyPond-Befehle erklärt, die Notationszeichen 
-produzieren. Es geht von der Annahme aus, dass der Leser sich mit den 
-Grundkonzepten des Programmes im Handbuch zum Lernen bekannt gemacht hat.
-
-@itemize @bullet
-
-@item
-@emph{@ruser{Musical notation}}:
-erklärt alles über die grundlegenden Notationskonstruktionen. Dieses Kapitel 
-ist für fast jedes Notationsprojekt nützlich.
-
-@item
-@emph{@ruser{Specialist notation}}:
-erklärt spezifische Schwierigkeiten, die sich bei bestimmten Notationstypen 
-ergeben. Dieses Kapitel ist nur in entsprechenden Fällen bestimmter Instrumente 
-oder bei Gesang zu konsultieren.
-
-@item
-@emph{@ruser{General input and output}}:
-erläutert allgemeine Informationen über die Eingabedateien von Lilypond und
-wie die Ausgabe gesteuert werden kann.
-
-@item
-@emph{@ruser{Spacing issues}}:
-befasst sich mit globalen Fragen wie der Definition von Papierformaten 
-oder wie man Seitenumbrüche definiert.
-
-@item
-@emph{@ruser{Changing defaults}}:
-erklärt, wie des Layout getrimmt werden kann um genau zum gewünschten Ergebnis 
-zu kommen.
-
-@item
-@emph{@ruser{Interfaces for programmers}}:
-demonstriert die Erstellung von musikalischen Funktionen.
-
-@end itemize
-
-Ds Benutzerhandbuch enthält auch Anhänge mit nützlichen Referenztabellen.
-
-@itemize
-
-@item
-Die @ruser{Literature list}
-enthält einige wichtige Quellen für alle, die mehr über Notation und 
-den Notensatz erfahren wollen.
-
-@item
-@ruser{Notation manual tables}
-sind Tabellen, in denen Akkordbezeichnungen, MIDI-Instrumente, 
-Farbbezeichnungen und die Zeichen der Feta-Schriftart gesammelt sind.
-
-@item
-Die
-@emph{@ruser{Cheat sheet}}
-zeigt die wichtigsten LilyPond-Befehle.
-
-@item
-Der
-@emph{@ruser{LilyPond command index}}
-listet alle Befehle auf, die mit @code{\} anfangen.
-
-@item
-Der 
-@emph{@ref{LilyPond index}}
-ist ein vollständiger Index.
-
-@end itemize
-
-
-
-@node About the Application Usage
-@unnumberedsubsec About the Application Usage
-
-@cindex Anwendungsbenutzung
-@cindex Benutzung, lilypond-Programm
-@cindex Integration von LilyPond in andere Programme
-
-In diesem Buch wird erklärt, wie das Programm ausgeführt wird und 
-wie die Notation von LilyPond in andere Programme integriert werden 
-kann.
-
-@itemize @bullet
-
-@item
-@emph{@rprogram{Install}}:
-erklärt wie LilyPond installiert wird (inklusive Kompilation, wenn es 
-nötig sein sollte).
-
-@item
-@emph{@rprogram{Setup}}:
-erklärt wie der Computer eingerichtet wird, damit LilyPond optimal genutzt 
-werden kann. Hierzu gehören etwa spezielle Umgebungen für bestimmte 
-Texteditoren.
-
-@item
-@emph{@rprogram{Running LilyPond}}:
-zeigt, wie LilyPond und seine Hilfsprogramme gestartet werden. Zusätzlich 
-wird hier erklärt, wie Quelldateien von alten LilyPond-Versionen aktualisiert 
-werden können.
-
-@item
-@emph{@rprogram{LilyPond-book}}:
-erklärt die Details, um einen Text mit eingefügten Notenbeispielen (wie 
-etwa dieses Handbuch) zu 
-erstellen.
-
-@item
-@emph{@rprogram{Converting from other formats}}:
-erklärt, wie die Konvertierungsprogramme aufgerufen werden. Diese 
-Programme kommen mit LilyPond zusammen und konvertieren eine Vielzahl 
-von Notensatzformaten in das @code{.ly}-Format.
-
-@end itemize
-
-
-@node About the Snippet List
-@unnumberedsubsec About the Snippet List
-
-@cindex Schnipsel
-@cindex LSR
-@cindex LilyPond Snippet Repository
-@cindex LilyPond-Schnipsel-Depot
-
-Die @rlsrnamed{Top,LilyPond-Schnipsel} sind eine ausführliche Sammlung kurzer 
-Beispiele, anhand derer Tricks, Tipps und Spezialfunktionen von LilyPond
-demonstriert werden. Die meisten dieser Schnipsel können auch im 
- @uref{http://lsr.dsi.unimi.it/,LilyPond-Schnipsel-Depot} betrachtet 
-werden. Diese Internetseite verfügt auch über ein 
-durchsuchbares LilyPond-Handbuch.
-
-Die Liste der Schnipsel zu einem Abschnitt des Benutzerhandbuchs ist auch
-dort jeweils im Abschnitt @strong{Siehe auch} verlinkt.
-
-
-@node About the Internals Reference
-@unnumberedsubsec About the Internals Reference
-
-@cindex Referenz der Interna
-
-Die @rinternalsnamed{Top,Referenz der Interna} ist eine Sammlung intensiv 
-verlinkter HTML-Seiten, die alle Details jeder einzelnen 
-LilyPond-Klasse, jedes Objektes und jeder Funktion erklären. Sie wird 
-direkt aus den Satzdefinitionen im Quellcode produziert.
-
-So gut wie alle Formatierungsmöglichkeiten, die intern verwendet werden, 
-sind auch direkt für den Benutzer zugänglich. Alle Variablen z. B., die
-Dicke-Werte, Entfernungen usw. kontrollieren, können in den Eingabe-Dateien 
-verändert werden. Es gibt eine riesige Anzahl von Formatierungsoptionen, und 
-alle haben einen @qq{Siehe}-Abschnitt, der auf die Dokumentation verweist.
-Im HTML-Handbuch haben diese Abschnitte klickbare Links.
-
-Die Programmreferenz ist nur auf englisch verfügbar.
-
-
-@node Other documentation
-@unnumberedsubsec Other documentation
-
-Es gibt noch eine Reihe weiterer wertvoller Informationsquellen zu LilyPond:
-
-
-@itemize
-
-@item
-@ifhtml
-@ifset bigpage
-@uref{../topdocs/NEWS.html,Neuigkeiten}:
-@end ifset
-@ifclear bigpage
-@uref{../../topdocs/NEWS.html,Neuigkeiten}:
-@end ifclear
-@end ifhtml
-@ifnothtml
-Neuigkeiten:
-@end ifnothtml
-eine Zusammenfassung der Änderungen in LilyPond seit der letzten Version.
-
-@item @uref{http://lists.gnu.org/archive/html/lilypond-user/,Das Archiv 
-der lilypond-user Mailing-Liste}: enthält alle bisher an die Liste
-gesendeten Mails.  Viele Fragen werden immer wieder gestellt und auch
-beantwortet.  Die Chance, dass Ihre Frage auch schon mal aufgetaucht ist,
-ist also relativ groß.  In diesem Fall finden Sie die Antwort in diesem
-Archiv.
-
-@item @uref{http://lists.gnu.org/archive/html/lilypond-devel/,Das Archiv
-der lilypond-devel Mailing-Liste}: enthält alle bisher an die 
-Entwicklerliste gesendeten Mails.  Diese Diskussionen sind dementsprechend
-technisch gehalten.  Wenn Sie eine tiefergehende Frage zu den Interna von 
-LilyPond haben, finden Sie die Antwort vielleicht in diesem Archiv.
-
-@item Eingebettete Musikbeispiele: Auf allen HTML-Seiten mit Notenbeispielen,
-die von LilyPond erzeugt wurden, kann die originale Quelldatei durch einen Klick auf das 
-Bild betrachtet werden.
-
-@item Initialisierungsdateien von LilyPond:
-
-Der Speicherort der Dokumentationsdateien unterscheidet sich evtl. je 
-nach Betriebssystem. Manchmal wird hier auf Initialisierungs- oder 
-Beispieldateien verwiesen. Das Handbuch nimmt dabei an, dass diese 
-Dateien sich relativ zum Quellverzeichnis befinden. Zum Beispiel würde 
-der Pfad @file{input/@/lsr/@/Verzeichnis/@/bla@/.ly} etwa auf die Datei 
-@file{lilypond@/2.x.y/@/input/@/lsr/@/Verzeichnis/@/bla@/.ly} verweisen. In den 
-Binärpaketen für Unix-Plattformen sind Dokumentation und Beispiele 
-üblicherweise in einem Verzeichnis wie @file{/usr/@/share/@/doc/@/lilypond/}
-gespeichert. Initialisierungsdateien, etwa  @file{scm/@/lily@/.scm}
-oder @file{ly/@/engraver@/-init@/.ly}, befinden sich normalerweise im 
-Verzeichnis @file{/usr/@/share/@/lilypond/}.
-
-Weiterführende Informationen finden Sie unter @ref{Other sources of information}.
-
-@end itemize
-