2.2.2 Treball sobre els fitxers d’entrada (Manual d’aprenentatge del GNU LilyPond)

#### 2.2.2 Treball sobre els fitxers d’entrada

Els fitxers d’entrada del LilyPond són com els fitxers font de molts llenguatges de programació corrents. Contenen un enunciat de versió, són sensibles a les majúscules i generalment els espais s’ignoren. Les expressions es formen amb claus `{ }` i els comentaris es denoten per un signe de percentatge (`%`) o per `%{ … %}` .

Si no enteneu res de la frase anterior, no us preocupeu! A continuació explicarem el significat de tots aquests termes:

- Enunciat de la versió: Tot fitxer del LilyPond ha de contenir un enunciat de versió. Un enunciat de versió és una línia que descriu la versió del LilyPond per a la es va escriure aquest fitxer, com a l’exemple següent:

      \version "2.26.0"

  Per conveni, l’enunciat de versió es col·loca al principi del fitxer del LilyPond.

  L’enunciat de versió és important per dos motius com a mínim. En primer lloc, permet l’actualització automàtica del codi d’entrada conforme es va modificant la sintaxi del LilyPond. En segon lloc, indica la versió del LilyPond que es necessita per compilar el fitxer.

  Si no s’escriu cap enunciat de versió al fitxer d’entrada, el LilyPond imprimeix un advertiment durant la compilació del fitxer.

- Sensible a les majúscules: el fet que s’introdueixi una lletra en minúscules (per exemple `a, b, s, t`) o en majúscules (per exemple `A, B, S, T`) té importància. Les notes són minúscules: ‘`{ c d e }`’ és una entrada vàlida; ‘`{ C D E }`’ produiria un missatge d’error.
- Insensible al nombre d’espais: no importa quants espais (o salts de línia o de tabulació) afegiu. ‘`{ c4 d e }`’ significa el mateix que ‘`{ c4 d e }`’ i que

      { c4                       d
                         e   }

  Per suposat, l’exemple anterior és difícil de llegir. Una regla pràctica és sagnar els blocs de codi amb un caràcter de tabulació, o bé amb dos espais:

      {
        c4 d e
      }

  No obstant, sí es necessiten espais per separar molts elements sintàctics els uns dels altres. En altres paraules, els espais es poden sempre afegir, però no sempre eliminar. Degut a què la manca d’espais pot donar lloc a errors estranys, recomanem inserir espais sempre abans i després de qualsevol element sintàctic, per exemple, abans i després de les claus.

- Expressions: Tot fragment de codi d’entrada per al LilyPond ha de portar { claus } abans i després de l’entrada. Aquestes claus li diuen al LilyPond que l’entrada és una expressió musical unitària, igual que els parèntesis ‘`()`’ de les matemàtiques. Les claus han d’anar rodejades d’un espai a no ser que es trobin al començament o al final d’una línia, per evitar qualsevol ambigüitat.

  Una instrucció del LilyPond seguida d’una expressió simple entre claus (com per exemple ‘`\relative c' {… }`’) també és una expressió musical unitària.

- Comentaris: Un comentari és una nota per al lector humà de l’entrada musical; s’ignora quan s’analitza aquesta entrada, de manera que no té cap efecte sobre la sortida impresa. Hi ha dos tipus de comentaris. El símbol de percentatge ‘`%`’ introdueix un comentari de línia; s’ignora tot el que es troba després de ‘`%`’ a aquesta línia. Per conveni, una línia de comentari es col·loca per sobre del codi a què es refereix el comentari.

      a4 a a a
      % aquest comentari es refereix a les notes Si
      b2 b

  Un comentari de bloc marca una secció sencera d’entrada musical com a comentari. Tot el que esta envoltat dins de `%{` i `%}` s’ignora (però els comentaris no poden niuar-se, cosa que significa que un comentari de bloc no pot incloure altres comentaris de bloc). Si ho fes, el primer `%}` donaria per acabat els dos comentaris de bloc. El següent fragment mostra alguns possibles usos per als comentaris:

      % a continuació van les notes de twinkle twinkle
        c4 c g' g a a g2

      %{
        Aquesta línia i les notes que apareixen a sota
        s'ignoren, per estar dins d'un
        comentari de bloc.

        f4 f e e d d c2
      %}

