Kottaszerkesztési útmutató

Innen: kotta
A lap korábbi változatát látod, amilyen Kotta (vitalap | szerkesztései) 2019. február 9., 23:28-kor történt szerkesztése után volt. (Új oldal, tartalma: „A magyar Wikipédiában a Mediawiki <code>score</code> pluginja segítségével kottát lehet írni. A plugin a lilypond nevű külső programot használja. Ez a sz…”)
(eltér) ← Régebbi változat | Aktuális változat (eltér) | Újabb változat→ (eltér)
Ugrás a navigációhoz Ugrás a kereséshez

A magyar Wikipédiában a Mediawiki score pluginja segítségével kottát lehet írni. A plugin a lilypond nevű külső programot használja. Ez a szócikk bevezető a Wikipédián belüli kottaírásba.

Kis angol–magyar szótár
Magyar angol
flat
dallam music
dalszöveg lyrics
dalszöveg sorszáma stanza
előjegyzés key signature
feloldójel natural
felütés upbeat
anacrusis
hangjegy note
hangmagasság pitch
hangjegy szára stem
kereszt sharp
kotta score
sheet music
kottafej note head, grob
kottafelirat text
kottasor[1] staff, staves
kulcs clef
módosítójel accidental
partitúra score
szólam voice
szótag syllable
szünet rest
ütem measure
ütemmutató time signature
ütemvonal bar, bar line
versszak stanza

Alapok

A hangok neve

<score vorbis="1" midi="1">
{    \relative c' {
     c cis d dis e f fis g gis a ais b c r
     }
}
</score>

{    \relative c' {
     c cis d dis e f fis g gis a ais b c r
     }
}

A kottát a <score> és </score> között, { } közé zárva kell írni. A kapcsos zárójel a strukturált programnyelvekben jól ismert blokkhatároló: ezzel lehet kisebb részeket kijelölni a kottában. A blokkok tetszőleges mélységben egymásba skatulyázhatók, a blokkban beállított módosításokat az alblokkok öröklik, de a blokkot tartalmazó blokkra nincs hatásuk.

A nyelv szabad formátumú: ahol helyköz lehet, oda egy vagy több új sor, tabulátor vagy helyköz írható.

A hangok a zenében szokásos betűjellel adhatók meg. A magyar névtől eltérően a h-t b-vel, a magyar b-t bes-szel jelöljük. Elég a hang nevét megadni, a kottázóprogram kiteszi elé a kereszt, bé módosítót vagy a feloldójelet, ha szükséges. A szünet jele r, a rejtett szüneté s.

A hegedűkulcsot és a 4 negyedes ütemjelzést a lilypond automatikusan teszi ki, ha mást nem adunk meg, ill. nem tiltjuk le a jelzést.

A midi="1" paraméter az audiófájl létrehozását írja elő. A vorbis="1" hatására a score plugin a kottaképre linket tesz, mellyel lejátszható az audiófájl. Célszerű használni, mert így nehezebb ellopni a kottaképet. A lilypond a zongora hangszínét használja alaphelyzetben, de ez is változtatható. Mintegy 30 hangszín létezik.

A score-nek van egy harmadik paramétere is: raw="1" esetén a lilypond program jóval több lehetősége használható. Az esetek többségében elég az alaphelyzetben beépített.

Az oktáv megadása

Kétféleképpen lehetséges: abszolút vagy relatív módon. Az abszolút hangmagasság megadását lásd itt. Alaphelyzetben a lilypond abszolút módban működik.

Relatív oktávmegadáskor az új hang oktávját a lilypond úgy választja meg, hogy az előző hanghoz képest ne legyen kvartnál nagyobb ugrás. Az így kapott oktávmagasság módosítható a ' (aposztróf) jellel fölfelé, a , (vessző) jellel lefelé.

Szinte mindig a relatív magasságmegadást használjuk, mert jóval kevesebb oktávmódosító jelet kell írni. Megadása a \relative utasítással történik, mely az utasítás utáni blokkra (és annak alblokkjaira) vonatkozik. Az utasításbeli c' az első hang oktávmagasságát adja meg abszolút módon. Ez az egyvonalas C, hegedűkulcsban pótvonalon van a kotta alatt.

Példa:

<score vorbis="1" midi="1">
{    \relative c' {
     a a' a a' a,, a''
     }
}
</score>

{    \relative c' {
     a a' a a' a,, a''
     }
}

A hang hossza

Ha mást nem adunk meg, a hang vagy szünet hossza azonos az előző hangéval, a 0. hang hossza negyed. Az egész hang jele 1 (egy), más szám azt adja meg, a hossz hányadrésze az egésznek. A szám csak 2 nemnegatív egész hatványa lehet. Pl.:

<score vorbis="1" midi="1">
{    \relative c' {
     a' a2 a1 a4 a8 a16 a32
     }
}
</score>

{    \relative c' {
     a' a2 a1 a4 a8 a16 a32
     }
}

A hossz után pont is írható. Az egyik kórusban pl. felvételkor az alábbi dallamot kellett a zongora után énekelni:

<score vorbis="1" midi="1">
{    \relative c' {
     a'8 f4. d4 f a8 gis4. f2
     }
}
</score>

{    \relative c' {
     a'8 f4. d4 f a8 gis4. f2
     }
}

A hossz többszörözhető, pl.: 8*5 öt nyolcadnyi hossz.

Sortörés

Új kottasor kezdése: \break. A lilypond törekszik rá, hogy egyforma hosszúak legyenek a kottasorok, így nem okvetlenül veszi figyelembe a jelzést. Ütemen belül csak akkor hajlandó sort törni, ha kézzel kitesszük az ütemvonalat. A \bar "" láthatatlan ütemvonalat csinál. A \noBreak tiltja a sortörést az adott ütemvonalnál.

Lásd még: Ütemvonal.

A kotta eleje

A kotta elején megadott jelek – az ambitus kivételével – megadhatók a kottán belül is.

Ambitus

A teljes mű ambitusa a kotta (kulcs) elején.

Ha egy új szólam a kotta belsejében indul, a szólam eleje elé kerül az ambitus, ami nagyon zavaró. Ilyenkor nem Voice, hanem Staff környezetben érdemes az ambitust engedélyezni.

<score vorbis="1" midi="1" raw="1">
\version "2.14.2"
\header {
        tagline = ""    % ne legyen copyright szöveg
        }
\layout {
  \context {
    \Voice
    \consists "Ambitus_engraver"
  }
}
dallam = \relative c' { e4 e f g g f e d }
\score {
       \dallam
}

\version "2.14.2"
\header {
        tagline = ""    % ne legyen copyright szöveg
        }
\layout {
  \context {
    \Voice
    \consists "Ambitus_engraver"
  }
}
dallam = \relative c' { e4 e f g g f e d }
\score {
       \dallam
}
\score {
   \unfoldRepeats
   \dallam
   \midi { }
}

Kulcs

Clef. Pl.: \override Clef.stencil = ##f


