@c -*- coding: utf-8; mode: texinfo; documentlanguage: es -*-
@c This file is part of lilypond.tely
@ignore
- Translation of GIT committish: 9318dde7b34435a3fdb2e1a7e0ddcf0f86e936ae
+ Translation of GIT committish: 46e1b0a15ecf324b3272645224f3a2b3068dce73
When revising a translation, copy the HEAD committish of the
version that you are working on. See TRANSLATION for details.
@end itemize
+@cindex espacios en blanco
+
+Por lo general se ignoran los espacios entre elementos del flujo de
+entrada, y se pueden omitir o aumentar tranquilamente para mejorar la
+legibilidad. Sin embargo, los espacios se deben utilizar siempre para
+evitar errores, en las siguientes situaciones:
+
+@itemize
+@item Alrededor de todas y cada una de las llaves curvas de apertura y cierre.
+@item A continuación de las instrucciones y variables, es decir, todos los elementos
+que comienzan con un signo @code{\} de barra invertida.
+@item A continuación de todo elemento que se deba interpretar como expresión
+de Scheme, es decir, todo elemento que comience por un signo @code{#}.
+@item Para separar los elementode de una expresión de Scheme.
+@item Dentro de @code{lyricmode} para separar todos los términos de las instrucciones
+@code{\override} y @code{\set}. Concretamente, hay que usar espacios
+alrededor del punto y el signo igual en instrucciones como
+@code{\override Score . LyricText #'font-size = #5} y antes y después
+de la instrucción completa.
+
+@end itemize
@seealso
Manual de aprendizaje:
@c -*- coding: utf-8; mode: texinfo; documentlanguage: es -*-
@c This file is part of lilypond-program.tely
@ignore
- Translation of GIT committish: 3a8b7fa74c14101cb93d75e541f5afdb18f09239
+ Translation of GIT committish: 46e1b0a15ecf324b3272645224f3a2b3068dce73
When revising a translation, copy the HEAD committish of the
version that you are working on. See TRANSLATION for details.
convert-ly -e miarchivo.ly
@end example
+@noindent
+Con esto se actualiza @code{miarchivo.ly} @emph{in situ} y se preserva
+el archivo original @code{miarchivo.ly~}.
+
+De forma alternativa, si queremos especificar un nombre distinto para
+el archivo actualizado, preservando el archivo original con el mismo
+nombre, haga
+
+@example
+convert-ly miarchivo.ly > minuevoarchivo.ly
+@end example
+
+El programa imprimirá una relación de los números de versión para los
+que se han hecho conversiones. Si no se imprime ningún número de
+versión, el archivo ya está actualizado.
+
@noindent
Los usuarios de MacOS@tie{}X pueden ejecutar esta instrucción bajo el
menú @code{Compilar > Actualizar sintaxis}.
-Si no hay cambios en miarchivo.ly y se crea el archivo llamado
-miarchivo.ly.NEW, entonces miarchivo.ly ya está actualizado.
+Los usuarios de Windows deben introducir esta instrucción en una
+ventana del terminal del sistema, que se encuentra por lo general bajo
+@code{Inicio > Accesorios > Símbolo del sistema}.
@menu
* Command line options for convert-ly::
aparece en el archivo convertido suele ser más bajo que la versión del
propio programa @command{convert-ly}.
-Para actualizar fragmentos de LilyPond en archivos de texinfo, use
-
-@example
-convert-ly --from=... --to=... --no-version *.itely
-@end example
-
-Para ver los cambios en la sintaxis de LilyPond entre dos versiones,
-use
-
-@example
-convert-ly --from=... --to=... -s
-@end example
-
-Para actualizar muchos archivos de una vez, combine @code{convert-ly}
-con las instrucciones estándar de UNIX. Este ejemplo actualiza todos
-los archivos @code{.ly} del directorio actual:
-
-@example
-for f in *.ly; do convert-ly -e $f; done;
-@end example
-
En general, el programa se invoca de la manera siguiente:
@example
@table @code
@item -e,--edit
-Hace una edición en línea del archivo de entrada. Sobreescribe a
-@code{--output}.
+Aplicar las conversiones directamente al archivo de entrada,
+modificándolo in situ.
@item -f,--from=@var{versión_de_origen}
Establece la versión desde la que convertir. Si no aparece esta
opción, @command{convert-ly} tratará de adivinarla, basándose en el
-enunciado @code{\version} del archivo.
+enunciado @code{\version} del archivo. Ejemplo: @code{--from=2.10.25}
@item -n,--no-version
Normalmente @command{convert-ly} añade un indicador @code{\version} a
Imprimir la ayuda de la utilización.
@end table
+Para actualizar fragmentos de LilyPond en archivos de texinfo, use
+
+@example
+convert-ly --from=... --to=... --no-version *.itely
+@end example
+
+Para ver los cambios en la sintaxis de LilyPond entre dos versiones
+dadas, use
+
+@example
+convert-ly --from=... --to=... -s
+@end example
+
+Para actualizar muchos archivos de una sola vez, combine
+@code{convert-ly} con las instrucciones estándar de UNIX. Este
+ejemplo actualiza todos los archivos @code{.ly} del directorio actual:
+
+@example
+for f in *.ly; do convert-ly -e $f; done;
+@end example
+
@node Problems with convert-ly
@subsection Problems with @code{convert-ly}
+Al ejecutar convert-ly en una ventana del Símbolo del Sistema bajo
+Windows sobre un archivo que tiene espacios en el nombre o en la ruta,
+es necesario encerrar todo el nombre con tres (!) pares de comillas:
+
+@example
+convert-ly """D:/Mis partituras/Oda.ly""" > """D:/Mis partituras/nueva Oda.ly"""
+@end example
+
No se manejan todos los cambios en el lenguaje. Sólo se puede
especificar una opción de salida. La actualización automática de
Scheme y los interfaces Scheme de LilyPond es bastante improbable;
@c -*- coding: utf-8; mode: texinfo; documentlanguage: es -*-
@c This file is part of lilypond-learning.tely
@ignore
- Translation of GIT committish: 0f35c951dfcd648c512d29848350ff7df3dc5853
+ Translation of GIT committish: 46e1b0a15ecf324b3272645224f3a2b3068dce73
When revising a translation, copy the HEAD committish of the
version that you are working on. See TRANSLATION for details.
quiere saber más sobre Scheme, consulte
@uref{http://@/www@/.schemers@/.org}.
-Lo más básico de un lenguaje son los datos: números, cadenas de
-caracteres, listas, etc. He aquí una lista de los tipos de datos que
-son de relevancia respecto de la entrada de LilyPond.
+LilyPond utiliza la implementación GNU Guile de Scheme, que está
+basada en el estándar @qq{R5RS} del lenguaje. Si está aprendiendo
+Scheme para usarlo con LilyPond, no se recomienda trabajar con una
+implementación distinta (o que se refiera a un estándar diferente).
+Hay información sobre Guile en
+@uref{http://www.gnu.org/software/guile/}. El estándar de Scheme
+@qq{R5RS} se encuentra en
+@uref{http://www.schemers.org/Documents/Standards/R5RS/}.
+
+La instalación de LilyPond inclute también la de la implementación
+Guile de Scheme. Sobre casi todos los sistemas puede experimentar en
+una @qq{caja de arena} de Scheme abriendo una ventana del terminal y
+tecleando @q{guile}. En algunos sistemas, sobre todo en Windows,
+podría necesitar ajustar la variable de entorno @code{GUILE_LOAD_PATH}
+a la carpeta @code{../usr/shr/guile/1.8} dentro de la instalación de
+LilyPond (para conocer la ruta completa a esta carpeta, consulte
+@ref{Other sources of information}). Como alternativa, los usuarios
+de Windows pueden seleccionar simplemente @q{Ejecutar} del menú Inicio
+e introducir @q{guile}.
+
+El concepto más básico de un lenguaje son sus tipos de datos: números,
+cadenas de caracteres, listas, etc. He aquí una lista de los tipos de
+datos que son de relevancia respecto de la entrada de LilyPond.
@table @asis
@item Booleanos
una cadena"
@end example
+Observe que los comentarios de LilyPond (@code{%} y @code{%@{ %@}}) no
+se puedden utilizar dentro del código de Scheme. Los comentarios en
+el Scheme de Guile se introducen como sigue:
+
+@example
+; esto es un comentario de una línea
+
+#!
+ Esto es un comentario de bloque (no anidable) estilo Guile
+ Pero se usan rara vez por parte de los Schemers y nunca dentro del
+ código fuente de LilyPond
+!#
+@end example
+
+Se pueden combinar en un mismo archivo de música varias expresiones de
+Scheme consecutivas mediante la utilización del operador @code{begin}.
+Ello permite que el número de marcas de cuadradillo se redizca a una.
+
+@example
+#(begin
+ (define fulanito 0)
+ (define menganito 1))
+@end example
+
+Si el @code{#} va seguido de un paréntesis de apertura, @code{(}, como
+en el ejemplo anterior, el analizador sintáctico permanece dentro del
+modo de Scheme hasta que encuentra el paréntesis de cierre
+correspondiente, @code{)}, por lo que no son necesarios más símbolos
+de @code{#} para introducir una sección de Scheme.
+
Durante el resto de esta sección, supondremos que los datos se
introducen en un archivo de música, por lo que añadiremos almohadillas
@code{#} en todas partes.
@c -*- coding: utf-8; mode: texinfo; documentlanguage: es -*-
@c This file is part of lilypond.tely
@ignore
- Translation of GIT committish: d4f58bb3ad4e7fe1967a6b48f25e3addffc8aa14
+ Translation of GIT committish: 46e1b0a15ecf324b3272645224f3a2b3068dce73
When revising a translation, copy the HEAD committish of the
version that you are working on. See TRANSLATION for details.
@code{stencil} al valor @code{#f} produce errores cuando las se
requieren las dimensiones del objeto para un procesamiento correcto.
Por ejemplo, se generan errores si la propiedad @code{stencil} del
-objeto @code{NoteHead} se establece al valor @code{#f}.
+objeto @code{NoteHead} se establece al valor @code{#f}. Si es el
+caso, podemos en vez de ello utilizar la función @code{point-stencil},
+que establece el sello a un objeto con tamaño nulo:
+
+@lilypond[quote,verbatim,relative=2]
+{
+ c c
+ \once \override NoteHead #'stencil = #point-stencil
+ c c
+}
+@end lilypond
@subheading break-visibility