Sophie

Sophie

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

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

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<!-- header_tag -->
<html lang="en">
<head>
<title>Creating contexts - GNU LilyPond Notation Reference</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="description" content="GNU LilyPond Notation Reference">
<meta name="generator" content="makeinfo 4.11">
<link title="Top" rel="start" href="index.fr.html#Top">
<link rel="up" href="Interpretation-contexts.fr.html#Interpretation-contexts" title="Interpretation contexts">
<link rel="prev" href="Contexts-explained.fr.html#Contexts-explained" title="Contexts explained">
<link rel="next" href="Modifying-context-plug_002dins.fr.html#Modifying-context-plug_002dins" title="Modifying context plug-ins">
<link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage">
<!--
Copyright (C) 1999--2007 by the authors

     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="Creating-contexts"></a>
Next:&nbsp;<a rel="next" accesskey="n" href="Modifying-context-plug_002dins.fr.html#Modifying-context-plug_002dins">Modifying context plug-ins</a>,
Previous:&nbsp;<a rel="previous" accesskey="p" href="Contexts-explained.fr.html#Contexts-explained">Contexts explained</a>,
Up:&nbsp;<a rel="up" accesskey="u" href="Interpretation-contexts.fr.html#Interpretation-contexts">Interpretation contexts</a>
<hr>
</div>

<h4 class="subsection">5.1.2 Creating contexts</h4>

<!-- TODO \new Score and \score -->
<!-- TODO more complete descriptions rather than learning style -->
<p>For scores with only one voice and one staff, contexts are
created automatically.  For more complex scores, it is necessary to
create them by hand.  There are three commands that do this.

     <ul>
<li>The easiest command is <code>\new</code>, and it also the quickest to type. 
It is prepended to a music expression, for example

     <p><a name="index-g_t_005cnew-2622"></a><a name="index-g_t_005cnew-2623"></a>
<a name="index-new-contexts-2624"></a><a name="index-Context_002c-creating-2625"></a>
     <pre class="example">     \new <var>type</var> <var>music expression</var>
</pre>
     <p class="noindent">where <var>type</var> is a context name (like <code>Staff</code> or
<code>Voice</code>).  This command creates a new context, and starts
interpreting the <var>music expression</var> with that.

     <p>A practical application of <code>\new</code> is a score with many
staves.  Each part that should be on its own staff, is preceded with
<code>\new Staff</code>.

     <blockquote>
<pre class="verbatim">          
          &lt;&lt;
            \new Staff { c4 c }
            \new Staff { d4 d }
          >>
     </pre>
          <p>
 <a href="../72/lily-1903cc0a.ly">
  <img align="middle"
    border="0" src="../72/lily-1903cc0a.png" alt="[image of music]">
 </a>
</p>

     </blockquote>

     <p>The <code>\new</code> command may also give a name to the context,

     <pre class="example">     \new <var>type</var> = <var>id</var> <var>music</var>
</pre>
     <p>However, this user specified name is only used if there is no other
context already earlier with the same name.

     <p><a name="index-g_t_005ccontext-2626"></a><a name="index-g_t_005ccontext-2627"></a>

     <li>Like <code>\new</code>, the <code>\context</code> command also directs a music
expression to a context object, but gives the context an explicit name.  The
syntax is

     <pre class="example">     \context <var>type</var> = <var>id</var> <var>music</var>
</pre>
     <p>This form will search for an existing context of type <var>type</var>
called <var>id</var>.  If that context does not exist yet, a new
context with the specified name is created.  This is useful if
the context is referred to later on.  For example, when
setting lyrics the melody is in a named context

     <pre class="example">     \context Voice = "<b>tenor</b>" <var>music</var>
</pre>
     <p class="noindent">so the texts can be properly aligned to its notes,

     <pre class="example">     \new Lyrics \lyricsto "<b>tenor</b>" <var>lyrics</var>
</pre>
     <p class="noindent">Another possible use of named contexts is funneling two different
music expressions into one context.  In the following example,
articulations and notes are entered separately,

     <pre class="example">     music = { c4 c4 }
     arts = { s4-. s4-&gt; }
</pre>
     <p>They are combined by sending both to the same <code>Voice</code> context,

     <pre class="example">     &lt;&lt;
       \new Staff \context Voice = "A" \music
       \context Voice = "A" \arts
     &gt;&gt;
</pre>
     <blockquote>
          <p>
 <a href="../78/lily-6553c982.ly">
  <img align="middle"
    border="0" src="../78/lily-6553c982.png" alt="[image of music]">
 </a>
</p>

     </blockquote>

     <p>With this mechanism, it is possible to define an Urtext (original
edition), with the option to put several distinct articulations on the
same notes.

     <p><a name="index-creating-contexts-2628"></a>
<li>The third command for creating contexts is
     <pre class="example">     \context <var>type</var> <var>music</var>
</pre>
     <p class="noindent">This is similar to <code>\context</code> with <code>= </code><var>id</var>, but matches
any context of type <var>type</var>, regardless of its given name.

     <p>This variant is used with music expressions that can be interpreted at
several levels.  For example, the <code>\applyOutput</code> command (see
<a href="Running-a-function-on-all-layout-objects.fr.html#Running-a-function-on-all-layout-objects">Running a function on all layout objects</a>).  Without an explicit
<code>\context</code>, it is usually applied to <code>Voice</code>

     <pre class="example">     \applyOutput #'<var>context</var> #<var>function</var>   % apply to Voice
</pre>
     <p>To have it interpreted at the <code>Score</code> or <code>Staff</code> level use
these forms

     <pre class="example">     \applyOutput #'Score #<var>function</var>
     \applyOutput #'Staff #<var>function</var>
</pre>
     </ul>

   <!-- footer_tag --><br><hr>
<div class="node">
<p>
Next:&nbsp;<a rel="next" accesskey="n" href="Modifying-context-plug_002dins.fr.html#Modifying-context-plug_002dins">Modifying context plug-ins</a>,
Previous:&nbsp;<a rel="previous" accesskey="p" href="Contexts-explained.fr.html#Contexts-explained">Contexts explained</a>,
Up:&nbsp;<a rel="up" accesskey="u" href="Interpretation-contexts.fr.html#Interpretation-contexts">Interpretation contexts</a>
</div>

<div style="background-color: #e8ffe8; padding: 2; border: #c0ffc0 1px solid;">
<p>
<font size="-1">
Cette page documente LilyPond-2.11.57 (branche de développement).
<br>
<address>
Rapportez toute anomalie en français à <a href="mailto:lilypond-user-fr@gnu.org">lilypond-user-fr@gnu.org</a> ou en anglais à <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> </address>
<br>
Vos <a href="http://lilypond.org/web/devel/participating/documentation-adding">suggestions à propos de la documentation</a> sont les bienvenues.
</font>
</p>
</div>


<P>
 Autres langues&nbsp;: <a href="Creating-contexts.es.html">español</a>.
 <BR>
 
</P>
</BODY></html>