A Score (kotta) a kulcs (Clef) objektum környezete. Egy objektumnak több tulajdonsága lehet, stencil a láthatóság. Az egyenlőségjel jobb oldalán levő értéket #-jellel kell kezdeni. A #f a hamis logikai érték (#t az igaz).

Hegedűkulcs: \clef treble. A lilypond automatikusan kiteszi a kotta elejére. Basszuskulcs: \clef bass A tenor G-kulcsa: \clef "G_8". Természetesen a hangokat is egy oktávval mélyebben kell írni, mint hegedűkulcsban. Pl.:

<score vorbis="1" midi="1">
{
    \clef bass
    \relative c' {
     c d es r 
     \clef treble
     c d es r
     }
}
</score>

{
    \clef bass
    \relative c' {
     c d es r 
     \clef treble
     c d es r
     \clef "G_8"
     c d es r
     }
}

A kulcs elhagyása (pl. kottarészletben): \override Score.Clef #'stencil = ##f.[2] Pl.:

<score vorbis="1" midi="1">
{
    \override Score.Clef #'stencil = ##f
    \relative c' {
     c d es r 
     }
}
</score>

{
    \override Score.Clef #'stencil = ##f
    \relative c' {
     c d es r 
     }
}

Előjegyzés

KeySignature. Pl.: \override KeySignature.stencil = ##f

Hangnemek Lilypondban
Alap-
hang
Név Lilypond
dúr \major
\ionian
dór \dorian
mi fríg \phrygian
líd \lydian
szó mixolíd \mixolydian
moll \minor
\aeolian
ti lokriszi \locrian

A hangnemet kell megadni, a lilypond ebből tudja az előjegyzést. Alakja: \key hang hangfaj. Pl. F dúrban egy bé előjegyzés van:

<score vorbis="1" midi="1">
{
    \key f \major
    \relative c'' {
     a bes c b
     }
}
</score>

{
    \key f \major
    \relative c'' {
     a bes c b
     }
}

Látható, hogy a feloldójelet nem kellett kiírni: az előjegyzésből és a hang megadásából a lilypond tudja.

Az előjegyzés kiírásának tiltása: \set Staff.explicitKeySignatureVisibility = #all-invisible.

Nem diatonikus hangnem esetén az előjegyzésben a keresztek és bék helyét kell megadni:

<score vorbis="1" midi="1">
{
    \set Staff.keySignature = #`((6 . ,FLAT)
                                (3 . ,SHARP))
    \relative a {
     d8 e fis g a bes a g
     }
}
</score>

{
    \set Staff.keySignature = #`((6 . ,FLAT)
                                (3 . ,SHARP))
    \relative a {
     d8 e fis g a bes a g
     }
}

FLAT a bé, SHARP a kereszt. Az előtte álló szám az előjegyzés helyét adja meg C-hez képest. (Az is megadható, hogy az előjegyzés melyik oktávban látszódjék, de ezt célszerű a lilypondra bízni.)

Ütemmutató

TimeSignature. Pl.: \override TimeSignature.stencil = ##f

Alakja: \time szám/4. A 4 a negyedre utal; általában így adjuk meg az ütemet, de nyolcad is megadható. A szám azt jelenti, hogy egy percbe hány negyed (nyolcad) férjen.

<score vorbis="1" midi="1">
{
    \time 3/8
    \relative c'' {
     a8 a b c b4
     }
}
</score>

{
    \time 3/8
    \relative c'' {
     a8 a b c b4
     }
}

Megadható, hogy a 4/4 is számmal íródjék ki (pl. ha az ütem változik a darabban):

<score vorbis="1" midi="1">
{
    \numericTimeSignature
    \time 4/4
    \relative c' {
     d8 d b'4 a r
     }
}
</score>

{
    \numericTimeSignature
    \time 4/4
    \relative c' {
     d8 d b'4 a r
     }
}

Az ütemjelölés elhagyása (pl. példában):[2].

<score vorbis="1" midi="1">
{
    \once \override Staff.TimeSignature #'stencil = ##f
    \time 4/4
    \relative c' {
     d8 d b'4 a r
     }
}
</score>

{
    \once \override Staff.TimeSignature #'stencil = ##f
    \time 4/4
    \relative c' {
     d8 d b'4 a r
     }
}

A \once nélkül a kottában megváltoztatott ütem sem látszódnék.

A kotta

Ütemvonal

Az ütemvonalak kikapcsolása: \cadenzaOn. Visszakapcsolás: \cadenzaOff. A kézi ütemvonalakat használni kell, legalább a sortöresek helyén.

Kézi ütemvonal: \bar "|". Dupla ütemvonal: \bar "||". Mű vége: \bar "|.". Szaggatott ütemvonal: \bar "!".

Az ütemvonal elhagyása: \override Score.BarLine.stencil = ##f Ha a kotta több soros, érdemes az ütemszámozást is elhagyni: \override Score.BarNumber #'break-visibility = #'#(#f #f #f)

Ütemszámozás

A számok kiírása az első ütemvonaltól kezdődik, vagyis az első soré nem íródik ki, hacsak nem írunk a kotta elé ütemvonalat (\bar "").

A számozás 1-től kezdődik. Változtatás: \set Score.currentBarNumber = #szám.

Ritmus

A gerendázás ki- és bekapcsolása: \autoBeamOff, \autoBeamOn.

Hajlítás

Alulról konkáv (normál) ív: \slurNeutral. Alulról konvex: \slurDown.

A kottasorok távolsága

\override DynamicText.Y-offset=#szám.

A kottavonal kikapcsolása

\stopStaff kikapcsolja, \startStaff visszakapcsolja az öt vonalat az ütemvonalakkal együtt.

Az ütemvonalak meghagyásával: \override Staff.StaffSymbol #'transparent = ##t

Dallam változóban

Az üres hang jele <>. Szöveg/dinamika adható meg neki, ami a következő hangra vonatkozik. Nagyon jól jön, ha a következő hang változóban van.

A változóban megjelölhetünk egy részt, amelyek közül az egyiket szedi ki a lilypond a változóra hivatkozástól függően.

A megjelölés:

dallam = \relative c' { ...
\tag #'nevegy { dallam1 }
\tag #'nevket { dallam2 }
... }

A hivatkozás:

\keepWithTag #'nevegy \dallam

Például:

<score vorbis="1" midi="1" raw="1">
\version "2.18.2"
\layout { \context { \Voice \consists "Ambitus_engraver" } }
\header { tagline = "" }    % ne legyen copyright szöveg
dallam = \relative c' {
    \tag #'eles     { a'8 a4. a4 g }
    \tag #'nyujtott { a4 a a8 g4. }
    e4 c e d a2 a4 r }
