]> git.donarmstrong.com Git - lilypond.git/blobdiff - Documentation/es/usage/running.itely
Doc: de-es-ja Remove potential copyright issue.
[lilypond.git] / Documentation / es / usage / running.itely
index 8d551737e916f134a1758c2583edc49fb335c863..31391855775c423e10c056d6a815edc9869e88ef 100644 (file)
@@ -1,7 +1,7 @@
 @c -*- coding: utf-8; mode: texinfo; documentlanguage: es -*-
 
 @ignore
-    Translation of GIT committish: 4b2f03141029b4bd73bee4d6175f727d92390076
+    Translation of GIT committish: e776d5bb2a48191d2c7ccd60b160211462701b2e
 
     When revising a translation, copy the HEAD committish of the
     version that you are working on.  For details, see the Contributors'
@@ -49,7 +49,8 @@ sistema operativo.  Los usuarios de Windows posiblemente estén más
 familiarizados con los términos @q{ventana de MS-DOS} o @q{línea de
 comandos}; Los usuarios de MacOS@tie{}X puede que estén más
 familiarizados con los términos @q{terminal} o @q{consola}.  Éstos
-deberían consultar también el apartado @ref{Configuración para MacOS X}.
+podrían requerir algunas configuraciones adicionales y deberían
+consultar también el apartado @rweb{MacOS X}.
 
 La descripción del uso de esta parte de los sistemas operativos se
 sale del ámbito de este manual; le rogamos que consulte otros
@@ -60,6 +61,7 @@ documentos sobre este tema si no le resulta familiar la línea de
 * Invocar a LilyPond::
 * Opciones de la línea de órdenes para lilypond::
 * Variables de entorno::
+* LilyPond en una jaula de chroot::
 @end menu
 
 @node Invocar a LilyPond
@@ -280,8 +282,12 @@ basadas en Scheme, en bruto.
 Ejemplo: @code{lilypond -dbackend=svg @var{archivo}.ly}
 
 @item preview
+@cindex vista previa, línea de órdenes
 Generar un archivo de salida que contenga solamente los títulos de
-cabecera y el primer sistema de la primera página.
+cabecera y el primer sistema de música.  Si se usan bloques
+@code{\bookpart}, los títulos y el primer sistema de todos los bloques
+@code{\bookpart} aparecerán en la salida.  Los motores @code{ps},
+@code{eps} y @code{svg} contemplan esta opción.
 
 @item print-pages
 Generar las páginas completas, el ajuste predeterminado.
@@ -435,6 +441,118 @@ predeterminado es @code{70}.
 @end table
 
 
+@node LilyPond en una jaula de chroot
+@unnumberedsubsec LilyPond en una jaula de chroot
+@translationof LilyPond in chroot jail
+
+La preparación del servidor para que ejecute LilyPond en una jaula de
+chroot es una tarea muy complicada.  Los pasos están relacionados más
+abajo.  Los ejemplos que aparecen en cada uno de los pasos son válidos
+para Ubuntu Linux, y pueden requerir el uso de @code{sudo} según
+corresponda.
+
+@itemize
+
+@item Instale los paquetes necesarios: LilyPond, GhostScript e ImageMagick.
+
+@item Cree un usuario nuevo con el nombre de @code{lily}:
+
+@example
+adduser lily
+@end example
+
+@noindent
+Esto también creará un nuevo grupo para el usuario @code{lily}, y una
+carpeta personal, @code{/home/lily}
+
+@item En la carpeta personal del usuario @code{lily}, cree un archivo para usarlo como un sistema de archivos separado:
+
+@example
+dd if=/dev/zero of=/home/lily/loopfile bs=1k count= 200000
+@end example
+
+@noindent
+Este ejemplo crea un archivo de 200MB para su uso como el sistema de
+archivos de la jaula.
+
+@item Cree un dispositivo loop, haga un sistema de archivos y móntelo,
+después cree una carpeta que sea escribible por el usuario
+@code{lily}:
+
+@example
+mkdir /mnt/lilyloop
+losetup /dev/loop0 /home/lily/loopfile
+mkfs -t ext3 /dev/loop0 200000
+mount -t ext3 /dev/loop0 /mnt/lilyloop
+mkdir /mnt/lilyloop/lilyhome
+chown lily /mnt/lilyloop/lilyhome
+@end example
+
+@item En la configuración de los servidores, JAIL será @code{/mnt/lilyloop}
+y DIR será @code{/lilyhome}.
+
+@item Cree un gran árbol de directorios dentro de la jaula copiando los
+archivos necesarios, como se muestra en el guión de ejemplo que aparece
+más abajo.
+
+Puede usar @code{sed} para crear los archivos de copia necesarios para
+un ejecutable dado:
+
+@example
+for i in "/usr/local/lilypond/usr/bin/lilypond" "/bin/sh" "/usr/bin/; do ldd $i | sed 's/.*=> \/\(.*\/\)\([^(]*\).*/mkdir -p \1 \&\& cp -L \/\1\2 \1\2/' | sed 's/\t\/\(.*\/\)\(.*\) (.*)$/mkdir -p \1 \&\& cp -L \/\1\2 \1\2/' | sed '/.*=>.*/d'; done
+@end example
+
+@end itemize
+
+@subheading Guión de ejemplo para Ubuntu 8.04 de 32 bits
+
+@example
+#!/bin/sh
+## aquí se fijan los valores predeterminados
+
+username=lily
+home=/home
+loopdevice=/dev/loop0
+jaildir=/mnt/lilyloop
+# prefijo (¡sin la barra inicial!)
+lilyprefix=usr/local
+# el directorio en que lilypond se encuentra instalado en el sistema
+lilydir=/$lilyprefix/lilypond/
+
+userhome=$home/$username
+loopfile=$userhome/loopfile
+adduser $username
+dd if=/dev/zero of=$loopfile bs=1k count=200000
+mkdir $jaildir
+losetup $loopdevice $loopfile
+mkfs -t ext3 $loopdevice 200000
+mount -t ext3 $loopdevice $jaildir
+mkdir $jaildir/lilyhome
+chown $username $jaildir/lilyhome
+cd $jaildir
+
+mkdir -p bin usr/bin usr/share usr/lib usr/share/fonts $lilyprefix tmp
+chmod a+w tmp
+
+cp -r -L $lilydir $lilyprefix
+cp -L /bin/sh /bin/rm bin
+cp -L /usr/bin/convert /usr/bin/gs usr/bin
+cp -L /usr/share/fonts/truetype usr/share/fonts
+
+# Ahora la magia de copiar las bibliotecas
+for i in "$lilydir/usr/bin/lilypond" "$lilydir/usr/bin/guile" "/bin/sh" "/bin/rm" "/usr/bin/gs" "/usr/bin/convert"; do ldd $i | sed 's/.*=> \/\(.*\/\)\([^(]*\).*/mkdir -p \1 \&\& cp -L \/\1\2 \1\2/' | sed 's/\t\/\(.*\/\)\(.*\) (.*)$/mkdir -p \1 \&\& cp -L \/\1\2 \1\2/' | sed '/.*=>.*/d'; done | sh -s
+
+# Los archivos compartidos para ghostscript...
+      cp -L -r /usr/share/ghostscript usr/share
+# Los archivos compartidos para ImageMagick
+      cp -L -r /usr/lib/ImageMagick* usr/lib
+
+### Ahora, suponiendo que tenemos test.ly en /mnt/lilyloop/lilyhome, deberíamos poder ejecutar:
+### Observe que /$lilyprefix/bin/lilypond es un guión, que establece un valor para LD_LIBRARY_PATH : esto es crucial
+      /$lilyprefix/bin/lilypond -jlily,lily,/mnt/lilyloop,/lilyhome test.ly
+@end example
+
+
 @node Mensajes de error
 @section Mensajes de error
 @translationof Error messages