#### Manual d’aprenentatge del GNU LilyPond v2.26.0 (stable-branch).

- 1 Installing
  - 1.1 Graphical setup
  - 1.2 Command line setup
- 2 Tutorial
  - 2.1 Compilació d’un fitxer
  - 2.2 Com escriure fitxers d’entrada
    - 2.2.1 Notació senzilla
      - Altures
      - Duracions (valors rítmics)
      - Silencis
      - Indicació de compàs
      - Indicacions de tempo
      - Clau
      - Tot a l’hora
    - 2.2.2 Treball sobre els fitxers d’entrada
  - 2.3 Gestió dels errors
    - 2.3.1 Consells generals de solució de problemes
    - 2.3.2 Alguns errors comuns
  - 2.4 Com llegir els manuals
    - 2.4.1 Material omès
    - 2.4.2 Exemples amb enllaç
    - 2.4.3 Panoràmica dels manuals
- 3 Notació corrent
  - 3.1 Notació en un sol pentagrama
    - 3.1.1 Línies divisòries i comprovacions de compàs
      - Línies divisòries
      - Comprovacions de compàs
    - 3.1.2 Alteracions accidentals i armadures
      - Alteracions accidentals
      - Armadures
      - Advertiment: armadures i altures
    - 3.1.3 Lligadures d’unió i d’expressió
      - Lligadures d’unió
      - Lligadures d’expressió
      - Lligadures de fraseig
      - Advertiments: lligadures d’expressió en front a lligadures d’unió
    - 3.1.4 Articulacions i matisos dinàmics
      - Articulacions
      - Indicacions de digitació
      - Matisos dinàmics
    - 3.1.5 Addició de text
    - 3.1.6 Barres automàtiques i manuals
    - 3.1.7 Instruccions rítmiques avançades
      - Compàs parcial
      - Grups especials
      - Notes d’adorn
  - 3.2 Diverses notes a l’hora
    - 3.2.1 Explicació de les expressions musicals
      - Analogia: expressions matemàtiques
      - Expressions musicals simultànies: diversos pentagrames
      - Expressions musicals simultànies: un sol pentagrama
    - 3.2.2 Diversos pentagrames
    - 3.2.3 Grups de pentagrames
    - 3.2.4 Combinar notes per formar acords
    - 3.2.5 Polifonia a un sol pentagrama
  - 3.3 Cançons
    - 3.3.1 Elaborar cançons senzilles
    - 3.3.2 Alineació de la lletra a una melodia
    - 3.3.3 Lletra en diversos pentagrames
  - 3.4 Retocs finals
    - 3.4.1 Organitzar les peces mitjançant variables
    - 3.4.2 Afegir títols
    - 3.4.3 Noms de nota absoluts
    - 3.4.4 Més enllà del tutorial
- 4 Conceptes fonamentals
  - 4.1 Com funcionen els fitxers d’entrada del LilyPond
    - 4.1.1 Introducció a l’estructura dels fitxers del LilyPond
    - 4.1.2 La partitura és una (única) expressió musical composta
    - 4.1.3 Niuat d’expressions musicals
    - 4.1.4 Quant a la impossibilitat de niuar claus i lligadures
  - 4.2 Les veus contenen música
    - 4.2.1 Sento veus
    - 4.2.2 Veus explícites
    - 4.2.3 Veus i música vocal
  - 4.3 Contextos i gravadors
    - 4.3.1 Explicació dels contextos
    - 4.3.2 Creació de contextos
    - 4.3.3 Explicació dels gravadors
    - 4.3.4 Modificar les propietats dels contextos
    - 4.3.5 Afegir i eliminar gravadors
  - 4.4 Extensió de les plantilles
    - 4.4.1 Soprano i violoncel
    - 4.4.2 Partitura vocal a quatre veus SATB
    - 4.4.3 Crear una partitura partint de zero
    - 4.4.4 Estalvi de tecleig mitjançant variables i funcions
    - 4.4.5 Partitures i particel·les
