]> git.donarmstrong.com Git - lilypond.git/blob - Documentation/es/usage/suggestions.itely
19aafd3e86f0608c1740c2fb191e5f57f8100c7e
[lilypond.git] / Documentation / es / usage / suggestions.itely
1 @c -*- coding: utf-8; mode: texinfo; documentlanguage: es -*-
2
3 @ignore
4     Translation of GIT committish: 45d0e015edc53abebada17a0fdb1d665f7edf900
5
6     When revising a translation, copy the HEAD committish of the
7     version that you are working on.  For details, see the Contributors'
8     Guide, node Updating translation committishes..
9 @end ignore
10
11 @c \version "2.19.21"
12
13 @node Sugerencias para escribir archivos de entrada
14 @chapter Sugerencias para escribir archivos de entrada
15 @translationof Suggestions for writing files
16
17 En este momento está preparado para comenzar a escribir archivos de
18 LilyPond más grandes -- no sólo los pequeños ejemplos que aparecen en
19 el tutorial, sino piezas completas --. Pero ¿cómo debe proceder para
20 hacerlo?
21
22 En la medida en que LilyPond entienda sus archivos y produzca la
23 salida que usted pretendía, realmente no importa mucho qué aspecto
24 tengan sus archivos.  Sin embargo existen algunas otras cosas a tener
25 en cuenta cuando se escriben archivos de LilyPond.
26
27 @itemize
28 @item ¿Qué ocurre si comete un fallo?  La estructura de un archivo
29 de LilyPond puede hacer que ciertos errores se hagan más fáciles (o
30 más difíciles) de encontrar.
31
32 @item ¿Qué ocurre si quiere compartir sus archivos con otras personas?
33 De hecho, ¿y si quiere alterar sus propios archivos después de algunos
34 años?  Algunos archivos de LilyPond se comprenden a primera vista;
35 otros pueden tenerle rascándose la cabeza durante una hora.
36
37 @item ¿Qué ocurre si quiere actualizar su archivo de LilyPond para poderlo
38 usar con una versión más reciente del programa?
39
40 La sintaxis de la entrada se modifica de forma ocasional según
41 LilyPond se va perfeccionando.  Casi todos los cambios se pueden hacer
42 de forma automática con @code{convert-ly}, pero algunos podrían
43 necesitar de una ayuda manual.  Los archivos de LilyPond se pueden
44 estructurar para que sean más fáciles (o más difíciles) de actualizar.
45
46 @end itemize
47
48 @menu
49 * Sugerencias de tipo general::
50 * Tipografiar música existente::
51 * Proyectos grandes::
52 * Solución de problemas::
53 * Make y los Makefiles::
54 @end menu
55
56
57 @node Sugerencias de tipo general
58 @section Sugerencias de tipo general
59 @translationof General suggestions
60
61 Presentamos algunas sugerencias que le pueden servir de ayuda para evitar
62 o corregir problemas:
63
64 @itemize
65 @item @strong{Incluya los números de @code{\version} en todos los archivos}.  Dése cuenta de que todas las
66 plantillas contienen información sobre la @code{\version}.  Le
67 recomendamos mucho que siempre incluya la @code{\version}, sin
68 importar cuán pequeño pueda ser su archivo.  Desde la experiencia
69 personal podemos decirle que es bastante frustrante intentar recordar
70 el número de versión de LilyPond que estaba usando hace unos años.
71 @code{convert-ly} requiere que declare qué versión de LilyPond
72 utilizó.
73
74 @item @strong{Incluya comprobaciones}: @ruser{Comprobación de compás y de número de compás},
75 @ruser{Comprobación de octava}.  Si incluye comprobaciones de vez en cuando, en
76 caso de que cometa un error podrá localizarlo mucho más rápidamente.
77 ¿Con qué frecuencia es @q{de vez en cuando}?  Depende de la
78 complejidad de la música.  Para una música muy sencilla, quizá tan
79 sólo una o dos veces.  Para una música muy compleja, quizá a cada
80 compás.
81
82 @item @strong{Un compás por cada línea de texto}.  Si hay algo muy complicado, ya sea
83 en la propia música o en la salida que desea producir, a menudo
84 conviene escribir un solo compás por cada línea.  El ahorro en espacio
85 de pantalla que se obtiene al amontonar ocho compases por línea no
86 merece la pena si luego tiene que @q{depurar} los archivos.
87
88 @item @strong{Comente los archivos}.  Utilice o números de compás (de vez en cuando)
89 o referencias a temas musicales (@q{segundo tema de los violines,}
90 @q{cuarta variación,} etc.).  Puede que no necesite comentarios cuando
91 introduce una pieza por vez primera, pero si quiere volver a ella o
92 modificar algo al cabo de dos o tres años, y también si le pasa la
93 fuente a un amigo, será todo un desafío determinar sus intenciones o
94 de qué manera estaba estructurado el archivo si no le añadió los
95 comentarios.
96
97 @item @strong{Aplique márgenes a las llaves}.  Muchos problemas están causados por una
98 falta de equilibrio en el número de @code{@{} y @code{@}}.
99
100 @item @strong{Escriba las duraciones explícitamente} al comienzo de las secciones
101 e identificadores.  Si especifica @code{c4 d e} al principio de una
102 frase (en lugar de sólo @code{c d e}) se puede ahorrar problemas si
103 reelabora la música más tarde.
104
105 @item @strong{Separe los trucos} de las definiciones musicales.  Consulte
106 @rlearning{Ahorrar tecleo mediante variables y funciones} y
107 @rlearning{Hojas de estilo}.
108
109 @end itemize
110
111
112 @node Tipografiar música existente
113 @section Tipografiar música existente
114 @translationof Typesetting existing music
115
116 Si está introduciendo música a partir de una partitura existente (es
117 decir, tipografiando una hoja de música ya impresa),
118
119 @itemize
120
121 @item Introduzca en LilyPond un sistema del manuscrito, o copia física, de
122 cada vez (pero mantenga la práctica de escribir un compás por línea de
123 texto), y compruebe cada sistema cuando lo haya terminado.  Puede usar
124 las propiedades @code{showLastLength} o @code{showFirstLength} para
125 acelerar el proceso (véase @ruser{Saltar la música corregida}).
126
127 @item Defina @code{mBreak = @{ \break @}} e inserte @code{\mBreak}
128 dentro del archivo de entrada donde el manuscrito tenga un saldo de
129 línea.  De esta forma le resultará mucho más fácil comparar la música
130 de LilyPond con la original.  Cuando haya terminado de revisar su
131 partitura podrá definir @code{mBreak = @{ @}} para quitar todos esos
132 saltos de línea.  Así permitirá a LilyPond colocar los saltos donde
133 éste lo estime más oportuno.
134
135 @item Al escribir una parte para un instrumento transpositor dentro de una
136 variable, se recomienda que las notas estén envueltas dentro de
137
138 @example
139 \transpose c altura-natural @{@dots{}@}
140 @end example
141
142 @noindent
143 (donde @code{altura-natural} es la afinación natural del instrumento)
144 de forma que la música dentro de la variable esté realmente en Do
145 mayor.  Después podemos volver a transportarlas en sentido inverso
146 cuando se utiliza la variable, si es necesario, pero quizá no queramos
147 hacerlo (p.ej., al imprimir una partitura en afinación de concierto,
148 al convertir una parte de trombón de clave de Sol a clave de Fa,
149 etc.).  Es menos probable cometer errores en los transportes si toda
150 la música que está dentro de las variables se encuentra en un tono
151 coherente.
152
153 Asimismo, haga los transportes exclusivamente hacia o desde Do mayor.
154 Esto significa que aparte de ésta, las únicas tonalidades que usaremos
155 serán los tonos de afinación de los instrumentos transpositores: bes
156 para una trompeta en Si bemol, aes para un clarinete en La bemol, etc.
157
158 @end itemize
159
160
161
162 @node Proyectos grandes
163 @section Proyectos grandes
164 @translationof Large projects
165
166 Al trabajar en proyectos grandes se hace esencial tener una estructura
167 clara en los archivos de LilyPond:
168
169 @itemize
170
171 @item @strong{Utilice un identificador para cada voz}, con un mínimo de
172 estructura dentro de la definición.  La estructura de la sección
173 @code{\score} es la que cambiará con mayor probabilidad; por contra, es
174 extremadamente improbable que cambie la definición de @code{violin} en
175 versiones nuevas de LilyPond.
176
177 @example
178 violin = \relative @{
179 g'4 c'8. e16
180 @}
181 @dots{}
182 \score @{
183   \new GrandStaff @{
184     \new Staff @{
185       \violin
186     @}
187   @}
188 @}
189 @end example
190
191 @item @strong{Separe los trucos de las definiciones musicales}.
192 Ya se mencionó con anterioridad, pero para proyectos grandes es vital.
193 Quizá tengamos que cambiar la definición de @code{fluegop}, pero en ese
194 caso sólo lo tendremos que hacer una vez, y aún podremos evitar tocar
195 nada dentro de @code{violin}.
196
197 @example
198 fluegop = _\markup@{
199   \dynamic f \italic \small @{ 2nd @} \hspace #0.1 \dynamic p @}
200 violin = \relative @{
201 g'4\fluegop c'8. e16
202 @}
203 @end example
204
205 @end itemize
206
207
208 @node Solución de problemas
209 @section Solución de problemas
210 @translationof Troubleshooting
211
212 Antes o después escribirá un archivo que LilyPond no podrá compilar.
213 Los mensajes que LilyPond proporciona pueden ayudarle a encontrar el
214 error, pero en muchos casos tendrá que llevar a cabo algún tipo de
215 investigación para determinar el origen del problema.
216
217 Las herramientas más poderosas para este cometido son el comentario de
218 una sola línea (indicado por @code{%}) y el comentario de bloque
219 (indicado por @code{%@{@dots{}%@}}).  Si no sabe dónde está el problema,
220 comience convirtiendo grandes secciones del archivo de entrada en un
221 comentario.  Después de eliminar una sección convirtiéndola en un
222 comentario, pruebe a compilar el archivo otra vez.  Si funciona,
223 entonces el problema debía estar en la porción que había eliminado.
224 Si no funciona, continúe eliminando material (transformándolo en
225 comentarios) hasta que tenga algo que funcione.
226
227 En un caso extremo podría terminar con sólo
228
229 @example
230 \score @{
231   <<
232     % \melodia
233     % \armonia
234     % \bajo
235   >>
236   \layout@{@}
237 @}
238 @end example
239
240 @noindent
241 (en otras palabras: un archivo sin música)
242
243 Si ocurre esto, no abandone.  Descomente un trozo pequeño -- digamos
244 la parte del bajo -- y observe si funciona.  Si no es así, transforme
245 en comentarios toda la música del bajo (pero deje el @code{\bajo} de
246 la sección @code{\score} no comentado.
247
248 @example
249 bajo = \relative @{
250 %@{
251   c'4 c c c
252   d d d d
253 %@}
254 @}
255 @end example
256
257 Ahora empiece poco a poco descomentando cada vez más fracciones de la
258 parte del @code{bajo} hasta que encuentre la línea del problema.
259
260 Otra técnica de depuración muy útil es la construcción de
261 @rweb{Ejemplos mínimos}.
262
263
264 @node Make y los Makefiles
265 @section Make y los Makefiles
266 @translationof Make and Makefiles
267
268 @cindex make, archivos de
269 @cindex make
270
271 Posiblemente todas las plataformas en que puede correr LilyPond,
272 contemplan una posibilidad de software llamada @code{make}. Este
273 programa lee un archivo especial llamado @code{Makefile} que define
274 las relaciones de dependencia entre los archivos y qué instrucciones
275 necesitamos dar al sistema operativo para producir un archivo a partir
276 de otro.  Por ejemplo, el archivo de make detallaría cómo obtener
277 @file{balada.pdf} y @file{balada.midi} a partir de @file{balada.ly}
278 mediante la ejecución de Lilypond.
279
280 Existen ocasiones en las que es buena idea crear un @code{Makefile}
281 para nuestro proyecto, bien sea por nuestra propia comodidad o como
282 cortesía para otros que posiblemente tengan acceso a nuestros archivos
283 fuente.  Esto es cierto para proyectos muy grandes con muchos archivos
284 de inclusión y distintas opciones de salida (p.ej. partitura completa,
285 particellas, partitura del director, reducción para piano, etc.), o
286 para proyectos que requieren instrucciones difíciles para montarlas
287 (como los proyectos de @code{lilypond-book}). La complejidad y
288 flexibilidad de los Makefiles varía enormemente según las necesidades
289 y la habilidad de los autores.  El programa GNU Make viene instalado
290 en las distribuciones de GNU/Linux y en MacOS X, y también existe para
291 Windows.
292
293 Consulte el @strong{Manual de GNU Make} para ver todos los detalles
294 sobre el uso de @code{make}, pues lo que sigue a continuación ofrece
295 solamente una pincelada de todo lo que es capaz de hacer.
296
297 Las instrucciones que definen las reglas en un archivo de make
298 difieren en función de la plataforma; por ejemplo, las distintas
299 formas de GNU/Linux y MacOS usan @code{bash}, mientras que Windows usa
300 @code{cmd}.  Observeque en MacOS X, tenemos que configurar el sistema
301 para que utilice el intérprete de órdenes. A continuación presentamos
302 algunos makefiles de ejemplo, con versiones tanto para GNU/Linux/MacOS
303 como para Windows.
304
305 El primer ejemplo es para una obra orquestal en cuatro movimientos con
306 la estructura de directorios siguiente:
307
308 @example
309 Sinfonia/
310 |-- MIDI/
311 |-- Makefile
312 |-- Notas/
313 |   |-- cello.ily
314 |   |-- cifras.ily
315 |   |-- trompa.ily
316 |   |-- oboe.ily
317 |   |-- trioCuerdas.ily
318 |   |-- viola.ily
319 |   |-- violinUno.ily
320 |   `-- violinDos.ily
321 |-- PDF/
322 |-- Particellas/
323 |   |-- sinfonia-cello.ly
324 |   |-- sinfonia-trompa.ly
325 |   |-- sinfonia-oboes.ly
326 |   |-- sinfonia-viola.ly
327 |   |-- sinfonia-violinUno.ly
328 |   `-- sinfonia-violinDos.ly
329 |-- Partituras/
330 |   |-- sinfonia.ly
331 |   |-- sinfoniaI.ly
332 |   |-- sinfoniaII.ly
333 |   |-- sinfoniaIII.ly
334 |   `-- sinfoniaIV.ly
335 `-- sinfoniaDefs.ily
336 @end example
337
338 Los archivos @file{.ly} de los directorios @code{Partituras} y
339 @code{Particellas} obtienen las notas de archivos @file{.ily} que están en
340 el directorio @code{Notas}:
341
342 @example
343 %%% principio del archivo "sinfonia-cello.ly"
344 \include ../definicionesSinf.ily
345 \include ../Notas/cello.ily
346 @end example
347
348 El makefile tendrá los objetivos de @code{partitura} (la pieza
349 completa en todo su esplendor), @code{movimientos} (partitura completa
350 de los movimientos individuales) y @code{particellas} (partes
351 individuales para los atriles). También existe un objetivo
352 @code{archivo} que produce un tarball de los archivos fuente, adecuado
353 para compartirlo a través de la web o por correo electrónico.  A
354 continuación presentamos el makefile para GNU/Linux o MacOS X.  Se
355 debe guardar con el nombre exacto @code{Makefile} el el directorio
356 superior del proyecto:
357
358 @warning{Cuando se define un objetivo o una regla de patrón, las
359 líneas siguientes deben comenzar con tabuladores, no con espacios.}
360
361 @example
362 # nombre principal de los archivos de salida
363 nombre = sinfonia
364 # determinar cuántos procesadores existen
365 CPU_CORES=`cat /proc/cpuinfo | grep -m1 "cpu cores" | sed s/".*: "//`
366 # La instrucción para ejecutar lilypond
367 LILY_CMD = lilypond -ddelete-intermediate-files \
368                     -dno-point-and-click -djob-count=$(CPU_CORES)
369
370 # Los sufijos utilizados en este Makefile.
371 .SUFFIXES: .ly .ily .pdf .midi
372
373 # Los archivos de entrada y salida se buscan dentro de los directorios relacionados en
374 # la variable VPATH.  Todos esllos son subdirectorios del directorio
375 # en curso (dado por la variable de GNU make `CURDIR').
376 VPATH = \
377   $(CURDIR)/Partituras \
378   $(CURDIR)/PDF \
379   $(CURDIR)/Particellas \
380   $(CURDIR)/Notas
381
382 # La regla de patrón para crear archivos PDF y MIDI a partir de un archivo de entrada LY.
383 # Los archivos de salida .pdf se colocan en el subdirectorio `PDF', y los archivos
384 # .midi van al subdirectorio `MIDI'.
385 %.pdf %.midi: %.ly
386         $(LILY_CMD) $<; \           # esta línea comienza con un salto de tabulación
387         if test -f "$*.pdf"; then \
388             mv "$*.pdf" PDF/; \
389         fi; \
390         if test -f "$*.midi"; then \
391             mv "$*.midi" MIDI/; \
392         fi
393
394 notas = \
395   cello.ily \
396   trompa.ily \
397   oboe.ily \
398   viola.ily \
399   violinUno.ily \
400   violinDos.ily
401
402 # Dependencias de los movimientos.
403 $(nombre)I.pdf: $(nombre)I.ly $(notas)
404 $(nombre)II.pdf: $(nombre)II.ly $(notas)
405 $(nombre)III.pdf: $(nombre)III.ly $(notas)
406 $(nombre)IV.pdf: $(nombre)IV.ly $(notas)
407
408 # Dependencias de la partitura completa.
409 $(nombre).pdf: $(nombre).ly $(notas)
410
411 # Dependencias de las particellas.
412 $(nombre)-cello.pdf: $(nombre)-cello.ly cello.ily
413 $(nombre)-trompa.pdf: $(nombre)-trompa.ly trompa.ily
414 $(nombre)-oboes.pdf: $(nombre)-oboes.ly oboe.ily
415 $(nombre)-viola.pdf: $(nombre)-viola.ly viola.ily
416 $(nombre)-violinUno.pdf: $(nombre)-violinUno.ly violinUno.ily
417 $(nombre)-violinDos.pdf: $(nombre)-violinDos.ly violinDos.ily
418
419 # Teclee `make partitura' para generer la partitura completa de los cuatro
420 # movimientos como un archivo único.
421 .PHONY: partitura
422 partitura: $(nombre).pdf
423
424 # Teclee `make particellas' para generar todas las particellas.
425 # Teclee `make fulanito.pdf' para generar la particella del instrumento `fulanito'.
426 # Ejemplo: `make sinfonia-cello.pdf'.
427 .PHONY: particellas
428 particellas: $(nombre)-cello.pdf \
429        $(nombre)-violinUno.pdf \
430        $(nombre)-violinDos.pdf \
431        $(nombre)-viola.pdf \
432        $(nombre)-oboes.pdf \
433        $(nombre)-trompa.pdf
434
435 # Teclee `make movimientos' para generar los archivos de los
436 # cuatro movimientos de forma separada.
437 .PHONY: movimientos
438 movimientos: $(nombre)I.pdf \
439            $(nombre)II.pdf \
440            $(nombre)III.pdf \
441            $(nombre)IV.pdf
442
443 all: partitura particellas movimientos
444
445 archivo:
446         tar -cvvf stamitz.tar \       # esta línea comienza con un salto de tabulación
447         --exclude=*pdf --exclude=*~ \
448         --exclude=*midi --exclude=*.tar \
449         ../Stamitz/*
450 @end example
451
452
453 Existen ciertas complicaciones en la plataforma Windows. Después de
454 descargar e instalar el programa GNU Make para Windows, debemos
455 configurar la ruta adecuada en las variables de entorno del sistema de
456 forma que el shell del DOS pueda encontrar el programa Make. Para
457 hacerlo, pulse con el botón derecho sobre "Mi PC", elija
458 @code{Propiedades} y @code{Avanzadas}. Pulse sobre @code{Variables de
459 entorno}, y luego en la pestaña @code{Variables del sistema},
460 seleccione @code{Ruta}, pulse sobre @code{editar} y añada la ruta al
461 archivo ejecutable de GNU Make, con lo que quedará algo parecido a lo
462 siguiente:
463
464 @example
465 C:\Archivos de programa\GnuWin32\bin
466 @end example
467
468 El makefile en sí debe modificarse para que maneje distintas
469 instrucciones del shell y para que pueda tratar con los espacios que
470 aparecen en el nombre de algunos directorios del sistema
471 predeterminados. El objetivo @code{archivo} se elimina porque Windows
472 no tiene la instrucción @code{tar}, y Windows tiene también una
473 extensión predeterminada distinta para los archivos MIDI.
474
475
476 @example
477 ## VERSIÓN PARA WINDOWS
478 ##
479 nombre = sinfonia
480 LILY_CMD = lilypond -ddelete-intermediate-files \
481                     -dno-point-and-click \
482                     -djob-count=$(NUMBER_OF_PROCESSORS)
483
484 #obtener el nombre 8.3 de CURDIR (rodeo para los espacios en PATH)
485 workdir = $(shell for /f "tokens=*" %%b in ("$(CURDIR)") \
486           do @@echo %%~sb)
487
488 .SUFFIXES: .ly .ily .pdf .mid
489
490 VPATH = \
491   $(workdir)/Partituras \
492   $(workdir)/PDF \
493   $(workdir)/Particellas \
494   $(workdir)/Notas
495
496 %.pdf %.mid: %.ly
497         $(LILY_CMD) $<      # esta línea comienza con un salto de tabulación
498         if exist "$*.pdf"  move /Y "$*.pdf"  PDF/ # comienzo con tab
499         if exist "$*.mid" move /Y "$*.mid" MIDI/  # comienzo con tab
500
501 notas = \
502   cello.ily \
503   cifras.ily \
504   trompa.ily \
505   oboe.ily \
506   trioCuerdas.ily \
507   viola.ily \
508   violinUno.ily \
509   violinDos.ily
510
511 $(nombre)I.pdf: $(nombre)I.ly $(notas)
512 $(nombre)II.pdf: $(nombre)II.ly $(notas)
513 $(nombre)III.pdf: $(nombre)III.ly $(notas)
514 $(nombre)IV.pdf: $(nombre)IV.ly $(notas)
515
516 $(nombre).pdf: $(nombre).ly $(notas)
517
518 $(nombre)-cello.pdf: $(nombre)-cello.ly cello.ily
519 $(nombre)-trompa.pdf: $(nombre)-trompa.ly trompa.ily
520 $(nombre)-oboes.pdf: $(nombre)-oboes.ly oboe.ily
521 $(nombre)-viola.pdf: $(nombre)-viola.ly viola.ily
522 $(nombre)-violinUno.pdf: $(nombre)-violinUno.ly violinUno.ily
523 $(nombre)-violinDos.pdf: $(nombre)-violinDos.ly violinDos.ily
524
525 .PHONY: partitura
526 partitura: $(nombre).pdf
527
528 .PHONY: particellas
529 particellas: $(nombre)-cello.pdf \
530        $(nombre)-violinUno.pdf \
531        $(nombre)-violinDos.pdf \
532        $(nombre)-viola.pdf \
533        $(nombre)-oboes.pdf \
534        $(nombre)-trompa.pdf
535
536 .PHONY: movimientos
537 movimientos: $(nombre)I.pdf \
538            $(nombre)II.pdf \
539            $(nombre)III.pdf \
540            $(nombre)IV.pdf
541
542 all: partitura particellas movimientos
543 @end example
544
545
546 El Makefile siguiente es para un documento de @command{lilypond-book}
547 hecho en LaTeX.  Este proyecto tiene un índice, que requiere ejecutar
548 la instrucción @command{latex} dos veces para actualizar los enlaces.
549 Todos los archivos de salida se almacenan en el directorio
550 @code{salida} para los documentos .pdf y en el directorio
551 @code{salidahtml} para la salida en formato html.
552
553 @example
554 SHELL=/bin/sh
555 NOMBRE=miproyecto
556 DIR_SALIDA=salida
557 DIR_WEB=salidahtml
558 VISOR=acroread
559 NAVEGADOR=firefox
560 LILYBOOK_PDF=lilypond-book --output=$(DIR_SALIDA) --pdf $(NOMBRE).lytex
561 LILYBOOK_HTML=lilypond-book --output=$(DIR_WEB) $(NOMBRE).lytex
562 PDF=cd $(DIR_SALIDA) && pdflatex $(NOMBRE)
563 HTML=cd $(DIR_WEB) && latex2html $(NOMBRE)
564 INDICE=cd $(DIR_SALIDA) && makeindex $(NOMBRE)
565 VISTA_PREVIA=$(VISOR) $(DIR_SALIDA)/$(NOMBRE).pdf &
566
567 all: pdf web guardar
568
569 pdf:
570         $(LILYBOOK_PDF)  # comienza con un tab
571         $(PDF)           # comienza con un tab
572         $(INDICE)        # comienza con un tab
573         $(PDF)           # comienza con un tab
574         $(VISTA_PREVIA)  # comienza con un tab
575
576 web:
577         $(LILYBOOK_HTML) # comienza con un tab
578         $(HTML)          # comienza con un tab
579         cp -R $(DIR_WEB)/$(NOMBRE)/ ./  # comienza con un tab
580         $(NAVEGADOR) $(NOMBRE)/$(NOMBRE).html &  # comienza con un tab
581
582 guardar: pdf
583         cp $(DIR_SALIDA)/$(NOMBRE).pdf $(NOMBRE).pdf  # comienza con un tab
584
585 clean:
586         rm -rf $(DIR_SALIDA) # comienza con un tab
587
588 web-clean:
589         rm -rf $(DIR_WEB) # comienza con un tab
590
591 archivo:
592         tar -cvvf miproyecto.tar \ # comienza con un tab
593         --exclude=salida/* \
594         --exclude=salidahtml/* \
595         --exclude=miproyecto/* \
596         --exclude=*midi \
597         --exclude=*pdf \
598         --exclude=*~ \
599         ../MiProyecto/*
600 @end example
601
602 HACER: conseguir que funcione en Windows
603
604 El makefile anterior no funciona en Windows.  Una alternativa para los
605 usuarios de Windows sería crear un archivo de lotes sencillo que
606 contenga las instrucciones de montaje.  Esto no rastrea las
607 dependencias en la manera en que lo hace un makefile, pero al menos
608 reduce el proceso de construcción a una sola instrucción.  Guarde el
609 código siguiente como @command{montaje.bat} o @command{montaje.cmd}.
610 El archivo de lotes se puede ejecutar en la línea de comandos del DOS
611 o simplemente haciendo doble click sobre su icono.
612
613 @example
614 lilypond-book --output=salida --pdf miproyecto.lytex
615 cd salida
616 pdflatex miproyecto
617 makeindex miproyecto
618 pdflatex miproyecto
619 cd ..
620 copy salida\miproyecto.pdf MiProyecto.pdf
621 @end example
622
623
624 @seealso
625 Manual de utilización del programa:
626 @rprogram{Configuración para MacOS X},
627 @rprogram{Utilización desde la línea de órdenes},
628 @rprogram{LilyPond-book}