@c -*- coding: utf-8; mode: texinfo; documentlanguage: es -*-
@ignore
    Translation of GIT committish: 663181a3779d50a01212ef3091a03a7b9a714308

    When revising a translation, copy the HEAD committish of the
    version that you are working on.  For details, see the Contributors'
    Guide, node Updating translation committishes..
@end ignore

@c \version "2.21.0"

@node Texto
@section Texto
@translationof Text

@lilypondfile[quote]{snippets/text-headword.ly}

Esta sección explica cómo incluir texto (con diversos estilos de
formateo) en las partituras.

@menu
* Escritura del texto::
* Formatear el texto::
* Tipografías::
@end menu

@node Escritura del texto
@subsection Escritura del texto
@translationof Writing text

Esta sección presenta las distintas formas de añadir texto a una
partitura.

@cindex texto, en otros idiomas
@warning{Para escribir texto con caracteres acentuados y
especiales (como los de idiomas distintos del inglés),
sencillamente inserte los caracteres directamente en el archivo de
LilyPond.  El archivo se debe guardar como UTF-8.  Para ver más
información, consulte @ref{Codificación del texto}.}


@menu
* Panorámica de los objetos de texto::
* Guiones de texto::
* Extensiones de texto::
* Indicaciones de texto::
* Texto separado::
@end menu


@node Panorámica de los objetos de texto
@unnumberedsubsubsec Panorámica de los objetos de texto
@translationof Text objects overview

@funindex \markup
@cindex texto, objeto
@cindex marcado, objeto
@cindex objecto, marcado

Los objetos de texto se introducen ya sea como simples cadenas
entrecomilladas, o como bloques de @code{\markup} que pueden
aceptar una variedad de posibilidades avanzadas de formato y
gráficas, como se detalla en la sección @ref{Formatear el texto}.

Así, los bloques de marcado se pueden utilizar:
@itemize
@item
dentro de cualquier objeto del tipo @code{TextScript} (aplicado a
una nota con @code{-}, @code{^} o@tie{}@code{_}); véase
@ref{Guiones de texto};

@item
como @q{spanners} u objetos extensos, cuando ciertas indicaciones
se prolongan sobre varios pulsos o compases.
Véase @ref{Extensiones de texto};

@item
dentro de cualquier marca impresa por encima de los pentagramas,
tales como obletos @code{RehearsalMark} (letras de ensayo) o
@code{MetronomeMark} (indicaciones de tempo) introducidos
respectivamente con las palabras clave @code{\mark} y
@code{\tempo}; véase @ref{Indicaciones de texto};

@item
como bloques de marcado autosuficientes, que se introducen en el
nivel jerárquico superior fuera de cualquier bloque @code{\score}
(en este caso es obligatoria la instrucción
@code{\markup@tie{}@{...@}}, y no se puede omitir en favor de una
simple cadena de texto entrecomillada); véase @ref{Texto separado};

@item
en cualquier definición dentro del bloque @code{\header} (como
@code{title}, @code{subtitle}, @code{composer}), o en elementos
específicos definidos dentro del bloque @code{\paper} tales como
@code{evenHeaderMarkup} para los números de página.  Esto se
explica en la sección @ref{Títulos y encabezamientos}.
@end itemize

Muchos otros objetos basados en texto se pueden escribir como
bloques de marcado, incluso cuando este no sea su uso principal.
@itemize
@item
Las digitaciones se pueden sustituir fácilmente con bloques de
marcado, si se escriben con la instrucción @code{\finger}; véase
@ref{Indicaciones de digitación}.

@item
Las sílabas de la letra de una cación se pueden formatear por
medio de la instrucción @code{\markup}; véase @ref{Notación común
para música vocal}.

@item
Los nombres de acordes están, de hecho, definidos como bloques de
marcado, y por tanto se pueden redefinir de la misma forma para
personalizar los modificadores o las excepciones de acorde; véase
@ref{Imprimir los acordes}.

@item
Los matices dinámicos se escriben habitualmente de una forma
sencilla; sin embargo, es posible definir
@ref{Indicaciones dinámicas nuevas} como objetos de marcado.
Ciertas dinámicas como @emph{crescendo} se imprimen como objetos
extensos y se pueden redefinir a través de propiedades como
@code{crescendoText}; véase @ref{Matices dinámicos}.

@item
Otros objetos menos frecuentes también están hechos con bloques de
marcado, como las indicaciones del tipo @ref{Globos de ayuda}.
@end itemize

De hecho es posible usar la instrucción @code{\markup} para
personalizar la apariencia de prácticamente cualquier objeto
gráfico (o @q{grob}), bien sea sobreescribiendo su propiedad
@code{text}, si la tiene, o bien su propiedad @code{stencil}.  Una
parte de la lógica que hace posible todo esto, está explicada en
@ressay{Arquitectura flexible}.

El ejemplo que aparece a continuación ilustra la omnipresencia de
los bloques de marcado, no solo como algunos de los objetos
relacionados más arriba, sino también en sustitución de objetos
musicales por objetos de texto a través de distintos métodos.

@lilypond[quote, verbatim,line-width=4\in]
\header { title = \markup "Header" }

dyn =
#(make-dynamic-script #{ \markup \text "DynamicText" #})

\markup \box "Top-level markup"