\score {
   <<
   \new Voice {
   \keepWithTag #'eles     \dallam \bar "||"
   \keepWithTag #'nyujtott \dallam \bar "|."
   }
   \addlyrics {
      De sze -- ret -- nék haj -- nal -- csil -- lag len -- ni.
      Sar -- kon van egy öz -- vegy -- asz -- szony há -- za.
   }
   >>
   \layout { indent = 0.0\cm }
}
\score { \new Staff {
   \unfoldRepeats
   \keepWithTag #'eles     \dallam
   \keepWithTag #'nyujtott \dallam
   }
   \midi { }
}
</score>

Az eredmény:


\version "2.18.2"
\layout { \context { \Voice \consists "Ambitus_engraver" } }
\header { tagline = "" }    % ne legyen copyright szöveg
dallam = \relative c' {
    \tag #'eles     { a'8 a4. a4 g }
    \tag #'nyujtott { a4 a a8 g4. }
    e4 c e d a2 a4 r }
\score {
   <<
   \new Voice {
   \keepWithTag #'eles     \dallam \bar "||"
   \keepWithTag #'nyujtott \dallam \bar "|."
   }
   \addlyrics {
      De sze -- ret -- nék haj -- nal -- csil -- lag len -- ni.
      Sar -- kon van egy öz -- vegy -- asz -- szony há -- za.
   }
   >>
   \layout { indent = 0.0\cm }
}
\score { \new Staff {
   \unfoldRepeats
   \keepWithTag #'eles     \dallam
   \keepWithTag #'nyujtott \dallam
   }
   \midi { }
}

(A \new Staff csak akkor kell, ha a választható rész a változó elején van.)

Hangok, hangfejek

Artikuláció

<score>
{    \relative c' {
     c4-^ d-+ e-- f-! g4-> a-. b-_ c\staccato
     }
}
</score>

{    \relative c' {
     c4-^ d-+ e-- f-! g4-> a-. b-_ c\staccato
     }
}

Lásd: List of articulations

Trilla: \trill

A kánon vége:

<score>
{    \relative c' {
     d4^\markup { \path #0.25 #'((moveto 0 0) (lineto 0 1) (lineto 1 1) (lineto 1 0)) }
     }
}
</score>

{    \relative c' {
     d4^\markup { \path #0.25 #'((moveto 0 0) (lineto 0 1) (lineto 1 1) (lineto 1 0)) }
     }
}

Két UTF-8 vonalhúzó karakterrel:

<score>
{    \relative c' {
     d4^\markup { \hspace #-0.7 "┍┑" }
     }
}
</score>

{    \relative c' {
     d4^\markup { \hspace #-0.7 "┍┑" }
     }
}

A kottafejek alakja

× alakú kottafej: \override NoteHead.style = #'cross. Visszaállítás: \revert NoteHead.style

A kottafejek mérete

\teeny, \tiny, \small, \normalsize, \large, \huge. A kotta fölötti felirat méretét is változtatja.

Ha azt akarjuk, hogy a kisebbel írt kotta a ritmust (ne) befolyásolja, előkét vagy utókát kell használni.

Tremolo

Egy hangon és két hang között adható meg. Az előbbit a kotta szárán ferde áthúzás jelzi. Szintaxis: a hang után kettősponttal egy tremolo hossza. Más szóval: ha a tremolohossz a hanghossz fele, az két tremolot jelent, amit egy ferde áthúzás jelez a hang szárán.

<score>
{ \relative c' { e8:16 dis: e: fis: | g: ais: b: cis: } }
</score>

{ \relative c' { e8:16 dis: e: fis: | g: ais: b: cis: } }

A tremolohosszt a lilypond – a hanghosszhoz hasonlóan – megjegyzi, így csak akkor kell kiírni, ha változik.

Szövegek, feliratok, jelzések

Fajtái:

  1. dalszöveg
  2. kottafelirat és jel a lejátszás módjára (pl. cresc., korona). Tartozhatik
    • hangjegyhez: a hang után idézőjelben adható meg. A ^ a hang fölé, a _ a hang alá írja a szöveget.
    • ütemvonalhoz
  3. kották közötti szöveg
  4. help (szöveges segítség a kotta lejátszásához)

A hangfájlra csak a másodiknak van hatása.

A kották közé tetszőleges szöveg írható, mint a szövegszerkesztőben. A formázást a \markup végzi.

Szöveges segítség így adható meg:

\new Voice \with { \consists "Balloon_engraver" } {
…
\balloonGrobText #'Stem #'(0 . 1.5) szöveg hang
…
}

A koordináta a hang-hoz tartozó segítségszöveg helye.

Hangjegyhez tartozó jelek és feliratok

Korona, ciffer

Ciffer megadás:

<score>
{
   \relative c' {
      \time 2/4
      \transposition c'
        g'4 g f^\markup { \raise #1 \box \abs-fontsize #16 2 } e g^\markup { \raise #1 \abs-fontsize #16 { \hspace #-1 (3) } } g f e \fermata
   }
}
</score>
  • \raise feljebb emeli a szöveget. Az emelés mértékét # után kell megadni.
  • \box keretezi a szöveget.
  • \abs-fontsize növeli a betűméretet.
  • \hspace #szám: vízszintes helyet hagy, negatív szám esetén balra.
  • \fermata a korona neve. Ilyenkor nem kell \markup

{
   \relative c' {
      \time 2/4
      \transposition c'
        g'4 g f^\markup { \raise #1 \box \abs-fontsize #16 2 } e g^\markup { \raise #1 \abs-fontsize #16 { \hspace #-1 (3) } } g f e \fermata
   }
}

Hangerő

A hangerő (dynamics) jelei a hang alatt látszódnak. Így lehet felülre tenni őket: c4^\p. A \dynamicUp parancs után ez a default.

A crescendo eleje \<, a crescendoé \>. Mindkettő végét \! vagy az abszolút dinamikai jel (pl. \f) jelzi. Ez is a kotta alá kerül, ha nincs ^. Egy hangon belüli cresc. és descresc: hang\espressivo.

Dinamikát jelző szövegek: \cresc, \decresc, \dim. Ennek is \!-el lehet véget vetni (addig szaggatott vonallal jelzi az intervallumot). A szaggatott vonalat a \override DynamicTextSpanner.style = #'none utasítással lehet megszüntetni.

Általános megoldás (zárójelbe tett, formázott forte):

\markup {
    \center-align \concat { \bold { \italic ( }
           \dynamic f \bold { \italic ) } } }

Pl.: \markup { \italic "sempre" \dynamic "f" }

A cresc. szöveg helyére bármit lehet írni:

 \set crescendoText = \markup { szöveg }
 \set crescendoSpanner = #'text

A második utasításra a \<-re a hajcsat helyett szöveg kerül.

További lehetőségek.

Egyéb feliratok

Angolul: text spanners. Ugyanolyan formátumban jelenik meg, mint a hangerőszöveg. Lejátszási utasításnak szánták, ezért meg kell adni az elejét és a végét is. Ha nem kell a vége, egy hanggal később lezárjuk a szöveget; akkor a szaggatott vonal sem látszik, mert nincs hová kihúzni.

  • a szöveg megadása: \override TextSpanner.bound-details.left.text = "szöveg"
  • a szöveg helye: \startTextSpan
  • vége: \stopTextSpan
