\input texinfo @c -*- coding: utf-8; mode: texinfo; documentlanguage: es -*-
@ignore
- Translation of GIT committish: 53ab418e0bb8f272082db295b38a1dbb2ccfca65
+ Translation of GIT committish: d8fb420c61d9fa46bc2507d933b7aec7f55cdbd5
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
@end ignore
@setfilename lilypond-changes.info
@settitle Registro de cambios de LilyPond
+@documentencoding UTF-8
@include macros.itexi
@finalout
@node Top
-@top Funcionalidades nuevas de la versión 2.16 desde la 2.14
+@top Funcionalidades nuevas de la versión 2.18 desde la 2.16
@allowcodebreaks false
@end ignore
@item
-Se puede elegir entre dos métodos de numeración de compases, en
-especial para cuando se emplean repeticiones:
+The markup-list-command @code{\table} is now available.
+Each column may be aligned differently.
+@lilypond[quote,verbatim]
+\markuplist {
+ \override #'(padding . 2)
+ \table
+ #'(0 1 0 -1)
+ {
+ \underline { center-aligned right-aligned center-aligned left-aligned }
+ one "1" thousandth "0.001"
+ eleven "11" hundredth "0.01"
+ twenty "20" tenth "0.1"
+ thousand "1000" one "1.0"
+ }
+}
+@end lilypond
-@lilypond[fragment,quote,relative=1,noragged-right]
-\relative c'{
- \set Score.alternativeNumberingStyle = #'numbers
- \repeat volta 3 { c4 d e f | }
- \alternative {
- { c4 d e f | c2 d \break }
- { f4 g a b | f4 g a b | f2 a | \break }
- { c4 d e f | c2 d }
- }
- c1 \break
- \set Score.alternativeNumberingStyle = #'numbers-with-letters
- \repeat volta 3 { c,4 d e f | }
- \alternative {
- { c4 d e f | c2 d \break }
- { f4 g a b | f4 g a b | f2 a | \break }
- { c4 d e f | c2 d }
- }
- c1
+@item
+A new page breaking function @code{ly:one-line-auto-height-breaking}
+places a whole score on a single line and changes the page width
+to match, just like @code{ly:one-line-breaking}. The difference is that
+it also automatically modifies the height of the page to fit the height
+of the music.
+
+@item
+Markup-command @code{\draw-squiggle-line} is now available.
+Customizing is possible with overrides of @code{thickness}, @code{angularity},
+@code{height} and @code{orientation}
+@lilypond[quote,verbatim]
+\markup
+ \overlay {
+ \draw-squiggle-line #0.5 #'(3 . 3) ##t
+
+ \translate #'(3 . 3)
+ \override #'(thickness . 4)
+ \draw-squiggle-line #0.5 #'(3 . -3) ##t
+
+ \translate #'(6 . 0)
+ \override #'(angularity . -5)
+ \draw-squiggle-line #0.5 #'(-3 . -3) ##t
+
+ \translate #'(3 . -3)
+ \override #'(angularity . 2)
+ \override #'(height . 0.3)
+ \override #'(orientation . -1)
+ \draw-squiggle-line #0.2 #'(-3 . 3) ##t
+ }
+@end lilypond
+
+@item
+A new command, @code{\RemoveAllEmptyStaves}, has been made available, which
+acts exactly like @code{\RemoveEmptyStaves}, except for also removing empty
+staves on the first system in a score.
+
+@item
+Markup-commands @code{\undertie} and @code{\overtie} are now available, as well
+as the generic markup-command @code{\tie}.
+@lilypond[quote,verbatim]
+\markup {
+ \undertie "undertied"
+ \overtie "overtied"
}
+
+m = {
+ c''1 \prall -\tweak text \markup \tie "131" -1
+}
+
+{ \voiceOne \m \voiceTwo \m }
@end lilypond
@item
-Las expresiones de Scheme dentro de fragmentos de código de LilyPond
-incrustados (@code{#@{@dots{}#@}}) se ejecutan ahora dentro de la
-cerradura léxica del código de Scheme circundante. El símbolo
-@code{$} ya no es especial dentro del código de LilyPond incrustado.
-Se puede utilizar de forma incondicional dentro de código de LilyPond
-para su evaluación inmediata, de forma parecida a la forma en que se
-utilizaba anteriormente @code{ly:export}. Se ha suprimido
-@code{ly:export}. Como consecuencia, ahora @code{#} está libre para
-diferir la evaluación de su argumento hasta que el analizador
-sintáctico reduzca efectivamente la expresión contenida, reduciendo
-significativamente el potencial de la evaluación prematura.
-
-@item
-Se ha mejorado el soporte de acordes de tipo jazz: se reconocen los
-acordes lidios y alterados; ahora se tratan los separadores entre
-modificadores de acorde de forma independiente de los separadores
-entre acordes invertidos y sus notas de bajo (y por omisión, la barra
-inclinada se usa ahora solamente para el último tipo de separador);
-las notas adicionales ya no van prefijadas por "add" de forma
-predeterminada; y la "m" en los acordes menores se puede personalizar.
-Consulte @ruser{Nombres de acorde personalizados} para más
-información.
-
-@item
-Se ha cambiado el nombre de la instrucción @code{\markuplines} por
-@code{\markuplist} para conseguir una mejor correspondencia con su
-semántica y con la nomenclatura generarl de LilyPond.
-
-@item
-Se ha simplificado considerablemente la interfaz para especificar
-afinaciones en las tablaturas.
-
-@item
-Las barras ahora pueden preservar la inclinación por encima de los
-saltos de línea.
-@lilypond[fragment,quote,relative=2]
-\override Beam #'breakable = ##t
-a8[ b c d e f g \bar "" \break f e d c b a]
-\once \override Beam #'positions = #beam::align-with-broken-parts
-a8[ b c d e f g \bar "" \break f e d c b a]
-\once \override Beam #'positions = #beam::slope-like-broken-parts
-a8[ b c d e f g \bar "" \break f e d c b a]
+@code{TabStaff} is now able to print micro-tones for bendings etc.
+@lilypond[quote,verbatim]
+\layout {
+ \context {
+ \Score
+ supportNonIntegerFret = ##t
+ }
+}
+
+mus = \relative { c'4 cih d dih }
+
+<<
+ \new Staff << \clef "G_8" \mus >>
+ \new TabStaff \mus
+>>
@end lilypond
-Para hacerlo, se han hecho obsoletas varias funciones de "callback".
-@itemize
-@item @code{ly:beam::calc-least-squares-positions}
-@item @code{ly:beam::slope-damping}
-@item @code{ly:beam::shift-region-to-valid}
-@end itemize
-Además, @code{ly:beam::quanting} ahora acepta un argumento adicional
-para ayudar a los cálculos sobre los cambios de línea. Todas estas
-funciones se llaman automáticamente cuando se ajusta el parámetro
-@code{positions}.
@item
-En los argumentos de función, la música, los elementos de marcado y
-las expresiones de Scheme (así como algunas otras entidades
-sintácticas) se han hecho mayormente intercambiables y se diferencian
-solamente mediante la evaluación del predicado respectivo.
+Two new styles of whiteout are now available. The @code{outline} style
+approximates the contours of a glyph's outline, and its shape is
+produced from multiple displaced copies of the glyph. The
+@code{rounded-box} style produces a rounded rectangle shape. For all
+three styles, including the default @code{box} style, the whiteout
+shape's @code{thickness}, as a multiple of staff-line thickness, can be
+customized.
+
+@lilypond[verbatim,quote]
+\markup {
+ \combine
+ \filled-box #'(-1 . 15) #'(-3 . 4) #1
+ \override #'(thickness . 3)
+ \whiteout whiteout-box
+}
+\markup {
+ \combine
+ \filled-box #'(-1 . 24) #'(-3 . 4) #1
+ \override #'(style . rounded-box)
+ \override #'(thickness . 3)
+ \whiteout whiteout-rounded-box
+}
+\markup {
+ \combine
+ \filled-box #'(-1 . 18) #'(-3 . 4) #1
+ \override #'(style . outline)
+ \override #'(thickness . 3)
+ \whiteout whiteout-outline
+}
+\relative {
+ \override Staff.Clef.whiteout-style = #'outline
+ \override Staff.Clef.whiteout = 3
+ g'1
+}
+@end lilypond
@item
-Ahora se pueden definir las funciones musicales (y sus parientes
-cercanos) con argumentos opcionales.
+All of @code{\override}, @code{\revert}, @code{\set}, and
+@code{\unset} now work with the @code{\once} prefix for making
+one-time settings.
+@lilypond[quote,verbatim]
+\relative {
+ c'4 d
+ \override NoteHead.color = #red
+ e4 f |
+ \once \override NoteHead.color = #green
+ g4 a
+ \once \revert NoteHead.color
+ b c |
+ \revert NoteHead.color
+ f2 c |
+}
+@end lilypond
@item
-Para definir instrucciones que se ejecutan solamente por sus efectos
-secundarios, ahora está disponible @code{define-void-function}.
+Al crear una salida MIDI, LilyPond ahora almacena el @code{title}
+que se ha definido en el bloque @code{\header} de la partitura (o,
+si no existe tal definición en el nivel de @code{\score}, la
+primera definición de ese tipo que aparezca en un bloque
+@code{\header} del @code{\bookpart}, @code{\book}, o ámbito de
+nivel superior que encierra a la partitura) como el nombre de la
+secuencia dentro del archivo MIDI. De forma opcional, el nombre
+de la secuencia MIDI se puede sobreescribir usando el nuevo campo
+@code{midititle} del bloque @code{\header} independientemente del
+@code{title} (por ejemplo, en caso de que @code{title} contenga
+código de elementos de marcado que no se convierta automáticamente
+a texto sencillo de manera satisfactoria).
@item
-Hay una instrucción nueva @code{define-event-function} en analogía con
-@code{define-music-function} que se puede usar para definir funciones
-musicales que actúan como eventos sin que se requiera un especificador
-de dirección como (@code{-}, @code{^} o @code{_}) antes de ellos.
+Las funciones musicales (además de las funciones vacías y de
+Scheme) e instrucciones de marcado que se limitan a aplicar los
+parámetros finales a una cadena de sobreescrituras, se pueden
+definir ahora de forma que solamente escriben la expresión
+interrumpida con @code{\etc}.
+
+@lilypond[verbatim,quote]
+bold-red-markup = \markup \bold \with-color #red \etc
+highlight = \tweak font-size 3 \tweak color #red \etc
-@lilypond[quote,verbatim,ragged-right]
-dyn=#(define-event-function (parser location arg) (markup?)
- (make-dynamic-script arg))
-\relative c' { c\dyn pfsss }
+\markup \bold-red "text"
+\markuplist \column-lines \bold-red { One Two }
+
+{ c' \highlight d' e'2-\highlight -! }
@end lilypond
@item
-Se puede incluir una lista de alias en ASCII para caracteres
-especiales.
+Las funciones de LilyPond definidas con
+@code{define-music-function}, @code{define-event-function},
+@code{define-scheme-function} y @code{define-void-function} ahora
+se pueden llamar directamente desde Scheme como si fuesen
+procedimientos de Scheme reales. Se sigue efectuando una
+comprobación de los argumentos en su número y tipo de la misma
+forma que cuando se llama a la función a través de código de
+LilyPond. Esto incluye la inserción de valores predeterminados
+para los argumentos opcionales que no se corresponden con sus
+predicados. En lugar de usar @code{\default} en la propia lista
+de argumentos para saltar explícitamente una secuencia de
+argumentos opcionales, se puede emplear @code{*unspecified*}.
-@lilypond[quote,verbatim]
-\paper {
- #(include-special-characters)
+@item
+La posición actual del cursor de entrada y del analizador
+sintáctico se almacenan ahora dentro de fluidos de GUILE y se
+pueden referenciar a través de las llamadas de función
+@code{(*location*)} y @code{(*parser*)}. Como consecuencia, un
+gran número de funciones que anteriormente tomaban un argumento
+@code{parser} explícito, ya no lo hacen.
+
+Las funciones definidas con @code{define-music-function},
+@code{define-event-function}, @code{define-scheme-function} y
+@code{define-void-function} ya no usan los argumentos
+@code{parser} @code{location}.
+
+Con estas definiciones, LilyPond trata de reconocer el uso
+obsoleto de los argumentos @code{parser} y @code{location},
+ofreciendo durante algún tiempo una semántica compatible hacia
+atrás.
+
+@item
+En el idioma de nombre de nota "english", los nombres largos de
+las alturas con alteración ahora contienen un guión para una mejor
+legibilidad. Ahora se debe escribir
+@example
+\key a-flat \major
+@end example
+en lugar de
+@example
+\key aflat \major
+@end example
+como se hacía antes.
+
+Las alteraciones dobles no llevan otro guión, de forma que el
+holandés @code{cisis} lleva el nombre largo @code{c-sharpsharp} en
+inglés.
+
+@item
+El estilo visual de las barras de trémolo (forma, estilo e
+inclinación) se controla ahora con más precisión.
+@lilypond[quote,relative=2]
+ a8:32 b: c: d:
+ \override StemTremolo.shape = #'beam-like
+ a: b: c: d:
+ \override StemTremolo.style = #'constant
+ a: b: c: d:
+ g,2
+@end lilypond
+
+
+@item
+Los silencios de varios compases tienen una longitud que depende
+de su duración, bajo el control de
+@code{MultiMeasureRest.space-increment}.
+@lilypond[quote]
+{ \compressFullBarRests
+ \override Staff.MultiMeasureRest.space-increment = 3.0
+ R1*2 R1*12 R1*64 }
+@end lilypond
+
+@item
+Los números de página se pueden imprimir ahora en números romanos,
+fijando el valor de la variable @code{page-number-type} del bloque
+@code{\paper}.
+
+@item
+Ahora se pueden usar @code{\time} y @code{\partial} combinados
+para cambiar la indicación de compás en la mitad de un compás.
+
+@lilypond[verbatim,quote,relative=1]
+\override Score.BarNumber.break-visibility = #end-of-line-invisible
+\partial 4 \time 3/4 f4 | 2 4 | 2 \bar "||"
+\time 9/8 \partial 4. f8 8 8 | 2. 8 8 8 |
+@end lilypond
+
+@item
+Ahora es posible la sobreescritura de la propiedad @code{text} de
+los nombres de acorde.
+
+@lilypond[verbatim,fragment,quote]
+<<
+\new ChordNames \chordmode {
+ a' b c:7
+ \once \override ChordName.text = #"foo"
+ d
}
-\markup "• † ©right; &OE; &ss; ¶"
+>>
@end lilypond
@item
-Hay una instrucción nueva @code{define-scheme-function} en analogía
-con @code{define-music-function} que puede usarse para definir
-funciones que se evalúan a expresiones de Scheme pero aceptan
-argumentos en la sintaxis de LilyPond.
+Se ha mejorado la alineación horizontal cuando se usa
+@code{TextScript}, con @code{DynamicText} o con @code{LyricText}.
@item
-Ahora se puede utilizar la construcción @code{#@{ @dots{} #@}} no solo
-para crear listas secuenciales de música, sino también para eventos
-musicales únicos, expresiones musicales vacías, post-eventos,
-elementos de marcado (sobre todo para liberar a los usuarios de la
-necesidad de usar la macro @code{markup}), listas de marcado,
-expresiones numéricas, definiciones y modificaciones de contextos y
-algunas otras cosas. Si no contiene nada o contiene un único evento
-musical, ya no devuelve una lista secuencial de música, sino una
-expresión musical vacía o simplemente el propio evento musical,
-respectivamente.
+Se ha añadido una instrucción nueva @code{\magnifyStaff} que
+cambia la escala visual de los pentagramas, líneas, barras de
+compás, barras cortadas y el espaciado horizontal general en el
+nivel del contexto de @code{Staff}. Se evita que las líneas del
+pentagrama disminuyan a un tamaño menor que el predeterminado
+porque todos los grosores de las plicas, ligaduras y otros objetos
+gráficos están basados en el grosor de las líneas del pentagrama.
@item
-Nueva opción de la línea de órdenes @option{--loglevel=@var{level}}
-para controlar el volumen de datos que LilyPond produce en la salida.
-Los valores posibles son ERROR (errores), WARN (advertencias),
-BASIC_PROGRESS (progreso básico), PROGRESS (progreso) y DEBUG
-(depuración).
+@code{InstrumentName} contempla ahora el @code{text-interface}.
@item
-@code{\set \once} ahora reinicia correctamente el valor de la
-propiedad al valor previo.
+Se contempla ahora el control del @q{nivel de expresión} de los
+canales MIDI usando la propiedad de contexto
+@code{Staff.midiExpression}. Se puede usar para alterar incluso
+el volumen percibido de notas mantenidas (si bien a muy @q{bajo
+nivel}) y acepta un valor numérico entre @code{0.0} y @code{1.0}.
+
+@example
+\score @{
+ \new Staff \with @{
+ midiExpression = #0.6
+ midiInstrument = #"clarinet"
+ @}
+ <<
+ @{ a'1~ a'1 @}
+ @{
+ \set Staff.midiExpression = #0.7 s4\f\<
+ \set Staff.midiExpression = #0.8 s4
+ \set Staff.midiExpression = #0.9 s4
+ \set Staff.midiExpression = #1.0 s4
+
+ \set Staff.midiExpression = #0.9 s4\>
+ \set Staff.midiExpression = #0.8 s4
+ \set Staff.midiExpression = #0.7 s4
+ \set Staff.midiExpression = #0.6 s4\!
+ @}
+ >>
+ \midi @{ @}
+@}
+@end example
+
+@item
+Se ha añadido la posibiliidad de hacer más fácil usar tipografías
+alternativas @q{de música} diferentes de la predeterminada
+Emmentaler de LilyPond. Véase
+@uref{http://fonts.openlilylib.org/} para más información.
+
+@item
+Los @q{grobs} u objetos gráficos y sus ancestros se pueden ahora
+alinear separadamente permitiendo más flexibilidad para las
+posiciones de los grobs. Por ejemplo, el borde izquierdo de un
+grob se puede alinear sobre el centro de su ancestro.
+
+@item
+Se han hecho mejoras en la instrucción @code{\partial} para evitar
+problemas cuando se usa en varios contextos en paralelo.
+
+@item
+@code{\chordmode} puede usar ahora las construcciones @code{< >} y
+@code{<< >>}.
+
+@item
+Se ha añadido una instrucción @code{\tagGroup} que complementa a
+las instrucciones existentes @code{\keepWithTag} y
+@code{\removeWithTag}. Por ejemplo:
+
+@example
+\tagGroup #'(violinI violinII viola cello)
+@end example
+
+declara una lista de @q{tags} o etiquetas que pertenecen a un solo
+@q{tag group} o grupo de etiquetas.
+
+@example
+\keepWithTag #'violinI
+@end example
+
+se ocupa solamente de las @q{tags} del grupo de etiquetas
+@q{violinI}.
+
+Cualquier elemento de la música incluida que lleve una o más
+etiquetas del grupo, pero @emph{no} la etiqueta @var{violinI},
+será eliminado.
-@lilypond[fragment,quote,relative=2]
- \set fingeringOrientations = #'(left)
- <e-1>4
- \once \set fingeringOrientations = #'(right)
- <e-1>
- <e-1>-"left"
+@item
+La función @code{\addlyrics} funciona ahora con contextos
+arbitrarios, entre ellos @code{Staff}.
+
+@item
+Ahora se pueden usar también los números de cuerda para imprimir
+números romanos (p. ej. para instrumentos de cuerda sin trastes).
+@lilypond[verbatim,quote,relative=2]
+c2\2
+\romanStringNumbers
+c\2
+\arabicStringNumbers
+c1\3
+@end lilypond
+
+@item
+El nombre de la propiedad @code{thin-kern} del objeto gráfico
+@code{BarLine} ha cambiado a @code{segno-kern}.
+
+@item
+Los objetos gráficos @code{KeyCancellation} ahora ignoran las
+claves de las notas guía (como hacen los objetos
+@code{KeySignature}).
+
+@item
+Se contempla ahora @code{\once@tie{}\unset}
+
+@item
+Ahora es posible colorear independientemente tanto los puntos como
+los paréntesis en los diagramas de posición de acordes, si se usa
+la instrucción de marcado @code{\fret-diagram-verbose}.
+
+@lilypond[verbatim,quote,relative=1]
+\new Voice {
+ c1^\markup {
+ \override #'(fret-diagram-details . (
+ (finger-code . in-dot))) {
+ \fret-diagram-verbose #'((mute 6)
+ (place-fret 5 3 1 red)
+ (place-fret 4 5 2 inverted)
+ (place-fret 3 5 3 green)
+ (place-fret 2 5 4 blue inverted)
+ (place-fret 1 3 1 violet)
+ (barre 5 1 3 ))
+ }
+ }
+ c1^\markup {
+ \override #'(fret-diagram-details . (
+ (finger-code . below-string))) {
+ \fret-diagram-verbose #'((mute 6)
+ (place-fret 5 3 1 red parenthesized)
+ (place-fret 4 5 2 yellow
+ default-paren-color
+ parenthesized)
+ (place-fret 3 5 3 green)
+ (place-fret 2 5 4 blue )
+ (place-fret 1 3 1)
+ (barre 5 1 3))
+ }
+ }
+}
+@end lilypond
+
+@item
+Se han añadido dos propiedades nuevas para usarlas dentro de
+@code{fret-diagram-details} con la instrucción de marcado
+@code{\fret-diagram-verbose}; @code{fret-label-horizontal-offset},
+que afecta a la @code{fret-label-indication}, y
+@code{paren-padding}, que controla la distancia entre el puntillo
+y los paréntesis que lo rodean.
+
+@lilypond[verbatim,quote,relative=1]
+\new Voice {
+ c1^\markup {
+ \fret-diagram-verbose #'((mute 6)
+ (place-fret 5 3 1)
+ (place-fret 4 5 2)
+ (place-fret 3 5 3)
+ (place-fret 1 6 4 parenthesized)
+ (place-fret 2 3 1)
+ (barre 5 2 3))
+ }
+ c1^\markup {
+ \override #'(fret-diagram-details . (
+ (fret-label-horizontal-offset . 2)
+ (paren-padding . 0.25))) {
+ \fret-diagram-verbose #'((mute 6)
+ (place-fret 5 3 1)
+ (place-fret 4 5 2)
+ (place-fret 3 5 3)
+ (place-fret 1 6 4 parenthesized)
+ (place-fret 2 3 1)
+ (barre 5 2 3))
+ }
+ }
+}
+@end lilypond
+
+@item
+Se ha añadido una instrucción de marcado nueva,
+@code{\justify-line}. Similar a la instrucción de marcado
+@code{\fill-line} excepto que en lugar de disponer @emph{palabras}
+en columnas, la instrucción @code{\justify-line} equilibra la
+distancia entre ellas, haciendo que cuando hay tres o más palabras
+en una instrucción de marcado, las distancias sean siempre
+consistentes.
+
+@lilypond[quote,verbatim,papersize=a6]
+\markup \fill-line {oooooo oooooo oooooo oooooo}
+\markup \fill-line {ooooooooo oooooooo oo ooo}
+@end lilypond
+
+@lilypond[quote,verbatim,papersize=a6]
+\markup \justify-line {oooooo oooooo oooooo oooooo}
+\markup \justify-line {ooooooooo oooooooo oo ooo}
+@end lilypond
+
+@item
+Se ha añadido la instrucción @code{\magnifyMusic}, que permite
+modificar el tamaño de la notación sin alterar el tamaño del
+pentagrama, mientras que se escalan automáticamente las plicas,
+barras y el espaciado horizontal.
+@lilypond[verbatim,quote]
+\new Staff <<
+ \new Voice \relative {
+ \voiceOne
+ <e' e'>4 <f f'>8. <g g'>16 <f f'>8 <e e'>4 r8
+ }
+ \new Voice \relative {
+ \voiceTwo
+ \magnifyMusic 0.63 {
+ \override Score.SpacingSpanner.spacing-increment = #(* 1.2 0.63)
+ r32 c'' a c a c a c r c a c a c a c
+ r c a c a c a c a c a c a c a c
+ }
+ }
+>>
+@end lilypond
+
+@item
+Se ha añadido una plantilla flexible adecuada para una amplia
+variedad de piezas de música coral. Se puede usar para crear
+música coral sencilla, con o sin acompañamiento de piano, en dos o
+en cuatro pentagramas. A diferencia de otras, esta plantilla está
+@q{incorporada}, lo que significa que no necesita ser copiada y
+editada: en lugar de ello sencillamente se incluye con la
+instrucción @code{\include} en el archivo de entrada. Para ver
+más detalles, consulte @rlearning{Plantillas incorporadas}.
+
+@item
+Se ha mejorado significativamente el posicionado de los números de
+grupos especiales para las barras en forma de codo.
+Anteriormente, los números de grupo especial se colocaban de
+acuerdo a la posición del corchete del grupo, incluso si éste no
+se imprimía. Ello podía dar lugar a números de tresillo
+descolocados. Ahora se sitúan más cerca de la barra cuando hay un
+segmento de barra adecuado para su colocación y cuando el corchete
+no se dibuja.
+
+Se ha añadido también detección de colisiones, desplazando
+horizontalmente si está demasiado cerca de una columna de notas
+adyacente pero preservando la distancia vertical del número a la
+barra acodada. Si el propio número es demasiado grande como para
+caber en el espacio disponible, se usa en su lugar el sistema
+original de posicionamiento basado en el corchete; en cambio, en
+caso de colisión (p. ej. con una alteración accidental) el número
+de tresillo se aleja moviéndolo verticalmente.
+
+@lilypond[verbatim,fragment,quote,relative=1]
+\time 3/4
+\override Beam.auto-knee-gap = 3
+\tuplet 3/2 4 {
+ g8 c'' e,
+ c'8 g,, e''
+ g,,8 e''' c,,
+}
@end lilypond
+@noindent
+El comportamiento original del tresillo para las barras acodadas
+aún está disponible mediante una sobreescritura con la instrucción
+@code{\override} a travé de la nueva propiedad
+@code{knee-to-beam}.
+
+@lilypond[verbatim,fragment,quote,relative=1]
+\time 3/4
+\override Beam.auto-knee-gap = 3
+\override TupletNumber.knee-to-beam = ##f
+\tuplet 3/2 4 {
+ g8 c'' e,
+ c'8 g,, e''
+ g,,8 e''' c,,
+}
+@end lilypond
+
+@item
+Se han @q{armonizado} las instrucciones @code{\lyricsto} y
+@code{\addLyrics}. Ambas aceptan ahora el mismo tipo de lasta de
+argumentos delimitada que aceptan @code{\lyrics} y @code{\chords}.
+Se añade compatibilidad hacia atrás de manera que se permiten como
+argumentos identificadores musicales (p. ej. @code{\mus}). Se ha
+añadido una regla de @code{convert-ly} que elimina los usos
+redundantes de @code{\lyricmode} y reorganiza las combinaciones
+con iniciadores de contexto de forma que @code{\lyricsto} en
+general se aplica al final (es decir, como lo haría
+@code{\lyricmode}).
+
+@item
+Las funciones e identificadores de Scheme se pueden usar ahora
+como definiciones de salida.
+
+@item
+Las expresiones de Scheme se pueden usar ahora como constituyentes
+de acordes.
+
@item
-La alineación de los elementos de matiz dinámico extensos
-(reguladores, crescendi textuales, etc.) se divide automáticamente si
-se da explícitamente una dirección distinta.
+Espaciado visual mejorado de las cabezas de nota con formas @q{MI}
+Funk y Walker pequeñas y normales, de forma que tengan la misma
+anchura que otras notas con forma dentro de sus respectivos
+conjuntos. Las cabezas del tipo @code{SOL} también han mejorado
+visualmente cuando se usan tanto con las cabezas normales de tipo
+Aiken como con las de tipo Sacred Harp, así como con las variantes
+de línea delgada.
-@lilypond[fragment,quote,relative=2]
-c4_\< c c^\> c c1_\p
+@item
+@code{LeftEdge} tiene ahora unas dimensiones verticales
+@code{Y-extent} definibles. Véase @rinternals{LeftEdge}.
+
+@item
+Se ha añadido una función nueva @code{make-path-stencil} que
+contempla todas las instrucciones @code{path} tanto relativas como
+absolutas: @code{lineto}, @code{rlineto}, @code{curveto},
+@code{rcurveto}, @code{moveto}, @code{rmoveto}, @code{closepath}.
+
+La función también contempla la sintaxis de @q{letra única}
+utilizada en las instrucciones de ruta estándares del SVG:
+@code{L}, @code{l}, @code{C}, @code{c}, @code{M}, @code{m},
+@code{Z} y @code{z}.
+
+Asimismo, la nueva instrucción es compatible hacia atrás con la
+función original @code{make-connected-path-stencil}. Véase
+también @file{scm/stencil.scm}.
+
+@item
+Las propiedades de contexto nombradas en la propiedad
+@samp{alternativeRestores} se restauran a su valor al comienzo de
+la @emph{primera} alternativa en todas las alternativas
+siguientes.
+
+Actualmente el conjunto predeterminado restaura el @q{compás
+actual}:
+
+@lilypond[verbatim,fragment,quote,relative=2]
+\time 3/4
+\repeat volta 2 { c2 e4 | }
+\alternative {
+ { \time 4/4 f2 d | }
+ { f2 d4 | }
+}
+g2. |
@end lilypond
+@noindent
+la @q{posición dentro del compás}:
+
+@lilypond[verbatim,fragment,quote,relative=2]
+\time 3/4
+\repeat volta 2 { c2 e4 | }
+\alternative {
+ { \time 4/4
+ \set Timing.measurePosition = #(ly:make-moment -1/2)
+ f2 | }
+ { f2 d4 | }
+}
+g2. |
+@end lilypond
+
+@noindent
+y los @q{cambios de acorde};
+
+@lilypond[verbatim,fragment,quote]
+<<
+ \new ChordNames {
+ \set chordChanges = ##t
+ \chordmode { c1:m d:m c:m d:m }
+ }
+ \new Staff {
+ \repeat volta 2 { \chordmode { c1:m } }
+ \alternative {
+ { \chordmode { d:m } }
+ { \chordmode { c:m } }
+ }
+ \chordmode { d:m }
+}
+>>
+@end lilypond
+
+@item
+Salida MIDI mejorada para las marcas de respiración. Después de
+las notas unidas mediante una ligadura, las respiraciones toman la
+duración @emph{solo} de la última nota de la ligadura; p. ej.
+@code{@{ c4~ c8 \breathe @}} se ejecuta como @code{@{ c4~ c16 r
+@}} en lugar de @code{@{ c4 r8 @}}. Esto es más consistente con
+las articulaciones y con la forma en que los humanos interpretan
+las respiraciones después de las ligaduras de unión. También hace
+que ahora sea más fácil alinear varias marcas de respiración
+simultáneas sobre más de una parte, aunque las notas tengan
+distintas duraciones.
@item
-Ahora las apoyaturas y mordentes funcionan también dentro de una
-ligadura de expresión, y no solo dentro de una ligadura de fraseo.
-Asimismo, se ha añadido la función @code{\slashedGrace} que no imprime
-ninguna ligadura partiendo de la nota del mordente.
+Se ha añadido un nuevo estilo de cabeza de nota para la tablatura:
+@code{TabNoteHead.style = #'slash}.
-@lilypond[fragment,relative=2]
-c4( \appoggiatura e8 d4 \acciaccatura e8 d4 \slashedGrace e8 c4)
+@item
+Se ha añadido cuatro nuevos glifos de clave @emph{Doble de Sol},
+@emph{Sol de tenor}, @emph{Variante de percusión} y @emph{Variante
+de Do} así como sus correspondientes formas reducidas de cambio de
+clave.
+@lilypond[verbatim,quote,fragment]
+ \override Staff.Clef.full-size-change = ##t
+
+ \clef "GG" c c c c
+ \clef "tenorG" c c c c
+ \clef "varC" c c c c
+ \clef "altovarC" c c c c
+ \clef "tenorvarC" c c c c
+ \clef "baritonevarC" c c c c
+ \clef "varpercussion" c c c c
+
+ \break
+ \override Staff.Clef.full-size-change = ##f
+
+ \clef "GG" c c c c
+ \clef "tenorG" c c c c
+ \clef "varC" c c c c
+ \clef "altovarC" c c c c
+ \clef "tenorvarC" c c c c
+ \clef "baritonevarC" c c c c
+ \clef "varpercussion" c c c c
@end lilypond
+@item
+Las duraciones aisladas en las secuencias musicales ahora tienen
+el significado de notas sin altura. Esto puede ser de utilidad
+para especificar duraciones de música o de funciones de Scheme.
+Cuando se encuentran en la partitura final, las alturas vienen
+provistas por la nota o acorde anterior. He aquí dos ejemplos en
+los que se aprecia que produce una entrada más legible:
+
+@lilypond[verbatim,quote]
+\new DrumStaff \with { \override StaffSymbol.line-count = 1 }
+\drummode {
+ \time 3/4
+ tambourine 8 \tuplet 3/2 { 16 16 16 }
+ 8 \tuplet 3/2 { 16 16 16 } 8 8 |
+}
+@end lilypond
+
+@lilypond[verbatim,quote]
+\new Staff { r16 c'16 ~ 8 ~ 4 ~ 2 | }
+@end lilypond
@item
-Para suprimir a línea en un elemento de crescendo extenso (y otros
-elementos extensos similares), LilyPond contempla ahora de forma plena
-la propiedad @code{#'style = #'none}.
+@code{\displayLilyMusic} y sus funciones de Scheme subyacentes ya
+no omiten las duraciones de nota redundantes. Ello hace que sea
+más fácil reconocer correctamente y formatear las duraciones
+aisladas en expresiones como
+@example
+@{ c4 d4 8 @}
+@end example
-@lilypond[fragment,quote,relative=2]
-\override DynamicTextSpanner #'style = #'none
-c4\cresc c c g, c'\p
+@item
+Las excepciones en el barrado se pueden construir ahora usando la
+función de Scheme @code{\beamExceptions}. Ahora se puede escribir
+
+@lilypond[verbatim,quote,relative=1]
+\time #'(2 1) 3/16
+\set Timing.beamExceptions =
+ \beamExceptions { 32[ 32] 32[ 32] 32[ 32] }
+c16 c c |
+\repeat unfold 6 { c32 } |
@end lilypond
+@noindent
+con las diversas excepciones separadas mediante comprobaciones de
+compás @code{|} (la escritura del patrón de la excepción la altura
+de las notas es conveniente pero no obligatorio). Anteriormente
+habría sido necesario escribir las excepciones del barrado como
+
+@example
+\set Timing.beamExceptions =
+#'( ;start of alist
+ (end . ;entry for end of beams
+ ( ;start of alist of end points
+ ((1 . 32) . (2 2 2)) ;rule for 1/32 beams -- end each 1/16
+ )))
+@end example
+
@item
-LilyPond.app está disponible ahora para MacOS X 10.7. ¡Gracias,
-Christian Hitz!
+Las articulaciones más comunes se reflejan ahora en la salida
+MIDI. El acento y el marcato hacen a las notas sonar más fuerte;
+el picado, el staccato, el staccatissimo y el portato las hacen
+más cortas. Las marcas de respiración acortan la nota anterior.
+
+Este comportamiento se puede personalizar a través de las
+propiedades @code{midiLength} @code{midiExtraVelocity} sobre
+@code{ArticulationEvent}. Para ver ejemplos, consulre
+@file{script-init.ly}.
@item
-Los glissandos pueden abarcar varias líneas.
+La funcionalidad de PostScript del ajuste del trazo ya no se
+aplica automáticamente, sino que se deja a la discreción del
+dispositivo PostScript (de forma predeterminada, Ghostscript lo
+usa para las resoluciones de hasta 150 ppp al generar imagenes de
+matriz de puntos). Cuando se activa, se emplea (principalmente
+para las plicas y las líneas divisorias) un algoritmo de trazado
+más complejo diseñado para sacar provecho del ajuste del trazo.
+
+El ajuste del trazo se puede forzar especificando la opción de
+línea de órdenes @samp{-dstrokeadjust} al llamar a LilyPond.
+CUando se generan archivos @code{PDF}, ello dará lugar por lo
+general a vistas previas de @code{PDF} con un aspecto marcadamente
+mejorado pero un tamaño de archivo significativamente mayor. La
+calidad de impresión en resoluciones altas no resulta afectada.
@end itemize
@ifhtml
Para ver noticias anteriores, diríjase a
-@uref{http://lilypond.org/doc/v2.14/Documentation/changes/},
-@uref{http://lilypond.org/doc/v2.12/Documentation/topdocs/NEWS.html},
+@uref{http://lilypond.org/doc/v2.18/Documentation/changes/},
+@uref{http://lilypond.org/doc/v2.16/Documentation/changes/},
o @uref{../,vuelva} al índice de la documentación.