\score {
  <<
    \new ChordNames
    \with {
      majorSevenSymbol = \markup "majorSevenSymbol"
    }
    \chordmode { c1:maj7 }
    \new Staff {
      \tempo \markup "MetronomeMark"
      \mark \markup \smaller "RehearsalMark"
      \once \override TupletNumber.text =
        \markup "TupletNumber"
      \tuplet 3/2 {
        \once \override NoteHead.stencil =
          #ly:text-interface::print
        \once \override NoteHead.text =
          \markup \lower #0.5 "NoteHead"
        c''8^\markup \italic "TextScript"
        a'\finger \markup \text "Fingering"
        \once \override Rest.stencil =
          #(lambda (grob)
             (grob-interpret-markup grob #{
               \markup  "Rest"
               #}))
        r
      }
    }
    \new Lyrics \lyricmode {
      \markup \smallCaps "LyricText" 1
    }
    \new Dynamics { s1\dyn }
  >>
}
@end lilypond

@morerefs
Referencia de la notación:
@ref{Formatear el texto},
@ref{Guiones de texto},
@ref{Extensiones de texto},
@ref{Indicaciones de texto},
@ref{Texto separado},
@ref{Indicaciones de digitación},
@ref{Notación común para música vocal},
@ref{Imprimir los acordes},
@ref{Indicaciones dinámicas nuevas},
@ref{Matices dinámicos},
@ref{Globos de ayuda}.

Ensayo sobre grabado musical automatizado:
@ressay{Arquitectura flexible}.

Fragmentos de código:
@rlsr{Text}.


@node Guiones de texto
@unnumberedsubsubsec Guiones de texto
@translationof Text scripts

@cindex texto, inscripciones de
@cindex texto, elementos no vacíos de
@cindex no vacíos, textos
@cindex texto destacado

Es posible añadir indicaciones de @qq{texto entre comillas} a una
partitura, como se muestra en el ejemplo siguiente.  Estas
indicaciones se pueden colocar manualmente por encima o por debajo
del pentagrama, utilizando la sintaxis que se describe en
@ref{Dirección y posición}.

@lilypond[quote,verbatim]
\relative { a'8^"pizz." g f e a4-"scherz." f }
@end lilypond

Esta sintaxis es en realidad una abreviatura; se puede añadir
explícitamente a una nota un formateado de texto más complejo
utilizando un bloque @code{\markup}, como se describe bajo
@ref{Formatear el texto}.

@lilypond[quote,verbatim]
\relative {
  a'8^\markup { \italic pizz. } g f e
  a4_\markup { \tiny scherz. \bold molto } f }
@end lilypond

De forma predeterminada, las indicaciones de texto no afectan al
espaciado de las notas.  Sin embargo, su anchura sí podría tenerse
en cuenta: en el siguiente ejemplo, la primera cadena de texto no
afecta al espaciado, pero la segunda sí afecta.

@lilypond[quote,verbatim]
\relative {
  a'8^"pizz." g f e
  \textLengthOn
  a4_"scherzando" f
}
@end lilypond

Se pueden adjuntar articulaciones a las notas, además de
inscripciones de texto.  Para ver más información, consulte
@ref{Articulaciones y ornamentos}.

Para ver más información sobre el orden relativo de las
inscripciones de texto y las articulaciones, consulte
@rlearning{Colocación de los objetos}.

@funindex \textLengthOn
@funindex \textLengthOff

@predefined
@code{\textLengthOn},
@code{\textLengthOff}.
@endpredefined

@morerefs
Manual de aprendizaje:
@rlearning{Colocación de los objetos}.

Referencia de la notación:
@ref{Formatear el texto},
@ref{Dirección y posición},
@ref{Articulaciones y ornamentos}.

Fragmentos de código:
@rlsr{Text}.

Referencia de funcionamiento interno:
@rinternals{TextScript}.


@cindex texto, fuera del margen
@cindex margen, texto fuera del
@cindex texto, mantener dentro del margen
@cindex letra, mantener dentro del margen

@knownissues
La comprobación necesaria para asegurar que las inscripciones de
texto y la letra de las canciones se mantienen dentro de los
márgenes, requiere cálculos adicionales.  En caso de que desee un
proceso ligeramente más rápido, puede utilizar

@example
\override Score.PaperColumn.keep-inside-line = ##f
@end example


@node Extensiones de texto
@unnumberedsubsubsec Extensiones de texto
@translationof Text spanners

@cindex texto, elemento de extensión de

Ciertas indicaciones de ejecución, p.ej., @i{rallentando} o
@i{accelerando}, se escriben como texto y se extienden sobre
muchos compases mediante líneas de puntos.  Estos objetos, que
reciben el nombre de @q{spanners} u objetos de extensión, se
pueden crear desde una nota hasta otra usando la siguiente
sintaxis:

@lilypond[verbatim,quote]
\relative {
  \override TextSpanner.bound-details.left.text = "rit."
  b'1\startTextSpan
  e,\stopTextSpan
}
@end lilypond

@cindex texto, formateado de los elementos de extensión
@cindex formato, de los elementos de extensión de texto

@noindent
La cadena de texto que imprimir se establece a través de
propiedades de objeto.  De forma predeterminada se imprime en
estilo cursiva, pero se pueden conseguir distintos efectos de
formato utilizando bloques @code{\markup}, como se describe en
@ref{Formatear el texto}.

@lilypond[quote,verbatim]
\relative {
  \override TextSpanner.bound-details.left.text =
    \markup { \upright "rit." }
  b'1\startTextSpan c
  e,\stopTextSpan
}
@end lilypond

El estilo de la línea, así como la cadena de texto, se pueden
definir como una propiedad de objeto.  Esta sintaxis se describe
en @ref{Estilos de línea}.

@funindex \textSpannerUp
@funindex \textSpannerDown
@funindex \textSpannerNeutral


@predefined
@code{\textSpannerUp},
@code{\textSpannerDown},
@code{\textSpannerNeutral}.
@endpredefined

@knownissues
LilyPond sólo puede manejar un objeto de extensión de texto por
cada voz.

@snippets

@cindex matiz, extensión de texto, personalizar
@cindex texto, extensión de, matiz, personalizar
@lilypondfile[verbatim,quote,texidoc,doctitle]
{snippets/dynamics-text-spanner-postfix.ly}

@lilypondfile[verbatim,quote,texidoc,doctitle]
{snippets/dynamics-custom-text-spanner-postfix.ly}


@morerefs
Referencia de la notación:
@ref{Estilos de línea},
@ref{Matices dinámicos},
@ref{Formatear el texto}.

Fragmentos de código:
@rlsr{Text},
@rlsr{Expressive marks}.

Referencia de funcionamiento interno:
@rinternals{TextSpanner}.


@node Indicaciones de texto
@unnumberedsubsubsec Indicaciones de texto
@translationof Text marks

@cindex texto, indicaciones de
@cindex indicación, de texto
@cindex texto, sobre la barra de compás
@cindex @q{coda}, sobre la línea divisoria
@cindex @q{segno}, sobre la línea divisoria
@cindex calderón, sobre la línea divisoria
@cindex línea, divisoria, símbolos sobre las

@funindex \mark
@funindex \markup

Se pueden añadir a la partitura varios elementos de texto con la
sintaxis que se describe en @ref{Llamadas de ensayo}:

@c \mark needs to be placed on a separate line (it's not
@c attached to an object like \markup is). -vv

@lilypond[verbatim,quote]
\relative {
  \mark "Verse"
  c'2 g'
  \bar "||"
  \mark "Chorus"
  g2 c,
  \bar "|."
}
@end lilypond

Esta sintaxis posibilita colocar cualquier texto sobre la línea
divisoria; se pueden incorporar formatos más complejos para el
texto usando un bloque @code{\markup}, como está explicado en
@ref{Formatear el texto}:

@lilypond[quote,verbatim]
\relative {
  <c' e>1
  \mark \markup { \italic { colla parte } }
  <d f>2 <e g>
  <c f aes>1
}
@end lilypond

@noindent
Esta sintaxis también permite imprimir símbolos especiales como
llamadas, segno o calderones, especificando el nombre del símbolo
correspondiente como se explica en
@ref{Notación musical dentro de elementos de marcado}:

@lilypond[quote,verbatim]
\relative {
  <bes' f>2 <aes d>
  \mark \markup { \musicglyph "scripts.ufermata" }
  <e g>1
}
@end lilypond

@noindent
Estos objetos se tipografían solamente sobre el pentagrama
superior de la partitura; dependiendo de si están especificados al
final o en medio de un compás, se colocarán sobre la línea
divisoria o entre las notas.  Si se especifican en un salto de
línea, las llamadas se imprimen al principio de la línea
siguiente.

@lilypond[quote,verbatim,ragged-right]
\relative c'' {
  \mark "Allegro"
  c1 c
  \mark "assai" \break
  c  c
}
@end lilypond

@funindex \markLengthOn
@funindex \markLengthOff

@predefined
@code{\markLengthOn},
@code{\markLengthOff}.
@endpredefined


@snippets

@cindex marca, en todos los pentagramas
@funindex Mark_engraver
@funindex Staff_collecting_engraver
@lilypondfile[verbatim,quote,ragged-right,texidoc,doctitle]
{snippets/printing-marks-on-every-staff.ly}


@morerefs
Referencia de la notación:
@ref{Llamadas de ensayo},
@ref{Formatear el texto},
@ref{Notación musical dentro de elementos de marcado},
@ref{La tipografía Emmentaler}.

Fragmentos de código:
@rlsr{Text}.

Referencia de funcionamiento interno:
@rinternals{MarkEvent},
@rinternals{Mark_engraver},
@rinternals{RehearsalMark}.


@node Texto separado
@unnumberedsubsubsec Texto separado
@translationof Separate text

@cindex separado, texto
@cindex texto separado
@cindex independiente, texto
@cindex nivel superior, texto del
@cindex texto del nivel superior
@cindex texto independiente

@funindex \markup

Un bloque @code{\markup} puede existir de forma independiente,
fuera de cualquier bloque @code{\score}, como una @qq{expresión de
nivel superior}.  Esta sintaxis se describe en
@ref{Estructura del archivo}.

@lilypond[verbatim,quote]
\markup {
  Tomorrow, and tomorrow, and tomorrow...
}
@end lilypond

@noindent
Esto hace posible imprimir texto separado de la música, lo que es
especialmente útil cuando el archivo de entrada contiene varias
piezas, tal y como se describe en
@ref{Varias partituras en un libro}.

@lilypond[quote,verbatim]
\score {
  c'1
}
\markup {
  Tomorrow, and tomorrow, and tomorrow...
}
\score {
  c'1
}
@end lilypond

Los bloques de texto independientes pueden abarcar varias páginas,
posibilitando la impresión de documentos de texto o libros
íntegramente desde LilyPond.  Esta funcionalidad y la sintaxis que
requiere se describen en
@ref{Elementos de marcado de varias páginas}.


@funindex \markup
@funindex \markuplist

@predefined
@code{\markup},
@code{\markuplist}.
@endpredefined


@snippets

@cindex texto, en columnas
@cindex columna, texto en
@cindex marcado, dos columnas
@lilypondfile[verbatim,quote,ragged-right,texidoc,doctitle]
{snippets/stand-alone-two-column-markup.ly}


@morerefs
Referencia de la notación:
@ref{Formatear el texto},
@ref{Estructura del archivo},
@ref{Varias partituras en un libro},
@ref{Elementos de marcado de varias páginas}.

Fragmentos de código:
@rlsr{Text}.

Referencia de funcionamiento interno:
@rinternals{TextScript}.


@node Formatear el texto
@subsection Formatear el texto
@translationof Formatting text

Esta sección presenta los formateados básico y avanzado de texto,
usando la sintaxis específica del modo de @code{\markup}.

@menu
* Introducción al marcado de texto::
* Seleccionar la tipografía y su tamaño::
* Alineación de texto::
* Notación gráfica dentro de elementos de marcado::
* Notación musical dentro de elementos de marcado::
* Elementos de marcado de varias páginas::
@end menu

@node Introducción al marcado de texto
@unnumberedsubsubsec Introducción al marcado de texto
@translationof Text markup introduction

@cindex marcado
@cindex texto, marcado de
@cindex marcado de texto
@cindex tipografiar texto

@funindex \markup

Se usa un bloque @code{\markup} para tipografiar texto con una
sintaxis ampliable que se denomina @qq{modo de marcado}.  Tales
bloques se pueden emplear en cualquier parte, como se explica en
@ref{Panorámica de los objetos de texto}.

@cindex marcado, expresión de
@cindex expresión, de marcado
@cindex marcado, sintaxis
@cindex sintaxis del marcado

La sintaxis del marcado es similar a la sintaxis usual de
LilyPond: una expresión @code{\markup} se encierra entre llaves
@code{@{ @dots{} @}}.  Una sola palabra se considera como una
expresión mínima, y por tanto no necesita estar encerrada entre
llaves.

A diferencia de las indicaciones de @qq{texto entrecomillado}
simples, los bloques @code{\markup} pueden contener expresiones
anidadas o instrucciones de marcado, que se introducen utilizando
el carácter de barra invertida @code{\} . Estas instrucciones sólo
afectan a la expresión que sigue inmediatamente.

@lilypond[quote,verbatim]
\relative {
  a'1-\markup intenso
  a2^\markup { poco \italic più forte  }
  c e1
  d2_\markup { \italic "string. assai" }
  e
  b1^\markup { \bold { molto \italic  agitato } }
  c
}
@end lilypond

@cindex carácter, especial, en modo de marcado
@cindex marcado, caracteres especiales en modo de
@cindex reservados, impresión de caracteres
@cindex impresión, de caracteres especiales
@cindex texto, entrecomillado en modo de marcado

Un bloque @code{\markup} puede contener también cadenas de texto
entre comillas.  Dichas cadenas se tratan como expresiones de
texto mínimas, y por tanto cualquier instrucción de marcado o
carácter especial (como @code{\} y@tie{}@code{#}) se imprimen
literalmente sin afectar al formateo del texto.  Se puede hacer
que se impriman las propias comillas si se les antepone una barra
invertida.

@lilypond[quote,verbatim]
\relative {
  a'1^"\italic markup..."
  a_\markup { \italic "... prints \"italic\" letters!" }
  a a
}
@end lilypond

Para que se traten como una expresión distinta, es necesario que
las listas de palabras estén encerradas entre comillas o
precedidas de una instrucción.  La forma en que están definidas
las expresiones de marcado afecta a cómo se apilan, se centran y
se alinean estas expresiones; en el ejemplo siguiente, la segunda
expresión @code{\markup} se trata igual que la primera:

@lilypond[quote,verbatim]
\relative c'' {
  c1^\markup { \center-column { a bbb c } }
  c1^\markup { \center-column { a { bbb c } } }
  c1^\markup { \center-column { a \line { bbb c } } }
  c1^\markup { \center-column { a "bbb c" } }
}
@end lilypond

Los marcados se pueden almacenar dentro de variables.  Estas
variables se pueden adjuntar directamente a las notas:

@lilypond[quote,verbatim]
allegro = \markup { \bold \large Allegro }

{
  d''8.^\allegro
  d'16 d'4 r2
}
@end lilypond


@noindent
Se puede encontrar una lista exhaustiva de las instrucciones
específicas de @code{\markup} en @ref{Instrucciones de marcado de texto}.  The inner workings of these commands, and how to implement new ones, is
explained in @rextend{Markup functions}.

@morerefs
Referencia de la notación:
@ref{Panorámica de los objetos de texto},
@ref{Instrucciones de marcado de texto}.

Manual de extensión:
@rextend{Funciones de marcado}.

Fragmentos de código:
@rlsr{Text}.

Archivos de inicio:
@file{scm/markup.scm}.

@knownissues
Los mensajes de error de sintaxis para el modo de marcado a menudo producen
confusión.


@node Seleccionar la tipografía y su tamaño
@unnumberedsubsubsec Seleccionar la tipografía y su tamaño
@translationof Selecting font and font size

@cindex fuente tipográfica, cambiar
@cindex cambio de la fuente tipográfica

@funindex \italic
@funindex \bold
@funindex \underline

Está contemplado de forma básica el cambio de la fuente
tipográfica en el modo de marcado:

@lilypond[quote,verbatim]
\relative {
  d''1^\markup {
    \bold { Più mosso }
    \italic { non troppo \underline Vivo }
  }
  r2 r4 r8
  d,_\markup { \italic quasi \smallCaps Tromba }
  f1 d2 r
}
@end lilypond

@cindex fuente tipográfica, tamaño de
@cindex texto, tamaño de

@funindex \abs-fontsize
@funindex \fontsize
@funindex \smaller
@funindex \larger
@funindex \magnify

El tamaño de la fuente tipográfica se puede alterar en relación al
tamaño global del pentagrama, de una serie de formas como se ve a
continuación.

Se puede fijar a un tamaño predefinido:

@lilypond[quote,verbatim]
\relative b' {
  b1_\markup { \huge Sinfonia }
  b1^\markup { \teeny da }
  b1-\markup { \normalsize camera }
}
@end lilypond

Se puede establecer a un tamaño relativo al valor anterior:

@lilypond[quote,verbatim]
\relative b' {
  b1_\markup { \larger Sinfonia }
  b1^\markup { \smaller da }
  b1-\markup { \magnify #0.6  camera }
}
@end lilypond

Se puede aumentar o disminuir de forma relativa al valor fijado
por el tamaño global del pentagrama:

@lilypond[quote,verbatim]
\relative b' {
  b1_\markup { \fontsize #-2 Sinfonia }
  b1^\markup { \fontsize #1 da }
  b1-\markup { \fontsize #3 camera }
}
@end lilypond

También se puede establecer a un tamaño de puntos fijo,
independientemente del tamaño global del pentagrama:

@lilypond[quote,verbatim]
\relative b' {
  b1_\markup { \abs-fontsize #20 Sinfonia }
  b1^\markup { \abs-fontsize #8 da }
  b1-\markup { \abs-fontsize #14 camera }
}
@end lilypond

Si el texto incluye espacios, es mejor escribir todo entre
comillas, de forma que el tamaño de cada espacio sea correcto para
el tamaño de los otros caracteres.

@lilypond[quote,verbatim]
\markup \fontsize #6 \bold { Sinfonia da camera }
\markup \fontsize #6 \bold { "Sinfonia da camera" }
@end lilypond

@cindex subíndice
@cindex superíndice

@funindex \super
@funindex \sub
@funindex \normal-size-super

El texto se puede imprimir como subíndice o como superíndice.  De
forma predeterminada se imprimen en un tamaño menor, pero también
se puede usar un tamaño normal:

@lilypond[quote,verbatim]
\markup {
  \column {
    \line { 1 \super st movement }
    \line { 1 \normal-size-super st movement
      \sub { (part two) }  }
  }
}
@end lilypond

@cindex fuente tipográfica, familias de

El modo de marcado ofrece una manera fácil de elegir familias de
tipografía alternativas.  A no ser que se especifique de otro
modo, se selecciona automáticamente la fuente predeterminada con
serifa, de tipo romano: en la última línea del ejemplo siguiente,
no hay diferencia entre la primera y la segunda palabra.

@lilypond[quote,verbatim]
\markup {
  \column {
    \line { Act \number 1 }
    \line { \sans { Scene I. } }
    \line { \typewriter { Verona. An open place. } }
    \line { Enter \roman Valentine and Proteus. }
  }
}
@end lilypond

@noindent
Algunas de estas familias, usadas para elementos específicos como
números o matices, no ofrecen todos los caracteres, como se explica en
@ref{Indicaciones dinámicas nuevas} y
@ref{Marcas de repetición manual}.

@c \concat is actually documented in Align (it is not
@c a font-switching command).  But we need it here. -vv

Si se usan dentro de una palabra, algunas instrucciones de cambio
de tipografía o de formateo pueden producir un espacio vacío no
deseado.  Esto se puede solucionar concatenando en uno solo los
distintos elementos de texto:

@lilypond[quote,verbatim]
\markup {
  \column {
    \line {
      \concat { 1 \super st }
      movement
    }
    \line {
      \concat { \dynamic p , }
      \italic { con dolce espressione }
    }
  }
}
@end lilypond

Se puede encontrar una lista exhaustiva de instrucciones de cambio
y utilización personalizada de las fuentes tipográficas en
@ref{Tipografías}.

También es posible definir conjuntos personalizados de fuentes,
tal y como se explica en @ref{Tipografías}.

@funindex \teeny
@funindex \tiny
@funindex \small
@funindex \normalsize
@funindex \large
@funindex \huge
@funindex \smaller
@funindex \larger


@predefined
@code{\teeny},
@code{\tiny},
@code{\small},
@code{\normalsize},
@code{\large},
@code{\huge},
@code{\smaller},
@code{\larger}.
@endpredefined

@morerefs
Referencia de la notación:
@ref{Tipografías},
@ref{Indicaciones dinámicas nuevas},
@ref{Marcas de repetición manual},
@ref{Tipografías}.

Archivos de inicio:
@file{scm/define-markup-commands.scm}.

Fragmentos de código:
@rlsr{Text}.

Referencia de funcionamiento interno:
@rinternals{TextScript}.

@knownissues
La utilización de las instrucciones de tamaño de texto
@code{\teeny}, @code{\tiny}, @code{\small}, @code{\normalsize},
@code{\large} y @code{\huge} conducen a un espaciado de las líneas
inconsistente comparado con el uso de @code{\fontsize}.


@node Alineación de texto
@unnumberedsubsubsec Alineación de texto
@translationof Text alignment

@cindex texto, alineación de
@cindex alinear, texto
@cindex alinear, texto de marcado
@cindex alinear, elementos de marcado
@cindex marcado, elementos, alinear
@cindex marcado, texto, alinear

Esta subsección trata sobre cómo colocar texto en el modo de
marcado.  Los objetos de marcado también se pueden mover como un
todo, usando la sintaxis que se describe en
@rlearning{Mover objetos}.

@cindex texto, alineación horizontal
@cindex horizontal, alineación de texto

@funindex \left-align
@funindex \center-align
@funindex \right-align

Los objetos de marcado se pueden alinear de distintas maneras.  De
forma predeterminada, una indicación de texto se alinea sobre el
borde izquierdo: en el ejemplo siguiente, no existe diferencia
entre los marcados primero y segundo.  El ejemplo muestra también
varias formas sintácticamente correctas de ubicar las
instrucciones de alineación:

@lilypond[quote,verbatim]
\relative {
  d''1-\markup { poco }
  f
  d-\markup { \left-align poco }
  f
  d-\markup { \center-align { poco } }
  f
  d-\markup \right-align { poco }
}
@end lilypond

@funindex \halign

Se puede realizar un ajuste fino de la alineación horizontal usando un
valor numérico:

@lilypond[quote,verbatim]
\relative {
  a'1-\markup { \halign #-1 poco }
  e'
  a,-\markup { \halign #0 poco }
  e'
  a,-\markup { \halign #0.5 poco }
  e'
  a,-\markup { \halign #2 poco }
}
@end lilypond

@funindex \hspace
@cindex marcado, relleno horizontal
@cindex horizontal, relleno en marcado

Por último, las palabras y otros objetos se pueden desplazar si
los hacemos preceder de un relleno.  También es posible usar un
relleno negativo que hará moverse a los objetos subsiguentes en la
dirección opuesta.  Aunqe normalmente el relleno es invisible, en
el ejemplo siguiente se han añadido instrucciones para poder verlo
con más claridad:

@lilypond[quote,verbatim]
\relative {
  d''1-\markup { poco }
  f
  d-\markup { \with-color #darkred \box \hspace #4 poco }
  f
  d-\markup { \with-color #darkred \box \hspace #-4 poco }
  f
  d-\markup { \with-color #darkred \box \hspace #10 poco }
}
@end lilypond

@noindent
Ciertos objetos pueden poseer sus propios procedimientos de
alineación, y por tanto no resultan afectados por estas
instrucciones.  Es posible mover estos objetos de marcado como un
todo, como se muestra por ejemplo en @ref{Indicaciones de texto}.

@cindex texto, alineación vertical
@cindex vertical, alineación de texto
@cindex alineación, vertical, de texto

@funindex \raise
@funindex \lower
@funindex \null

La alineación vertical se puede establecer de una forma similar.
Como se ha dicho más arriba, los objetos de marcado se pueden
mover como un todo; sin embargo, también es posible mover
elementos específicos dentro de un bloque de marcado.

@lilypond[quote,verbatim]
\relative {
  d'2^\markup {
    Acte I
    \raise #2 { Scène 1 }
  }
  a'
  g_\markup {
    \lower #4 \bold { Très modéré }
  }
  a
  d,^\markup \raise #4 \italic {
    Une forêt.
  }
  a'4 a g2 a
}
@end lilypond

@funindex \general-align
@funindex \translate
@funindex \translate-scaled

Algunas instrucciones pueden afectar tanto a la alineación
horizontal como a la vertical de los objetos de texto en el modo
de marcado:

@lilypond[quote,verbatim]
\relative {
  d'2^\markup {
    Acte I
    \translate #'(-1 . 2) "Scène 1"
  }
  a'
  g_\markup {
    \general-align #Y #3.2 \bold "Très modéré"
  }
  a
  d,^\markup \translate-scaled #'(-1 . 2) \teeny {
   "Une forêt."
  }
  a'4 a g2 a
}
@end lilypond

@funindex \vspace
@cindex padding in markup, vertical
@cindex vertical padding in markup

Una vez más resulta muy útil el relleno (ya sea positivo o
negativo) para colocar los objetos verticalmente, cuando van
dentro de columnas de elementos de marcado:

@lilypond[quote,verbatim]
\relative {
  d'2^\markup {
    Acte I
    \column {
      \with-color #darkred \box \vspace #-1
      "Scène 1"
    }
  }
  a'
  g_\markup \column {
    \with-color #darkred \box \vspace #1
    "Très modéré"
  }
  a
  d,^\markup \column {
   "Une forêt."
    \with-color #darkred \box \vspace #2
  }
  a'4 a g2 a
}
@end lilypond

@cindex varias, líneas, marcado
@cindex marcado, de varias líneas
@cindex varias, líneas, texto
@cindex texto, de varias líneas
@cindex texto, en columnas
@cindex columnas, texto

@funindex \column
@funindex \center-column

Un objeto de marcado puede incluir varias líneas de texto.  En el
ejemplo siguiente, cada elemento o expresión se sitúa en su propia
línea, ya sea alineada por la izquierda o centrada:

@lilypond[quote,verbatim]
\markup {
  \column {
    a
    "b c"
    \line { d e f }
  }
  \hspace #10
  \center-column {
    a
    "b c"
    \line { d e f }
  }
}
@end lilypond

@cindex centrar texto en la página
@cindex texto, centrar en la página
@cindex marcado, centrar en la página

@funindex \fill-line

De forma similar, una lista de elementos o expresiones se puede
repartir de forma que rellene por completo el ancho de la línea
horizontal (si hay un solo elemento, se centra en el papel).  A su
vez, estas expresiones pueden incluir texto de varias líneas o
cualquier otra expresión de marcado:

@lilypond[quote,verbatim]
\markup {
  \fill-line {
    \line { William S. Gilbert }
    \center-column {
      \huge \smallCaps "The Mikado"
      or
      \smallCaps "The Town of Titipu"
    }
    \line { Sir Arthur Sullivan }
  }
}
\markup {
  \fill-line { 1885 }
}
@end lilypond

@cindex text, line width
@cindex markup text, line width

@funindex line-width

Los elementos se pueden extender para que cubran cualquier anchura
especificada mediante la sobreescritura de la propiedad
@code{line-width}.  De forma predetermianda está establecida a
@code{#f} lo que implica toda la línea:

@lilypond[quote,verbatim]
\markup {
  \column {
    \fill-line { left center right }
    \null
    \override #'(line-width . 30)
    \fill-line { left center right }
  }
}
@end lilypond

@cindex texto ajustado a palabras
@cindex texto justificado
@cindex justificado, texto
@cindex ajustado a palabras, texto
@cindex marcado, texto, ajustado a palabras
@cindex texto de marcado ajustado a palabras
@cindex ajuste de línea, texto con

@funindex \wordwrap
@funindex \justify


Las indicaciones de texto largas se pueden también ajustar
automáticamente según un ancho de línea dado.  Estarán alineados
por la izquierda o justificados, como se muestra en el ejemplo
siguiente.

@lilypond[quote,verbatim]
\markup {
  \column {
    \line  \smallCaps { La vida breve }
    \line \bold { Acto I }
    \wordwrap \italic {
      (La escena representa el corral de una casa de
      gitanos en el Albaicín de Granada.  Al fondo una
      puerta por la que se ve el negro interior de
      una Fragua, iluminado por los rojos resplandores
      del fuego.)
    }
    \hspace #0

    \line \bold { Acto II }
    \override #'(line-width . 50)
    \justify \italic {
      (Calle de Granada.  Fachada de la casa de Carmela
      y su hermano Manuel con grandes ventanas abiertas
      a través de las que se ve el patio
      donde se celebra una alegre fiesta)
    }
  }
}
@end lilypond

@cindex texto, instrucciones de alineación
@cindex marcado, texto, instrucciones de alineación
@cindex alineación, instrucciones de texto

Hay una lista exhaustiva de instrucciones de alineación de texto
en @ref{Align}.

@morerefs
Manual de aprendizaje:
@rlearning{Mover objetos}.

Referencia de la notación:
@ref{Align},
@ref{Indicaciones de texto}.

Archivos de inicio:
@file{scm/define-markup-commands.scm}.

Fragmentos de código:
@rlsr{Text}.

Referencia de funcionamiento interno:
@rinternals{TextScript}.


@node Notación gráfica dentro de elementos de marcado
@unnumberedsubsubsec Notación gráfica dentro de elementos de marcado
@translationof Graphic notation inside markup

@cindex gráfico, insertar
@cindex dibujar, objeto gráfico
@cindex gráfico, dibujar objeto
@cindex insertar, objeto gráfico
@cindex gráfico, insertar objeto

Se puede añadir diversos objetos gráficos a una partitura,
utilizando instrucciones de marcado.

@cindex enmarcar texto
@cindex texto, enmarcar
@cindex texto, decorar
@cindex marcado, texto, decorar
@cindex marcado, texto, enmarcar
@cindex decorar texto

@funindex \box
@funindex \circle
@funindex \rounded-box
@funindex @sortas{bracketB} \bracket
@funindex \hbracket

Ciertas instrucciones de marcado permiten la decoración de
elementos de texto con gráficos, como se muestra en el ejemplo
siguiente.

@lilypond[quote,verbatim]
\markup \fill-line {
  \center-column {
    \circle Jack
    \box "in the box"
    \null
    \line {
      Erik Satie
      \hspace #3
      \bracket "1866 - 1925"
    }
    \null
    \rounded-box \bold Prelude
  }
}
@end lilypond

@cindex relleno, alrededor de texto
@cindex texto, relleno de
@cindex marcado, relleno de textos de

@funindex \pad-markup
@funindex \pad-x
@funindex \pad-to-box
@funindex \pad-around

Algunas instrucciones pueden requerir un aumento del relleno
alrededor del texto: esto se puede conseguir con algunas
instrucciones de marcado descritas exhaustivamente en @ref{Align}.

@lilypond[quote,verbatim]
\markup \fill-line {
  \center-column {
    \box "Charles Ives (1874 - 1954)"
    \null
    \box \pad-markup #2 "THE UNANSWERED QUESTION"
    \box \pad-x #8 "A Cosmic Landscape"
    \null
  }
}
\markup \column {
  \line {
    \hspace #10
    \box \pad-to-box #'(-5 . 20) #'(0 . 5)
      \bold "Largo to Presto"
  }
  \pad-around #3
      "String quartet keeps very even time,
Flute quartet keeps very uneven time."
}
@end lilypond

@cindex gráfica, notación
@cindex símbolos no musicales
@cindex no musicales, símbolos
@cindex notación gráfica

@funindex \combine
@funindex \draw-circle
@funindex \filled-box
@funindex \triangle
@funindex \draw-line
@funindex \arrow-head

Se pueden imprimir otros símbolos o elementos gráficos sin que se
requiera ningún otro texto.  De igual manera que en el caso de las
expresiones de marcado, dichos objetos se pueden combinar:

@lilypond[quote,verbatim]
\markup {
  \combine
    \draw-circle #4 #0.4 ##f
    \filled-box #'(-4 . 4) #'(-0.5 . 0.5) #1
  \hspace #5

  \center-column {
    \triangle ##t
    \combine
      \draw-line #'(0 . 4)
      \arrow-head #Y #DOWN ##f
  }
}
@end lilypond

@cindex insertar, gráfico
@cindex imagen, insertar
@cindex gráfico, insertar
@cindex PostScript

@funindex \epsfile
@funindex \postscript

Entre las funcionalidades gráficas avanzadas se encuentran la
posibilidad de incluir archivos de imagen externos convertidos al
formato de PostScript Encapsulado (@emph{eps}), y la inclusión
directa de gráficos dentro del archivo de entrada, usando código
PostScript nativo.  En tal caso puede ser de utilidad la
especificación explícita del tamaño del dibujo, como se
ejemplifica a continuación:

@lilypond[quote,verbatim,fragment]
c'1^\markup {
  \combine
    \epsfile #X #10 "./context-example.eps"
    \with-dimensions #'(0 . 6) #'(0 . 10)
    \postscript "
      -2 3 translate
      2.7 2 scale
      newpath
      2 -1 moveto
      4 -2 4 1 1 arct
      4 2 3 3 1 arct
      0 4 0 3 1 arct
      0 0 1 -1 1 arct
      closepath
      stroke"
  }
c'
@end lilypond

Hay una lista exhaustiva de instrucciones específicas de gráficos
en @ref{Graphic}.

@morerefs
Referencia de la notación:
@ref{Align},
@ref{Dimensions},
@ref{Anotaciones editoriales},
@ref{Graphic}.

Archivos de inicio:
@file{scm/define-markup-commands.scm},
@file{scm/stencil.scm}.

Fragmentos de código:
@rlsr{Text}.

Referencia de funcionamiento interno:
@rinternals{TextScript}.


@node Notación musical dentro de elementos de marcado
@unnumberedsubsubsec Notación musical dentro de elementos de marcado
@translationof Music notation inside markup

@cindex notación, dentro de marcado
@cindex música, dentro de marcado
@cindex marcado, notación musical dentro de

Se pueden añadir a la partitura diversos elementos de notación
musical, dentro de un objeto de marcado.

Las notas y las alteraciones se pueden escribir utilizando
instrucciones de marcado:

@lilypond[quote,verbatim,fragment]
a'2 a'^\markup {
  \note {4} #1
  =
  \note-by-number #1 #1 #1.5
}
b'1_\markup {
  \natural \semiflat \flat
  \sesquiflat \doubleflat
}
\glissando
a'1_\markup {
  \natural \semisharp \sharp
  \sesquisharp \doublesharp
}
\glissando b'
@end lilypond

Otros objetos de notación se pueden también imprimir en el modo de
marcado:

@lilypond[quote,verbatim]
\relative {
  g1 bes
  ees\finger \markup \tied-lyric "4~1"
  fis_\markup { \dynamic rf }
  bes^\markup {
    \beam #8 #0.1 #0.5
  }
  cis
  d-\markup {
    \markalphabet #8
    \markletter #8
  }
}
@end lilypond

De forma más general, cualquier símbolo musical disponible se
puede incluir por separado dentro de un objeto de marcado, como se
ejemplifica a continuación; hay una lista exhaustiva de estos
símbolos y sus nombres en @ref{La tipografía Emmentaler}.

@lilypond[quote,verbatim]
\relative {
  c''2
  c'^\markup { \musicglyph "eight" }
  c,4
  c,8._\markup { \musicglyph "clefs.G_change" }
  c16
  c2^\markup { \musicglyph "timesig.neomensural94" }
}
@end lilypond

Otra forma de imprimir glifos que no son de texto se encuentra
descrita en @ref{Explicación de las fuentes tipográficas}.  Tiene
la utilidad de imprimir llaves de distintos tamaños.

El modo de marcado también contempla diagramas para instrumentos
específicos:

@lilypond[quote,verbatim]
\relative {
  c''1^\markup {
    \fret-diagram-terse "x;x;o;2;3;2;"
  }
  c^\markup {
    \harp-pedal "^-v|--ov^"
  }
  c
  c^\markup {
    \combine
      \musicglyph "accordion.discant"
      \combine
	\raise #0.5 \musicglyph "accordion.dot"
	\raise #1.5 \musicglyph "accordion.dot"
  }
}
@end lilypond

@c The accordion diagram is actually taken from a snippet.

@noindent
Dichos diagramas se encuentran documentados en @ref{Instrument
Specific Markup}.

@cindex partitura, dentro de un marcado
@cindex marcado, partitura dentro de

Incluso una partitura completa se puede incluir dentro de un
objeto de marcado:

@lilypond[quote,verbatim]
\relative {
  c'4 d^\markup {
    \score {
      \relative { c'4 d e f }
    }
  }
  e f |
  c d e f
}
@end lilypond

Hay una lista exhaustiva de instrucciones relacionadas con la
notación musical en @ref{Music}.

@morerefs
Referencia de la notación:
@ref{Music},
@ref{La tipografía Emmentaler},
@ref{Explicación de las fuentes tipográficas}.

Archivos de inicio:
@file{scm/define-markup-commands.scm},
@file{scm/fret-diagrams.scm},
@file{scm/harp-pedals.scm}.

Fragmentos de código:
@rlsr{Text}.

Referencia de funcionamiento interno:
@rinternals{TextScript}.

@knownissues
El espaciado vertical de un @code{\score} dentro de un objeto de
marcado está controlado por @code{baseline-skip}.  Todo ajuste del
bloque @code{\paper} se ignora.


@node Elementos de marcado de varias páginas
@unnumberedsubsubsec Elementos de marcado de varias páginas
@translationof Multi-page markup

@cindex página, marcado de varias
@cindex marcado, de varias páginas
@cindex marcado, texto de, varias páginas
@cindex texto, que ocupa varias páginas

@funindex \markuplist
@funindex \justified-lines
@funindex \wordwrap-lines

Aunque los objetos de marcado estándar no se pueden dividir, una
sintaxis específica hace posible la introducción de líneas de
texto que pueden abarcar varias páginas:

@c KEEP LY
@lilypond[quote,verbatim]
\markuplist {
  \justified-lines {
    Un texto muy largo de líneas justificadas.
    ...
  }
  \wordwrap-lines {
    Otro párrafo muy largo.
    ...
  }
  ...
}
@end lilypond

Esta sintaxis acepta una lista de elementos de marcado, que pueden ser
@itemize
@item
el resultado de una instrucción de lista de marcado,
@item
una lista de marcados,
@item
o una lista de listas de marcado.
@end itemize

Hay una lista exhaustiva de las instrucciones de lista de marcado
en @ref{Instrucciones de listas de marcado de texto}.

@morerefs
Referencia de la notación:
@ref{Instrucciones de listas de marcado de texto}.

Archivos de inicio:
@file{scm/define-markup-commands.scm}.

Manual de extensión:
@rextend{Definición de nuevas instrucciones de lista de marcado}.

Fragmentos de código:
@rlsr{Text}.

Referencia de funcionamiento interno:
@rinternals{TextScript}.

@funindex \markuplist

@predefined
@code{\markuplist}.
@endpredefined


@node Tipografías
@subsection Tipografías
@translationof Fonts

Esta sección presenta la forma en que se manejan las fuentes
tipográficas, y cómo se pueden cambiar en las partituras.

@menu
* Explicación de las fuentes tipográficas::
* Fuentes de un solo elemento::
* Fuentes tipográficas del documento completo::
@end menu


@node Explicación de las fuentes tipográficas
@unnumberedsubsubsec Explicación de las fuentes tipográficas
@translationof Fonts explained

@cindex Pango
@cindex fuente tipográfica, explicación
@cindex llave, de distintos tamaños
@cindex fuente tipográfica, explicación
@cindex fuente tipográfica, de símbolos en marcado
@cindex símbolo, fuentes tipográficas en el marcado

@funindex font-interface

Las fuentes tipográficas se manejan a través de distintas
bibliotecas.  FontConfig se utiliza para detectar las tipografías
disponibles; las tipografías seleccionadas se trazan utilizando
Pango.

@cindex tipografía, archivos externos
@cindex fuentes externas

Además de cualquier fuente tipográfica que ya esté instalada en el
sistema operativo, se pueden añadir fuentes adicionales al
conjunto que detecta FontConfig (y por ello disponibles en las
partituras de LilyPond) a través de las instrucciones siguientes:

@example
#(ly:font-config-add-font "@var{ruta/hacia/archivo-de-fuente.otf}")

#(ly:font-config-add-directory "@var{ruta/hacia/directorio/}")
@end example

@noindent
Las dos instrucciones admiten rutas absolutas y relativas, lo que
permite compilar una partitura en cualquier sistema, simplemente
copiando los archivos de fuente necesarios junto al código fuente
de la partitura.

Cuando las fuentes han sido instaladas y detectadas, se pueden
seleccionar usando los métodos que se describen en
@ref{Fuentes de un solo elemento} y en
@ref{Fuentes tipográficas del documento completo}.  Dado que
imprime la lista completa de las fuentes tipográficas disponibles
en el archivo de registro de la consola, puede ser de utilidad la
instrucción @code{#(ly:font-config-display-fonts)} para verificar
qué fuentes se están efectivamente detectando, y bajo qué nombres
(ya que pueden ser diferentes de los propios nombres de archivo).

@cindex fuente, notación musical
@cindex tipografía, notación musical
@funindex font-encoding

Las tipografías de notación musical se pueden describir como un
conjunto de glifos específicos, ordenados en varias familias.  La
siguiente sintaxis permite usar directamente varios glifos de la tipografía
@code{Feta} de LilyPond distintas a las de texto en el modo de
marcado:

@lilypond[quote,verbatim,fragment]
a'1^\markup {
  \vcenter {
    \override #'(font-encoding . fetaBraces)
    \lookup "brace120"
    \override #'(font-encoding . fetaText)
    \column { 1 3 sf }
    \override #'(font-encoding . fetaMusic)
    \lookup "noteheads.s0petrucci"
  }
}
@end lilypond

@noindent
Sin embargo, todos estos glifos excepto las llaves de varios
tamaños que están contenidas en la fuente tipográfica
@code{fetaBraces} están disponibles utilizando la sintaxis más
sencilla que se describe en
@ref{Notación musical dentro de elementos de marcado}.

Cuando se usan los glifos de la fuente de llaves
@code{fetaBraces}, el tamaño de la llave se especifica por la
parte numérica del nombre del glifo, en unidades arbitrarias.  Se
puede especificar cualquier entero de @code{0} a @code{575}
inclusive, siendo @code{0} el que produce la llave más pequeña.
El valor óptimo se debe determinar por ensayo y error.  Todos
estos glifos son llaves izquierdas; las llaves derechas se pueden
obtener mediante rotación, véase @ref{Rotación de objetos}.

Están disponibles tres familias de fuentes tipográficas para el
texto: la fuente @emph{roman} (romana, serif o con remates), la
fuente @emph{sans} (sin remates), y la fuente @emph{typewriter} o
monoespaciada.

Para el @emph{backend} @code{svg}:
@multitable @columnfractions .15 .30
@headitem Familia @tab Fuente predeterminada
@item @emph{roman} @tab @code{serif}
@item @emph{sans} @tab @code{sans-serif}
@item @emph{typewriter} @tab @code{monospace}
@end multitable

@code{serif}, @code{sans-serif} y @code{monospace} son
@code{generic-family} (las familias estándar) en las
especificaciones de SVG y CSS.

Para otros @emph{backends}:
@multitable @columnfractions .15 .30 .55
@headitem Familia @tab Fuente predeterminada (alias) @tab Listas de definición del alias
@item @emph{roman}
@tab @code{LilyPond Serif}
@tab
TeX Gyre Schola,
C059, Century SchoolBook URW, Century Schoolbook L,
DejaVu Serif,
..., serif
@item @emph{sans}
@tab @code{LilyPond Sans Serif}
@tab
TeX Gyre Heros,
Nimbus Sans, Nimbus Sans L, DejaVu Sans,
..., sans-serif
@item @emph{typewriter}
@tab @code{LilyPond Monospace}
@tab
TeX Gyre Cursor,
Nimbus Mono PS, Nimbus Mono, Nimbus Mono L,
DejaVu Sans Mono,
..., monospace
@end multitable

@code{LilyPond Serif}, @code{LilyPond Sans Serif} y @code{LilyPond
Monospace} son alias de las fuentes tipográficas que están
definidos en el archivo dedicado de configuración de LilyPond
@code{00-lilypond-fonts.conf}.  Allí donde un carácter no exista
en la primera fuente de la lista, será sustituido por el carácter
correspondiente extraído de la siguiente fuente de la lista.  Para
ver más detalles acerca de las definiciones de los alias, consulte
@code{00-lilypond-fonts.conf} dentro de la carpeta de instalación
del programa.

Cada familia puede incluir distintas formas y series.  El ejemplo
siguiente muestra la posibilidad de seleccionar familias, formas,
series y tamaños alternativos.  El valor que se da a
@code{font-size} es el cambio requerido a partir del tamaño
predeterminado.

@lilypond[quote,verbatim,fragment]
\override Score.RehearsalMark.font-family = #'typewriter
\mark \markup "Ouverture"
\override Voice.TextScript.font-shape = #'italic
\override Voice.TextScript.font-series = #'bold
d''2.^\markup "Allegro"
\override Voice.TextScript.font-size = #-3
c''4^smaller
@end lilypond

@noindent
Se puede usar una sintaxis similar en el modo de marcado, aunque
en este caso es preferible usar la sintaxis sencilla que se
explica en @ref{Seleccionar la tipografía y su tamaño}:

@lilypond[quote,verbatim]
\markup {
  \column {
    \line {
      \override #'((font-shape . italic) (font-size . 4))
      Idomeneo,
    }
    \line {
      \override #'(font-family . typewriter)
      {
        \override #'(font-series . bold)
        re
        di
      }
      \override #'(font-family . sans)
      Creta
    }
  }
}
@end lilypond

@noindent
Al usar fuentes tipográficas de OpenType, pueden usarse las
funcionalidades de fuente o @emph{font features}.  No se pueden
especificar los idiomas ni los @emph{scripts} de OpenType.  Nota:
no todas las fuentes de OpenType tienen todas las funciones.  Si
se requiere una funcionalidad que no existe en la fuente
seleccionada, la funcionalidad sencillamente se ignora.

@lilypond[quote,verbatim]
% Versalitas auténticas
\markup { Estilo normal: Hola HOLA }
\markup { \caps { Falsa versalita: Hola } }
\markup { \override #'(font-features . ("smcp"))
          { Versalitas auténticas: Hola } }

% Estilos de números
\markup { Cifras de estilo normal: 0123456789 }
\markup { \override #'(font-features . ("onum"))
          { Cifras de estilo antiguo: 0123456789 } }

% Alternativas de estilo
\markup { \override #'(font-features . ("salt 0"))
          { Alternativa de estilo 0: εφπρθ } }
\markup { \override #'(font-features . ("salt 1"))
          { Alternativa de estilo 1: εφπρθ } }

% Acumulación de funcionalidades
\markup { \override #'(font-features . ("onum" "smcp" "salt 1"))
          { Acumulación de funcionalidades: Hola 0123456789 εφπρθ } }
@end lilypond

@noindent Para ver la lista completa de funcionalidades de fuente de OpenType font, consulte:
@uref{https://www.microsoft.com/typography/otspec/featurelist.htm}

@noindent Para la identificación de las funcionalidades de fuente de OpenType, consulte:
@uref{https://lists.gnu.org/archive/html/lilypond-devel/2017-08/msg00004.html}

Aunque es fácil cambiar entre las fuentes tipográficas
preconfiguradas, también es posible usar otras fuentes, como se
explica en las siguientes secciones:
@ref{Fuentes de un solo elemento} y
@ref{Fuentes tipográficas del documento completo}.

@morerefs
Referencia de la notación:
@ref{La tipografía Emmentaler},
@ref{Notación musical dentro de elementos de marcado},
@ref{Rotación de objetos},
@ref{Seleccionar la tipografía y su tamaño},
@ref{Tipografías}.


@node Fuentes de un solo elemento
@unnumberedsubsubsec Fuentes de un solo elemento
@translationof Single entry fonts

Se puede usar en una partitura cualquier fuente tipográfica que
esté instalada en el sistema operativo y reconocida por parte de
FontConfig, usando la siguiente sintaxis:

@lilypond[quote,verbatim,fragment]
\override Staff.TimeSignature.font-name = "Bitstream Charter"
\override Staff.TimeSignature.font-size = #2
\time 3/4

a'1_\markup {
  \override #'(font-name . "Bitstream Vera Sans,sans-serif, Oblique Bold")
    { Vera Oblique Bold }
}
@end lilypond

@cindex fuente tipográfica, buscar, disponibles
@cindex buscar, fuentes tipográficas disponibles
@cindex listar, fuentes tipográficas disponibles
@cindex disponibles, listar las fuentes tipográficas

@var{font-name} puede describirse usando una lista de @q{fuentes
tipográfcias} separadas por comas y una lista de @q{estilos}
separados por espacios.  En la medida en que la @q{fuente
tipográfica} de la lista esté instalada y contenga el glifo
solicitado, se usará.  En caso contrario, se usará como
sustitución la @emph{siguiente} fuente tipográfica de la lista.

@funindex show-available-fonts

La ejecución de lilypond con la opción siguiente presenta una
lista de todas las tipografías disponibles en el sistema
operativo:

@example
lilypond -dshow-available-fonts
@end example

@morerefs
Referencia de la notación:
@ref{Explicación de las fuentes tipográficas},
@ref{Fuentes tipográficas del documento completo}.

Fragmentos de código:
@rlsr{Text}.

@c A source file gets never installed...
@c Installed files:
@c @file{lily/font-config-scheme.cc}.


@node Fuentes tipográficas del documento completo
@unnumberedsubsubsec Fuentes tipográficas del documento completo
@translationof Entire document fonts

Se pueden cambiar las fuentes tipográficas que se usan como
tipografías predeterminadas en las familias @emph{romana},
@emph{sans-serif} y @emph{monoespaciada}, especificándolas en este
orden como se ve en el ejemplo de abajo, que escala las
tipografías automáticamente con el valor fijado para el tamaño
global del pentagrama.  De forma parecida a
@ref{Fuentes de un solo elemento}, se puede describir usando una
lista de @q{fuentes tipográficas} separadas por comas.  Sin
embargo, los @q{estilos} de fuente no se pueden describir.  Para
leer más explicaciones sobre las fuentes tipográficas, consulte
@ref{Explicación de las fuentes tipográficas}.

@cindex fuente, establecer la familia de
@cindex fuente tipográfica, cambiar para todo el documento

@funindex make-pango-font-tree

@lilypond[verbatim,quote]
\paper  {
  #(define fonts
    (make-pango-font-tree "Linux Libertine O"
                          "Nimbus Sans, Nimbus Sans L"
                          "DejaVu Sans Mono"
                          (/ staff-height pt 20)))
}

\relative c'{
  c1-\markup {
    roman,
    \sans sans,
    \typewriter typewriter. }
}
@end lilypond

Nota: @code{make-pango-font-tree} reinicia las fuentes
tipográficas al tipo predeterminado Emmentaler.

@c we don't do Helvetica / Courier, since GS incorrectly loads
@c Apple TTF fonts

La sintaxis siguiente nos permite cambiar las tipografías
específicas, dejando el resto en sus valores predeterminados.  El
siguiente ejemplo tiene el mismo efecto que el ejemplo anterior de
utilización de @code{make-pango-font-tree}.  De igual manera que
con @code{make-pango-font-tree}, podemos especificar una lista de
valores separados por comas de @q{fonts} para las categorías
Romana, Sans serif y Monoespaciada (@code{roman}, @code{sans} y
@code{typewriter}).  Si no queremos cambiar el tamaño del
pentagrama a otro distinto del predeterminado de 20 pt, no es
necesaria la parte @code{#:factor (/ staff-height pt 20)}.

@funindex set-global-fonts

@example
\paper @{
  #(define fonts
    (set-global-fonts
     #:roman "Linux Libertine O"
     #:sans "Nimbus Sans, Nimbus Sans L"
     #:typewriter "DejaVu Sans Mono"
     #:factor (/ staff-height pt 20) ; innecesario si el tamaño del pentagrama es el predeterminado
    ))
@}
@end example

También se pueden especificar las fuentes de la notación.  El
ejemplo siguiente también tiene el mismo efecto que en los casos
anteriores, porque establece las fuentes para la notación como las
predeterminadas.  Para más información, véase
@ref{Sustituir la tipografía de la notación}.

@example
\paper @{
  #(define fonts
    (set-global-fonts
     #:music "emmentaler"            ; predeterminado
     #:brace "emmentaler"            ; predeterminado
     #:roman "Linux Libertine O"
     #:sans "Nimbus Sans, Nimbus Sans L"
     #:typewriter "DejaVu Sans Mono"
     #:factor (/ staff-height pt 20) ; innecesario si el tamaño del pentagrama es el predeterminado
    ))
@}
@end example

Nota: cada llamada a @code{set-global-fonts} reinicia
completamente tanto la fuente tipográfica de la notación como las
de texto. Si se deja sin especificar una cualquiera de las
categorías, entonces se utiliza la fuente predeterminada para
dicha categoría.  Cada llamada a @code{set-global-fonts} afecta a
cada uno de los bloques @code{\book} que le siguen.  Si existen
varios bloques @code{\book} y queremos usar distintas fuentes
tipográficas para cada uno de ellos, sencillamente llamamos de
nuevo a @code{set-global-fonts}, así:

@example
\paper @{
  #(define fonts
    (set-global-fonts
     @dots{}
    ))
@}
\book @{
  @dots{}
@}

\paper @{
  #(define fonts
    (set-global-fonts
     @dots{}
    ))
@}
\book @{
  @dots{}
@}
@end example

@morerefs
Referencia de la notación:
@ref{Explicación de las fuentes tipográficas},
@ref{Fuentes de un solo elemento},
@ref{Seleccionar la tipografía y su tamaño},
@ref{Tipografías},
@ref{Sustituir la tipografía de la notación}.