<score vorbis="1" midi="1">
{ \relative c'' {
  \override TextSpanner.bound-details.left.text = "rit."
  b1\startTextSpan
  e,\stopTextSpan
  }
}
</score>

{ \relative c'' {
  \override TextSpanner.bound-details.left.text = "rit."
  b1\startTextSpan
  e,\stopTextSpan
  }
}

Ismétlés

A codát és signot rendszerint ütemvonalra szeretnénk tenni: lásd ütemvonalhoz tartozó feliratok.

Coda

Jele 𝄌 vagy Music-coda.png, lilypondban \coda). Kétféleképpen használatos:

  • D.C. al Fine: kezdd előlról a művet Fine-ig.
  • D.C. al Coda: kezdd előlről a művet a coda jelig, majd ugorj a következő coda jelre (a mű zárására).
Segno

Jele 𝄉 vagy Music-segno.png, lilypondban \segno, formázott szövegben \musicglyph #"scripts.segno". Kétféleképpen használatos:

  • D.S. al coda: menj vissza a legközelebbi segno-ig. Amint elérted a coda jelet, ugorj oda.
  • D.S. al fine: menj vissza a legközelebbi segno-ig, és játszd a művet Fine-ig.
Kézi ismétlés
  • Az ismétlőjel eleje: \set Score.repeatCommands = #'(start-repeat) hangok (ki kell írni a kotta elején is, de nem szedi ki)
  • Első alternatíva: \set Score.repeatCommands = #'((volta "szöveg") ) hangok
  • Második és további alternatívák: \set Score.repeatCommands = #'((volta #f) (volta "szöveg") end-repeat) hangok
  • Az ismétlés lezárása: \set Score.repeatCommands = #'((volta #f))

A fentiek csak a kottaszedésre érvényesek, a hangra hatástalanok. (?)

Dallamváltozat

Felső vonal:

| <score>
{    \override TextSpanner.style = #'line
     \override TextSpanner.bound-details.left.text = \markup { \normal-text \circle "1" } 
     \override TextSpanner.bound-details.left.stencil-align-dir-y = #0
     \override TextSpanner.bound-details.right.padding = #-2
     \relative c' {
     a'\startTextSpan g f\stopTextSpan
     }
}
</score>

{    \override TextSpanner.style = #'line
     \override TextSpanner.bound-details.left.text = \markup { \normal-text \circle "1" } 
     \override TextSpanner.bound-details.left.stencil-align-dir-y = #0
     \override TextSpanner.bound-details.right.padding = #-2
     \relative c' {
     a'\startTextSpan g f\stopTextSpan
     }
}

A verzió megadása:

<font size="+2">①</font> <score>
{    \relative c' { 
     \override Staff.TimeSignature #'stencil = ##f
     a' e f
     }
}
</score>

{    \relative c' {
      \override Staff.TimeSignature #'stencil = ##f
     a' e f
     }
}

Szövegformázás

A \markup végzi, { } között. Minden fajta szövegben használható, dalszövegben szótagonként.

Speciális karakterek listája (szinte bármi, ami formázott szövegben használható).

  • normál szöveg visszaállítása: \normal-text
  • dőlt betű: \italic szöveg
  • vastag: \bold
  • helyköz: \hspace #méret
  • függőleges üres hely: \vspace #méret
  • a szöveg függőleges helye: \raise #szám
  • betűméret: \fontsize #szám. Az előjeles szám a csökkentés/növelés mértéke.
  • a szöveg tömörítése: \halign #RIGHT szöveg, ahol a tömörítés háromféle lehet: RIGHT (#1), LEFT (#-1), CENTER (#0). \halign rendszerint \markup belsejében van. A wiki-változat nem ismeri a három szimbolkus nevet.
  • sortörést táblázattal lehet csinálni. A \line alkalmasint el is maradhat:
\column {
     \line { "1. ismétlés:" \box "2""-től" }
     \line "2. sor"
     }

Összetett példa:

