1 @c -*- coding: utf-8; mode: texinfo; documentlanguage: es -*-
4 Translation of GIT committish: 2055f35c47a045a50a01ff4dba8524322cfc3b48
6 When revising a translation, copy the HEAD committish of the
7 version that you are working on. For details, see the Contributors'
8 Guide, node Updating translation committishes..
13 @c Note: keep this node named so that `info lilypond-book' brings you here.
15 @chapter Ejecución de @command{lilypond-book}
16 @translationof lilypond-book
18 Si quiere añadir imágenes de música a un documento, puede hacerlo
19 simplemente de la forma en que lo haría con otros tipos de imágenes.
20 Las imágenes se crean por separado, dando como resultado una salida
21 PostScript o imágenes PNG, y luego se incluyen en un documento de
24 @command{lilypond-book} ofrece una manera de automatizar este proceso:
25 este programa extrae los fragmentos de música del documento, ejecuta
26 @command{lilypond} sobre cada uno de ellos, y devuelve como salida el
27 documento con la música sustituida por las imágenes. Las definiciones
28 de ancho de línea y tamaño de letra de la música se ajustan de forma
29 que coincidan con los ajustes de su documento.
31 Es un programa distinto a @command{lilypond} propiamente dicho, y se
32 ejecuta sobre la línea de órdenes; para ver más información, consulte
33 @ref{Utilización desde la línea de órdenes}. Si tiene MacOS 10.3 o
34 10.4 y experimenta algún problema al ejecutar @code{lilypond-book},
35 consulte @rweb{MacOS X}.
37 Este procedimiento se puede aplicar a documentos de @LaTeX{}, HTML,
46 @cindex documentos, insertar música en
47 @cindex HTML, música dentro de
48 @cindex Texinfo, música dentro de
49 @cindex DocBook, música dentro de
50 @cindex @LaTeX{}, música dentro de
53 * Un ejemplo de documento musicológico::
54 * Integrar música y texto::
55 * Opciones de fragmentos de música::
56 * Invocar lilypond-book::
57 * Extensiones de nombres de archivo::
58 * Plantillas de lilypond-book::
59 * Compartir el índice general::
60 * Métodos alternativos para mezclar texto y música::
64 @node Un ejemplo de documento musicológico
65 @section Un ejemplo de documento musicológico
66 @translationof An example of a musicological document
69 Ciertos textos contienen ejemplos musicales. Son tratados musicales,
70 cancioneros o manuales como este mismo. Estos textos se pueden hacer
71 a mano, importando simplemente una imagen en formato PostScript en el
72 editor de textos. Sin embargo, hay un procedimiento automático para
73 reducir la carga de trabajo que esto implica los documentos de HTML,
74 @LaTeX{}, Texinfo y DocBook.
76 Un guión ejecutable llamado @code{lilypond-book} extrae los fragmentos
77 de música, les da formato y vuelve a poner en su lugar la partitura
78 resultante. A continuación presentamos un pequeño ejemplo de su
79 utilización con @LaTeX{}. El ejemplo contiene también texto
80 explicativo, por lo que no vamos a comentarlo posteriormente.
86 \documentclass[a4paper]{article}
90 Los documentos para \verb+lilypond-book+ pueden mezclar libremente
91 música y texto. Por ejemplo:
95 c2 e2 \times 2/3 { f8 a b } a2 e4
99 Las opciones se escriben entre corchetes.
101 \begin{lilypond}[fragment,quote,staffsize=26,verbatim]
105 Los ejemplos grandes se pueden grabar en archivos separados e
106 introducirse con \verb+\lilypondfile+.
108 \lilypondfile[quote,noindent]{screech-boink.ly}
110 (Si es necesario, sustituya @file{screech-boink.ly}
111 por cualquier archivo @file{.ly}
112 situado en el mismo directorio que este archivo.)
118 @subheading Procesado
120 Guarde el código anterior como un archivo llamado
121 @file{lilybook.lytex}, y luego ejecute en un terminal:
123 @c keep space after @version{} so TeX doesn't choke
125 lilypond-book --output=out --pdf lilybook.lytex
126 @emph{lilypond-book (GNU LilyPond) @version{} }
127 @emph{Leyendo lilybook.lytex...}
128 @emph{..montañas de mensajes suprimidos..}
129 @emph{Compilando lilybook.tex...}
132 @emph{..montañas de mensajes suprimidos..}
134 @emph{(sustituya @command{xpdf} por su visor de PDF favorito)}
137 La ejecución de @command{lilypond-book} y @command{latex} crea un gran
138 número de archivos temporales, que podrían abarrotar el directorio de
139 trabajo. Para poner remedio a esto utilice la opción
140 @code{--output=@var{directorio}}. Creará los archivos en un
141 subdirectorio aparte @file{directorio}.
143 Finalmente el resultado del ejemplo de @LaTeX{} que acabamos de
144 mostrar@footnote{Este tutorial se procesa con Texinfo, por lo que el
145 ejemplo presenta un resultado en la disposición ligeramente
146 distinto.}. Así acaba la sección del tutorial.
152 Los documentos para @command{lilypond-book} pueden mezclar libremente
153 música y texto. Por ejemplo:
157 c2 e2 \times 2/3 { f8 a b } a2 e4
161 Las opciones se escriben entre corchetes.
163 @lilypond[fragment,quote,staffsize=26,verbatim]
167 Los ejemplos grandes se pueden grabar en archivos separados e
168 introducirse con @code{\lilypondfile}.
170 @lilypondfile[quote,noindent]{screech-boink.ly}
172 Si se requiere un campo @code{tagline}, ya sea predeterminado o
173 personalizado, entonces el fragmento completo se debe incluir dentro
174 de una construcción @code{\book @{ @}}.
177 @lilypond[papersize=a8,verbatim]
180 title = "Una escala en LilyPond"
191 @node Integrar música y texto
192 @section Integrar música y texto
193 @translationof Integrating music and text
195 Aquí vamos a explicar cómo integrar LilyPond con algunos otros
209 @LaTeX{} es el estándar de facto para la publicación en el mundo de
210 las ciencias exactas. Está construido encima del motor de composición
211 tipográfica @TeX{}, proporcionando la tipografía de mejor calidad que
215 @uref{http://@/www@/.ctan@/.org/@/tex@/-archive/@/info/@/lshort/@/english/,
216 @emph{The Not So Short Introduction to @LaTeX{}}} (Introducción no tan
217 breve a @LaTeX{}) para ver una panorámica sobre cómo usar @LaTeX{}.
219 La música se introduce usando
222 \begin@{lilypond@}[las,opciones,van,aquí]
223 EL CÓDIGO DE LILYPOND
231 \lilypondfile[las,opciones,van,aquí]@{@var{archivo}@}
238 \lilypond[las,opciones,van,aquí]@{ EL CÓDIGO DE LILYPOND @}
241 De forma adicional, @code{\lilypondversion} imprime la versión actual
244 La ejecución de @command{lilypond-book} deja como resultado un archivo
245 que se puede procesar posteriormente con @LaTeX{}.
247 A continuación mostramos algunos ejemplos. El entorno @code{lilypond}
250 \begin@{lilypond@}[quote,fragment,staffsize=26]
258 @lilypond[quote,fragment,staffsize=26]
265 \lilypond[quote,fragment,staffsize=11]@{<c' e' g'>@}
271 @lilypond[quote,fragment,staffsize=11]{<c' e' g'>}
274 Por el momento no es posible incluir llaves @code{@{} o @code{@}}
275 dentro de @code{\lilypond@{@}}, así que esta instrucción solamente es
276 útil con la opción @code{fragment}.
278 El ancho predeterminado de las líneas de música se ajusta mediante el
279 examen de las instrucciones del preámbulo del documento, la parte del
280 documento que está antes de @code{\begin@{document@}}. La instrucción
281 @command{lilypond-book} los envía a @LaTeX{} para averiguar la anchura
282 del texto. El ancho de la línea para los fragmentos de música se
283 ajusta entonces al ancho del texto. Observe que este algoritmo
284 heurístico puede fácilmente fallar; en estos casos es necesario usar
285 la opción @code{line-width} del fragmento de música.
287 @cindex títulos y lilypond-book
288 @cindex \header dentro de documentos @LaTeX{}
290 Cada fragmento ejecutará los macros siguientes si han sido definidos
294 @item @code{\preLilyPondExample} que se llama antes de la música,
296 @item @code{\postLilyPondExample} que se llama después de la música,
298 @item @code{\betweenLilyPondSystem[1]} se llama entre los sistemas si
299 @code{lilypond-book} ha dividido el fragmento en varios archivos
300 PostScript. Se debe definir de forma que tome un parámetro y recibirá
301 el número de archivos ya incluidos dentro del fragmento actual. La
302 acción predeterminada es simplemente insertar un @code{\linebreak}.
308 @cindex Latex, feta symbols
311 To include feta symbols (such as flat, segno, etc) in a LaTeX
312 document, use @code{\input@{titledefs@}}
315 \documentclass[a4paper]@{article@}
326 The font symbol names are defined in the file feta20.tex; to find
327 the location of this file, use the command
337 A veces es útil mostrar elementos de música (como ligaduras) como si
338 continuasen más allá del final del fragmento. Esto se puede hacer
339 dividiendo el pentagrama y suprimiendo la inclusión del resto de la
342 En @LaTeX{}, defina @code{\betweenLilyPondSystem} de tal forma que la
343 la inclusión de otros sistemas se dé por terminada una vez que se ha
344 alcanzado el número deseado de sistemas requeridos. Puesto que
345 @code{\betweenLilyPondSystem} se llama en primer lugar @emph{después}
346 del primer sistema, incluir solamente el primer sistema es algo
350 \def\betweenLilyPondSystem#1@{\endinput@}
352 \begin[fragment]@{lilypond@}
353 c'1\( e'( c'~ \break c' d) e f\)
357 Si se necesita un mayor número de sistemas, se tiene que usar un
358 condicional de @TeX{} antes del @code{\endinput}. En este ejemplo,
359 sustituya el @q{2} por el número de sistemas que quiere en la salida:
362 \def\betweenLilyPondSystem#1@{
363 \ifnum#1<2\else\expandafter\endinput\fi
368 (Dado que @code{\endinput} detiene inmediatamente el procesado del
369 archivo de entrada actual, necesitamos @code{\expandafter} para
370 posponer la llamada de @code{\endinput} después de ejecutar
371 @code{\fi} de manera que la cláusula @code{\if}-@code{\fi} esté
374 Recuerde que la definición de @code{\betweenLilyPondSystem} es
375 efectiva hasta que @TeX{} abandona el grupo actual (como el entorno
376 @LaTeX{}) o se sobreescribe por otra definición (lo que casi siempre
377 es por el resto del documento). Para reponer la definición, escriba
380 \let\betweenLilyPondSystem\undefined
384 dentro de la fuente de @LaTeX{}.
386 Se puede simplificar esto definiendo un macro de @TeX{}:
389 \def\onlyFirstNSystems#1@{
390 \def\betweenLilyPondSystem##1@{\ifnum##1<#1\else\endinput\fi@}
395 y luego diciendo solamente cuántos sistemas quiere antes de cada
399 \onlyFirstNSystems@{3@}
400 \begin@{lilypond@}...\end@{lilypond@}
401 \onlyFirstNSystems@{1@}
402 \begin@{lilypond@}...\end@{lilypond@}
407 Hay opciones de línea de órdenes específicas de
408 @command{lilypond-book} y otros detalles que conocer para procesar
409 documentos de@LaTeX{} véase @ref{Invocar lilypond-book}.
414 @translationof Texinfo
416 Texinfo es el formato estándar para la documentación del proyecto GNU.
417 Este mismo manual es un ejemplo de documento Texinfo. Las versiones
418 HTML, PDF e Info del manual se hacen a partir del documento Texinfo.
421 En el archivo de entrada, la música se especifica con
424 @@lilypond[las,opciones,van,aquí]
425 EL CÓDIGO DE LILYPOND
433 @@lilypond[las,opciones,van,aquí]@{ EL CÓDIGO DE LILYPOND @}
440 @@lilypondfile[las,opciones,van,aquí]@{@var{archivo}@}
443 De forma adicional, @code{@@lilypondversion} imprime la versión actual
446 Cuando se ejecuta @command{lilypond-book} sobre el archivo, se obtiene
447 como resultado un archivo Texinfo (con la extensión @file{.texi}) que
448 contiene etiquetas @code{@@image} para el HTML, Info y la salida
449 impresa. @command{lilypond-book} genera imágenes de la música en
450 formatos EPS y PDF para usarlos en la salida impresa, y en formato PNG
451 para usarlos en las salidas HTML e Info.
453 Aquí podemos ver dos ejemplos sencillos. Un entorno @code{lilypond}
471 @@lilypond[fragment,staffsize=11]@{<c' e' g'>@}
477 @lilypond[fragment,staffsize=11]{<c' e' g'>}
479 No como @LaTeX{}, @code{@@lilypond@{...@}} no genera una imagen en
480 línea. Siempre consiste en un párrafo para ella sola.
487 La música se introduce usando
490 <lilypond fragment relative=2>
491 \key c \minor c4 es g2
496 @command{lilypond-book} entonces produce un archivo HTML con las
497 etiquetas de imagen adecuadas para los fragmentos de música:
499 @lilypond[fragment,relative=2]
500 \key c \minor c4 es g2
503 Para imágenes en línea, utilice @code{<lilypond ... />}, donde las
504 opciones están separadas de la música por el símbolo de dos puntos,
508 Algo de música dentro de <lilypond relative=2: a b c/> una línea de texto.
511 Para incluir archivos externos, escriba
514 <lilypondfile @var{opción1} @var{opción2} ...>@var{archivo}</lilypondfile>
517 Para ver una lista de las opciones que utilizar con las etiquetas
518 @code{lilypond} o @code{lilypondfile}, véase
519 @ref{Opciones de fragmentos de música}.
521 De forma adicional, @code{<lilypondversion/>} imprime la versión
524 @cindex títulos en HTML
525 @cindex vista previa, imagen
530 @translationof DocBook
532 Para insertad fragmentos de LilyPond es bueno tratar de mantener la
533 conformidad del documento de DocBook, permitiendo así el uso de
534 editores de DocBook, validación, etc. Así pues, no usamos etiquetas
535 personalizadas, sólo especificamos una convención basada en los
536 elementos estándar de DocBook.
538 @subheading Convenciones usuales
540 Para insertar toda clase de fragmentos utilizamos los elementos
541 @code{mediaobject} y @code{inlinemediaobject}, de forma que nuestros
542 fragmentos puedan ser formateados en línea o no en línea. Las
543 opciones de formateo del fragmento se escriben siempre dentro de la
544 propiedad @code{role} del elemento más interno (véanse las secciones
545 siguientes). Las etiquetas se eligen de forma que permitan a los
546 editores de DocBook formatear el contenido satisfactoriamente. Los
547 archivos de DocBook que se van a procesar con @command{lilypond-book}
548 deben tener la extensión @file{.lyxml}.
550 @subheading Incluir un archivo de LilyPond
552 Este es el caso más sencillo. Debemos usar la extensión @file{.ly}
553 para el archivo incluido, e insertarlo como un @code{imageobject}
554 estándar, con la estructura siguiente:
559 <imagedata fileref="music1.ly" role="printfilename" />
564 Observe que puede usar mediaobject o inlinemediaobject como el
565 elemento más externo, a elección suya.
567 @subheading Incluir código de LilyPond
569 Se puede incluir código de LilyPond mediante la utilización de un
570 elemento @code{programlisting}, en que el lenguaje se establece como
571 @code{lilypond} con la estructura siguiente:
576 <programlisting language="lilypond" role="fragment verbatim staffsize=16 ragged-right relative=2">
577 \context Staff \with @{
578 \remove Time_signature_engraver
579 \remove Clef_engraver@}
586 Como puede ver, el elemento más externo es un @code{mediaobject} o un
587 @code{inlinemediaobject}, y hay un elemento @code{textobject} que
588 lleva el @code{programlisting} en su interior.
590 @subheading Procesar el documento de DocBook
592 Al ejecutar @command{lilypond-book} sobre el archivo @file{.lyxml} se
593 creará un documento de DocBook válido que se puede procesar
594 posteriormente con la extensión @file{.xml}. Si usa
595 @uref{http://@/dblatex@/.sourceforge@/.net@/,dblatex}, creará un
596 archivo PDF a partir de este documento automáticamente. Para la
597 generación de HTML (HTML Help, JavaHelp, etc.) puede usar las hojas de
598 estilo oficiales XSL de DocBook, aunque es posible que tenga que
599 aplicarles algún tipo de personalización.
602 @node Opciones de fragmentos de música
603 @section Opciones de fragmentos de música
604 @translationof Music fragment options
606 Durante los próximos párrafos, una @q{instrucción de LilyPond} se
607 refiere a cualquier instrucción descrita en las secciones anteriores
608 que se maneja por parte de @command{lilypond-book} para que produzca
609 un fragmento de música. Por simplicidad, las instrucciones de
610 LilyPond solamente se muestran en la sintaxis de @LaTeX{}.
612 Observe que la cadena de opciones se analiza de izquierda a derecha;
613 si una opción aparece varias veces, se toma la última solamente.
615 Están disponibles las siguientes opciones para las instrucciones de
619 @item staffsize=@var{altura}
620 Establecer la altura del pentagrama como @var{altura}, medida en
624 Producir líneas no justificadas por la derecha y con espaciado
625 natural, es decir, se añade @code{ragged-right = ##t} al fragmento de
626 LilyPond. Esta es la opción predeterminada para la instrucción
627 @code{\lilypond@{@}} si no está presente la opción @code{line-width}.
628 También es la opción predeterminada para el entorno @code{lilypond} si
629 está establecida la opción @code{fragment}, y no se especifica la
630 anchura de la línea explícitamente.
633 Para fragmentos de una sola línea, permitir que la longitud del
634 pentagrama se amplíe hasta igualar la anchura de la línea, es decir,
635 se añade @code{ragged-right = ##f} al fragmento de LilyPond.
638 @itemx line-width=@var{tamaño}\@var{unidades}
639 Establecer el ancho de línea como @var{tamaño}, utilizando
640 @var{unidades} como unidad. @var{unidades} es una de las siguientes
641 cadenas: @code{cm}, @code{mm}, @code{in} o @code{pt}. Esta opción
642 afecta a la salida de LilyPond (esto es, a la longitud del pentagrama
643 del fragmento musical), no al formato del texto.
645 Si se usa sin ningún argumento, se establece el ancho de la línea a un
646 valor predeterminado (calculado con un algoritmo heurístico).
648 Si no se da ninguna opción @code{line-width}, @command{lilypond-book}
649 trata de adivinar un valor predeterminado para los entornos
650 @code{lilypond} que no usan la opción @code{ragged-right}.
652 @item papersize=@var{cadena}
653 Donde @var{cadena} es un tamaño del papel definido en el archivo
654 @file{scm/paper.scm}, es decir, @code{a5}, @code{quarto},
657 Los valores no definidos en el archivo @file{scm/paper.scm} se
658 ignoran, se emite una advertencia y el fragmento se imprime utilizando
659 el tamaño predeterminado @code{a4}.
662 No imprimir la indicación de compás, y desactivar las indicaciones
663 temporales de la música (indicación del compás y líneas divisorias).
666 Hacer que @command{lilypond-book} añada algunos códigos necesarios
667 para que podamos escribir simplemente, por ejemplo,
674 sin @code{\layout}, @code{\score}, etc.
677 No incluir el código adicional que completa la sintaxis de
678 LilyPond en los fragmentos de música. Al ser la opción
679 predeterminada, @code{nofragment} normalmente es redundante.
681 @item indent=@var{tamaño}\@var{unidades}
682 Establecer el sangrado del primer sistema de pentagramas como
683 @var{tamaño}, utilizando @var{unidades} como unidad. @var{unidades} es
684 una de las siguientes cadenas: @code{cm}, @code{mm}, @code{in} o
685 @code{pt}. Esta opción afecta a LilyPond, no al formato del texto.
688 Establecer el sangrado del primer sistema de la música como cero.
689 Esta opción afecta a LilyPond, no al formato del texto. Puesto que el
690 valor predeterminado es que no haya ningún sangrado, @code{noindent}
691 normalmente es redundante.
694 Reducir la longitud de la línea de un fragmento musical en
695 @math{2*0.4}@dmn{in} (pulgadas) y colocar la salida dentro de un
696 bloque de cita (quotation). El valor de @q{0.4@dmn{in}} se puede
697 controlar con la opción @code{exampleindent}.
700 Establecer la longitud del sangrado que la opción @code{quote} aplica
701 al fragmento musical.
704 @itemx relative=@var{n}
705 Usar el modo de octava relativa. De forma predeterminada, las notas
706 se especifican con relación al Do@tie{}central. El argumento entero
707 opcional especifica la octava de la nota inicial, donde el valor
708 predeterminado @code{1} es el Do central. La opción @code{relative}
709 sólo funciona cuando está establecida la opción @code{fragment}, de
710 manera que @code{fragment} viene implicada automáticamente por
711 @code{relative}, independientemente de la presencia de @code{fragment}
712 o de @code{nofragment} en la fuente.
716 LilyPond utiliza también @command{lilypond-book} para producir su
717 propia documentación. Para hacerlo, están a nuestra disposición
718 ciertas opciones algo esotéricas para los fragmentos musicales.
722 El argumento de una instrucción de LilyPond se copia al archivo de
723 salida y se incluye dentro de un bloque «verbatim» o preformateado,
724 seguido del texto que se escriba con la opción @code{intertext} (que
725 no funciona aún); después se imprime la música en sí. Esta opción no
726 funciona bien con @code{\lilypond@{@}} si forma parte de un párrafo.
728 Si se usa la opción @code{verbatim} dentro de una instrucción
729 @code{lilypondfile}, es posible incluir con estilo preformateado sólo
730 una parte del archivo fuente. Si el archivo de código fuente contiene
731 un comentario que contiene @samp{begin verbatim} (sin las comillas),
732 la cita del bloque de estilo preformateado empezará después de la
733 última vez que aparezca este comentario; de forma similar, la cita del
734 bloque preformateado se detendrá justo antes de la primera vez que
735 aparezca un comentario que contenga @samp{end verbatim}, si lo hay.
736 En el siguiente ejemplo de código fuente, la música se interpreta en
737 el modo relativo, pero la cita preformateada no presentará el bloque
738 @code{relative}, es decir
741 \relative c' @{ % begin verbatim
748 se imprimirá como un bloque preformateado como
756 Si queremos traducir los comentarios y los nombres de variable en la
757 salida literal pero no en el código fuente, podemos establecer el
758 valor de la variable de entorno @code{LYDOC_LOCALEDIR} a la ruta de un
759 directorio; este directorio debe contener un árbol de catálogos de
760 mensajes @file{.mo} con @code{lilypond-doc} como dominio.
763 (Sólo para la salida de Texinfo.) Anteponer la línea @code{\version
764 @@w@{"@@version@{@}"@}} a la salida de @code{verbatim}.
767 (Sólo para la salida de Texinfo.) Si se llama a @command{lilypond}
768 con la opción @option{--header=@/texidoc}, y el archivo que se procesa
769 se llama @file{fulanito.ly}, crea un archivo
770 @file{fulanito.texidoc} si existe un campo @code{texidoc} dentro del
771 bloque @code{\header} de cabecera. La opción @code{texidoc} hace que
772 @command{lilypond-book} incluya estos archivos, añadiendo su contenido
773 como un bloque de documentación inmediatamente antes del fragmento
776 Suponiendo que el archivo @file{fulanito.ly} contiene
780 texidoc = "Este archivo es un ejemplo de una sola nota."
786 y que tenemos lo siguiente en nuestro documento de Texinfo
787 @file{prueba.texinfo}
790 @@lilypondfile[texidoc]@{fulanito.ly@}
794 la siguiente orden da como salida el resultado esperado:
797 lilypond-book --pdf --process="lilypond \
798 -dbackend=eps --header=texidoc" test.texinfo
801 La mayoría de los documentos de prueba de LilyPond (en el directorio
802 @file{input} de la distribución) son pequeños archivos @file{.ly} que
803 tienen exactamente este aspecto.
805 Por motivos de localización de idioma, si el documento de Texinfo
806 contiene @code{@@documentlanguage @var{LANG}} y la cabecera de
807 @file{loquesea.ly} contiene un campo @code{texidoc@var{LANG}}, y
808 @command{lilypond} se ejecuta con
809 @option{--header=@/texidoc@var{LANG}}, entonces se incluirá
810 @file{loquesea.texidoc@var{LANG}} en lugar de
811 @file{loquesea.texidoc}.
814 (Sólo para la salida de Texinfo.) Esta opción funciona de forma
815 parecida a la opción @code{texidoc}: si @command{lilypond} se llama
816 con la opción @option{--header=@/doctitle}, y el archivo que procesar
817 se llama @file{loquesea.ly} y contiene un campo @code{doctitle} en
818 el bloque @code{\header}, crea un archivo @file{loquesea.doctitle}.
819 Cuando se usa la opción @code{doctitle}, el contenido de
820 @file{loquesea.doctitle}, que debería ser una línea única de
821 @var{texto}, se inserta en el documento de Texinfo como
822 @code{@@lydoctitle @var{texto}}. @code{@@lydoctitle} debe ser un
823 macro definido en el documento de Texinfo. La misma indicación
824 referida al procesado de @code{texidoc} con idiomas localizados se
825 aplica a @code{doctitle}.
828 (Sólo para la salida de Texinfo.) No traducir los comentarios y
829 nombres de variable en el fragmento de código literal citado.
832 Si un archivo de entrada de LilyPond se incluye con
833 @code{\lilypondfile}, imprimir el nombre del archivo inmediatamente
834 antes del fragmento musical. Para la salida HTML, esto es un enlace.
835 Sólo se imprime el nombre base del archivo, es decir, se elimina la
836 parte del directorio de la ruta del archivo.
841 @node Invocar lilypond-book
842 @section Invocar @command{lilypond-book}
843 @translationof Invoking lilypond-book
845 @command{lilypond-book} produce un archivo con una de las siguientes
846 extensiones: @file{.tex}, @file{.texi}, @file{.html} o @file{.xml},
847 dependiendo del formato de salida. Todos los archivos @file{.tex},
848 @file{.texi} y @file{.xml} necesitan un procesado posterior.
850 @subheading Instrucciones específicas de formato
852 @subsubheading @LaTeX{}
854 Hay dos formas de procesar el documento en @LaTeX{} para su impresión
855 o publicación: hacer un archivo PDF directamente con PDF@LaTeX{}, o
856 generar un archivo PostScript con @LaTeX{} a través de un traductor de
857 DVI a PostScript como @command{dvips}. la primera forma es más
858 sencilla y es la que se recomienda@footnote{Observe que PDF@LaTeX{} y
859 @LaTeX{} podrían no ser utilizables para compilar cualquier documento
860 @LaTeX{}, y es por lo que explicamos las dos formas.}, y cualquiera
861 que sea el método que utilice, podrá convertir fácilmente entre
862 PostScript y PDF con herramientas como @command{ps2pdf} y
863 @command{pdf2ps} que vienen incluidas con GhostScript.
865 Para producir un archivo PDF por medio de PDF@LaTeX{}, utilice
868 lilypond-book --pdf miarchivo.pdftex
869 pdflatex miarchivo.tex
872 @cindex tipografías de outline
873 @cindex type1, tipografías
875 @cindex invocación de dvips
877 Para producir una salida PDF por medio de
878 @LaTeX{}/@command{dvips}/@command{ps2pdf}, debe hacer
881 lilypond-book miarchivo.lytex
883 dvips -Ppdf miarchivo.dvi
888 El archivo @file{.dvi} creado por este proceso no contiene las cabezas
889 de las notas. Esto es normal; si sigue las instrucciones, las cabezas
890 aparecerán en los archivos @file{.ps} y @file{.pdf}.
892 La ejecución de @command{dvips} puede dar como resultado algunas
893 advertencias sobre las fuentes tipográficas; son inocuas y se pueden
894 ignorar. Si está ejecutando @command{latex} en modo de dos columnas,
895 recuerde añadir @code{-t landscape} a las opciones de @command{dvips}.
897 @subsubheading Texinfo
899 Para producir un documento de Texinfo (en cualquier formato de
900 salida), siga el procedimiento normal para Texinfo, esto es: o bien
901 llame a @command{texi2pdf} o a @command{texi2dvi} o a
902 @command{makeinfo}, según el formato de la salida que quiera crear.
904 @xref{Format with texi2dvi, , , texinfo, GNU Texinfo}, y @ref{Creating
905 an Info File, , , texinfo, GNU Texinfo}.
908 Consulte la documentación de Texinfo para ver más detalles.
912 @subheading Opciones de la línea de órdenes
914 @command{lilypond-book} acepta las siguientes opciones de la línea de
918 @item -f @var{formato}
919 @itemx --format=@var{formato}
920 Especificar el tipo del documento que se va a procesar: @code{html},
921 @code{latex}, @code{texi} (predeterminado) o @code{docbook}. Si falta
922 esta opción, @command{lilypond-book} tratará de detectar el formato
923 automáticamente, véase @ref{Extensiones de nombres de archivo}. Por el
924 momento, @code{texi} es lo mismo que @code{texi-html}.
926 @c This complicated detail is not implemented, comment it out -jm
928 The @code{texi} document type produces a Texinfo file with music
929 fragments in the printed output only. For getting images in the HTML
930 version, the format @code{texi-html} must be used instead.
933 @item -F @var{filtro}
934 @itemx --filter=@var{filtro}
935 Conducir los fragmentos a través de @var{filter} por medio de una
936 tubería. @code{lilypond-book} no obedecerá --filter y --process al
937 mismo tiempo. Por ejemplo,
940 lilypond-book --filter='convert-ly --from=2.0.0 -' mi-libro.tely
945 Imprimir un breve mensaje de ayuda.
947 @item -I @var{directorio}
948 @itemx --include=@var{directorio}
949 Añadir @var{directorio} a la ruta de inclusión.
950 @command{lilypond-book} busca también los fragmentos ya compilados en
951 la ruta de inclusión, y no los vuelve a escribir en el directorio de
952 salida, así que en ciertos casos es necesario invocar instrucciones de
953 procesado posteriores como @command{makeinfo} o @command{latex} con
954 las mismas opciones @code{-I @var{directorio}}.
956 @item -o @var{directorio}
957 @itemx --output=@var{directorio}
958 Colocar los archivos generados en el @var{directorio}. La ejecución
959 de @command{lilypond-book} genera montañas de pequeños archivos que
960 luego procesará LilyPond. Para evitar toda esta parafernalia en el
961 mismo directorio que la fuente, utilice la opción @option{--output}, y
962 cambie a este directorio antes de ejecutar @command{latex} o
966 lilypond-book --output=out miarchivo.lytex
971 @itemx --skip-lily-check
972 Evitar el fracaso si no se encuentra ninguna salida de lilypond. Se
973 usa para la documentación de LilyPond en formato Info sin imágenes.
975 @itemx --skip-png-check
976 Evitar el fracaso si no se encuentran las imágenes PNG de los archivos
977 EPS. Se usa para la documentación de LilyPond en formato Info sin
980 @itemx --lily-output-dir=@var{directorio}
981 Escribir archivos lily-XXX en el directorio @var{directorio}, enlazar
982 en el directorio de @code{--output}. Use esta opción para ahorrar
983 tiempo de construcción para documentos de distintos directorios que
984 comparten muchos fragmentos idénticos de código.
986 @itemx --info-images-dir=@var{directorio}
987 Dar formato a la salida de Texinfo de manera que Info busque las
988 imágenes de música en @var{directorio}.
990 @itemx --latex-program=@var{prog}
991 Ejecutar el programa @command{prog} en vez de @command{latex}. Esto
992 es útil si nuestro documento se procesa con @command{xelatex}, por
995 @itemx --left-padding=@var{cantidad}
996 Rellenar las cajas EPS en esta medida, alrededor. @var{cantidad} se
997 mide en milímetros, y es 3.0 como valor predeterminado. Esta opción
998 se debe usar si las líneas de música están muy pegadas al margen
1001 El ancho de un sistema que está muy ajustado dentro de su rectángulo
1002 puede variar, debido a los elementos de notación que están pegados al
1003 margen izquierdo, como los números de compás y el nombre del
1004 instrumento. Esta opción acorta todas las líneas y las mueve a la
1005 derecha en la misma medida.
1008 @item -P @var{instrucción}
1009 @itemx --process=@var{instrucción}
1010 Procesar los fragmentos de LilyPond utilizando @var{instrucción}. La
1011 instrucción predeterminada es @code{lilypond}. @code{lilypond-book}
1012 no obedecerá a @code{--filter} y a @code{--process} al mismo tiempo.
1015 Crear archivos PDF para su uso con PDF@LaTeX{}.
1017 @itemx --use-source-file-names
1018 Escribir los archivos de salida de los fragmentos de música con el
1019 mismo nombre de base que su archivo fuente. Esta opción sólo funciona
1020 para fragmentos incluidos con @code{lilypondfile} y sólo si los
1021 directorios determinados por las opciones @code{--output-dir} y
1022 @code{--lily-output-dir} son distintos.
1030 Imprimir la información de la versión.
1035 La instrucción de Texinfo @code{@@pagesizes} no se interpreta. De
1036 forma similar, las instrucciones de @LaTeX{} que cambian los márgenes
1037 y anchos de línea después del preámbulo se ignoran.
1039 Sólo se procesa el primer @code{\score} de un bloque LilyPond.
1042 @node Extensiones de nombres de archivo
1043 @section Extensiones de nombres de archivo
1044 @translationof Filename extensions
1046 Puede usar cualquier extensión para el nombre del archivo de entrada,
1047 pero si no usa la extensión recomendada para un formato en particular
1048 tendrá que especificar manualmente el formato de salida; para ver más
1049 detalles, consulte @ref{Invocar lilypond-book}. En caso contrario,
1050 @command{lilypond-book} selecciona automáticamente el formato de
1051 salida basándose en la extensión del nombre del archivo de entrada.
1054 @multitable @columnfractions .2 .5
1055 @item @strong{extensión} @tab @strong{formato de salida}
1057 @item @file{.html} @tab HTML
1058 @item @file{.htmly} @tab HTML
1059 @item @file{.itely} @tab Texinfo
1060 @item @file{.latex} @tab @LaTeX{}
1061 @item @file{.lytex} @tab @LaTeX{}
1062 @item @file{.lyxml} @tab DocBook
1063 @item @file{.tely} @tab Texinfo
1064 @item @file{.tex} @tab @LaTeX{}
1065 @item @file{.texi} @tab Texinfo
1066 @item @file{.texinfo} @tab Texinfo
1067 @item @file{.xml} @tab HTML
1071 Si usa la misma extensión para el archivo de entrada que la que usa
1072 @command{lilypond-book} para el archivo de salida, y si el archivo de
1073 entrada está en el mismo directorio que el directorio de trabajo de
1074 @command{lilypond-book}, debe usar la opción @code{--output} para que
1075 funcione @command{lilypond-book}, pues en caso contrario saldrá con un
1076 mensaje de error como @qq{La salida sobreescribirá al archivo de
1079 @node Plantillas de lilypond-book
1080 @section Plantillas de lilypond-book
1081 @translationof lilypond-book templates
1083 Estas plantillas se usan para @code{lilypond-book}. Si no está
1084 familiarizado con este programa, consulte @rprogram{LilyPond-book}.
1088 Podemos insertar fragmentos de LilyPond dentro de un documento de
1092 \documentclass[]@{article@}
1096 Texto normal en LaTeX.
1104 Más texto en LaTeX, y las opciones dentro de los corchetes.
1106 \begin@{lilypond@}[fragment,relative=2,quote,staffsize=26,verbatim]
1114 Podemos insertar fragmentos de LilyPond dentro de Texinfo; de hecho,
1115 todo el presente manual está escrito en Texinfo.
1118 \input texinfo @c -*-texinfo-*-
1130 Más texto en Texinfo, y las opciones dentro de los corchetes.
1132 @@lilypond[verbatim,fragment,ragged-right]
1143 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
1149 Los documentos para lilypond-book pueden mezclar música y texto libremente. Por
1156 Otro poco de lilypond, esta vez con opciones:
1158 <lilypond fragment quote staffsize=26 verbatim>
1172 \documentclass{article}
1173 \usepackage{ifxetex}
1175 %xetex specific stuff
1176 \usepackage{xunicode,fontspec,xltxtra}
1177 \setmainfont[Numbers=OldStyle]{Times New Roman}
1180 %Esto se puede dejar vacío si no vamos a utilizar pdftex
1181 \usepackage[T1]{fontenc}
1182 \usepackage[utf8]{inputenc}
1183 \usepackage{mathptmx}%Times
1184 \usepackage{helvet}%Helvetica
1186 %Aquí insertamos todos los paquetes que pdftex también entiende
1187 \usepackage[ngerman,finnish,english]{babel}
1188 \usepackage{graphicx}
1191 \title{Un documento breve con LilyPond y xelatex}
1194 Las instrucciones \textbf{font} normales dentro del \emph{texto}
1195 funcionan, porque \textsf{están contempladas por \LaTeX{} y XeteX.}
1196 Si queremos usar instrucciones específicas como \verb+\XeTeX+, debemos
1197 incluirlas de nuevo dentro de un entorno \verb+\ifxetex+. Podemos
1198 utilizar esto para imprimir la instrucción \ifxetex \XeTeX{} \else
1199 XeTeX \fi que no es conocida para el \LaTeX\ normal.
1201 Dentro del texto normal podemos utilizar instrucciones de LilyPond
1202 fácilmente, de esta forma:
1209 y así sucesivamente.
1211 La fuente tipográfica de los fragmentos, establecida con LilyPond,
1212 tendrá que establecerse desde dentro del fragmento. Para esto puede
1213 leer la parte de lilypond-book en el manual de utilización.
1215 \selectlanguage{ngerman}
1216 Auch Umlaute funktionieren ohne die \LaTeX -Befehle, wie auch alle
1218 seltsamen Zeichen: __ ______, wenn sie von der Schriftart
1219 unterst__tzt werden.
1224 @node Compartir el índice general
1225 @section Compartir el índice general
1226 @translationof Sharing the table of contents
1228 Estas funciones ya existen en el paquete OrchestralLily:
1231 @url{http://repo.or.cz/w/orchestrallily.git}
1234 Para conseguir más flexibilidad en el manejo del texto, algunos
1235 usuarios prefieren exportar la el índice general o tabla de contenidos
1236 desde lilypond y leerla dentro de @LaTeX{}.
1238 @subsubheading Exportación del índice general desde LilyPond
1240 Esto supone que nuestra partitura tiene varios movimientos dentor del
1241 mismo archivo de salida de lilypond.
1244 #(define (oly:create-toc-file layout pages)
1245 (let* ((label-table (ly:output-def-lookup layout 'label-page-table)))
1246 (if (not (null? label-table))
1247 (let* ((format-line (lambda (toc-item)
1248 (let* ((label (car toc-item))
1249 (text (caddr toc-item))
1250 (label-page (and (list? label-table)
1251 (assoc label label-table)))
1252 (page (and label-page (cdr label-page))))
1253 (format #f "~a, section, 1, @{~a@}, ~a" page text label))))
1254 (formatted-toc-items (map format-line (toc-items)))
1255 (whole-string (string-join formatted-toc-items ",\n"))
1256 (output-name (ly:parser-output-name parser))
1257 (outfilename (format "~a.toc" output-name))
1258 (outfile (open-output-file outfilename)))
1259 (if (output-port? outfile)
1260 (display whole-string outfile)
1261 (ly:warning (_ "Unable to open output file ~a for the TOC information") outfilename))
1262 (close-output-port outfile)))))
1265 #(define (page-post-process layout pages) (oly:create-toc-file layout pages))
1269 @subsubheading Importación del índice general dentro de LaTeX
1271 En LaTeX, la cabecera debe incluir lo siguiente:
1273 @c no, this doesn't require the smallexample, but since the other
1274 @c two blocks on this page use it, I figured I might as well
1275 @c user it here as well, for consistency. -gp
1277 \usepackage@{pdfpages@}
1278 \includescore@{nombredelapartitura@}
1282 donde @code{\includescore} está definido como:
1285 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1286 % \includescore@{PossibleExtension@}
1287 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1289 % Leer las entradas del índice general para un archivo PDF
1290 % a partir del archivo .toc correspondeiente.
1291 % Esto requiere bastantes trucos de latex, porque leer cosas de un archivo
1292 % e insertarlo dentro de los argumentos de un macro no es posible
1295 % Solución de Patrick Fimml en el canal #latex el 18 de abril de 2009:
1296 % \readfile@{filename@}@{\variable@}
1297 % lee el contenido del archivo en \variable (no definida si el
1298 % archivo no existe)
1299 \newread\readfile@@f
1300 \def\readfile@@line#1@{%
1301 @{\catcode`\^^M=10\global\read\readfile@@f to \readfile@@tmp@}%
1302 \edef\do@{\noexpand\g@@addto@@macro@{\noexpand#1@}@{\readfile@@tmp@}@}\do%
1303 \ifeof\readfile@@f\else%
1304 \readfile@@line@{#1@}%
1307 \def\readfile#1#2@{%
1308 \openin\readfile@@f=#1 %
1310 \typeout@{No TOC file #1 available!@}%
1313 \readfile@@line@{#2@}%
1315 \closein\readfile@@f%
1319 \newcommand@{\includescore@}[1]@{
1320 \def\oly@@fname@{\oly@@basename\@@ifmtarg@{#1@}@{@}@{_#1@}@}
1321 \let\oly@@addtotoc\undefined
1322 \readfile@{\oly@@xxxxxxxxx@}@{\oly@@addtotoc@}
1323 \ifx\oly@@addtotoc\undefined
1324 \includepdf[pages=-]@{\oly@@fname@}
1326 \edef\includeit@{\noexpand\includepdf[pages=-,addtotoc=@{\oly@@addtotoc@}]
1327 @{\oly@@fname@}@}\includeit
1333 @node Métodos alternativos para mezclar texto y música
1334 @section Métodos alternativos para mezclar texto y música
1335 @translationof Alternate methods of mixing text and music
1337 Otras formas de mezclar texto y música (sin @command{lilypond-book})
1338 se estudian en @ref{Insertar la salida de LilyPond dentro de otros programas}.