- 5 Ajustament de la sortida
  - 5.1 Elements d’ajustament
    - 5.1.1 Introducció a l’ajustament
    - 5.1.2 Objectes i interfícies
    - 5.1.3 Convencions de noms d’objectes i propietats
    - 5.1.4 Mètodes d’ajustament
      - L’ordre `\override`
      - L’ordre `\revert`
      - El prefix `\once`
      - L’ordre `\overrideProperty`
      - L’ordre `\tweak`
      - El prefix `\single`
  - 5.2 Manual de referència de funcionament intern
    - 5.2.1 Propietats dels objectes de presentació
    - 5.2.2 Propietats de les interfícies
    - 5.2.3 Tipus de propietats
  - 5.3 Aparença dels objectes
    - 5.3.1 Visibilitat i color dels objectes
      - La propietat `stencil` (segell)
      - La propietat `break-visibility` (visibilitat del salt)
      - La propietat `transparent` (transparent)
      - La propietat `color`
    - 5.3.2 Mida dels objectes
    - 5.3.3 Longitud i gruix dels objectes
  - 5.4 Col·locació dels objectes
    - 5.4.1 Comportament automàtic
    - 5.4.2 Objectes interiors al pentagrama
      - La propietat `direction` (direcció)
      - Digitacions
    - 5.4.3 Objectes fora del pentagrama
      - La propietat `outside-staff-priority` (prioritat fora del pentagrama)
      - L’ordre `\textLengthOn`
      - Posicionament dels matisos dinàmics
      - Escalat d’un «Grob»
  - 5.5 Espaiat vertical
  - 5.6 Col·lisions d’objectes
    - 5.6.1 Moviment d’objectes
    - 5.6.2 Ajustament de la notació amb superposicions
      - La propietat `padding` (farciment))
      - La propietat `right-padding` (farciment per la dreta)
      - La propietat `staff-padding` (farciment de pentagrama)
      - La propietat `self-alignment-X` (auto-alineació en X)
      - La propietat `staff-position` (posició al pentagrama)
      - La propietat `extra-offset` (desplaçament addicional)
      - La propietat `positions` (posicions)
      - La propietat `force-hshift` (forçar desplaçament horitzontal)
    - 5.6.3 Exemple real de música
  - 5.7 Ajustaments addicionals
    - 5.7.1 Altres aplicacions dels ajustaments
      - Unió de notes entre veus diferents
      - Simulació de un calderó al MIDI
    - 5.7.2 Ús de variables per als ajustaments de disposició
    - 5.7.3 Fulls d’estil
    - 5.7.4 Altres fonts d’informació
    - 5.7.5 Ajustaments avançats amb l’Scheme
- Appendix A Plantilles
  - A.1 Plantilles incorporades
    - A.1.1 Plantilla coral SATB
    - A.1.2 Plantilla coral SSAATTBB
  - A.2 Plantilles de pentagrama únic
    - A.2.1 Sols notes
    - A.2.2 Notes i lletra
    - A.2.3 Notes i acords
    - A.2.4 Notes, lletra i acords
  - A.3 Plantilles de piano
    - A.3.1 Piano sol
    - A.3.2 Piano i melodia amb lletra
    - A.3.3 Piano amb lletra centrada
  - A.4 Plantilles de quartet de corda
    - A.4.1 Quartet de corda simple
    - A.4.2 Particel·les de quartet de corda
  - A.5 Plantilles de conjunts vocals
    - A.5.1 Partitura vocal SATB
    - A.5.2 Partitura vocal SATB i reducció per a piano automàtica
    - A.5.3 SATB amb contextos alineats
    - A.5.4 SATB sobre quatre pentagrames
    - A.5.5 Estrofes a sol y tornada a dues veus
    - A.5.6 Melodies d’himnes
    - A.5.7 Salms
  - A.6 Plantilles orquestrals
    - A.6.1 Orquestra, cor i piano
  - A.7 Plantilles per a notació antiga
    - A.7.1 Transcripció dfe música mensural
    - A.7.2 Plantilla per a transcripció de cant gregorià
  - A.8 Altres plantilles
    - A.8.1 Combo de jazz
- Appendix B GNU Free Documentation License
- Appendix C Índex