<score vorbis="1" midi="1">
{
<<
\relative c' {
      \key a \major
      \time 4/4
      \set Score.tempoHideNote = ##t \tempo 4 = 80
      \set Staff.midiInstrument = "electric bass (finger)"
      \transposition c
      \repeat volta 2 { gis''2 a2 | gis4 a8 a ~ a2 | gis4 a8 a ~ a4 a | b a gis a8 gis ~ | gis1 ~ | gis4 fis e fis8 e8 ~ }
                \alternative { { e2 r } { e1 ~ e4  d cis d8 cis( ~ | cis b a2. ~ | a4) r r2 | } } \bar "||" \break
                \once \override Score.RehearsalMark.break-visibility = ##(#t #t #f)
                \once \override Score.RehearsalMark.self-alignment-X = #1
                \override Score.RehearsalMark #'direction = #-1       %DOWN
                \once \override Score.RehearsalMark.Y-offset = #-3
                \mark \markup { \column \right-align { \line { "Először és másodszor: D.C." }
                       \line { \vcenter { { "Harmadszor: D.C. al" } { \musicglyph #"scripts.coda" } } } } }
        \bar "|."
      }
   \addlyrics {
        Min -- den pil -- la -- nat azt í -- gé -- ri, most kez -- dő -- dik el az é -- le -- tem, _ az é -- le -- tem.
      }
>>
}
</score>

{
<<
\relative c' {
      \key a \major
      \time 4/4
      \set Score.tempoHideNote = ##t \tempo 4 = 80
      \set Staff.midiInstrument = "electric bass (finger)"
      \transposition c
      \repeat volta 2 { gis''2 a2 | gis4 a8 a ~ a2 | gis4 a8 a ~ a4 a | b a gis a8 gis ~ | gis1 ~ | gis4 fis e fis8 e8 ~ }
                \alternative { { e2 r } { e1 ~ e4  d cis d8 cis( ~ | cis b a2. ~ | a4) r r2 | } } \bar "||" \break
                \once \override Score.RehearsalMark.break-visibility = ##(#t #t #f)
                \once \override Score.RehearsalMark.self-alignment-X = #1
                \override Score.RehearsalMark #'direction = #-1       %DOWN
                \once \override Score.RehearsalMark.Y-offset = #-3
                \mark \markup { \column \right-align { \line { "Először és másodszor: D.C." }
                       \line { \vcenter { { "Harmadszor: D.C. al" } { \musicglyph #"scripts.coda" } } } } }
        \bar "|."
      }
   \addlyrics {
        Min -- den pil -- la -- nat azt í -- gé -- ri, most kez -- dő -- dik el az é -- le -- tem, _ az é -- le -- tem.
      }
>>
}

Ütemvonalhoz tartozó feliratok

A felirat eleje: \mark. A szöveg \markup-pal formázható.

Speciális jelek

Speciális kottajeleket a \musicglyph utasítással lehet írni.

<score>
{    \relative c' { 
     a'1 \mark \markup { \musicglyph #"scripts.segno" }
     e1  \mark \markup { \musicglyph #"scripts.coda" }
     f1  \mark \markup { \musicglyph #"scripts.ufermata" }
     }
}
</score>

{    \relative c' {
     a'1 \mark \markup { \musicglyph #"scripts.segno" }
     e1  \mark \markup { \musicglyph #"scripts.coda" }
     f1  \mark \markup { \musicglyph #"scripts.ufermata" }
     }
}

Más speciális jel is megadható \musicglyph-fel. E jelek nemcsak ütemvonalhoz, hanem hangjegyhez vagy dalszöveghez is tartozhatnak.

Az ütemvonalhoz tartozó szöveg elhelyezése

A felirat sora:

 \once \override Score.RehearsalMark.break-visibility = ##(#t #t #f)

A három logikai érték jelentése:

  1. kiíródjék-e a felirat a sortörés előtti sorban., ha az ütemvonal sor végén van
  2. Kiíródjék-e a felirat, ha az ütemvonal nem a sor végén van
  3. kiíródjék-e a felirat a sortörés utáni sorban., ha az ütemvonal sor végén van

A felirat vízszintes helye:

 \once \override Score.RehearsalMark.self-alignment-X = #1

-1 az ütemvonaltól balra, 0 középre (default), 1 az ütemvonaltól jobbra.

A felirat függőleges helye:

 \override Score.RehearsalMark #'direction = #-1   %DOWN

-1: a kottasor alá, 1: a kottasor fölé

 \once \override Score.RehearsalMark.Y-offset = #-8

A felirat függőleges eltolása a megadott pontszámmal.

Példa

<score vorbis="1" midi="1">
{ \relative c'' {
  g2 c
  d,2 a'
  \once \override Score.RehearsalMark.break-visibility = ##(#t #t #f)
  \once \override Score.RehearsalMark.self-alignment-X = #1
  %\override Score.RehearsalMark #'direction = #-1   %DOWN
  %\once \override Score.RehearsalMark.Y-offset = #-8
  \mark "D.C. al Fine"
  }
}
</score>

{ \relative c'' {
  g2 c
  d,2 a'
  \once \override Score.RehearsalMark.break-visibility = ##(#t #f #f)
  \once \override Score.RehearsalMark.self-alignment-X = #1
  %\override Score.RehearsalMark #'direction = #DOWN
  %\once \override Score.RehearsalMark.Y-offset = #-8
  \mark "D.C. al Fine"
  }
}

Dalszöveg

A szöveget szótagolva kell megadni \addlyrics { szöveg } formában. A szótagokat helyközök közé írt dupla kötőjellel (--) kell elválasztani. A lilypond automatikusan rendeli hozzá a szótagokat a hangokhoz. A -- jel helyére a kottában két szótag közé középre írt elválasztójel kerül, szükség esetén pedig el is marad.

Ha egy hanghoz több szót vagy szótagot akarunk írni, helyköz helyett aláhúzással (_) kell őket elválasztani. Tipikus példa magyarban az s szócska.

Ha bizonyos hangokhoz nem akarunk szöveget írni, a \repeat unfold n { \skip 1 } alakban hagyhatjuk ki, ahol n a kihagyott hangjegyek száma (függetlenül a hosszúságuktól). A másik lehetőség a -, ami szótagnak számít.

<score vorbis="1" midi="1">
{
    \time 3/8
    <<
    \relative c'' {
     a8 a b c b4
     }
    \addlyrics {
        Hopp, i -- de tisz -- tán,
      }
    >>
}
</score>

{
    \time 3/8
    <<
    \relative c'' {
     a8 a b c b4
     }
    \addlyrics {
        Hopp, i -- de tisz -- tán,
      }
    >>
}

A << és >> a kotta időben összetartozó részeit fogja össze.

Több versszak is megadható:

<score vorbis="1" midi="1">
{
   <<
   \time 2/4
   \relative c' {
        f8 e d4 f8 e d4
      }
   \addlyrics { \set stanza = #"1."
        Ud -- va -- rom, ud -- va -- rom
      }
   \addlyrics { \set stanza = #"2."
        Ud -- va -- rom kö -- ze -- pén
      }
   >>
}
</score>

{
   <<
   \time 2/4
   \relative c' {
        f8 e d4 f8 e d4
      }
   \addlyrics { \set stanza = #"1."
        Ud -- va -- rom, ud -- va -- rom
      }
   \addlyrics { \set stanza = #"2."
        Ud -- va -- rom kö -- ze -- pén
      }
   >>
}

Több soros szövegrész

Nem teljesen jó, de egyszerű példa:

<score>
{
   <<
   \relative c' {
      \time 2/4
      \transposition c'
%       Hová mégy te, kis nyulacska?
        g'4 g f e g g f e
%       Ingyor, bingyor, táliber, tutáliber, máliber, az erdőbe.
        \repeat volta 2 { f8 e d e c4 d8 e } f e d4 c r \bar "|."
   }
   \addlyrics {
        Ho -- vá mégy të, kis nyu -- lacs -- ka?
        << { In -- gyor, bin -- gyor, tá -- li -- bër, }
           \new Lyrics { tu -- tá -- li -- bër, má -- li -- bër, }
        >>
        az er -- dő -- be.
   }
   >>
}
</score>

{
   <<
   \relative c' {
      \time 2/4
      \transposition c'
%       Hová mégy te, kis nyulacska?
        g'4 g f e g g f e
%       Ingyor, bingyor, táliber, tutáliber, máliber, az erdőbe.
        \repeat volta 2 { f8 e d e c4 d8 e } f e d4 c r \bar "|."
   }
   \addlyrics {
        Ho -- vá mégy të, kis nyu -- lacs -- ka?
        << { In -- gyor, bin -- gyor, tá -- li -- bër, }
           \new Lyrics { tu -- tá -- li -- bër, má -- li -- bër, }
        >>
        az er -- dő -- be.
   }
   >>
}

Ennek az a baja, hogy a szöveg alsó sora jobbra van igazítva a hangjegyekhez képest. Ezen segít, ha az új szövegnek elmagyarázzuk, melyik dallamhoz tartozik. Ehhez sokmindent kell változtatni:

  • nevet adni a dallamnak
  • az egész szöveget hozzárendelni a dallamhoz (ezt csak \new Lyrics-szel lehet, \addlyrics-szel nem)
  • az alsó sor szövegrészében hivatkozni, melyik dallamhoz tartozik.
<score>
{
   <<
   \new Voice = "dallam" { \relative c' {
      \time 2/4
      \transposition c'
%       Hová mégy te, kis nyulacska?
        g'4 g f e g g f e
%       Ingyor, bingyor, táliber, tutáliber, máliber, az erdőbe.
        \repeat volta 2 { f8 e d e c4 d8 e } f e d4 c r \bar "|."
   } }
   \new Lyrics \lyricsto "dallam" {
        Ho -- vá mégy të, kis nyu -- lacs -- ka?
        << { In -- gyor, bin -- gyor, tá -- li -- bër, }
           \new Lyrics { \set associatedVoice = "dallam" tu -- tá -- li -- bër, má -- li -- bër, }
        >>
        az er -- dő -- be.
   }
   >>
}
</score>

{
   <<
   \new Voice = "dallam" { \relative c' {
      \time 2/4
      \transposition c'
%       Hová mégy te, kis nyulacska?
        g'4 g f e g g f e
%       Ingyor, bingyor, táliber, tutáliber, máliber, az erdőbe.
        \repeat volta 2 { f8 e d e c4 d8 e } f e d4 c r \bar "|."
   } }
   \new Lyrics \lyricsto "dallam" {
        Ho -- vá mégy të, kis nyu -- lacs -- ka?
        << { In -- gyor, bin -- gyor, tá -- li -- bër, }
           \new Lyrics { \set associatedVoice = "dallam" tu -- tá -- li -- bër, má -- li -- bër, }
        >>
        az er -- dő -- be.
   }
   >>
}

Itt már az alsó szövegsor is középen van.

Dalszöveg változóba

változó = \lyricmode { szöveg }

A dalszöveg formázása

Szótagonként formázható a \markup paranccsal.

Forma Beállítás Visszavonás
dőlt betű \override Lyrics.LyricText.font-shape = #'italic \revert Lyrics.LyricText.font-shape
vastag betű \override Lyrics.LyricText.font-series = #'bold \revert Lyrics.LyricText.font-series
<score vorbis="1" midi="1">
{
    \time 3/8
    <<
    \relative c'' {
     a8 a b c b4
     }
    \addlyrics {
        Hopp, \override Lyrics.LyricText.font-shape = #'italic
        i -- de <code>\override Lyrics.LyricText.font-series = #'bold
        tisz -- \revert Lyrics.LyricText.font-shape
                \revert Lyrics.LyricText.font-series
        tán,
      }
    >>
}
</score>

{
    \time 3/8
    <<
    \relative c'' {
     a8 a b c b4
     }
    \addlyrics {
        Hopp, \override Lyrics.LyricText.font-shape = #'italic
        i -- de \override Lyrics.LyricText.font-series = #'bold
        tisz -- \revert Lyrics.LyricText.font-shape
                \revert Lyrics.LyricText.font-series
        tán,
      }
    >>
}

Dalszöveg folytatása

Hosszú kottát érdemes darabolni. Ilyenkor a szöveg is több részből áll, és meg kell adni, hogy melyik dallamrészhez tartozik. A második és további részekben a \new Lyrics nem használható, mert új szövegsort kezdene. így lehet folytatni:

\new Lyrics = "first" \lyricsto… { … }       % a dalszöveg eleje
\context Lyrics = "first" \lyricsto … { … }  % a dalszöveg folytatása

Ha a dal három részből áll (dalegy, dalket, dalhar), és az első és harmadik dallamrészlethez van szöveg, az elsőhöz két versszak: (daltxtegy, daltxtket és daltxthar):[3]

<<
{
\new Voice = "dalegy" { \dalegy }
\new Voice { \dalket }
\new Voice = "dalhar" { \dalhar }
}
\new Lyrics = "vszegy" \lyricsto "dalegy" { \daltxtegy }
\new Lyrics = "vszket" \lyricsto "dalegy" { \daltxtket }
\context Lyrics = "vszegy" \lyricsto "dalhar" { \daltxthar }
>>

Több szólam

Az ambitusjelzés időnként furcsa dolgokat tud produkálni, érdemes átállítani a környezetét Staff-ra.

A szöveggel is lehetnek gondok.

A szüneteket képtelen közössé tenni több szólamban: vissza kell kapcsolni egy szólamba. A másik lehetőség: megadni a szünet függőleges helyét: b\rest (a b helyére kerül a szünetjel).

Két hangjegy fejét akkor vonja össze, ha a hangmagasság és -hosszúság azonos, a két szár viszont különböző irányú. Minden más ütközéskor vízszintes eltolást csinál, és erről nem lehet lebeszélni.

Ha azt akarjuk, hogy az akkord felső hangjainak a szára felfelé, az alsóké lefelé mutasson, két szólamot kell csinálni \voiceOne és \voiceTwo-val, és a szólamokon belül szükség esetén akkordot írni. Másképp nem megy. Magyarul: \voiceThree-t és \voiceFour-t ne használjuk, mert az eltolást nem lehet elkerülni.

Akkord

Az akkord hangjait < és > közé kell tenni. Minden hang egyenlő hosszú, a hosszúságot a > után kell megadni. Példa:

<score vorbis="1" midi="1">
{    \relative c' {
     <a' f>8
     }
}
</score>

{    \relative c' {
     <a' f>8
     }
}

Akkord mód

\chordmode utáni blokk.

A dúr hármashangzatból indul ki, melynek neve az alaphang. Az akkor módosítható mollá, szeptimmé, hozzáadhatók ill. elhagyhatók belőle hangok. A \chordmode keverhető más kottarészekkel.

Azonos ritmusú két szólam egy kottasorba

<score>
{ \new Voice = "szolam"
    <<
    \relative c' { e8 f g c }
    \relative c' { c8 c c g' }
    \new Lyrics \lyricsto "szolam" { egy két há -- rom }
    >>
}
</score>

{ \new Voice = "szolam"
    <<
    \relative c' { e8 f g c }
    \relative c' { c8 c c g' }
    \new Lyrics \lyricsto "szolam" { egy két há -- rom }
    >>
}

