<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <!-- header_tag --> <html lang="de"> <head> <title>Die Darstellung der Musik - GNU LilyPond Handbuch zum Lernen</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <meta name="description" content="GNU LilyPond Handbuch zum Lernen"> <meta name="generator" content="makeinfo 4.11"> <link title="Top" rel="start" href="index.de.html#Top"> <link rel="up" href="Background.de.html#Background" title="Hintergrund"> <link rel="prev" href="What-symbols-to-engrave_003f.de.html#What-symbols-to-engrave_003f" title="Welche Symbole?"> <link rel="next" href="Example-applications.de.html#Example-applications" title="Beispielanwendung"> <link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage"> <!-- Copyright (C) 1999--2007 bei den Autoren _The translation of the following copyright notice is provided for courtesy to non-English speakers, but only the notice in English legally counts._ _Die Übersetzung der folgenden Lizenzanmerkung ist zur Orientierung für Leser, die nicht Englisch sprechen. Im rechtlichen Sinne ist aber nur die englische Version gültig._ Es ist erlaubt, dieses Dokument unter den Bedingungen der GNU Free Documentation Lizenz (Version 1.1 oder spätere, von der Free Software Foundation publizierte Versionen, ohne Invariante Abschnitte), zu kopieren, verbreiten und/oder zu verändern. Eine Kopie der Lizenz ist im Abschnitt ``GNU Free Documentation License'' angefügt. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.1 or any later version published by the Free Software Foundation; with no Invariant Sections. A copy of the license is included in the section entitled ``GNU Free Documentation License''. --> <meta http-equiv="Content-Style-Type" content="text/css"> <style type="text/css"><!-- pre.display { font-family:inherit } pre.format { font-family:inherit } pre.smalldisplay { font-family:inherit; font-size:smaller } pre.smallformat { font-family:inherit; font-size:smaller } pre.smallexample { font-size:smaller } pre.smalllisp { font-size:smaller } span.sc { font-variant:small-caps } span.roman { font-family:serif; font-weight:normal; } span.sansserif { font-family:sans-serif; font-weight:normal; } hr { border:0; height:1; color: #000000; background-color: #000000; } /* hr { border: none; height: 1px; color: #666666; background-color: #666666; } body { border-left: 1px solid #666666; border-right: 1px solid #666666; color: #332d28; margin-right: auto; margin-left: auto; width: 60em; list-style-type: square; font-family: Arial,Helvetica,sans-serif; padding-right: 1em; padding-left: 1em; } a { border-bottom: 1px dashed #344242; text-decoration: none; color: #344242; } a:link { text-decoration: none; } a:visited { border-bottom: 1px dashed #666666; color: #666666; } a:active { border-bottom: 1px solid #00cccc; color: #00cccc; } a:hover { border-bottom: 1px solid #1d7b85; color: #1d7b85; } blockquote { border: 1px solid #cccccc; padding: 3px; width: 40em; } .node { border-left: 1px solid #666666; margin: -0.5em 0px 1em; padding: 2px 1px 0px; font-style: italic; } .node a { border: none; text-decoration: underline; font-style: normal; font-weight: bold; } .verbatim { font-family: "Courier New",Courier,monospace; } .unnumberedsubsubsec { font-size: large; color: #1d7b85; } .subsubheading { font-size: large; color: #3b220d; } .contents { border: 1px dashed #339999; margin: 3px 2em; list-style-type: square; padding-right: 1em; width: 40em; background-color: #fcfff9; } .contents a { border-bottom: 1px dashed #423d34; text-decoration: none; color: #423d34; } .contents a:visited { border-bottom: 1px dashed #666666; color: #666666; } .contents a:active { border-bottom: 1px solid #f0d86d; color: #f0d86d; } .contents a:hover { border-bottom: 1px solid #3b220d; color: #3b220d; } .menu { border-left: 1px dashed #339999; margin: 3px 2em 1em; list-style-type: square; padding-left: 1.4em; width: 40em; } .unnumbered { } h2 { font-size: x-large; color: #1d7b85; } */ --></style> </head> <BODY BGCOLOR=WHITE TEXT=BLACK> <div class="node"> <p> <a name="Music-representation"></a> nächstes: <a rel="next" accesskey="n" href="Example-applications.de.html#Example-applications">Beispielanwendung</a>, voriges: <a rel="previous" accesskey="p" href="What-symbols-to-engrave_003f.de.html#What-symbols-to-engrave_003f">Welche Symbole?</a>, aufwärts: <a rel="up" accesskey="u" href="Background.de.html#Background">Hintergrund</a> <hr> </div> <h4 class="unnumberedsubsec">Die Darstellung der Musik</h4> <p>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. <p>Die Syntax ist gleichzeitig die Benutzerschnittstelle bei LilyPond, darum soll sie einfach zu schreiben sein; z. B. bedeutet <pre class="example"> c'4 d'8 </pre> <p class="noindent">eine Viertel c' und eine Achtel d', wie in diesem Beispiel: <blockquote> <p> <a href="../c8/lily-9e28f9be.ly"> <img align="middle" border="0" src="../c8/lily-9e28f9be.png" alt="[image of music]"> </a> </p> </blockquote> <p>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: <blockquote> <pre class="verbatim"> c4 </pre> <p> <a href="../ed/lily-750e12d6.ly"> <img align="middle" border="0" src="../ed/lily-750e12d6.png" alt="[image of music]"> </a> </p> </blockquote> <p class="noindent">Gleichzeitig erklingende Noten werden hinzugefügt, indem man alle in <code><<</code> und <code>>></code> einschließt. <!-- < > is not a music expression, --> <!-- so we use <<>> iso. <> to drive home the point of --> <!-- expressions. Don't change this back -hwn. --> <pre class="example"><<c4 d4 e4>> </pre> <blockquote> <p> <a href="../eb/lily-4bccd100.ly"> <img align="middle" border="0" src="../eb/lily-4bccd100.png" alt="[image of music]"> </a> </p> </blockquote> <p class="noindent">Um aufeinanderfolgende Noten darzustellen, werden sie in geschweifte Klammern gefasst: <p><code>{ ... }</code> <pre class="example">{ f4 <<c4 d4 e4>> } </pre> <blockquote> <p> <a href="../9f/lily-75801860.ly"> <img align="middle" border="0" src="../9f/lily-75801860.png" alt="[image of music]"> </a> </p> </blockquote> <p class="noindent">Dieses Gebilde ist in sich wieder ein Ausdruck, und kann daher mit einem anderen Ausdruck kombiniert werden (hier mit einer Halben). <pre class="example"><< g2 \\ { f4 <<c4 d4 e4>> } >> </pre> <blockquote> <p> <a href="../e9/lily-b9924f13.ly"> <img align="middle" border="0" src="../e9/lily-b9924f13.png" alt="[image of music]"> </a> </p> </blockquote> <p>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. <p>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: <!-- footer_tag --><br><hr> <div class="node"> <p> nächstes: <a rel="next" accesskey="n" href="Example-applications.de.html#Example-applications">Beispielanwendung</a>, voriges: <a rel="previous" accesskey="p" href="What-symbols-to-engrave_003f.de.html#What-symbols-to-engrave_003f">Welche Symbole?</a>, aufwärts: <a rel="up" accesskey="u" href="Background.de.html#Background">Hintergrund</a> </div> <div style="background-color: #e8ffe8; padding: 2; border: #c0ffc0 1px solid;"> <p> <font size="-1"> Diese Seite ist für LilyPond-2.11.57 (Entwicklungszweig). <br> <address> Fehler bitte an <a href="http://post.gmane.org/post.php?group=gmane.comp.gnu.lilypond.bugs">http://post.gmane.org/post.php?group=gmane.comp.gnu.lilypond.bugs</a> melden. </address> <br> Ihre <a href="http://lilypond.org/web/devel/participating/documentation-adding">Vorschläge für die Dokumentation</a> sind willkommen. </font> </p> </div> <P> Andere Sprachen: <a href="Music-representation.html">English</a>, <a href="Music-representation.fr.html">français</a>, <a href="Music-representation.es.html">español</a>. <BR> </P> </BODY></html>