Sophie

Sophie

distrib > Mandriva > 2009.0 > i586 > by-pkgid > 3a7b4dfc766af1222d90c7f03a0844e6 > files > 6344

lilypond-doc-2.11.57-1mdv2009.0.i586.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<!-- header_tag -->
<html lang="de">
<head>
<title>Stil-Dateien - 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="Suggestions-for-writing-LilyPond-files.de.html#Suggestions-for-writing-LilyPond-files" title="Vorschläge, wie LilyPond-Dateien geschrieben werden sollen">
<link rel="prev" href="Saving-typing-with-variables-and-functions.de.html#Saving-typing-with-variables-and-functions" title="Tipparbeit sparen durch Bezeichner und Funktionen">
<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="Style-sheets"></a>
voriges:&nbsp;<a rel="previous" accesskey="p" href="Saving-typing-with-variables-and-functions.de.html#Saving-typing-with-variables-and-functions">Tipparbeit sparen durch Bezeichner und Funktionen</a>,
aufw&auml;rts:&nbsp;<a rel="up" accesskey="u" href="Suggestions-for-writing-LilyPond-files.de.html#Suggestions-for-writing-LilyPond-files">Vorschläge, wie LilyPond-Dateien geschrieben werden sollen</a>
<hr>
</div>

<h4 class="subsection">5.1.5 Stil-Dateien</h4>

<p>Die Ausgabe, die LilyPond erstellt, kann sehr stark modifiziert
werden, siehe <a href="Tweaking-output.de.html#Tweaking-output">Die Ausgabe verändern</a> für Einzelheiten. Aber wie
kann man diese Änderungen auf eine ganze Serie von Dateien
anwenden? Oder die Einstellungen von den Noten trennen? Das
Verfahren ist ziemlich einfach.

   <p>Hier ist ein Beispiel. Es ist nicht schlimm, wenn Sie nicht auf
Anhieb die Abschnitte mit den ganzen <code>#()</code> verstehen. Das
wird im Kapitel <a href="Advanced-tweaks-with-Scheme.de.html#Advanced-tweaks-with-Scheme">Fortgeschrittene Optimierungen mit Scheme</a> erklärt.

   <blockquote>
<pre class="verbatim">     
     mpdolce = #(make-dynamic-script (markup #:hspace 1 #:translate (cons 5 0)
       #:line(#:dynamic "mp" #:text #:italic "dolce" )))
     tempoMark = #(define-music-function (parser location markp) (string?)
     #{
       \once \override Score . RehearsalMark #'self-alignment-X = #left
       \once \override Score . RehearsalMark #'extra-spacing-width = #'(+inf.0 . -inf.0)
       \mark \markup { \bold $markp }
     #})
     
     \relative c'' {
       \tempo 4=50
       a4.\mpdolce d8 cis4--\glissando a | b4 bes a2
       \tempoMark "Poco piu mosso"
       cis4.\&lt; d8 e4 fis | g8(\! fis)-. e( d)-. cis2
     }
</pre>
     <p>
 <a href="../15/lily-e5e30e86.ly"> <img align="middle" border="0" src="../15/lily-e5e30e86.png" alt="[image of music]"> </a>
</p>

   </blockquote>

   <p>Es treten einige Probleme mit überlappenden Symbolen auf. Sie
werden beseitigt mit den Tricks aus dem Kapitel <a href="Moving-objects.de.html#Moving-objects">Verschieben von Objekten</a>. 
Aber auch die <code>mpdolce</code> und <code>tempoMark</code>-Definitionen
können verbessert werden. Sie produzieren das Ergebnis, das
gewünscht ist, aber es wäre schön, sie auch in anderen Stücken
verwenden zu können. Man könnte sie natürlich einfach kopieren
und in die anderen Dateien einfügen, aber das ist lästig. Die
Definitionen verbleiben auch in der Notendatei und diese <code>#()</code>
sehen nicht wirklich schön aus. Sie sollen in einer anderen
Datei versteckt werden:

<pre class="example">%%% speichern in einer Datei "definitions.ly"
mpdolce = #(make-dynamic-script (markup #:hspace 1 #:translate (cons 5 0)
  #:line(#:dynamic "mp" #:text #:italic "dolce" )))
tempoMark = #(define-music-function (parser location markp) (string?)
#{
  \once \override Score . RehearsalMark #'self-alignment-X = #left
  \once \override Score . RehearsalMark #'extra-spacing-width = #'(+inf.0 . -inf.0)
  \mark \markup { \bold $markp }
#})
</pre>
   <p>Jetzt muss natürlich noch die Notendatei angepasst werden (gespeichert
unter dem Namen <samp><span class="file">"music.ly"</span></samp>).

<!-- We have to do this awkward example/lilypond-non-verbatim -->
<!-- because we can't do the \include stuff in the manual. -->
<pre class="example">\include "definitions.ly"

\relative c'' {
  \tempo 4=50
  a4.\mpdolce d8 cis4--\glissando a | b4 bes a2
  \once \override Score.RehearsalMark #'padding = #2.0
  \tempoMark "Poco piu mosso"
  cis4.\&lt; d8 e4 fis | g8(\! fis)-. e( d)-. cis2
}
</pre>
   <blockquote>
     <p>
 <a href="../11/lily-5b03168d.ly"> <img align="middle" border="0" src="../11/lily-5b03168d.png" alt="[image of music]"> </a>
</p>

   </blockquote>

   <p>Das sieht schon besser aus, aber es sind noch einige Verbesserungen
