LilyPond Tankönyv: 1.2.2 A bemeneti fájlok jellemzői

### 1.2.2 A bemeneti fájlok jellemzői

A LilyPond bemeneti fájljai sok tekintetben hasonlítanak a programkódokhoz. Tartalmaznak verziószámot, érzékenyek a kis- és nagybetűk különbségére, az üres helyek (szóközök, újsorok, tabulátorok stb.) pedig nem számítanak. Ún. kifejezéseket lehet alkotni kapcsos zárójelek { } segítségével, megjegyzéseket pedig `%` után vagy `%{ ... %}` közé lehet írni.

Ha esetleg nem lennének világosak a fenti mondatok, sebaj! Magyarázatuk részletesen a következő:

- Verzió kezelés: Minden LilyPond fájlnak tartalmaznia kell egy verziószámot. Ez a verziószám írja le azt, hogy az adott fájl a LilyPond melyik verziójával készült. A verziószámot az alábbi módon adhatjuk meg:

  >     \version "2.22.2"

  A verziószámot a LilyPond fájl elején szokás megadni.

  A verzió megadásának két fontos oka van. Az első az, hogy lehetővé teszi, hogy a bemeneti fájl automatikusan frissüljön, amikor a LilyPond szintakszisa (nyelve) változik. Másodsorban a fájlból í]y kiderül, hogy milyen verziójú LilyPond szükséges a fordításához.

  Ha a verziószám hiányzik a bemeneti fájlból, a LilyPond fordításkor figyelmeztető üzenetet ír ki.

- Verzió kezelés: Minden LilyPond fájlnak tartalmaznia kell egy verziószámot. Ez a verziószám írja le azt, hogy az adott fájl a LilyPond melyik verziójával készült. A verziószámot az alábbi módon adhatjuk meg:

  >     \version "2.22.2"

  A verziószámot a LilyPond fájl elején szokás megadni.

  A verzió megadásának két fontos oka van. Az első az, hogy lehetővé teszi, hogy a bemeneti fájl automatikusan frissüljön, amikor a LilyPond szintakszisa (nyelve) változik. Másodsorban a fájlból így kiderül, hogy milyen verziójú LilyPond szükséges a fordításához.

  Ha a verziószám hiányzik a bemeneti fájlból, a LilyPond fordításkor figyelmeztető üzenetet ír ki.

- Érzékeny a kis- és nagybetűk különbségére: nem mindegy, hogy kisbetűket vagy nagybetűket használunk (pl. `a, b, s, t` nem ugyanaz, mint `A, B, S, T`). A hangneveket mindig kisbetűvel kell írni: `{ c d e }` helyes, `{ C D E }` hibás bemenet.
- Az üres helyek nem számítanak: mindegy, hogy hova hány szóköz, tabulátor vagy újsor kerül. `{ c d e }` ugyanazt jelenti, mint `{ c d e }` vagy:

  >     { c                        d
  >                        e   }

  Természetesen ez így nehezen olvasható. Érdemes a blokkokat beljebb kezdeni egy tabulátorral vagy két szóközzel:

  >     {
  >       c4 d e
  >     }

  Azonban az üres helyek szükségesek, hogy a nyelv elemeit elkülönítsük. Más szavakkal: üres helyeket adhatunk hozzá, de nem mindig hagyhatunk el. Mivel hiányzó üres helyek furcsa hibákhoz vezethetnek, ajánlott minden nyelvi elem elé és mögé beilleszteni egyet, például minden kapcsos zárójel elé és mögé.

- Kifejezések: a LilyPond bemenete { kapcsos zárójelek } között álló zenei kifejezésekből épül fel (ezekről később lesz szó), akárcsak a zárójelek `()` közé zárt matematikai kifejezések. A kapcsos zárójelek köré javasolt szóközt tenni, hacsak nem a sor elején vagy végén szerepelnek.

  Egy `\` karakterrel kezdődő LilyPond parancs az azt követő kapcsos zárójelpár tartalmával együtt ugyancsak egy zenei kifejezésnek számít (mint például a ‘`\relative { … }`’).

- Megjegyzések: a megjegyzések az emberi olvasó számára írt útmutatók; a LilyPond ezeket figyelmen kívül hagyja, így nem jelennek meg a kimenetben. Kétfajta megjegyzés van. A százalékjel `%` egy olyan megjegyzést kezd, mely a sor végéig tart. Egy egysoros megjegyzés mindig az utána levő sorral kapcsolatos.

  >     a4 a a a
  >     % most jön a két h hang
  >     b2 b

  A többsoros megjegyzés (megjegyzésblokk) több sort is közrefoghat. A `%{` és `%}` jelek között minden megjegyzésnek számít. Figyelem, a megjegyzésblokkok nem ágyazhatóak egymásba! Ez azt jelenti, hogy nem lehet egy megjegyzésblokkot egy másikon belülre tenni, mert az első `%}` jelnél véget ér mindkét megjegyzésblokk. A következő részlet a megjegyzések használatára mutat példát:

  >     % Ez itt a "Hull a pelyhes fehér hó" dallama
  >       c4 c g' g a a g2

  >     %{
  >       Ez a sor és az alatta levők nem számítanak bele a kimenetbe,
  >       mert megjegyzésblokkban szerepelnek.

  >       f f e e d d c2
  >     %}

#### LilyPond — Tankönyv v2.22.2 (stable-branch).