<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <!-- header_tag --> <html lang="es"> <head> <title>La instrucción set - Referencia de la notación de GNU LilyPond</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <meta name="description" content="Referencia de la notación de GNU LilyPond"> <meta name="generator" content="makeinfo 4.11"> <link title="Top" rel="start" href="index.es.html#Top"> <link rel="up" href="Modifying-properties.es.html#Modifying-properties" title="Modificar las propiedades"> <link rel="prev" href="Overview-of-modifying-properties.es.html#Overview-of-modifying-properties" title="Panorámica de la modificación de las propiedades"> <link rel="next" href="The-override-command.es.html#The-override-command" title="La instrucción override"> <link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage"> <!-- Copyright (C) 1999--2007 por los autores _The translation of the following copyright notice is provided for courtesy to non-English speakers, but only the notice in English legally counts._ _La traducción de la siguiente nota de copyright se ofrece como cortesía para las personas de habla no inglesa, pero únicamente la nota en inglés tiene validez legal._ Se otorga permiso para copiar, distribuir y/o modificar este documento bajo los términos de la Licencia de Documentación Libre de GNU, versión 1.1 o cualquier versión posterior publicada por la Free Software Foundation; sin ninguna de las secciones invariantes. Se incluye una copia de esta licencia dentro de la sección titulada ``Licencia de Documentación Libre de GNU''. 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="The-set-command"></a> Siguiente: <a rel="next" accesskey="n" href="The-override-command.es.html#The-override-command">La instrucción override</a>, Anterior: <a rel="previous" accesskey="p" href="Overview-of-modifying-properties.es.html#Overview-of-modifying-properties">Panorámica de la modificación de las propiedades</a>, Arriba: <a rel="up" accesskey="u" href="Modifying-properties.es.html#Modifying-properties">Modificar las propiedades</a> <hr> </div> <h4 class="subsection">5.3.2 The <code>\set</code> command</h4> <p><a name="index-propiedades-1527"></a><a name="index-g_t_005cset-1528"></a><a name="index-g_t_005cset-1529"></a> <a name="index-cambiar-propiedades-1530"></a> Cada contexto puede tener distintas <em>propiedades</em>, variables contenidas dentro de ese contexto. Se pueden cambiar mientras dura el paso de interpretación. Se consigue insertando la instrucción <code>\set</code> dentro de la música: <pre class="example">\set <var>contexto</var>.<var>propiedad</var> = #<var>valor</var> </pre> <p>Por ejemplo: <blockquote> <pre class="verbatim"> R1*2 \set Score.skipBars = ##t R1*2 </pre> <p> <a href="../e9/lily-798ce3d9.ly"> <img align="middle" border="0" src="../e9/lily-798ce3d9.png" alt="[image of music]"> </a> </p> </blockquote> <p>Estas instrucción salta los compases que no tienen notas. El resultado es que los silencios multicompás se condensan. El valor asignado es un objeto de Scheme. En este caso, es <code>#t</code>, el valor booleano True o verdadero. <p>Si se omite el argumento <var>context</var>, entonces se utiliza el contexto actual de nivel más bajo (normalmente <code>ChordNames</code>, <code>Voice</code> o <code>Lyrics</code>). En este ejemplo: <blockquote> <pre class="verbatim"> c8 c c c \set autoBeaming = ##f c8 c c c </pre> <p> <a href="../db/lily-c1dd1c9a.ly"> <img align="middle" border="0" src="../db/lily-c1dd1c9a.png" alt="[image of music]"> </a> </p> </blockquote> <p class="noindent">el argumento <var>contexto</var> de la instrucción <code>\set</code> se omite, así pues el barrado automático se desactiva en la voz actual. Observe que el contexto de nivel más bajo no siempre contiene la propiedad que queremos cambiar (por ejemplo, no tendrá ningún efecto intentar establecer un valor para la propiedad <code>skipBars</code> del contexto de nivel más bajo, en este caso <code>Voice</code>). <blockquote> <pre class="verbatim"> R1*2 \set skipBars = ##t R1*2 </pre> <p> <a href="../e7/lily-6ed882bb.ly"> <img align="middle" border="0" src="../e7/lily-6ed882bb.png" alt="[image of music]"> </a> </p> </blockquote> <p>Los contextos so jerárquicos, y si se ha especificado un contexto mayor, por ejemplo <code>Staff</code>, entonces el cambio se aplicaría también a todos los contextos <code>Voice</code> dentro del pentagrama actual. El cambio se aplica ‘al vuelo’, durante la música, de manera que el ajuste sólo afecta al segundo grupo de corcheas. <p><a name="index-g_t_005cunset-1531"></a><a name="index-g_t_005cunset-1532"></a> <p>También existe una instrucción <code>\unset</code>: <pre class="example">\unset <var>contexto</var>.<var>propiedad</var> </pre> <p class="noindent">que elimina la definición de <var>propiedad</var>. Esta instrucción elimina la definición solamente si está establecida dentro de <var>contexto</var>, de manera que <pre class="example">\set Staff.autoBeaming = ##f </pre> <p class="noindent">introduce un ajuste de la propiedad en el nivel de <code>Staff</code>. El ajuste también se aplica a la <code>Voice</code> actual. Sin embargo: <pre class="example">\unset Voice.autoBeaming </pre> <p class="noindent">no tiene ningúun efecto. Para cancelar este ajuste, se debe especificar el <code>\unset</code> en el mismo nivel que el <code>\set</code> original. Dicho de otra forma, para deshacer el efecto de <code>Staff.autoBeaming = ##f</code> se necesita <pre class="example">\unset Staff.autoBeaming </pre> <p>Como <code>\set</code>, el argumento <var>contexto</var> no se tiene que especificar para un contexto del nivel más bajo, por lo que los dos enunciados <pre class="example">\set Voice.autoBeaming = ##t \set autoBeaming = ##t </pre> <p class="noindent">son equivalentes. <p><a name="index-g_t_005conce-1533"></a>Los ajustes que se aplican solamente a un único paso de tiempo se pueden escribir con <code>\once</code>, por ejemplo en <blockquote> <pre class="verbatim"> c4 \once \set fontSize = #4.7 c4 c4 </pre> <p> <a href="../c9/lily-23b8cd12.ly"> <img align="middle" border="0" src="../c9/lily-23b8cd12.png" alt="[image of music]"> </a> </p> </blockquote> <p>la propiedad <code>fontSize</code> se deshace automáticamente después de la segunda nota. <p>En el manual de Referencia de funcionamiento interno hay una descripción completa de todas las propiedades de contexto disponibles, consulte <a name="index-Tunable-context-properties-1534"></a><a href="../lilypond-internals/Tunable-context-properties.es.html#Tunable-context-properties">Tunable context properties</a>. <!-- footer_tag --><br><hr> <div class="node"> <p> Siguiente: <a rel="next" accesskey="n" href="The-override-command.es.html#The-override-command">La instrucción override</a>, Anterior: <a rel="previous" accesskey="p" href="Overview-of-modifying-properties.es.html#Overview-of-modifying-properties">Panorámica de la modificación de las propiedades</a>, Arriba: <a rel="up" accesskey="u" href="Modifying-properties.es.html#Modifying-properties">Modificar las propiedades</a> </div> <div style="background-color: #e8ffe8; padding: 2; border: #c0ffc0 1px solid;"> <p> <font size="-1"> Esta página corresponde a LilyPond-2.11.57 (rama de desarrollo). <br> <address> Informe de los fallos a través de la lista en español <a href="http://es.groups.yahoo.com/group/lilypond-es/">lilypond-es</a>, o en inglés a través de <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> Se agradecen las <a href="http://lilypond.org/web/devel/participating/documentation-adding">sugerencias para la documentación</a>. </font> </p> </div> <P> Otros idiomas: <a href="The-set-command.html">English</a>, <a href="The-set-command.fr.html">français</a>. <BR> </P> </BODY></html>