2.1 ¿Por qué cambia la sintaxis?

Con frecuencia, los cambios en la sintaxis se llevan a cabo para hacer que el código de entrada de LilyPond sea más sencillo tanto de leer como de escribir, pero en ocasiones se hacen los cambios para acomodar nuevas funcionalidades o mejoras para las funciones existentes.

Lo ilustramos a continuación con un ejemplo real:

Se supone que todos los nombres de las propiedades de \paper y de \layout están escritos en la forma primero-segundo-tercero. Sin embargo, en la versión 2.11.60, observamos que la propiedad printallheaders no seguía esta convención. ¿Deberíamos dejarla como está (confundiendo a los nuevos usuarios que tienen que tratar con un formato de entrada inconsistente), o cambiarla (fastidiando a los usuarios con experiencia que tienen partituras antiguas)? Al final se tomó la decisión de cambiar el nombre de la propiedad por print-all-headers, y mediante el uso de la herramienta convert-ly se dio a los usuarios existentes la posibiilidad de actualizar automáticamente los archivos de entrada que tenían previamente.

Desgraciadamente, el uso de la herramienta convert-ly no permite tratar todos los cambios de sintaxis. Por ejemplo, los acentos y otros caracteres fuera del alfabeto inglés se escribían usando notación de LaTeX estándar en las versiones anteriores a LilyPond 2.6; palabras como ‘Cigüeña’ se tenían que introducir como Cig\"ue\~na. Comenzando con LilyPond 2.6, la letra especial ‘ü’ se debe escribir directamente como carácter codificado en UTF-8. Dado que convert-ly no puede convertir los caracteres especiales de LaTeX a caracteres de UTF-8, los archivos de entrada de LilyPond antiguos se tenían que editar manualmente para efectuar la conversión.

Las reglas de conversión de convert-ly funcionan usando correspondencia y sustitución de patrones de texto en lugar de una ‘comprensión’ profunda de los cambios producidos en un archivo dado. Esto tiene varias consecuencias:


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