\new Voice nélkül két kottasorba írná őket.

Különböző ritmusú két szólam egy kottasorba

<score vorbis="1" midi="1">
{  \key c \major
   <<
   \relative c' {
      \new Voice = "dallam" {
        c
        <<      
        { \voiceOne g' c }
        \new Voice { \voiceTwo d,2 }
        >>      
        \oneVoice c'4 d
        \bar "|."
      } 
   }
   \new Lyrics \lyricsto "dallam"{ egy ket -- tő há -- rom }
   >>
}
</score>

{  \key c \major
   <<
   \relative c' {
      \new Voice = "dallam" {
        c
        <<      
        { \voiceOne g' c }
        \new Voice { \voiceTwo d,2 }
        >>      
        \oneVoice c'4 d
        \bar "|."
      } 
   }
   \new Lyrics \lyricsto "dallam"{ egy ket -- tő há -- rom }
   >>
}

A \voiceOne felfelé, a \voiceTwo lefelé húzza a hangjegyek szárát, egyúttal a szünetjelet is feljebb ill. lejjebb teszi. Az eredeti állapotot a \oneVoice állítja vissza.

A gond a szünetekkel van, mert az alsó és felső szólam szüneteit különböző helyre írja, így a közös szünetnél mindig meg kell adni annak helyét, nyolcad szünetnél pl. b''\rest alakban, ahol b'' a középső vonal (abszolút magasságban). A szünet ráadásul a \relative-ot is megbolondítja... Minden, csak nem szép, de legalább mindkét szólamban leírható a szünet.

