]> git.donarmstrong.com Git - lilypond.git/blob - Documentation/es/user/running.itely
Add dynamic script fffff; update docs.
[lilypond.git] / Documentation / es / user / running.itely
1 @c -*- coding: utf-8; mode: texinfo; documentlanguage: es -*-
2 @c This file is part of lilypond-program.tely
3 @ignore
4     Translation of GIT committish: 50b88336f4c69d7d3241cc01af98c362cd9d2b4b
5
6     When revising a translation, copy the HEAD committish of the
7     version that you are working on.  See TRANSLATION for details.
8 @end ignore
9
10 @c \version "2.12.0"
11
12
13 @node Running LilyPond
14 @chapter Running LilyPond
15
16 Este capítulo detalla los aspectos técnicos de la ejecución de
17 LilyPond.
18
19 @menu
20 * Normal usage::
21 * Command-line usage::
22 * Error messages::
23 * Updating files with convert-ly::
24 * Reporting bugs::
25 @end menu
26
27
28 @node Normal usage
29 @section Normal usage
30
31 Casi todos los usuarios ejecutan LilyPond por medio de un interfaz
32 gráfico; consulte @rlearning{First steps} si no lo ha leído aún.
33
34
35 @node Command-line usage
36 @section Command-line usage
37
38 Esta sección contiene información adicional sobre el uso de LilyPond
39 en la línea de órdenes.  Esta forma puede ser preferible para pasarle
40 al programa algunas opciones adicionales.  Además, existen algunos
41 programas complementarios @q{de apoyo} (como @code{midi2ly}) que sólo
42 están disponibles en la línea de órdenes.
43
44 Al hablar de la @q{línea de órdenes}, nos referimos a la consola del
45 sistema operativo.  Los usuarios de Windows posiblemente estén más
46 familiarizados con los términos @q{ventana de MS-DOS} o @q{línea de
47 comandos}; Los usuarios de MacOS@tie{}X puede que estén más
48 familiarizados con los términos @q{terminal} o @q{consola}.  Éstos
49 deberían consultar también el apartado @ref{Setup for MacOS X}.
50
51 La descripción del uso de esta parte de los sistemas operativos se
52 sale del ámbito de este manual; le rogamos que consulte otros
53 documentos sobre este tema si no le resulta familiar la línea de
54 órdenes.
55
56 @menu
57 * Invoking lilypond::
58 * Command line options for lilypond::
59 * Environment variables::
60 @end menu
61
62 @node Invoking lilypond
63 @subsection Invoking @command{lilypond}
64
65 @cindex invocar @command{lilypond}
66 @cindex opciones de la línea de órdenes para @command{lilypond}
67 @cindex órdenes, opciones de la línea de
68
69 El ejecutable @command{lilypond} se puede llamar desde la línea de
70 órdenes de la siguiente manera:
71
72 @example
73 lilypond [@var{opción}]@dots{} @var{archivo}@dots{}
74 @end example
75
76 Cuando se invoca con un nombre de archivo sin extensión, se prueba en
77 primer lugar con la extensión @file{.ly}.  Para leer la entrada desde
78 stdin, utilice un guión (@code{-}) en sustitución de @var{archivo}.
79
80 Cuando se procesa @file{archivo.ly}, la salida resultante son los
81 archivos @file{archivo.ps} y @file{archivo.pdf}.  Se pueden
82 especificar varios archivos; cada uno de ellos se procesará de forma
83 independiente@footnote{El estado de GUILE no se restablece después de
84 procesar un archivo @code{.ly}, por lo que debe tener cuidado de no
85 modificar ningún valor predeterminado desde dentro de Scheme.}.
86
87 Si @file{archivo.ly} contiene más de un bloque @code{\score}, el resto
88 de las partituras se obtendrán como salida en archivos numerados,
89 empezando por @file{archivo-1.pdf}.  además, el valor de
90 @code{output-suffix} (sufijo de salida) se insertará entre el nombre
91 base y el número.  Un archivo de entrada que contenga
92
93 @example
94 #(define output-suffix "violin")
95 \score @{ @dots{} @}
96 #(define output-suffix "cello")
97 \score @{ @dots{} @}
98 @end example
99
100 @noindent
101 producirá como salida @var{base}@file{-violin.pdf} y
102 @var{base}@file{-cello-1.pdf}.
103
104
105 @node Command line options for lilypond
106 @subsection Command line options for @command{lilypond}
107
108 Están contempladas las siguientes opciones:
109
110 @table @code
111
112 @item -e,--evaluate=@var{expresión}
113 Evaluar la @var{expresión} de Scheme antes de analizar los archivos
114 @file{.ly}.  Se pueden pasar varias opciones @code{-e}, que se
115 evaluarán en secuencia.
116
117 La expresión se evaluará en el módulo @code{guile-user}, de manera que
118 si quiere usar definiciones dentro de @var{expresión}, debe utilizar
119
120 @example
121 lilypond -e '(define-public a 42)'
122 @end example
123
124 @noindent
125 en la línea de órdenes, e incluir
126
127 @example
128 #(use-modules (guile-user))
129 @end example
130
131 @noindent
132 al principio del archivo @code{.ly}.
133
134 @item -f,--format=@var{formato}
135 Formato de la salida.  Como @code{formato} se puede elegir entre
136 @code{svg}, @code{ps}, @code{pdf} y @code{png}.
137
138 Ejemplo: @code{lilypond -fpng @var{archivo}.ly}
139
140 @item -d,--define-default=@var{variable}=@var{valor}
141 Establece la opción interna del programa @var{variable} al valor de
142 Scheme @var{valor}.  Si no se proporciona ningún @var{valor}, se usa
143 @var{#t}.  Para desactivar una opción se puede anteponer @code{no-} a
144 la @var{variable}, p.ej.:
145
146 @cindex apuntar y pulsar, línea de órdenes
147
148 @example
149 -dno-point-and-click
150 @end example
151
152 @noindent
153 es lo mismo que
154 @example
155 -dpoint-and-click='#f'
156 @end example
157
158 A continuación veremos algunas opciones interesantes.
159
160 @table @samp
161 @item help
162 La ejecución de @code{lilypond -dhelp} imprimirá todas las opciones
163 @code{-d} que están disponibles.
164
165 @item paper-size
166 Esta opción establece el tamaño predeterminado del papel,
167 @example
168 -dpaper-size=\"letter\"
169 @end example
170
171 @noindent
172 Observe que la cadena se debe incluir dentro de comillas escapadas
173 ( @code{\"} ).
174
175 @c Match " in previous line to help context-sensitive editors
176
177 @item safe
178 No confiar en la entrada @code{.ly}.
179
180 Cuando el proceso de tipografía de LilyPond se encuentra disponible a
181 través de un servidor web, @b{SE DEBEN} pasar las opciones
182 @code{--safe} (seguro) o @code{--jail} (jaula).  La opción
183 @code{--safe} evita que el código de Scheme en línea arme un desastre,
184 por ejemplo
185
186 @quotation
187 @verbatim
188 #(system "rm -rf /")
189 {
190   c4^#(ly:export (ly:gulp-file "/etc/passwd"))
191 }
192 @end verbatim
193 @end quotation
194
195 La opción @code{-dsafe} funciona evaluando las expresiones en línea de
196 Scheme dentro de un módulo especial seguro.  Este módulo seguro deriva
197 del módulo GUILE @file{safe-r5rs}, pero añade ciertas funciones del
198 API de LilyPond.  Estas funciones se relacionan en
199 @file{scm/@/safe@/-lily@/.scm}.
200
201 Además, el modo seguro prohíbe las directivas @code{\include} e
202 inhabilita el uso de barras invertidas en las cadenas de @TeX{}.
203
204 En el modo seguro, no es posible la importación de variables de
205 LilyPond dentro de Scheme.
206
207 @code{-dsafe} @emph{no} detecta la sobreutilización de recursos.  Aún
208 es posible hacer que el programa se cuelgue indefinidamente, por
209 ejemplo alimentando el backend con estructuras de datos cíclicas.  Por
210 tanto, si se está utilizando LilyPond sobre un servidor web accesible
211 públicamente, el proceso debe limitarse tanto en el uso de CPU como de
212 memoria.
213
214 El modo seguro impide que muchos fragmentos útiles de código de
215 LilyPond se puedan compilar.  La opción @code{--jail} es una
216 alternativa más segura, pero su preparación requiere más trabajo.
217
218 @cindex salida, establecer el formato de
219 @item backend
220 el formato de salida que usar para el back-end o extremo final.
221 Para el @code{formato} se puede elegir entre
222 @table @code
223 @item ps
224 @cindex PostScript, salida
225 para PostScript.
226
227 Los archivos PostScript incluyen las tipografías TTF, Type1 y OTF.  No
228 se seleccionan subconjuntos de estas tipografías.  Cuando se usan
229 conjuntos de caracteres orientales, esto puede dar lugar a archivos
230 enormes.
231
232 @item eps
233  para obtener PostScript encapsulado.  Esto vuelca cada una de las
234 páginas/sistemas como un archivo @file{EPS} distinto, sin tipografías,
235 y como un solo archivo @file{EPS} encuadernado con todas las
236 páginas/sistemas con las tipografías incluidas.
237
238 Este modo se usa de forma predeterminada por parte de
239 @command{lilypond-book}.
240
241 @item svg
242 @cindex SVG (Scalable Vector Graphics)
243  para obtener SVG (gráficos vectoriales escalables).  Vuelca cada
244 página como un archivo @file{SVG} distinto, con las tipografías
245 incrustadas.
246   Se necesita un visor de SVG que contemple las tipografías
247 incrustadas, o un visor de SVG que pueda sustituir las tipografías
248 incrustadas por tipografías OTF.  Bajo UNIX, puede usar
249 @uref{http://www.inkscape.org,Inkscape} (versión 0.42 o posterior),
250 después de copiar las tipografías OTF del directorio de LilyPond (que
251 normalmente es @file{/usr/share/lilypond/VERSIÓN/fonts/otf/}) al
252 directorio @file{~/.fonts/}.
253 @item scm
254 @cindex Scheme, volcado de
255  para obtener un volcado de las instrucciones internas de dibujo
256 basadas en Scheme, en bruto.
257 @item null
258  no producir una salida impresa; tiene el mismo efecto que @code{-dno-print-pages}.
259 @end table
260
261 Ejemplo: @code{lilypond -dbackend=svg @var{archivo}.ly}
262
263 @item preview
264 Generar un archivo de salida que contenga solamente los títulos de
265 cabecera y el primer sistema de la primera página.
266
267 @item print-pages
268 Generar las páginas completas, el ajuste predeterminado.
269 @code{-dno-print-pages} es útil en combinación con @code{-dpreview}.
270
271 @end table
272
273
274
275 @item -h,--help
276 Mostrar un resumen de las formas de utilización.
277
278 @item -H,--header=@var{CAMPO}
279 Volcar un campo de cabecera al archivo @file{NOMBREBASE.@var{CAMPO}}
280
281 @item --include, -I=@var{directorio}
282 Añadir el @var{directorio} a la ruta de búsqueda de archivos de
283 entrada.
284 @cindex archivos, búsqueda de
285 @cindex búsqueda, ruta de
286
287 @item -i,--init=@var{archivo}
288 Establecer el archivo de inicio a @var{archivo} (predeterminado:
289 @file{init.ly}).
290
291 @item -o,--output=@var{ARCHIVO}
292 Establecer el nombre del archivo de salida predeterminado a
293 @var{ARCHIVO}.  Se añade el sufijo correspondiente (por ejemplo,
294 @code{.pdf} para PDF).
295
296 @item --ps
297 Generar PostScript.
298
299 @item --png
300 Generar imágenes de las páginas en formato PNG.  Esto implica
301 @code{--ps}.  La resolución en PPP de la imagen se puede establecer
302 con
303 @example
304 -dresolution=110
305 @end example
306
307 @item --pdf
308 Generar PDF.  Implica @code{--ps}.
309
310 @item -j,--jail=@var{usuario},@var{grupo},@var{jaula},@var{directorio}
311 Ejecutar @command{lilypond} en una jaula de chroot.
312
313 La opción @code{--jail} (jaula) proporciona una alternativa más
314 flexible a la opción @code{--safe} cuando el proceso de tipografía de
315 LilyPond está disponible a través de un servidor web o cuando LilyPond
316 ejecuta archivos fuente procedentes del exterior.
317
318 La opción @code{--jail} funciona cambiando la raíz de
319 @command{lilypond} a @var{jaula} justo antes de comenzar el proceso de
320 compilación en sí.  Entonces se cambian el usuario y el grupo a los
321 que se han dado en la opción, y el directorio actual se cambia a
322 @var{directorio}.  Esta instalación garantiza que no es posible, al
323 menos en teoría, escapar de la jaula.  Observe que para que funcione
324 @code{--jail} se debe ejecutar @command{lilypond} como root, lo que
325 normalmente se puede hacer de una forma segura utilizando
326 @command{sudo}.
327
328 La instalación de una jaula es un asunto algo delicado, pues debemos
329 asegurarnos de que LilyPond puede encontrar @emph{dentro de la jaula}
330 todo lo que necesita para poder compilar la fuente.  Una configuración
331 típica consta de los siguientes elementos:
332
333 @table @asis
334 @item Preparar un sistema de archivos separado
335 Se debe crear un sistema de archivos separado para LilyPond, de forma
336 que se pueda montar con opciones seguras como @code{noexec},
337 @code{nodev} y @code{nosuid}.  De esta forma, es imposible ejecutar
338 programas o escribir directamente a un dispositivo desde LilyPond.  Si
339 no quiere crear una partición separada, tan sólo tiene que crear un
340 archivo de un tamaño razonable y usarlo para montar un dispositivo
341 loop.  El sistema de archivos separado garantiza también que LilyPond
342 nunca pueda escribir en un espacio mayor del que se le permita.
343
344 @item Preparar un usuario separado
345 Se debe usar un usuario y grupo separados (digamos
346 @code{lily}/@code{lily}) con bajos privilegios para ejecutar LilyPond
347 dentro de la jaula.  Debería existir un solo directorio con permisos
348 de escritura para este usuario, y debe pasarse en el valor
349 @var{directorio}.
350
351 @item Preparar la jaula
352 LilyPond necesita leer algunos archivos mientras se ejecuta.  Todos
353 estos archivos se deben copiar dentro de la jaula, bajo la misma ruta
354 en que aparecen en el sistema de archivos real de root.  Todo el
355 contenido de la instalación de LilyPond (por ejemplo
356 @file{/usr/share/lilypond}) se debe copiar.
357
358 Si surgen problemas, la forma más sencilla de rastrearlos es ejecutar
359 LilyPond usando @command{strace}, lo que le permitirá determinar qué
360 archivos faltan.
361
362 @item Ejecutar LilyPond
363 Dentro de una jaula montada con @code{noexec} es imposible ejecutar
364 ningún programa externo.  Por tanto, LilyPond se debe ejecutar con un
365 backend que no necesite tal programa.  Como ya mencionamos, también se
366 debe ejecutar con privilegios del superusuario (que por supuesto
367 perderá inmediatamente), posiblemente usando @command{sudo}.  Es buena
368 idea limitar el número de segundos de tiempo de CPU que LilyPond puede
369 usar (p.ej., usando @command{ulimit -t}), y, si su sistema operativo
370 lo contempla, el tamaño de la memoria que se puede reservar.
371 @end table
372
373
374 @item -v,--version
375 Mostrar la información de la versión.
376
377 @item -V,--verbose
378 Ser prolijo: mostrar las rutas completas de todos los archivos que se
379 leen, y dar información cronométrica.
380
381 @item -w,--warranty
382 Mostrar la garantía con que viene GNU LilyPond (¡no viene con
383 @strong{NINGUNA GARANTÍA}!).
384 @end table
385
386 @node Environment variables
387 @subsection Environment variables
388
389
390 @cindex LANG
391 @cindex LILYPOND_DATADIR
392
393 @command{lilypond} reconoce las siguientes variables de entorno:
394 @table @code
395 @item LILYPOND_DATADIR
396 Especifica un directorio en el que los mensajes de localización y de
397 datos se buscarán de forma predeterminada.  El directorio debe
398 contener subdirectorios llamados @file{ly/}, @file{ps/}, @file{tex/},
399 etc.
400
401 @item LANG
402 Selecciona el idioma de los mensajes de advertencia.
403
404 @item LILYPOND_GC_YIELD
405 Con esta variable se puede ajustar la huella y el desempeño de
406 memoria.  Es un porcentaje que ajusta el comportamiento de la
407 administración de memoria.  Con valores más altos, el programa usa más
408 memoria; con valores más bajos, usa más tiempo de CPU.  El valor
409 predeterminado es @code{70}.
410
411 @end table
412
413
414 @node Error messages
415 @section Error messages
416
417 @cindex error, mensajes de
418 @cindex mensajes de error
419
420 Pueden aparecer distintos mensajes de error al compilar un archivo:
421
422 @table @emph
423
424 @item Advertencia
425 @cindex advertencia
426 Algo tiene un aspecto sospechoso.  Si estamos pidiendo algo fuera de
427 lo común, entenderemos el mensaje y podremos ignorarlo.  Sin embargo,
428 las advertencias suelen indicar que algo va mal con el archivo de
429 entrada.
430
431 @item Error
432 @cindex error
433 Algo va claramente mal.  El paso actual de procesamiento (análisis,
434 interpretación o formateo visual) se dará por terminado, pero el
435 siguiente paso se saltará.
436
437 @item Error fatal
438 @cindex error fatal
439 @cindex fatal, error
440 Algo va claramente mal, y LilyPond no puede seguir.  Rara vez sucede
441 esto.  La causa más frecuente son las tipografías mal instaladas.
442
443 @item Error de Scheme
444 @cindex traza de Scheme
445 @cindex llamadas, traza de
446 @cindex Scheme, error de
447 @cindex error de Scheme
448 Los errores que ocurren al ejecutar código de Scheme se interceptan
449 por parte del intérprete de Scheme.  Si se está ejecutando con las
450 opciones @code{-V} o @code{--verbose} (prolijo) entonces se imprime
451 una traza de llamadas de la función ofensiva.
452
453 @item Error de programación
454 @cindex error de programación
455 @cindex programación, error de
456 Ha habido algún tipo de inconsistencia interna.  Estos mensajes de
457 error están orientados a ayudar a los programadores y a los
458 depuradores.  Normalmente se pueden ignorar.  En ocasiones aparecen en
459 cantidades tan grandes que pueden entorpecer la visión de otros
460 mensajes de salida.
461
462 @item Abortado (volcado de core)
463 Esto señala un error de programación serio que ha causado la
464 interrupción abrupta del programa.  Estos errores se consideran
465 críticos.  Si se topa con uno, envíe un informe de fallo.
466 @end table
467
468 @cindex error, formato de los mensajes de
469
470 Se los errores y advertencias se pueden ligar a un punto del archivo
471 de entrada, los mensajes tienen la forma siguiente:
472
473 @example
474 @var{archivo}:@var{línea}:@var{columna}: @var{mensaje}
475 @var{línea de entrada problemática}
476 @end example
477
478 Se inserta un salto de línea en la línea problemática para indicar la
479 columna en que se encontró el error. Por ejemplo,
480
481 @example
482 prueba.ly:2:19: error: no es una duración: 5
483   @{ c'4 e'
484            5 g' @}
485 @end example
486
487 Estas posiciones son la mejor suposición de LilyPond sobre dónde se ha
488 producido el mensaje de error, pero (por su propia naturaleza) las
489 advertencias y errores se producen cuando ocurre algo inesperado.  Si
490 no ve un error en la línea que se indica del archivo de entrada, trate
491 de comprobar una o dos líneas por encima de la posición indicada.
492
493
494 @node Updating files with convert-ly
495 @section Updating files with @command{convert-ly}
496
497 @cindex actualización de un archivo de LilyPond
498 @cindex convert-ly
499
500 La sintaxis del lenguaje de entrada de LilyPond se modifica de forma
501 habitual para simplificarla o mejorarla de distintas maneras.  Como
502 efecto secundario, el intérprete de LilyPond a menudo ya no es
503 compatible con los archivos de entrada antiguos.  Para poner remedio a
504 esto se puede utilizar el programa @command{convert-ly} para manejar
505 casi todos los cambios de sintaxis entre versiones de LilyPond.
506
507 @menu
508 * Invoking convert-ly::
509 * Command line options for convert-ly::
510 * Problems with convert-ly::
511 @end menu
512
513 @node Invoking convert-ly
514 @subsection Invoking @command{convert-ly}
515
516 @command{convert-ly} utiliza los enunciados @code{\version} de los
517 archivos de entrada para detectar el número de versión antiguo.  En
518 casi todos los casos, para actualizar el archivo de entrada basta con
519 ejecutar
520
521 @example
522 convert-ly -e miarchivo.ly
523 @end example
524
525 @noindent
526 dentro del directorio que contiene el archivo.  Con esto se actualiza
527 @code{miarchivo.ly} @emph{in situ} y se preserva el archivo original
528 @code{miarchivo.ly~}.
529
530 Para convertir de una vez todos los archivos de entrada que hay en un
531 directorio, use
532
533 @example
534 convert-ly -e *.ly
535 @end example
536
537
538 De forma alternativa, si queremos especificar un nombre distinto para
539 el archivo actualizado, preservando el archivo original con el mismo
540 nombre, haga
541
542 @example
543 convert-ly miarchivo.ly > minuevoarchivo.ly
544 @end example
545
546 @command{convert-ly} siempre convierte al último cambio de sintaxis
547 que es capaz de manejar.  Esto supone que el número de @code{\version}
548 que aparece en el archivo convertidoo suele ser más bajo que la
549 versión del propio programa @command{convert-ly}.
550
551 El programa imprimirá una relación de los números de versión para los
552 que se han hecho conversiones.  Si no se imprime ningún número de
553 versión, el archivo ya está actualizado.
554
555 @noindent
556 Los usuarios de MacOS@tie{}X pueden ejecutar esta instrucción bajo el
557 menú @code{Compilar > Actualizar sintaxis}.
558
559 Los usuarios de Windows deben introducir esta instrucción en una
560 ventana del terminal del sistema, que se encuentra por lo general bajo
561 @code{Inicio > Accesorios > Símbolo del sistema}.
562
563
564 @node Command line options for convert-ly
565 @subsection Command line options for @command{convert-ly}
566
567
568 En general, el programa se invoca de la manera siguiente:
569
570 @example
571 convert-ly [@var{opción}]@dots{} @var{archivo}@dots{}
572 @end example
573
574
575 Se pueden dar las siguientes opciones:
576
577 @table @code
578 @item -e,--edit
579 Aplicar las conversiones directamente al archivo de entrada,
580 modificándolo in situ.
581
582 @item -f,--from=@var{versión_de_origen}
583 Establece la versión desde la que convertir.  Si no aparece esta
584 opción, @command{convert-ly} tratará de adivinarla, basándose en el
585 enunciado @code{\version} del archivo.  Ejemplo: @code{--from=2.10.25}
586
587 @item -n,--no-version
588 Normalmente @command{convert-ly} añade un indicador @code{\version} a
589 la salida.  La especificación de esta opción lo suprime.
590
591 @item -s, --show-rules
592 Mostrar todas las conversiones conocidas y salir.
593
594 @item --to=@var{versión_final}
595 Fijar la versión de destino de la conversión.  De forma predeterminada
596 se convierte a la última versión disponible.
597
598 @item -h, --help
599 Imprimir la ayuda de la utilización.
600 @end table
601
602 Para actualizar fragmentos de LilyPond en archivos de texinfo, use
603
604 @example
605 convert-ly --from=... --to=... --no-version *.itely
606 @end example
607
608 Para ver los cambios en la sintaxis de LilyPond entre dos versiones
609 dadas, use
610
611 @example
612 convert-ly --from=... --to=... -s
613 @end example
614
615
616 @node Problems with convert-ly
617 @subsection Problems with @code{convert-ly}
618
619 Al ejecutar convert-ly en una ventana del Símbolo del Sistema bajo
620 Windows sobre un archivo que tiene espacios en el nombre o en la ruta,
621 es necesario encerrar todo el nombre del archivo de entrada con tres
622 (!) pares de comillas:
623
624 @example
625 convert-ly """D:/Mis partituras/Oda.ly""" > "D:/Mis partituras/nueva Oda.ly"
626 @end example
627
628 Si la orden simple @command{convert-ly -e *.ly} no funciona porque la
629 instrucción expandida se hace muy larga, en vez de ello la orden
630 @command{convert-ly} se puede poner dentro de un bucle.  Este ejemplo
631 para UNIX actualiza todos los documentos @code{.ly} del directorio
632 actual
633
634 @example
635 for f in *.ly; do convert-ly -e $f; done;
636 @end example
637
638 En la ventana del terminal de órdenes de Windows, la instrucción
639 correspondiente es
640
641 @example
642 for %x in (*.ly) do convert-ly -e """%x"""
643 @end example
644
645 No se manejan todos los cambios en el lenguaje.  Sólo se puede
646 especificar una opción de salida.  La actualización automática de
647 Scheme y los interfaces Scheme de LilyPond es bastante improbable;
648 prepárese para trucar el código de Scheme a mano.
649
650 @verbatim
651 Hay algunas cosas que convert-ly no puede manejar.  He aquí una lista
652 de aquellas limitaciones que han dado lugar a protestas de la
653 comunidad.
654
655 Se ha escogido esta estructura de informe de fallo porque convert-ly
656 tiene una estructura que no permite implementar de forma progresiva
657 todos los cambios necesarios.  Así pues esto es sólo una lista de
658 deseos, y se incluye aquí como referencia.
659
660 1.6->2.0:
661  No siempre convierte el bajo cifrado correctamente, específicamente cosas como {<
662 >}.  El comentario de Mats sobre cómo solventar el problema:
663    Para poder ejecutar convert-ly
664    sobre él, primero sustituí todas las apariciones de '{<' a algo mudo como '{#'
665    y de forma similar sustituí '>}' con '&}'.  Después de la conversión, pude
666    volver a cambiarlos de '{ #' a '{ <' y de '& }' a '> }'.
667  No convierte todos los marcados de texto correctamente.  En sintaxis antigua,
668  se podían agrupar varios marcados entre paréntesis, p.ej.
669    -#'((bold italic) "cadena")
670    Esto se convierte incorrectamente en
671    -\markup{{\bold italic} "cadena"}
672    en vez del correcto
673    -\markup{\bold \italic "cadena"}
674 2.0->2.2:
675  No maneja \partcombine
676  No hace \addlyrics => \lyricsto, esto rompe algunas partituras con varias estrofas.
677 2.0->2.4:
678  \magnify no se cambia por \fontsize.
679     - \magnify #m => \fontsize #f, donde f = 6ln(m)/ln(2)
680  remove-tag no se cambia.
681     - \applyMusic #(remove-tag '. . .) => \keepWithTag #'. . .
682  first-page-number no se cambia.
683     - first-page-number no => print-first-page-number = ##f
684  Los saltos de línea en las cadenas de cabecera no se convierten.
685     - \\\\  como salto de línea en las cadenas de \header  => \markup \center-align <
686       "Primera línea" "Segunda línea" >
687  Los terminadores de crescendo y decrescendo no se convierten.
688     - \rced => \!
689     - \rc => \!
690 2.2->2.4:
691  \turnOff (usado en \set Staff.VoltaBracket = \turnOff) no se convierte
692 adecuadamente.
693 2.4.2->2.5.9
694  \markup{ \center-align <{ ... }> } se tendría que convertir en:
695  \markup{ \center-align {\line { ... }} }
696  pero ahora, falta el \line.
697 2.4->2.6
698  Los caracteres especiales de LaTeX como $~$ en el texto no se convierten a UTF8.
699 2.8
700  \score{} ahora debe empezar con una expresión musical.  Cualquier otra cosa
701  (en particular, \header{}) debe ir después de la música.
702 @end verbatim
703
704
705 @node Reporting bugs
706 @section Reporting bugs
707
708 @cindex bugs (fallos)
709 @cindex fallos (bugs)
710 @cindex informes de fallo
711
712 Si tiene una entrada que produce una interrupción abrupta o una salida
713 errónea, entonces eso es un bug (fallo).  Hay una lista de los fallos
714 actuales en nuestro rastreador de fallos de Google Code:
715
716 @uref{http://code.google.com/p/lilypond/issues/list}
717
718 Si descubre un error que no está en la lista, le rogamos que envíe un
719 informe del fallo siguiendo las instrucciones que aparecen en
720
721 @uref{http://lilypond.org/web/devel/participating/bugs}
722
723 Le rogamos, asimismo, que para los informes prepare y envíe ejemplos
724 mínimos de los fallos.  No tenemos los recursos para investigar
725 informes que no sean lo más pequeños posible.