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.