A másik gond: \voiceOne és \voiceThree azonos hangjait nem tudja összevonni, és egymás mellé írja. A lilypond dok. is azt a kerülő megoldást használja, hogy \voiceThree-ben a hang helyett s-et ír.

Kényelmesebb megoldás, viszont ehhez nem írható szöveg:

<score vorbis="1" midi="1">
{    \key c \major
     \relative c' {
     \partial 4
     <<
     {   c8 d e4 e e f8( e) d4 d d }
     \\
     {   c4 c c c f, g g g }
     >>
}
</score>

{    \key c \major
     \relative c' {
     \partial 4
     <<
     {   c8 d e4 e e f8( e) d4 d d }
     \\
     {   c4 c c c f, g g g }
     >>
     }
}

A \\ automatikusan kezd új szólamot, és beállítja ellenkezőre a szárat. Az alsó és felső szólam kottafejét akkor vonja össze, ha azonos hosszúságúak (és persze magasságúak).

Két szólam kombinálása egy kottasorba

A hangjegyek szárai egyirányúak, kivéve, ahol a ritmus eltér. Szöveg megadható.

felso  = \relative c' { … }
also   = \relative c' { … }
szoveg = \lyricmode   { … }
\score {
\new Staff \with { printPartCombineTexts = ##f }
   {
   <<
      \key …
      \time …
      \partcombine \felso \also
      \new NullVoice = "aligner" \felso
      \new Lyrics \lyricsto "aligner" \szoveg
   >>
   }
…
}

A \partcombine parancs feliratai:

  • \set Staff.soloText = #"…": az alsó szólamban szünet van
  • \set Staff.soloIIText = #"…": a felső szólamban szünet van
  • \set Staff.aDueText = #"…": a két szólam azonos

A printPartCombineTexts az összeset kikapcsolja a kottasor elején (lásd fenn).

Hátrányok: teljes kotta lehet csak, részkotta nem. Következésképp csak két szólamra jó, Összetákolt megoldásnak tűnik, de két szólam azonosságának összehasonlítására jó lehet (pl. ha az egyik a másik transzponált változata).

Szólamonként külön kottasorba

<score vorbis="1" midi="1">
{    \key c \major
     \relative c' {
     \partial 4
     <<
     {   c8 d e4 e e f8( e) d4 d d }
     \new Staff {
        c4 c c c f, g g g
     }
     >>
}
</score>

{    \key c \major
     \relative c' {
     \partial 4
     <<
     {   c8 d e4 e e f8( e) d4 d d }
     \new Staff {
        c4 c c c f, g g g
     }
     >>
     }
}

Az első kottasorhoz nem szabad kiírni a \new Staff-ot, mert addigra már elkezdte a kottát, és otthagy egy üres kottasort.

A kottasorok összekötése szabályozható \new név << … >> alakban, ahol név:

  • StaffGroup: szögletes zárójel, egy ütemvonal az összes szólamnak
  • ChoirStaff: szögletes zárójel, az ütemvonal a soron belül marad (hogy a sorok közé szöveget lehessen írni)
  • GrandStaff: kapcsos zárójel, egy ütemvonal
  • PianoStaff: kapcsos zárójel, egy ütemvonal, a két kéz közös neve Piano.

Példa:

