2.5 Conversions manuals
En teoria, un programa com convert-ly
hauria de poder
tractar qualsevol canvi de sintaxi. Després de tot, un programa
d’ordinador interpreta les versions antiga i nova, per la qual
cosa un altre programa d’ordinador podria traduir un fitxer a
l’altre1.
Tot i així, el projecte LilyPond compta amb uns recursos limitats: no totes les conversions s’efectuen automàticament. A continuació hi ha una llista de problemes coneguts.
1.6->2.0: No sempre converteix el baix xifrat correctament, específicament coses com ara {< >}. El comentari de Mats sobre com solucionar el problema: Per poder executar convert-ly sobre ell, primer vaig sustituir totes les aparicions de '{<' a quelcom mut com ara '{#' i de forma semblant vaig sustituir '>}' amb '&}'. Després de la conversió, vaig poder tornar a canviar-los de '{ #' a '{ <' i de '& }' a '> }'. No converteix tot l'etiquetatge de text correctament. En sintaxi antiga, es podien agrupar diverses etiquetes entre parèntesis, per exemple -#'((bold italic) "cadena") Això es converteix incorrectament a -\markup{{\bold italic} "cadena"} en comptes del correcte -\markup{\bold \italic "cadena"} 2.0->2.2: No gestiona \partCombine No va \addlyrics => \lyricsto, això trenca algunes partitures amb diverses estrofes 2.0->2.4: \magnify no es canvia per \fontsize. - \magnify #m => \fontsize #f, on f = 6ln(m)/ln(2) remove-tag no es canvia. - \applyMusic #(remove-tag '. . .) => \keepWithTag #'. . . first-page-number no es canvia. - first-page-number no => print-first-page-number = ##f Els salts de línia a les cadenes de capçalera no es converteixen. - \\\\ com salt de línia a les cadenes de \header => \markup \center-align < "Primera línia" "Segona línia" > Els terminadors de crescendo i descrecendo no es converteixen. - \rced => \! - \rc => \! 2.2->2.4: \turnOff (usat a \set Staff.VoltaBracket = \turnOff) no es converteix adequadament. 2.4.2->2.5.9 \markup{ \center-align <{ ... }> } s'hauria de convertir a: \markup{ \center-align {\line { ... }} } però ara, falta el \line. 2.4->2.6 Els caràcters especials del LaTeX com $~$ al text no es converteixen a UTF8. 2.8 \score{} ara ha de començar amb una expressió musical. Qualsevol alta cosa (en particular, \header{}) ha d'anar després de la música.
Notes a peu de pàgina
[1] Almenys això és possible en qualsevol fitxer del LilyPond que no contingui Scheme. Si hi ha Scheme dins del fitxer, conté un llenguatge Turing-complet, i ens trobem amb el famós “Problema de l’aturada” informàtica.