LilyPond: manual de utilización del programa: 2.5 Conversiones manuales

## 2.5 Conversiones manuales

En teoría, un programa como `convert-ly` debería poder tratar cualquier cambio en la sintaxis. Después de todo, un programa de ordenador interpreta las versiones antigua y nueva, por lo que otro programa de ordenador podría traducir un archivo al otro1.

Sin embargo, el proyecto LilyPond cuenta con unos recursos limitados: no todas las conversiones se efectúan automáticamente. A continuación aparece una lista de los problemas conocidos.

    1.6->2.0:
     No siempre convierte el bajo cifrado correctamente, específicamente cosas como {<
    >}.  El comentario de Mats sobre cómo solventar el problema:
       Para poder ejecutar convert-ly
       sobre él, primero sustituí todas las apariciones de '{<' a algo mudo como '{#'
       y de forma similar sustituí '>}' con '&}'.  Después de la conversión, pude
       volver a cambiarlos de '{ #' a '{ <' y de '& }' a '> }'.
     No convierte todos los marcados de texto correctamente.  En sintaxis antigua,
     se podían agrupar varios marcados entre paréntesis, p.ej.
       -#'((bold italic) "cadena")
       Esto se convierte incorrectamente en
       -\markup{{\bold italic} "cadena"}
       en vez del correcto
       -\markup{\bold \italic "cadena"}
    2.0->2.2:
     No maneja \partCombine
     No hace \addlyrics => \lyricsto, esto rompe algunas partituras con varias estrofas.
    2.0->2.4:
     \magnify no se cambia por \fontsize.
        - \magnify #m => \fontsize #f, donde f = 6ln(m)/ln(2)
     remove-tag no se cambia.
        - \applyMusic #(remove-tag '. . .) => \keepWithTag #'. . .
     first-page-number no se cambia.
        - first-page-number no => print-first-page-number = ##f
     Los saltos de línea en las cadenas de cabecera no se convierten.
        - \\\\  como salto de línea en las cadenas de \header  => \markup \center-align <
          "Primera línea" "Segunda línea" >
     Los terminadores de crescendo y decrescendo no se convierten.
        - \rced => \!
        - \rc => \!
    2.2->2.4:
     \turnOff (usado en \set Staff.VoltaBracket = \turnOff) no se convierte
    adecuadamente.
    2.4.2->2.5.9
     \markup{ \center-align <{ ... }> } se tendría que convertir en:
     \markup{ \center-align {\line { ... }} }
     pero ahora, falta el \line.
    2.4->2.6
     Los caracteres especiales de LaTeX como $~$ en el texto no se convierten a UTF8.
    2.8
     \score{} ahora debe empezar con una expresión musical.  Cualquier otra cosa
     (en particular, \header{}) debe ir después de la música.

### Notas el pie

[1] Al menos, esto es posible en cualquier archivo de LilyPond que no contenga Scheme. Si hay Scheme dentro del archivo, contiene un lenguaje Turing-completo, y nos encontramos con el famoso “Problema de la parada” en informática.

#### LilyPond — Utilización v2.24.4 (rama estable).