<score vorbis="1" midi="1" raw="1">
\version "2.18.2"
\header { tagline = "" }    % ne legyen copyright szöveg
gyongedsop = \relative c' { \time 2/4 f4   bes8. bes16 | bes4. b8\rest | f4 c'8.  a16 | bes4. b8\rest | }
gyongedalt = \relative c' { \time 2/4 f4   f8.   f16   | f4.   b8\rest | f4 f8.   f16 | f4.   b8\rest | }
gyongedten = \relative c' { \time 2/4 d4   d8.   d16   | d4.   r8      | d4 es8.  c16 | d4.   r8      | }
gyongedbas = \relative c' { \time 2/4 bes4 bes8. bes16 | bes4. r8      | bes4 f8. f16 | bes4. r8      | }
dallam = {
   \new ChoirStaff <<
   \new Staff {
      \set Staff.instrumentName = \markup \column { "S" "A" }
      \set Score.tempoHideNote = ##t \tempo "Moderato" 4 = 60
      \key f \mixolydian
      \time 2/4
        <<
        \new Voice = "dallam" { \set Staff.midiInstrument = "church organ" \voiceOne <>^\p \gyongedsop }
        \new Voice { \set Staff.midiInstrument = "church organ" \voiceTwo \gyongedalt }
        >> }
   \new Lyrics \lyricsto "dallam" { Gyön -- géd ka -- rok rin -- gat -- nak itt, }
   \new Staff { \set Staff.instrumentName = "T" \set Staff.midiInstrument = "church organ" \clef "G_8" \key f \mixolydian <>^\p
           \new Voice = "tenor" \gyongedten }
   \new Lyrics \lyricsto "tenor" { Hű -- ség kí -- sér, szent é -- gi fény, }
   \new Staff { \set Staff.instrumentName = "B" \set Staff.midiInstrument = "church organ" \clef bass  \key f \mixolydian <>^\p \gyongedbas }
   >>
}
\score {
   \dallam
   \layout {
        indent = 0.0\cm
        }
}
\score {
   \unfoldRepeats
   { \transposition c' \dallam }
   \midi { }
}
</score>

A tenor szólamban a Voice-t csak a neve miatt kellett megadni, hogy szöveget rendelhessünk hozzá.


\version "2.18.2"
\header { tagline = "" }    % ne legyen copyright szöveg
gyongedsop = \relative c' { \time 2/4 f4   bes8. bes16 | bes4. b8\rest | f4 c'8.  a16 | bes4. b8\rest | }
gyongedalt = \relative c' { \time 2/4 f4   f8.   f16   | f4.   b8\rest | f4 f8.   f16 | f4.   b8\rest | }
gyongedten = \relative c' { \time 2/4 d4   d8.   d16   | d4.   r8      | d4 es8.  c16 | d4.   r8      | }
gyongedbas = \relative c' { \time 2/4 bes4 bes8. bes16 | bes4. r8      | bes4 f8. f16 | bes4. r8      | }
dallam = {
   \new ChoirStaff <<
   \new Staff {
      \set Staff.instrumentName = \markup \column { "S" "A" }
      \set Score.tempoHideNote = ##t \tempo "Moderato" 4 = 60
      \key f \mixolydian
      \time 2/4
        <<
        \new Voice = "dallam" { \set Staff.midiInstrument = "church organ" \voiceOne <>^\p \gyongedsop }
        \new Voice { \set Staff.midiInstrument = "church organ" \voiceTwo \gyongedalt }
        >> }
   \new Lyrics \lyricsto "dallam" { Gyön -- géd ka -- rok rin -- gat -- nak itt, }
   \new Staff { \set Staff.instrumentName = "T" \set Staff.midiInstrument = "church organ" \clef "G_8" \key f \mixolydian <>^\p
           \new Voice = "tenor" \gyongedten }
   \new Lyrics \lyricsto "tenor" { Hű -- ség kí -- sér, szent é -- gi fény, }
   \new Staff { \set Staff.instrumentName = "B" \set Staff.midiInstrument = "church organ" \clef bass  \key f \mixolydian <>^\p \gyongedbas }
   >>
}
\score {
   \dallam
   \layout {
        indent = 0.0\cm
        }
}
\score {
   \unfoldRepeats
   { \transposition c' \dallam }
   \midi { }
}

Az első kottasor elejére Staff.instrumentName-t, a többiére Staff.shortInstrumentName-t írja (ez utóbbit a példában nem állítottuk be).

Chordmode

Három hangos akkordok (bár ez módosítható). Az akkordok többsége a szokásos dúr/moll/stb., akkor nagyon kényelmes.

Kottaműveletek

Transzponálás

\transpose mit mire

Tercelés

diatonicScale = \relative c' { c d e f g a b }
dallam = …
\score {...
\modalTranspose e c \diatonicScale \dallam
}

Környezetek

Egymásba ágyazottak. Szintek:

  1. kotta
  2. sorcsoport (összekapcsolt kottasorok)
  3. kottasor: előjegyzés, kottavonalak, módosítójelek. Többnyire a Staff környezetet használjuk, de van külön környezet a tabulatúrának és a gregorián kottának.
  4. szólam: Voice, de ide tartozik a dalszöveg egy nyomdai sora is (Lyrics).

A környezet megtalálása egy adott fogalomhoz:

  • a fogalom leírása az indexben található
  • az Internal References megmondja az objektum nevét, a gravert (a szedőprogram nevét), és hogy milyen tulajdonságai vannak. A tulajdonság \override objektumnév.tulajdonságnév = #érték alakban állítható be.
  • az engraver leírás végén van egy felsorolás, mely környezetekben található meg a fogalom.

A \new with után nem kell kiírni a környezetet és a \set-et sem, csak az =-t.

Tulajdonságok

Minden tulajdonság az alábbi három környezet legalább egyikébe tartozik:

  • Score
  • Staff
  • Voice

A tulajdonságnév első (pont előtti) része a fenti környezet valamelyike. Több környezetbe tartozó tulajdonságnál a Score a teljes kottára, a Staff csak a kottasorra változtatja az értéket.

Tulajdonság beállítása pl.:

\set Staff.instrumentName = #"Soprano"

Az érték elé #-jelet kell írni. A logikai érték #f vagy #t lehet (ilyenkor két # jön egymás után). A szöveget idézőjelbe kell zárni, vagy a \markup paranccsal megadni. Az egészeket és a (valós) számokat a szokásos módon írjuk.

Az \unset törli a tulajdonságnevet: az általában a default értékre áll vissza.

A környezet elején a tulajdonságérték megadható \new Staff \with { extraNatural = ##f } { … } alakban is.

A \new típus [ név ] kifejezés új környezetet hoz létre, ahol a kifejezés kotta vagy szöveg, a típus Staff, Voice vagy Lyrics. Új kottát nem lehet csinálni. A név segítségével lehet többször felhasználni a definiált dolgot. Pl. szöveget definiálunk, amit több szólamhoz is felhasználhatunk (esetleg időben eltolva).

Egyéb

Engraver-ek
Azonosítók, melyek megadják, mit szedjen ki a lilypond és mit ne. Sokféle engraver van, külön van az 5 vonalnak, a kulcsnak, stb. A legtöbb engraver engedélyezve van, de nem minden. Pl. a kotta elé tud ambitust rajzolni a lilypond: ez alapból nincs megengedve.
  • A % a megjegyzés jele. A sor végéig a lilypond figyelmen kívül hagyja a % után írtakat. Kommentzárójel: %{ … %}. Egyik típusú komment sem skatulyázható egymásba.
  • Levegővétel: \breathe. Az ötödik vonalra tett aposztróf.
  • Karambol elkerülése vízszintesen és függőlegesen.
  • dinamika balra tolása: a hang előtt \once\override DynamicText.X-offset = #-9.2
  • \set Score.skipTypesetting = ##t abbahagyja a kotta kiszedését, amíg az értéket hamisra nem állítjuk (nem próbáltam, tudottan bugos).
  • \single \hideNotes hang vagy \hide hang egy hangot nem szed ki
  • dinamika beállítása az első hang előtt, pl.: <>\p. A <> az üres akkord/hang.

Példák

Egy bonyolultabb kotta felépítése:

\version "2.18.2"
\layout { \context { \Staff \consists "Ambitus_engraver" } }
dallam = \relative c' {
      \key d \minor
      \time 4/4
      \set Score.tempoHideNote = ##t \tempo 4 = 72
      \set Staff.midiInstrument = "drawbar organ"
      \transposition c'
          \new Voice = "szolegy" { … }      % első részlet
          \new Voice = "szolket" {       % példa két szólamú részletre
               << { \voiceOne … }        % fölső szólam
                  \new Voice { \voiceTwo … }   % alsó szólam ugyanabban a kottasorban
               >>
      …
      }
\score { 
   << 
   \new Voice = "dallam" { \dallam }
   \new Lyrics = "veszegy" \lyricsto "szolegy" { … }     % szöveg első versszak eleje
   \new Lyrics = "veszegy" \lyricsto "szolket" { … }     % szöveg második versszak eleje
   \context Lyrics = "veszegy" \lyricsto "szolket" { … } % szöveg első versszak, folytatás
   \context Lyrics = "veszket" \lyricsto "szolket" { … } % szöveg második versszak versszak, folytatás
   >>
   …
}

Fontos, hogy új szólam belépésekor új részt kezdjünk, hogy ne kelljen átugorni az új szólamot nem érintő korábbi részeket.

Debian-csomagok

  • rosegarden - music editor and MIDI/audio sequencer: provides a mixed Audio/MIDI sequencer, lilypond files export
  • denemo - GTK+ front end to GNU Lilypond
  • frescobaldi - Qt4 LilyPond sheet music editor, olyasmi lehet, mint a TurboC
  • nted - WYSIWYG musical score editor lilypond export
  • rumor - Realtime MIDI keyboard to Lilypond converter: transcripting simple music played on (MIDI) keyboard to Lilypond text notation
  • laborejo - music notation workshop: Lilypond GUI frontend
  • lilyquick

Jegyzetek

  1. Az öt vonal a hangjegyekkel.
  2. 2,0 2,1 A szintaxis időközben megváltozott, de a magyar Wikipédián nem a legújabb lilypond van.
  3. http://lilypond.1069038.n5.nabble.com/Scoring-song-with-multiple-sections-td190277.html

Források

További információk

Kapcsolódó lapok