Manual de aprendizaje de GNU LilyPond: 2.2.2 Trabajar sobre los archivos de entrada

### 2.2.2 Trabajar sobre los archivos de entrada

Los archivos de entrada de LilyPond son como los archivos fuente de muchos lenguajes de programación corrientes. Contienen un enunciado de versión, son sensibles a las mayúsculas y generalmente los espacios se ignoran. Las expresiones se forman con llaves `{ }` y los comentarios se denotan por un signo de porcentaje (`%`) o por `%{ … %}` .

Si la frase anterior no tiene sentido para usted ¡no se preocupe! A continuación explicaremos el significado de todos estos términos:

- Enunciado de la versión: Todo archivo de LilyPond debe contener un enunciado de versión. Un enunciado de versión es una línea que describe la versión de LilyPond para la que se escribió este archivo, como en el ejemplo siguiente:

  >     \version "2.24.4"

  Por convenio, el enunciado de versión se coloca al principio del archivo de LilyPond.

  El enunciado de versión es importante por dos motivos como mínimo. En primer lugar, permite la actualización automática del código de entrada conforme se va modificando la sintaxis de LilyPond. En segundo lugar, indica la versión de LilyPond que se necesita para compilar el archivo.

  Si no se escribe ningún enunciado de versión en el archivo de entrada, LilyPond imprime una advertencia durante la compilación del mismo.

- Sensible a las mayúsculas: tiene importancia el hecho de que introduzca una letra en minúsculas (p.ej. `a, b, s, t`) o en mayúsculas (p.ej. `A, B, S, T`). Las notas son minúsculas: ‘`{ c d e }`’ es una entrada válida; ‘`{ C D E }`’ produciría un mensaje de error.
- Insensible al número de espacios: no importa cuántos espacios (o saltos de línea o de tabulación) añada. ‘`{ c4 d e }`’ significa lo mismo que ‘`{ c4 d e }`’ y que

  >     { c4                       d
  >                        e   }

  Por supuesto, el ejemplo anterior es difícil de leer. Una regla práctica es sangrar los bloques de código con un carácter de tabulación, o bien con dos espacios:

  >     {
  >       c4 d e
  >     }

  Sin embargo, sí se necesitan espacios para separar muchos elementos sintácticos unos de otros. En otras palabras, los espacios se pueden siempre añadir, pero no siempre eliminar. Dado que la falta de espacios puede dar lugar a extraños errores, recomendamos insertar espacios siempre antes y después de cualquier elemento sintáctico, por ejemplo, antes y después de las llaves.

- Expresiones: Todo fragmento de código de entrada para LilyPond ha de llevar { llaves } antes y después de la entrada. Estas llaves le dicen a LilyPond que la entrada es una expresión musical unitaria, igual que los paréntesis ‘`()`’ de las matemáticas. Las llaves deben ir rodeadas de un espacio a no ser que se encuentren al comienzo o al final de una línea, para evitar cualquier ambigüedad.

  Una instrucción de LilyPond seguida de una expresión simple entre llaves (como por ejemplo ‘`relative { … }`’) también es una expresión musical unitaria.

- Comentarios: Un comentario es una nota para el lector humano de la entrada musical; se ignora cuando esta entrada se analiza, de manera que no tiene ningún efecto sobre la salida impresa. Existen dos tipos de comentarios. El símbolo de porcentaje ‘`%`’ introduce un comentario de línea; todo lo que se encuentra después de ‘`%`’ en esa línea se ignora. Por convenio, una línea de comentario se coloca por encima del código a que se refiere el comentario.

  >     a4 a a a
  >     % este comentario se refiere a las notas Si
  >     b2 b

  Un comentario de bloque marca una sección entera de entrada musical como comentario. Todo lo que está encerrado dentro de `%{` y `%}` se ignora (pero los comentarios no pueden anidarse, lo que significa que un comentario de bloque no puede incluir otros comentarios de bloque). Si lo hiciera, el primer `%}` daría por terminado los dos comentarios de bloque. El siguiente fragmento muestra algunos posibles usos para los comentarios:

  >     % a continuación van las notas de campanitas del lugar
  >       c4 c g' g a a g2

  >     %{
  >       Esta línea y las notas que aparecen más abajo
  >       se ignoran, por estar dentro de un
  >       comentario de bloque.

  >       f4 f e e d d c2
  >     %}

#### LilyPond — Manual de aprendizaje v2.24.4 (rama estable).