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’altre2.
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.
Footnotes
(2)
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.