3.2.1 LaTeX

LaTeX es el estándar de facto para la publicación en el mundo de las ciencias exactas. Está construido encima del motor de composición tipográfica TeX, proporcionando la tipografía de mejor calidad que existe.

Consulte The Not So Short Introduction to LaTeX (Introducción no tan breve a LaTeX) para ver una panorámica sobre cómo usar LaTeX.

lilypond-book aporta las instrucciones y entornos siguientes para incluir música dentro de archivos de LaTeX:

En el archivo de entrada, se especifica la música con cualquiera de las instrucciones siguientes:

\begin{lilypond}[las,opciones,van,aquí]
  EL CÓDIGO DE LILYPOND
\end{lilypond}

\lilypond[las,opciones,van,aquí]{ EL CÓDIGO DE LILYPOND }

\lilypondfile[las,opciones,van,aquí]{archivo}

\musicxmlfile[las,opciones,van,aquí]{archivo}

De forma adicional, \lilypondversion imprime la versión actual de LilyPond. La ejecución de lilypond-book deja como resultado un archivo que se puede procesar posteriormente con LaTeX.

A continuación mostramos algunos ejemplos. El entorno lilypond

\begin{lilypond}[quote,fragment,staffsize=26]
  c'4 d' e' f' g'2 g'
\end{lilypond}

produce

[image of music]

La versión corta

\lilypond[quote,fragment,staffsize=11]{<c' e' g'>}

produce

[image of music]

El ancho predeterminado de las líneas de música se calcula mediante el examen de las instrucciones del preámbulo del documento (esto es: la parte del documento que está antes de \begin{document}). La instrucción lilypond-book los envía a LaTeX para averiguar la anchura del texto. El ancho de la línea para fragmentos de música se ajusta entonces al ancho del texto. Observe que este algoritmo heurístico puede fácilmente fallar; en estos casos es necesario usar la opción line-width del fragmento de música.

Nota: Asegúrese de que el preámbulo se puede compilar sin errores, pues en caso contrario no funcionará la detección del ancho de línea. Puede probarlo procesando directamente el documento con LaTeX, usando un bloque \begin{document} ... \end{document} vacío.

Si usa un formato apaisado, asegúrse de incluir la palabra clave landscape en la lista de opciones del macro \documentclass.5

Cada fragmento ejecuta los macros siguientes si han sido definidos por el usuario:

Fragmentos de código seleccionados

A veces es útil mostrar elementos de música (como ligaduras) como si continuasen más allá del final del fragmento. Esto se puede hacer dividiendo el pentagrama y suprimiendo la inclusión del resto de la salida de LilyPond.

En LaTeX, defina \betweenLilyPondSystem de tal forma que la la inclusión de otros sistemas se dé por terminada una vez que se ha alcanzado el número deseado de sistemas requeridos. Puesto que \betweenLilyPondSystem se llama en primer lugar después del primer sistema, incluir solamente el primer sistema es algo trivial.

\def\betweenLilyPondSystem#1{\endinput}

\begin{lilypond}[fragment]
  c'1\( e'( c'~ \break c' d) e f\)
\end{lilypond}

Si se necesita un mayor número de sistemas, se tiene que usar un condicional de TeX antes de \endinput. En este ejemplo, sustituya el valor 2 por el número de sistemas que quiere en la salida:

\def\betweenLilyPondSystem#1{
  \ifnum#1<2\else\expandafter\endinput\fi
}

(Dado que \endinput detiene inmediatamente el procesado del archivo de entrada actual, necesitamos \expandafter para posponer la llamada de \endinput después de ejecutar \fi de manera que la cláusula \if ... \fi esté equilibrada.)

Recuerde que la definición de \betweenLilyPondSystem es efectiva hasta que se termina el grupo actual (como el entorno LaTeX) o se sobreescribe por otra definición (lo que casi siempre es por el resto del documento). Para reponer la definición, escriba

\let\betweenLilyPondSystem\undefined

dentro de la fuente de LaTeX.

Se puede simplificar esto definiendo un macro de TeX:

\def\onlyFirstNSystems#1{
  \def\betweenLilyPondSystem##1{%
    \ifnum##1<#1\else\expandafter\endinput\fi}
}

y luego diciendo solamente cuántos sistemas quiere antes de cada fragmento:

\onlyFirstNSystems{3}
\begin{lilypond}…\end{lilypond}
\onlyFirstNSystems{1}
\begin{lilypond}…\end{lilypond}

Véase también

Hay opciones de línea de órdenes específicas de lilypond-book y otros detalles que conocer para procesar documentos deLaTeX véase Invocar lilypond-book.


Footnotes

(5)

Esto es necesario porque lilypond-book añade \usepackage{graphics} al preámbulo si no se cargan los paquetes graphics ni graphicx; esto podría cambiar las dimensiones del papel de forma inesperada para algunas clases de documento.


LilyPond: manual de utilización del programa v2.25.30 (development-branch).