möglich. 
Das Glissando ist schwer zu sehen, also soll es etwas dicker erscheinen
und dichter an den Notenköpfen gesetzt werden. Das Metronom-Zeichen
soll über dem Schlüssel erscheinen, nicht über der ersten Note. Und
schließlich kann unser Kompositionsprofessor &bdquo;C&ldquo;-Taktangaben
überhaupt nicht leiden, also
müssen sie in &bdquo;4/4&ldquo; verändert werden.

   <p>Diese Veränderungen sollten Sie aber nicht in der <samp><span class="file">music.ly</span></samp>-Datei
vornehmen. Ersetzen Sie die <samp><span class="file">definitions.ly</span></samp>-Datei hiermit:

<pre class="example">%%%  definitions.ly
mpdolce = #(make-dynamic-script (markup #:hspace 1 #:translate (cons 5 0)
  #:line( #:dynamic "mp" #:text #:italic "dolce" )))
tempoMark = #(define-music-function (parser location markp) (string?)
#{
  \once \override Score . RehearsalMark #'self-alignment-X = #left
  \once \override Score . RehearsalMark #'extra-spacing-width = #'(+inf.0 . -inf.0)
  \mark \markup { \bold $markp }
#})

\layout{
  \context { \Score
    \override MetronomeMark #'extra-offset = #'(-9 . 0)
    \override MetronomeMark #'padding = #'3
  }
  \context { \Staff
    \override TimeSignature #'style = #'numbered
  }
  \context { \Voice
    \override Glissando #'thickness = #3
    \override Glissando #'gap = #0.1
  }
}
</pre>
   <blockquote>
     <p>
 <a href="../f4/lily-44dde205.ly"> <img align="middle" border="0" src="../f4/lily-44dde205.png" alt="[image of music]"> </a>
</p>

   </blockquote>

   <p>Das sieht schon besser aus! Aber angenommen Sie möchten dieses
Stück jetzt veröffentlichen. Ihr Kompositionsprofessor mag
die &bdquo;C&ldquo;-Taktangaben nicht, aber Sie finden sie irgendwie
schöner. Also kopieren Sie die Datei <samp><span class="file">definitions.ly</span></samp> nach
<samp><span class="file">web-publish.ly</span></samp> und verändern diese. Weil die Noten
in einer PDF-Datei auf dem Bildschirm angezeigt werden sollen,
bietet es sich auch an, die gesamte Ausgabe zu vergrößern.

<pre class="example">%%%  definitions.ly
mpdolce = #(make-dynamic-script (markup #:hspace 1 #:translate (cons 5 0)
  #:line( #:dynamic "mp" #:text #:italic "dolce" )))
tempoMark = #(define-music-function (parser location markp) (string?)
#{
  \once \override Score . RehearsalMark #'self-alignment-X = #left
  \once \override Score . RehearsalMark #'extra-spacing-width = #'(+inf.0 . -inf.0)
  \mark \markup { \bold $markp }
#})

#(set-global-staff-size 23)
\layout{
  \context { \Score
    \override MetronomeMark #'extra-offset = #'(-9 . 0)
    \override MetronomeMark #'padding = #'3
  }
  \context { \Staff
  }
  \context { \Voice
    \override Glissando #'thickness = #3
    \override Glissando #'gap = #0.1
  }
}
</pre>
   <blockquote>
     <p>
 <a href="../66/lily-c4610079.ly"> <img align="middle" border="0" src="../66/lily-c4610079.png" alt="[image of music]"> </a>
</p>

   </blockquote>

   <p>In der Notendatei muss jetzt nur noch <code>\include "definitions.ly"</code>
durch <code>\include "web-publish.ly"</code> ausgetauscht werden. 
Das könnte man natürlich noch weiter vereinfachen. Also
eine Datei <samp><span class="file">definitions.ly</span></samp>, die nur die Definitionen
von <code>mpdolce</code> und <code>tempoMark</code> enthält, eine Datei
<samp><span class="file">web-publish.ly</span></samp>, die alle die Änderungen für den
<code>\layout</code>-Abschnitt enthält und eine Datei <samp><span class="file">university.ly</span></samp>
für eine Ausgabe, die den Wünschen des Professors entspricht. 
Der Anfang der <samp><span class="file">music.ly</span></samp>-Datei würde dann so aussehen:

<pre class="example">\include "definitions.ly"

%%%  Nur eine der beiden Zeilen auskommentieren!
\include "web-publish.ly"
%\include "university.ly"
</pre>
   <p>Durch diese Herangehensweise kann auch bei der Erstellung
von nur einer Ausgabeversion Arbeit gespart werden. Ich
benutze ein halbes Dutzend verschiedener Stilvorlagen
für meine Projekte. Jede Notationsdatei fängt an mit
<code>\include "../global.ly"</code>, welches folgenden Inhalt hat:

<pre class="example">%%%   global.ly
\version "2.11.51"
#(ly:set-option 'point-and-click #f)
\include "../init/init-defs.ly"
\include "../init/init-layout.ly"
\include "../init/init-headers.ly"
\include "../init/init-paper.ly"
</pre>
   <!-- footer_tag --><br><hr>
<div class="node">
<p>
voriges:&nbsp;<a rel="previous" accesskey="p" href="Saving-typing-with-variables-and-functions.de.html#Saving-typing-with-variables-and-functions">Tipparbeit sparen durch Bezeichner und Funktionen</a>,
aufw&auml;rts:&nbsp;<a rel="up" accesskey="u" href="Suggestions-for-writing-LilyPond-files.de.html#Suggestions-for-writing-LilyPond-files">Vorschläge, wie LilyPond-Dateien geschrieben werden sollen</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="Style-sheets.html">English</a>, <a href="Style-sheets.fr.html">français</a>, <a href="Style-sheets.es.html">español</a>.
 <BR>
 
</P>
</BODY></html>