@@ -570,17 +688,18 @@ queramos el salto de línea.  Para ver más detalles, consulte
 @unnumberedsubsec Aparece un pentagrama de más
 @translationof An extra staff appears
 
-Si no se crean los contextos explícitamente con @code{\new}, se
-crearán discretamente tan pronto como se encuentra una instrucción que
-no se puede aplicar a un contexto existente.  En partituras sencillas,
-la creación automática de los contextos es útil, y casi todos los
-ejemplos de los manuales de LilyPond se aprovechan de esta
-simplificación.  Pero ocasionalmente la creación discreta de contextos
-puede hacer aflorar pentagramas o partituras nuevos e inesperados.
-Por ejemplo, podría esperarse que el código siguiente hiciera que
-todas las notas dentro del pentagrama siguiente estuvieran coloreadas
-de rojo, pero de hecho el resultado son dos pentagramas, permaneciendo
-el de abajo con las notas en el color negro predeterminado.
+Si no se crean los contextos explícitamente con @code{\new} o con
+@code{\context}, se crearán discretamente tan pronto como se encuentra
+una instrucción que no se puede aplicar a un contexto existente.  En
+partituras sencillas, la creación automática de los contextos es útil,
+y casi todos los ejemplos de los manuales de LilyPond se aprovechan de
+esta simplificación.  Pero ocasionalmente la creación discreta de
+contextos puede hacer aflorar pentagramas o partituras nuevos e
+inesperados.  Por ejemplo, podría esperarse que el código siguiente
+hiciera que todas las notas dentro del pentagrama siguiente estuvieran
+coloreadas de rojo, pero de hecho el resultado son dos pentagramas,
+permaneciendo el de abajo con las notas en el color negro
+predeterminado.
 
 @lilypond[quote,verbatim,relative=2]
 \override Staff.NoteHead #'color = #red
@@ -610,16 +729,18 @@ cada uno de los cuales crea implícitamente bloques @code{Staff} y
 
 @lilypond[quote,verbatim]
 \repeat unfold 2 {
-  \relative c' { c d e f }
+  \relative c' { c4 d e f }
 }
 @end lilypond
 
-La forma correcta es invertir el orden de las instrucciones
-@code{\repeat} y @code{\relative}, así:
+El problema se resuelve instanciando el contexto @code{Voice}
+explícitamente:
 
 @lilypond[quote,verbatim]
-\relative c' {
-  \repeat unfold 2 { c d e f }
+\new Voice {
+  \repeat unfold 2 {
+    \relative c' { c4 d e f }
+  }
 }
 @end lilypond
 
@@ -636,10 +757,10 @@ correctamente emparejados.
 El error más común es la falta de una llave de cierre, (@code{@}}), al
 final de un bloque @code{score}.  Aquí la solución es obvia: compruebe
 que el bloque @code{score} está correctamente cerrado.  La estructura
-correcta de un archivo de entrada está descrita en @ref{Cómo funcionan
-los archivos de entrada de LilyPond}.  Usando un editor que resalte
-automáticamente las llaves correspondientes es de mucha ayuda para
-evitar estos errores.
+correcta de un archivo de entrada está descrita en @rlearning{Cómo
+funcionan los archivos de entrada de LilyPond}.  Usando un editor que
+resalte automáticamente las llaves correspondientes es de mucha ayuda
+para evitar estos errores.
 
 Una segunda causa frecuente es la falta de un espacio entre la última
 sílaba de un bloque lyrics (de letra) y la llave de cierre,