]> git.donarmstrong.com Git - lilypond.git/blobdiff - Documentation/hu/learning/fundamental.itely
Merge branch 'master' of /home/jcharles/GIT/Lily/. into translation
[lilypond.git] / Documentation / hu / learning / fundamental.itely
index 584964a3fa21e098d62f3b44226fc62ba4829645..ab557f518fac2d49764162c07dbb14e74db22daf 100644 (file)
@@ -1,23 +1,25 @@
 @c -*- coding: utf-8; mode: texinfo; documentlanguage: hu -*-
 @c This file is part of learning.tely
 @ignore
-    Translation of GIT committish: 2d8b567afe459b0ab6503731e0c2568915a5c4ef
+    Translation of GIT committish: 48c2b169dc8a9bc2ab2c767cbb83b57cc158742b
 
     When revising a translation, copy the HEAD committish of the
     version that you are working on.  For details, see the Contributors'
     Guide, node Updating translation committishes..
 @end ignore
 
+@c Translators: Griechisch Erika, Harmath Dénes
 
 @c -*- coding: utf-8; mode: texinfo; -*-
-@c \version "2.12.0"
+@c \version "2.19.22"
 @node Alapfogalmak
 @chapter Alapfogalmak
 @translationof Fundamental concepts
 @translationof Fundamental concepts
 
-@untranslated
-
+Miután megtanultuk, hogyan állíthatunk elő gyönyörű kottákat egyszerű szöveges
+fájlokból, ebben a szakaszban megismerjük azokat a fogalmakat és technikákat,
+amelyek segítségével hasonlóan gyönyörű, de bonyolultabb kottákat készíthetünk.
 
 @menu
 * Hogyan működnek a LilyPond bemeneti fájlok?::
 @translationof How LilyPond input files work
 @translationof How LilyPond input files work
 
-@untranslated
-
+A LilyPond bemeneti formátuma meglehetősen rugalmas, így a tapasztalt
+felhasználóknak nagy szabadságot ad abban, hogyan strukturálják a
+forrásfájljaikat. Azonban ez a rugalmasság az újdonsült felhasználók számára
+bonyolult lehet. Ez a szakasz elmagyarázza a struktúra nagy részét, az
+egyszerűség kedvéért bizonyos részleteket elnagyolva. A bemeneti formátum
+felépítésének teljes leírása a @ruser{File structure} c. szakaszban olvasható.
 
 @menu
 * Bevezetés a LilyPond fájlok szerkezetébe::
 @translationof Introduction to the LilyPond file structure
 @translationof Introduction to the LilyPond file structure
 
-@untranslated
-
-
-@c index input format
-@c index file structure
-@c index book
-@c index score
-@c ode{\score@{@}} command.  This is because LilyPond automatically
-@c index implicit contexts
-@c index contexts, implicit
-@ref{Kontextusok és ábrázolók}.
-@c ode{\score} command, leaving the others to default.
-@c index header
-@c index layout
-@c index midi
-@c ode{\midi} -- are special: unlike many other commands which begin
-@c ode{\header} is often placed above the @code{\score} command, as the
-@c ode{\layout @{ @}} and @code{\midi @{@}}.  If these appear as
-@c index scores, multiple
-@c index book block, implicit
-@c index implicit book block
-@c ode{\book} command should be used to separate the different
-@c ode{\book} block.
-@c index layout block, effect of location
-@c ode{\book} block in which it appears -- i.e., a @code{\layout}
-@c index variables
-@ref{Művek szervezettebbé tétele változók segítségével}.  All the templates use this
-@c ode{melody} (everything after the equals sign) and inserts it
-@c ode{TimeKey},
-@c ode{pianorighthand}, or @code{foofoobarbaz}.  For more details,
+@c index bemeneti formátum
+@c index fájlstruktúra
+
+A LilyPond bemeneti fájlok szerkezetére egy tipikus példa:
+
+@example
+\version @w{"@version{}"}
+
+\header @{ @}
+
+\score @{
+  @var{...összetett zenei kifejezés...}  % ide jön a zene!
+  \layout @{ @}
+  \midi @{ @}
+@}
+@end example
+
+@noindent
+Ennek az alapvető mintának sok változata lehetséges, de ez a példa jó
+kiindulási alapot jelent.
+
+@funindex \book
+@funindex book
+@funindex \score
+@funindex score
+@cindex book
+@cindex score
+
+Eddig egyik példa sem használta a @code{\score@{@}} parancsot. Ennek oka, hogy
+a LilyPond automatikusan hozzáadja az egyszerű bemenethez a szükséges
+parancsokat. A következő bemenet például:
+
+@example
+\relative @{
+  c''4 a d c
+@}
+@end example
+
+@noindent
+a következő rövidítése:
+
+@example
+\book @{
+  \score @{
+    \new Staff @{
+      \new Voice @{
+        \relative @{
+          c''4 a b c
+        @}
+      @}
+    @}
+    \layout @{ @}
+  @}
+@}
+@end example
+
+Más szóval, ha a bemenet egyetlen zenei kifejezést tartalmaz, a LilyPond úgy
+értelmezi a fájlt, mintha a zenei kifejezés körül már szerepelnének a fenti
+parancsok.
+
+@cindex implicit kontextusok
+
+@strong{Figyelem!} A dokumentációban sok példa nem tartalmazza a
+@code{\new Staff} és @code{\new Voice} parancsokat, így azok implicite kerülnek
+létrehozásra. Ez egyszerű példáknál jól működik, de bonyolultabb esetekben,
+főleg, ha más parancsokat is használunk, a kontextusok implicit létrehozása
+meglepő kimenetet eredményezhet, például nemkívánatos kottasorok jelenlétét.
+A kontextusok explicit megadásának módja a @ref{Kontextusok és ábrázolók} c.
+részben olvasható.
+
+@warning{Többszólamú zeneművek esetén ajánlott explicit módon létrehozni a
+kottasorokat és az azon belüli szólamokat.}
+
+Egyelőre térjünk vissza az első példánkhoz, és vizsgáljuk meg csak a
+@code{\score} parancsot.
+
+A @code{\score} blokkon belül először pontosan egy zenei kifejezésnek kell
+következnie.
+Emlékezzünk arra, hogy egy zenei kifejezés lehet egy hang is, de akár
+egy olyan nagy összetett kifejezés is, mint:
+
+@example
+@{
+  \new StaffGroup <<
+    @var{...egy teljes Wagner-opera zenei anyaga...}
+  >>
+@}
+@end example
+
+@noindent
+Mivel mindez egy @code{@{ ... @}} blokkban szerepel, egy zenei
+kifejezésnek számít.
+
+Ahogy korábban láttuk, a @code{\score} blokk a zenén kívül más definíciókat is
+tartalmazhat, mint például:
+
+@example
+\score @{
+  @{ c'4 a b c' @}
+  \header @{ @}
+  \layout @{ @}
+  \midi @{ @}
+@}
+@end example
+
+@funindex \header
+@funindex header
+@funindex \layout
+@funindex layout
+@funindex \midi
+@funindex midi
+@cindex header
+@cindex layout
+@cindex midi
+
+@noindent
+Ez a három parancs -- @code{\header}, @code{\layout} és @code{\midi} --
+speciális: az eddigi parancsokkal ellentétben @emph{nem} zenei kifejezések, és
+nem azok részei. A @code{\score} blokkon belül vagy kívül is elhelyezkedhetnek
+-- például a @code{\header} (fejléc) blokk, melyben a kotta adatait (pl. cím,
+szerző stb.) lehet megadni, legtöbbször a @code{\score} parancs előtt szerepel,
+ahogy a szakasz elején található példában is látható.
+
+A két további, még ismeretlen parancs: @code{\layout @{@}} és
+@code{\midi @{@}}. Ezek ebben a formában rendre azt jelentik, hogy a LilyPond
+kottaképet, ill. hangzó anyagot állítson elő. Teljes leírásuk a Kottaírás
+Kézikönyvében található, a @ruser{Score layout} és a
+@ruser{Creating MIDI files} szakaszokban.
+
+@cindex több kotta
+@cindex implicit book blokk
+@funindex \book
+@funindex book
+
+Egy fájlban több @code{\score} blokk lehet. Mindegyik egy-egy zeneművet
+vagy tételt jelöl, de ezek egy kimeneti fájlban fognak megjelenni. Nem
+szükséges @code{\book} blokkba foglalni őket -- ez implicite megtörténik.
+Ha azonban több kimeneti fájlt szeretnénk kapni egy forrásfájlból, akkor több
+@code{\book} blokkot kell megadnunk -- kimeneti fájlonként egyet-egyet.
+
+Összegezve:
+
+Minden @code{\book} blokk külön kimeneti fájlt eredményez (pl. egy-egy PDF
+állományt). Ha nem szerepel explicit módon a forráskódban, akkor a LilyPond
+körülveszi az egész forráskódot egy @code{\book} blokkal.
+
+Egy @code{\book} blokkon belül minden @code{\score} blokk különálló zenei
+egységet jelöl.
+
+@cindex layout blokk helye
+
+Minden @code{\layout} blokk arra a @code{\score} vagy @code{\book} blokkra
+érvényes, amelyben szerepel -- tehát egy @code{\score} blokkon belüli
+@code{\layout} blokk csakis arra az egy @code{\score} blokkra vonatkozik,
+de egy @code{\score} blokkon kívüli @code{\layout} blokk a @code{\score}
+blokkot tartalmazó (akár explicit, akár implicit) @code{\book} blokkon belüli
+minden @code{\score} blokkra érvényes.
+
+A részletek a @ruser{Multiple scores in a book} c. részben olvashatók.
+
+@cindex változók
+
+Fájljainkat áttekinthetőbbé tehetjük változók definiálásával (ld.
+@ref{Művek szervezettebbé tétele változók segítségével}). Minden sablonban ezt
+a módszert használjuk:
+
+@example
+dallam = \relative @{
+  c'4 a b c
+@}
+
+\score @{
+  \dallam
+@}
+@end example
+
+Amikor a LilyPond feldolgozza ezt a fájlt, a @code{dallam} változó értékét
+(azaz mindent az egyenlőségjel utáni zenei kifejezésből) beszúrja mindenhova,
+ahol @code{\dallam} hivatkozást lát. A változók nevére nincs sok megkötés -- a
+következők mind helyes példák:  @code{dallam}, @code{jobbkéz}, @code{fuvola},
+@code{BII} stb. A @ref{Kevesebb gépelés változókkal és függvényekkel} c.
+szakasz további információkat tartalmaz. Mindössze annyi a korlátozás, hogy a
+változónevek csak betűket tartalmazhatnak, és nem ütközhetnek a
+LilyPond parancsok neveivel. A pontos szabályok a @ruser{File structure} c.
+részben vannak leírva.
+
+@seealso
+A bemeneti formátum teljes definíciója a
+@ruser{File structure} c. szakaszban található.
+
 @node A kotta egy összetett zenei kifejezés
 @subsection A kotta egy összetett zenei kifejezés
 @translationof Score is a (single) compound musical expression
 @translationof Score is a (single) compound musical expression
 
-@untranslated
+@funindex \score
+@funindex score
+@cindex score
+@cindex összetett zenei kifejezés
 
+Az előző szakaszban (@ref{Bevezetés a LilyPond fájlok szerkezetébe}) már láttuk
+a LilyPond fájlok általános felépítését. De a legfontosabb részt mintha
+átugrottuk volna: mi kerüljön a @code{\score} blokk belsejébe?
+
+Valójában ez sokkal egyszerűbb, mint gondolnánk. Ez a mondat mindent
+megmagyaráz:
 
-@c index score
-@c index contents of a score block
-@c index score block, contents of
-@c index compound music expression
-@c index music expression, compound
 @quotation
+@emph{A @code{\score} blokknak egy összetett zenei kifejezéssel kell
+kezdődnie.}
 @end quotation
-@ref{A zenei kifejezés fogalma}.  In that section, we saw how to
-@c ode{StaffGroup} for this ensemble, which simply groups a number
-@c ode{text} variable are interpreted as lyrics we preface them with
-@c ode{\lyricmode}.  Like @code{\addlyrics}, this switches the input
+
+@noindent
+Az összetett zenei kifejezés fogalmát már tisztáztuk
+@ref{A zenei kifejezés fogalma} c. részben. Láttuk, hogy építhetünk fel nagy
+zenei kifejezéseket kis részekből -- először hangokból, aztán akkordokból stb.
+Most egy összetett zenei kifejezést vizsgálunk meg felülről lefelé. Az
+egyszerűség kedvéért egy zongorakíséretes dal lesz a példánk. Először is
+szükségünk van az énekes és a zongorista szólamára.
+
+@example
+\score @{
+  <<
+    \new Staff = "ének" <<
+    >>
+    \new PianoStaff = "zongora" <<
+    >>
+  >>
+  \layout @{ @}
+@}
+@end example
+
+Elneveztük a két szólamot @qq{ének} és @qq{zongora} néven. Ez nem kötelező,
+de jó szokás, hogy első pillantásra lássuk, melyik szólam mire szolgál.
+
+Emlékezzünk arra, hogy @code{<< ... >>} szolgál több szólam jelölésére. Ennek
+hatására az ének- és a zongoraszólam egymás alatt fog megjelenni a kottában.
+A zongoraszólam két kottasort fog tartalmazni, az énekszólam pedig egy
+kottasort és egy dalszöveget, így mindkettőhöz @code{<< ... >>} blokk kell.
+A dalszöveghez az @code{\addlyrics} parancsot fogjuk használni. Ha szükséges
+feleleveníteni, az @ref{Egyszerű dalok kottázása} c. részben olvashatunk róla.
+
+@lilypond[verbatim,quote,ragged-right]
+\score {
+  <<
+    \new Staff = "ének" <<
+      \new Voice = "dallam" { c'1 }
+      \addlyrics { Szólt }
+    >>
+    \new PianoStaff = "zongora" <<
+      \new Staff = "jobbkéz" { c'1 }
+      \new Staff = "balkéz" { c'1 }
+    >>
+  >>
+  \layout { }
+}
+@end lilypond
+
+Most megvan a teljes struktúra. Az énekszólam egy @code{Voice} kontextust
+tartalmaz a hangoknak, és egy versszaknyi dalszöveget. A zongoraszólam pedig
+a jobb- és balkéz kottasorait tartalmazza.
+
+Most elkezdhetjük kitölteni a hangokat. Elkezdhetnénk közvetlenül a Voice
+kontextus belsejébe beleírni, hogy:
+
+@example
+\relative @{
+  r4 d''8\noBeam g, c4 r
+@}
+@end example
+
+De ha ezt tennénk, a @code{\score} blokk nagyon bonyolult lenne, és nem lehetne
+átlátni a szólamok szerkezetét. Így érdemes változókat használni. A dalszöveg
+változóként való megadására a @code{\lyricmode} parancsot kell használni, hogy
+a LilyPond dalszövegként és ne hangokként értelmezze a változó tartalmát.
+(A dalszöveg egy külön beviteli mód, ezekből még több is van, ld. az
+@ruser{Input modes} c. részt.)
+
+Tehát miután definiáltuk a megfelelő változókat, hivatkoztunk rájuk, és
+basszuskulccsal láttuk el a balkezet, kész egy valódi mű kezdete:
+
+@lilypond[verbatim,quote,ragged-right]
+dallam = \relative { r4 d''8\noBeam g, c4 r }
+dalszöveg = \lyricmode { Szólt az Úr, }
+jobbkéz = \relative { <g' d g,>2~ <g d g,> }
+balkéz = \relative { b,2 e2 }
+
+\score {
+  <<
+    \new Staff = "ének" <<
+      \new Voice = "dallam" { \dallam }
+      \addlyrics { \dalszöveg }
+    >>
+    \new PianoStaff = "zongora" <<
+      \new Staff = "jobbkéz" { \jobbkéz }
+      \new Staff = "balkéz" {
+        \clef "bass"
+        \balkéz
+      }
+    >>
+  >>
+  \layout { }
+}
+@end lilypond
+
+Amikor a @code{\score} blokkot írjuk vagy olvassuk, mindig lassan, gondosan
+járjunk el. Haladjunk kívülről befelé, a magas szintű felépítéstől a részletek
+felé haladva. Nagyban segít, ha ügyelünk a behúzásokra -- minden blokk
+kezdődjön egy tabulátorral beljebb, így az egy szinten levő blokkok ugyanolyan
+mértékben lesznek behúzva.
+
+@seealso
+Referencia: @ruser{Structure of a score}.
+
+
 @node Zenei kifejezések egymásba ágyazása
 @subsection Zenei kifejezések egymásba ágyazása
 @translationof Nesting music expressions
-@translationof Nesting music expressions
 
-@untranslated
+@cindex ideiglenes kottasorok
+@cindex ossia
+
+Ossiák bevitelekor jön jól, hogy kottasorok bármikor, darab közben is
+kezdődhetnek, és bármikor végződhetnek. Álljon itt erre egy példa:
+
+@lilypond[verbatim,quote,ragged-right]
+\new Staff {
+  \relative {
+    r4 g'8 g c4 c8 d |
+    e4 r8
+    <<
+      { f c c }
+      \new Staff {
+        f8 f c
+      }
+    >>
+    r4 |
+  }
+}
+@end lilypond
+
+@noindent
+Figyeljük meg, hogy a kulcs mérete némileg kisebb, mint a sor elején szereplő
+kulcsé (mint ahogy kulcsváltásnál is).
+
+@cindex kottasorok pozíciója
+
+Az ossia a kottasor fölött is elhelyezkedhet:
+
+@lilypond[verbatim,quote,ragged-right]
+\new Staff = "main" {
+  \relative {
+    r4 g'8 g c4 c8 d |
+    e4 r8
+    <<
+      { f c c }
+      \new Staff \with {
+        alignAboveContext = #"main" }
+      { f8 f c }
+    >>
+    r4 |
+  }
+}
+@end lilypond
+
+Ebben a példában a még ismeretlen @code{\with} parancsot használtuk, amelyet
+később ismertetünk. Most elég annyit tudni róla, hogy a kottasor bizonyos
+tulajdonságainak módosítására szolgál. Itt egy olyan tulajdonságot adunk meg,
+ami azt mondja, hogy az új kottasor a @qq{main} nevű kottasor felett
+helyezkedjen el (ahelyett, hogy alatta helyezkedne el, ami az alapértelmezés).
+
+
+@seealso
+Az ossiákat általában kulcs és ütemmutató nélkül, valamint kisebb méretben
+szedjük. Ehhez további új parancsok kellenek; ld. az @ref{Size of objects} és
+@ruser{Ossia staves} szakaszokat.
 
 
-@c index staves, temporary
-@c index temporary staves
-@c index ossias
-@c index staff, positioning
 @node A gerendák és ívek átfedhetik egymást
 @subsection A gerendák és ívek átfedhetik egymást
 @translationof On the un-nestedness of brackets and ties
-@translationof On the un-nestedness of brackets and ties
 
-@untranslated
+@cindex zárójeltípusok
+@cindex zárójelek egymásba ágyazása
+
+Már sok zárójelfajtával találkoztunk a LilyPond fájlok írása közben. Ezekre
+különböző szabályok vonatkoznak, amelyeket érdemes tisztázni. Ismételjük át
+ezeket a típusokat.
+
+@need 50
+@multitable @columnfractions .3 .7
+@headitem Zárójelfajta
+  @tab Szerep
+@item @code{@{ .. @}}
+  @tab Egymás után megszólaló hangokat tartalmaz
+@item @code{< .. >}
+  @tab Egy akkord hangjait tartalmazza
+@item @code{<< .. >>}
+  @tab Egyszerre megszólaló zenei kifejezéseket tartalmaz
+@item @code{( .. )}
+  @tab Egy ív kezdetét és végét jelöli
+@item @code{\( .. \)}
+  @tab Egy frazeálóív kezdetét és végét jelöli
+@item @code{[ .. ]}
+  @tab Egy kézi gerenda kezdetét és végét jelöli
+@end multitable
+
+A LilyPond világán kívül a különböző fajtájú zárójeleket megfelelően egymásba
+kell ágyazni, pl. így: @code{<< [ @{ ( .. ) @} ] >>}. Tehát a záró
+zárójeleknek pontosan fordított sorrendben kell állniuk, mint a nyitó
+zárójeleknek. A fenti táblázatban szereplő első három típusnál (a blokkoknál)
+ezt a LilyPond is megköveteli. A többi parancsnál ez nem követelmény.
+Valójában ezekre nem is úgy érdemes gondolni, mint a zárójelekre, hanem olyan
+jelzésekre, amelyek zenei elemek kezdetét és végét jelölik.
+
+Tehát például egy frazeálóív kezdődhet egy kézzel megadott gerenda előtt, és
+befejeződhet a gerenda vége előtt -- lehet, hogy nem a legzeneibb megoldás, de
+lehetséges:
+
+@lilypond[quote,verbatim,fragment,ragged-right,relative=2]
+ { g8\( a b[ c b\) a] }
+@end lilypond
+
+Általánosságban az ívek, frazeálóívek, kötőívek és gerendák átnyúlhatnak
+a triolák és előkék határain. A következő példában az 1. sorban egy gerenda,
+a 2. sorban egy kötőív nyúl bele egy triolába, a 3. és 4. sorban pedig
+mindezek mellett még egy kötőív is található két triola között, valamint egy
+frazeálóív, amely túlnyúlik a triolán.
+
+@lilypond[quote,verbatim,fragment,ragged-right]
+{
+  r16[ g16 \tuplet 3/2 {r16 e'8] }
+  g16( a \tuplet 3/2 {b d) e' }
+  g8[( a \tuplet 3/2 {b d') e'~]}
+  \tuplet 5/4 {e'32\( a b d' e'} a'4.\)
+}
+@end lilypond
 
 
-@c index brackets, nesting
-@c index bracket types
-@c index brackets, enclosing vs. marking
-@c attempt to force this onto a new page
 @node A szólamok zenét tartalmaznak
 @section A szólamok zenét tartalmaznak
 @translationof Voices contain music
-@translationof Voices contain music
-
-@untranslated
 
+Ahogy az énekeseknek dallamok kellenek ahhoz, hogy énekelhessenek, a LilyPondnak is szüksége van hangokra.
+A valódi zene minden hangszer számára magában a kottában szereplő szólamokat jelenti -- 
+ezek nem csak a zenének, hanem magának a LilyPondnak is alapkövei.
 
 @menu
 * Hangzatos szólamok::
 @node Hangzatos szólamok
 @subsection Hangzatos szólamok
 @translationof I'm hearing Voices
-@translationof I'm hearing Voices
 
-@untranslated
-
-
-@c index polyphony
-@c index layers
-@c index multiple voices
-@c index voices, multiple
-@c index Voice context
-@c index context, Voice
-@c index simultaneous music
-@c index music, simultaneous
-@c index concurrent music
-@c index music, concurrent
-@c index voices vs. chords
-@c index chords vs. voices
-@c ode{\\}, to place them in separate voices.  Without these, the
-@c index voices, naming
-@c index voices crossing brackets
-@c index slurs crossing brackets
-@c index ties crossing brackest
-@ref{Változók felhasználása a finomhangoláshoz}.
-@c index polyphony and relative note entry
-@c index relative note entry and polyphony
-@c ode{\relative @{ @}} block.  Each note is still calculated
-@c ode{noteB} is relative to @code{noteA}                      @*
-@c ode{noteC} is relative to @code{noteB}, not @code{noteA};   @*
-@c ode{noteD} is relative to @code{noteB}, not @code{noteA} or
-@c ode{noteC};                                                 @*
-@c ode{noteE} is relative to @code{noteD}, not @code{noteA}.
+
+@cindex polyphony
+@cindex layers
+@cindex multiple voices
+@cindex voices, multiple
+@cindex Voice context
+@cindex context, Voice
+@cindex simultaneous music
+@cindex music, simultaneous
+@cindex concurrent music
+@cindex music, concurrent
+@cindex voices vs. chords
+@cindex chords vs. voices
+
+A LilyPond kotta legalsó rétege a  @q{Szólam környezet} vagy röviden @q{Szólamok}. 
+A szólamokat egyes csomagokban csak rétegeknek nevezzük.
+
+Valójában a szólam környezet az egyetlen, ami zenét tartalmazhat. 
+Ha szólam környezetet nem hozunk létre, akkor automatikusan készül 
+egy, ahogy láthattuk ennek a fejezetnek az elején. Egyes hangszerek 
+-- mint az oboa is -- egy időben csak egy hangot képesek kiadni. 
+Az ilyen hangszerekre írt zenék monofonikusak és csak egyetlen hangot 
+tartalmaznak (egy időben). Azon hangszerek esetén, melyek képesek egy 
+időben több hangot is kiadni -- mint a zongora -- sokszor többszörös 
+szólamokra van szükségünk, akár különböző ütemben. 
+
+       
+Egy egyszerű szólam  több hangjegyet is tartalmazhat egy akkordban, 
+tehát felmerül a kérdés, hogy mikor is van szükségünk többszörös szólamra. 
+Nézzük az első példát, 4 akkorddal:
+
+@lilypond[quote,verbatim,fragment,ragged-right,relative=1]
+\key g \major
+<d g>4 <d fis> <d a'> <d g>
+@end lilypond
+
+A fenti példa leírható egyszerű, kúpos („kacsacsőr”) zárójelekkel, @code{< ... >}, 
+így csak egy egyszeres szólamra volt szükségünk. De tegyük fel, hogy, hogy a FISZ 
+egy nyolcad, melyet egy másik G nyolcad követ. Ebben esetben két hangunk van, 
+mely ugyanakkor kezdődik, de különböző hanghosszúságú: a negyed D és a nyolcad FISZ. 
+Hogy írjuk ezt le? Nem írhatjuk akkordként, hiszen egy akkordban minden hang azonos 
+hosszúságú és nem írhatjuk egymást követő hangokként sem, hiszen egy időben kell kezdődniük a hangoknak. Ilyenkor van szükségünk két szólamra.
+
+
+
+Nézzük, hogy néz ez ki a LilyPond szintaxisában.
+
+@funindex << \\ >>
+@funindex \\
+
+A legegyszerűbb módja olyan részek rögzítésének, amelyek több mint egy hangot 
+tartalmaznak egy szólamban, hogy szekvenciát @code{@{...@}} használunk és ezt kombináljuk a szögletes zárójelekkel @code{<<...>>}.
+Az ilyen a részeket @code{\\} segítségével kell elválasztani ahhoz, hogy különböző szólamként jelenjenek meg. 
+Az elválasztó jelek nélkül a hangok egyetlen szólamként szerepelnének, ami általában hibát okoz. 
+Ez a technika használható olyan daraboknál melyek leginkább monofonikusak és néhány részük polifón.
+
+
+Itt egy példa, ami a fenti akkord egyik hangját két szólamra osztja és kötést is tartalmaz:
+
+@lilypond[quote,verbatim,fragment,ragged-right,relative=2]
+\key g \major
+%    1. szólam                  2. szólam
+<< { g4 fis8( g) a4 g }  \\  { d4 d d d }  >>
+@end lilypond
+
+Vegyük észre, hogy a második hang szárai lefele mutatnak.
+
+
+Íme egy másik egyszerű példa:
+
+@lilypond[quote,verbatim,fragment,ragged-right,relative=2]
+\key d \minor
+%    1. szólam               2. szólam
+<< { r4 g g4. a8 }    \\ { d,2 d4 g }       >>
+<< { bes4 bes c bes } \\ { g4 g g8( a) g4 } >>
+<< { a2. r4 }         \\ { fis2. s4 }       >>
+@end lilypond
+
+Nem szükséges, hogy minden ütemet elválasszunk a  @code{<< \\ >>} segítségével.  
+Olyan zenék esetén, ahol csak néhány hang van minden ütemben, ez a felépítés 
+segíti a kód olvashatóságát, de ha már sok hang van, akkor jobb, ha a hangokat külön-külön jegyezzük le, például így:
+
+
+@lilypond[quote,verbatim,fragment,ragged-right,relative=2]
+\key d \minor
+<< {
+  % 1. szólam
+  r4 g g4. a8 |
+  bes4 bes c bes |
+  a2. r4 |
+} \\ {
+  % 2. szólam
+  d,2 d4 g |
+  g4 g g8( a) g4 |
+  fis2. s4 |
+} >>
+@end lilypond
+
+
+@cindex voices, naming
+@cindex voices crossing brackets
+@cindex slurs crossing brackets
+@cindex ties crossing brackest
+
+
+A fenti példában csak két szólam van, de ha három vagy több szólamot kell 
+lejegyezni, azt is hasonlóan lehet megoldani visszaperjelek (back-slash) használatával.
+
+A szólam környezetek nevei @code{"1"}, @code{"2"}, stb. 
+Minden ilyen környezetben a függőleges elrendezés (kötések, szárak, dinamika, stb) megfelelően jelenik meg.
+
+
+@lilypond[quote,verbatim,fragment]
+\new Staff \relative {
+  % Fő hang
+  c'16 d e f
+  %   1. szólam       2. szólam                 3. szólam
+  << { g4 f e } \\ { r8 e4 d c8~ } >>
+  << { d2 e2 }  \\ { c8 b16 a b8 g~ g2 } \\ { s4 b4 c2 } >>
+}
+@end lilypond
+
+
+A fő szólamtól különválasztva jelennek meg a @code{<< .. >>} között  
+szereplő szólamok (hangok). Ezt hívjuk @emph{szimultán felépítésnek}. 
+Az átkötések és kötőívek csak az azonos szólamon belül kötik 
+össze a hangokat, tehát ezek nem kerülhetnek belülre vagy kívülre a 
+szimultán felépítéshez képest.
+Fordítva, szimultán felépítés esetén azok a párhuzamos szólamok, 
+amelyek ugyanabban az ötvonalban vannak, egy szólamnak minősülnek. 
+Egyéb szólamhoz kapcsolódó tulajdonságok átöröklődnek a szimultán 
+felépítésbe is. Itt egy másik példa, melynél a különböző szólamokban 
+különböző színű hangok szerepelnek. Vegyük észre, hogy 
+adott szólambeli változások nincsenek hatással más szólamokra, 
+de a változtatások ugyanabban a szólamban később is érvényesek. 
+Vegyük észre azt is, hogy az összekötött hangokat szétválaszthatja 
+az ütemhatár, ahogy a kék háromszöget jelző szólamban láthatjuk: 
+
+
+@lilypond[quote,verbatim]
+\new Staff \relative {
+  % Fő szólam
+  c'16 d e f
+  <<  % 1. ütem
+    {
+      \voiceOneStyle
+      g4 f e
+    }
+  \\
+    {
+      \voiceTwoStyle
+      r8 e4 d c8~
+    }
+  >>
+  <<  % 2. ütem
+     % 1. szólam folytatása
+    { d2 e2 }
+  \\
+     % 2. szólam folytatása
+    { c8 b16 a b8 g ~ g2 }
+  \\
+    {
+      \voiceThreeStyle
+      s4 b4 c2
+    }
+  >>
+}
+@end lilypond
+
+@funindex \voiceOneStyle
+@funindex \voiceTwoStyle
+@funindex \voiceThreeStyle
+@funindex \voiceFourStyle
+@funindex \voiceNeutralStyle
+
+
+A @code{\voiceXXXStyle} parancsot elsősorban oktatási célra érdemes 
+használni, olyan esetben, mint amilyet ez is.  Ezek a parancsok 
+módosítják a hangok színét illetve a kottafejet, a  szárat, a 
+gerendákat és a hangfejek stílusát, így lesznek a szólamok könnyen felismerhetőek. 
+
+Az első szólam piros rombusz, a második kék háromszög, a 
+harmadik zöld áthúzott kör, a negyedik (itt nem használt) magenta kereszt. 
+A @code{\voiceNeutralStyle} (szintén nem használt a fenti példában) visszaállítja 
+a stílust az alapértelmezettre. Később az  @ref{Objektumok láthatósága és színe} 
+és @ref{Változók felhasználása a finomhangoláshoz} fejezetekben majd látni fogjuk, 
+hogyan lehet hasonló parancsokat létrehozni.
+
+
+@cindex polyphony and relative note entry
+@cindex relative note entry and polyphony
+
+
+A polifónia nem változtatja meg a hangjegyek viszonyát a @code{\relative @{ @}} blokkon belül. 
+Minden hangjegy helyzetét az azt megelőző hang illetve első hang helyzete határozza meg.
+
+@example
+\relative c' @{ noteA << < noteB noteC > \\ noteD >> noteE @}
+@end example
+
+@noindent
+@code{noteB} is relative to @code{noteA}                      @*
+@code{noteC} is relative to @code{noteB}, not @code{noteA};   @*
+@code{noteD} is relative to @code{noteB}, not @code{noteA} or
+@code{noteC};                                                 @*
+@code{noteE} is relative to @code{noteD}, not @code{noteA}.
+
+
+Van egy másik módszer, ami egyszerűbb, ha a hangjegyek a 
+szólamokon belül teljesen szét vannak választva. 
+Ezt úgy érthetjük el, hogy  a @code{\relative} parancsot használjuk minden szólam kezdetén:
+
+
+@example
+\relative c' @{ noteA ... @}
+<<
+  \relative c'' @{ < noteB noteC > ... @}
+\\
+  \relative g' @{ noteD ... @}
+>>
+\relative c' @{ noteE ... @}
+@end example
+
+Végül vizsgáljuk meg a szólamokat összetettebb zene esetén. 
+Nézzük Chopin Deux Nocturne, Op 32. művének első két ütemét. 
+A továbbiakban is ezt a példát fogjuk használni arra, hogy a 
+jelölésekre használható különböző technikákat szemléltessük, 
+ezért tekintsünk el attól, hogy az alábbi kód elsőre rejtélyesnek 
+tűnhet és koncentráljunk csak a zenére és a szólamokra -- a nehezebb részeket majd a későbbi fejezetekben áttekintjük. 
+
+
+
 @c The following should appear as music without code
+@lilypond[quote,ragged-right]
+\new Staff \relative {
+  \key aes \major
+  <<  % 1. szólam
+    { c''2 aes4. bes8 }
+  \\  % 2. szólam
+    { aes2 f4 fes }
+  \\  % Nincs 3. szólam
+  \\  % 4. szólam
+    {
+      % Az alábbival nem foglalkozunk most, a 4. fejezetben megtalálhatjuk a kód magyarázatát
+      \once \override NoteColumn #'force-hshift = #0
+      <ees c>2
+      \once \override NoteColumn #'force-hshift = #0.5
+      des2
+    }
+  >> |
+  <c ees aes c>1 |
+}
+@end lilypond
+
+A szárak iránya gyakran jelzi két egyidejű dallamsor folytonosságát. 
+A fenti példánál a legfelső hangjegy szárai felfelé mutatnak, az alsóké mind lefelé. 
+Ez az első jelölés, amire szükségünk van több szólam lejegyzése során. 
+
+
+Leginkább viszont akkor van szükségünk többszörös szólamokra, amikor a hangok ugyanakkor kezdődnek ugyan, de különböző hosszúságúak. Nézzük azt a hangot, ami első ütem harmadik ütésekor kezdődik. Az ASZ egy pontozott negyed, az alatta levő F egy pontozatlan negyed,  a DESZ pedig egy fél hang.  Ezek nem írhatók le akkordként, hiszen akkord esetén minden hang azonos hosszúságú. Nem írhatóak le egymást követő hangokként sem, hiszen egy időben kell kezdődniük. Az ütemnek ebben a részében három szólamra van szükségünk, és normál esetben az egész ütem három szólamú, ahogy az alábbi példa mutatja, ahol különböző hangjegyfejeket használunk különböző színekkel a három szólamhoz. Szeretnénk ismét kihangsúlyozni, hogy az alábbi példa mögötti kódot később elmagyarázzuk, most csak hagyjuk figyelmen kívül azokat a részeket, amik nem érthetőek. 
+
+
 @c The following should appear as music without code
 @c The three voice styles should be defined in -init
-@c index stem down
-@c index voices and stem directions
-@c index stem directions and voices
-@c index stem up
+@lilypond[quote,ragged-right]
+\new Staff \relative {
+  \key aes \major
+  <<
+    {  % 1. szólam
+      \voiceOneStyle
+      c''2 aes4. bes8
+    }
+  \\  % 2. szólam
+    { \voiceTwoStyle
+      aes2 f4 fes
+    }
+  \\  % Nincs 3. szólam (a hangjegyek szárait lefele szeretnénk)
+  \\  % 4. szólam
+    { \voiceThreeStyle
+       % Az alábbival nem foglalkozunk most, a 4. fejezetben megtalálhatjuk a kód magyarázatát
+      \once \override NoteColumn #'force-hshift = #0
+      <ees c>2
+      \once \override NoteColumn #'force-hshift = #0.5
+      des2
+    }
+  >>
+  <c ees aes c>1
+}
+@end lilypond
+
+Kezdjük a legelején a fenti zene kódolását.  
+Látni fogjuk, hogy beleütközünk majd több problémába is (de ez ne keserítsen el minket, a lényeg, hogy ezekből tanulunk :) ). 
+Kezdjük azzal, amit tanultunk: a @code{<< \\  >>}  használatával. 
+Gépeljük be a három szólam első ütemét:
+
+@lilypond[quote,verbatim,fragment,ragged-right]
+\new Staff \relative {
+  \key aes \major
+  <<
+    { c''2 aes4. bes8 } \\ { aes2 f4 fes } \\ { <ees c>2 des2 }
+  >>
+  <c ees aes c>1
+}
+@end lilypond
+
+@cindex stem down
+@cindex voices and stem directions
+@cindex stem directions and voices
+@cindex stem up
+
+
+A szárak iránya automatikusan hozzárendelődik a szólamokhoz, a páratlan-sorszámú szólamoknál felfelé, a párosoknál lefelé. Az első és második szólamhoz tartozó hangok szárai megfelelőek, de a harmadik szólamban a száraknak lefelé kellene állniuk. Ezt úgy javíthatjuk, hogy a harmadik szólamot átugorjuk (üresen hagyjuk) és a negyedik szólamba helyezzük az eredetileg harmadik szólamot. Ezt egyszerűen megtehetjük a @code{\\} segítségével:
+
+
+@lilypond[quote,verbatim,fragment,ragged-right]
+\new Staff \relative {
+  \key aes \major
+  <<  % 1. szólam
+    { c''2 aes4. bes8 }
+  \\  % 2. szólam
+    { aes2 f4 fes }
+  \\  % 3. szólam - elhagyjuk
+  \\  % 4. szólam
+    { <ees c>2 des2 }
+  >>
+  <c ees aes c>1
+}
+@end lilypond
+
+@noindent
+Látjuk, hogy ez megoldotta a problémát a szárak irányával kapcsolatban, 
+de előhozott egy másikat, ami többszörös szólamoknál néha előfordul -- 
+a hangok szárai a szólamon belül ütköznek más kottafejekkel más szólamokban. 
+A hangok megtervezéséhez a LilyPond lehetővé teszi, hogy hangok illetve akkordok esetén, két hang ugyanazt a függőleges pozíciót foglalja el akár ellentétes szárirány esetén, viszont figyelembe veszi azt, hogy bizonyos esetekben a harmadik és a negyedik szólam elmozdulhat, ezzel elkerülve azt, hogy a kottafejek egymást fedjék. Ez általában működik, de a fenti példában egyértelmű, hogy az alacsonyabb szólamok alapértelmezetten nem jól helyezkednek el. Jelenleg még nem vagyunk készen rá, hogy ezt kijavítsuk, úgyhogy most ezt érintetlenül hagyjuk és visszatérünk rá egy későbbi fejezetben -- lásd  @code{force-hshift} tulajdonság az @ref{Egymást átfedő jelek javítása} fejezetben.
+
+
+@seealso
+Notation Reference: @ruser{Multiple voices}.
+
+
 @node Szólamok kézi létrehozása
 @subsection Szólamok kézi létrehozása
 @translationof Explicitly instantiating voices
-@translationof Explicitly instantiating voices
 
-@untranslated
 
+@funindex \voiceOne
+@funindex voiceOne
+@funindex \voiceTwo
+@funindex voiceTwo
+@funindex \voiceThree
+@funindex voiceThree
+@funindex \voiceFour
+@funindex voiceFour
+@funindex \oneVoice
+@funindex oneVoice
+@funindex \new Voice
+@cindex voice contexts, creating
+
+A @code{<< >>} blokkon belül is létrehozhatunk polifón zenét és ha szükséges, 
+a  @code{\voiceOne} ... @code{\voiceFour} parancsokkal jelezhetjük a szárak, ívek, stb irányát. 
+Hosszabb kották esetén ez a módszer átláthatóbb, mert így külön-külön írhatjuk a szólamokat és beszédesebb neveket is adhatunk nekik. 
+
+Konkrétan a @code{<< \\ >>}szerkezet, amit az előző fejezetben használtunk:
+
+@example
+\new Staff @{
+  \relative @{
+    << @{ e'4 f g a @} \\ @{ c,4 d e f @} >>
+  @}
+@}
+@end example
+
+@noindent
+egyenértékű az alábbival:
+
+@example
+\new Staff <<
+  \new Voice = "1" @{ \voiceOne \relative @{ e'4 f g a @} @}
+  \new Voice = "2" @{ \voiceTwo \relative @{ c'4 d e f @} @}
+>>
+@end example
+
+Mindkét fenti esetben az alábbi kottát kapjuk
 
-@c index voice contexts, creating
-@c ode{\voiceOne} ... @code{\voiceFour} to indicate the required
 @c The following example should not display the code
-@c index voices, reverting to single
-@c index reverting to a single voice
-@c ode{\voiceFour} make them point downwards.  These commands also
-@c ode{\oneVoice}, @code{\voiceOne} and @code{voiceTwo} have on
-@c index nesting music expressions
-@c index nesting simultaneous constructs
-@c index nesting voices
-@c index voices, temporary
-@c index voices, nesting
-@c index spacing notes
+@lilypond[ragged-right,quote]
+\new Staff <<
+  \new Voice = "1" { \voiceOne \relative { e'4 f g a } }
+  \new Voice = "2" { \voiceTwo \relative { c'4 d e f } }
+>>
+@end lilypond
+
+@cindex voices, reverting to single
+@cindex reverting to a single voice
+
+
+A  @code{\voiceXXX} parancs meghatározza a szárak irányát, az 
+átkötéseket, a kötőíveket, az artikulációt, a szöveges magyarázatokat, 
+a pontozott hangokat és az ujjrendet.  A @code{\voiceOne} és a @code{\voiceThree} 
+hatására a mutató elemek felfele mutatnak, míg a @code{\voiceTwo} és a 
+@code{\voiceFour} esetén lefelé. Ezen parancsok ha szükséges vízszintes 
+eltolást is létrehoznak minden szólam esetén, hogy elkerüljék a kottafejek 
+ütközését. A @code{\oneVoice} parancs visszaállítja a beállításokat a normál egyszeres szólamra.
+
+
+Nézzünk egy egyszerű példát arra, hogy a @code{\oneVoice}, @code{\voiceOne} és @code{\voiceTwo} 
+parancsok milyen hatással vannak a jelzésekre, ívekre illetve dinamikára:
+
+@lilypond[quote,ragged-right,verbatim]
+\relative c'{
+  % Alapértelmezett viselkedés vagy  viselkedés \oneVoice után
+  c d8~ d e4( f g a) b-> c
+}
+@end lilypond
+
+@lilypond[quote,ragged-right,verbatim]
+\relative c'{
+  \voiceOne
+  c d8~ d e4( f g a) b-> c
+  \oneVoice
+  c, d8~ d e4( f g a) b-> c
+}
+@end lilypond
+
+@lilypond[quote,ragged-right,verbatim]
+\relative c'{
+  \voiceTwo
+  c d8~ d e4( f g a) b-> c
+  \oneVoice
+  c, d8~ d e4( f g a) b-> c
+}
+@end lilypond
+
+Nézzük végig a három különböző lejegyzési módját ugyanannak a polifón dallamnak, 
+és vizsgáljuk meg melyik milyen esetben előnyös, használva az előző fejezetbeli példát.
+
+
+A @code{<< >>} közt található kifejezés a főszólamhoz tartozik (jegyezzük meg, hogy a @code{<< >>}  használata során ez @strong{nem} igaz). 
+Ez akkor hasznos, amikor további szólamok jelennek meg a főszólam mellett. Egy helyesebb megvalósítása a példánknak alább látható. 
+The red diamond-shaped notes demonstrate that the main melody is now in a single voice context,
+permitting a phrasing slur to be drawn over them.
+
+@lilypond[quote,ragged-right,verbatim]
+\new Staff \relative {
+  \voiceOneStyle
+  % A következő hangok monofónok
+  c'16^( d e f
+  % Szimultán rész három szólammal
+  <<
+    % Continue the main voice in parallel
+    { g4 f e | d2 e2) | }
+    % Initiate second voice
+    \new Voice {
+      % Set stems, etc., down
+      \voiceTwo
+      r8 e4 d c8~ | c8 b16 a b8 g~ g2 |
+    }
+    % Initiate third voice
+    \new Voice {
+      % Set stems, etc, up
+      \voiceThree
+      s2. | s4 b4 c2 |
+    }
+  >>
+}
+@end lilypond
+
+@cindex nesting music expressions
+@cindex nesting simultaneous constructs
+@cindex nesting voices
+@cindex voices, temporary
+@cindex voices, nesting
+
+Létrehozhatunk többszörösen beágyazott polifón szerkezetet is, és ha a szólamok rövidek, az alábbi módon természetesebbnek tűnik a leírásuk:
+
+@lilypond[quote,ragged-right,verbatim]
+\new Staff \relative {
+  c'16^( d e f
+  <<
+    { g4 f e | d2 e2) | }
+    \new Voice {
+      \voiceTwo
+      r8 e4 d c8~
+      <<
+        { c8 b16 a b8 g~ g2 }
+        \new Voice {
+          \voiceThree
+          s4 b4 c2
+        }
+      >>
+    }
+  >>
+}
+@end lilypond
+
+@cindex spacing notes
+
+A szólamokat akkor érdemes így írni, ha a zene csak egy kis része polifón. Viszont amikor az egész ötvonalas kotta nagyrésze polifón, egyszerűbb, ha többszörös szólamokat  használunk mindenütt, --  ritkított hangokkal, hogy átlépjük azokat a részeket, ahol a szólamok  üresek. Az alábbi példa ezt mutatja:
+
+@lilypond[quote,ragged-right,verbatim]
+\new Staff \relative <<
+  % Initiate first voice
+  \new Voice {
+    \voiceOne
+    c'16^( d e f g4 f e | d2 e2) |
+  }
+  % Initiate second voice
+  \new Voice {
+    % Set stems, etc, down
+    \voiceTwo
+    s4 r8 e4 d c8~ | c8 b16 a b8 g~ g2 |
+  }
+  % Initiate third voice
+  \new Voice {
+    % Set stems, etc, up
+    \voiceThree
+    s1 | s4 b4 c2 |
+  }
+>>
+@end lilypond
+
 @subsubheading Hangoszlopok
-@c index note column
-@c index note collisions
-@c index collisions, notes
-@c index shift commands
-@c ode{\shiftOff} commands specify the degree to which notes and
-@c ode{\shiftOnn} and @code{\shiftOnnn} define further shift
+
+@cindex note column
+@cindex note collisions
+@cindex collisions, notes
+@cindex shift commands
+@funindex \shiftOff
+@funindex shiftOff
+@funindex \shiftOn
+@funindex shiftOn
+@funindex \shiftOnn
+@funindex shiftOnn
+@funindex \shiftOnnn
+@funindex shiftOnnn
+
+
+Egymáshoz közel elhelyezkedő, különböző szólamban levő hangok esetén 
+kettő, esetenként több oszlopba rendezzük a hangokat, hogy a kottafejek 
+fedését elkerüljük. Ezeket hangoszlopoknak hívjuk. Különálló oszlopokat 
+hozunk létre minden szólamhoz és az éppen aktuális szólam-független eltolást 
+minden oszlopra alkalmazzuk, ezzel elkerülve az ütközéseket. A fenti példában 
+is ezt láthatjuk. A 2. ütemben a C a kettes szólamban eltolódik a D-tól jobbra 
+(ami az első szólamban van) és a végső C akkord a hármas szólamban szintén eltolódik jobbra a többi hangtól. 
+
+A @code{\shiftOn}, @code{\shiftOnn}, @code{\shiftOnnn}, és
+@code{\shiftOff} parancsok meghatározzák, hogy melyik hangot vagy akkordot milyen mértékben kell megemelnünk ahhoz, hogy az ütközést elkerüljük. Alapértelmezett esetben, a külső szólamokban (az egyes és a kettes szólamban) a  @code{\shiftOff} érvényes, amíg a köztes szólamokban (hármas és négyes) a  @code{\shiftOn}. Eltolás esetén az egyes és a hármas szólam jobbra a kettes és a négyes balra tolódik
+
+
+A @code{\shiftOnn} és @code{\shiftOnnn} további eltolási szinteket 
+határoznak meg, melyek összetett esetekben ideiglenesen szükségesek 
+lehetnek ahhoz, hogy elkerüljük az ütközéseket – lásd @ref{Valós zenei példa}. 
+
+Egy hangoszlop egyszerre csak egy hangot (vagy akkordot) tartalmazhat egy szólamból 
+szárral felfelé és egy másikat szárral lefelé. Ha két különböző szólambeli hang 
+azonos irányú szárral kerül ugyanabba a pozícióba és egyik szólamban sincs eltolás 
+vagy ugyanazt az eltolást adjuk meg, akkor a @qq{Too many clashing note columns} hibaüzenetet kapjuk.
+
+
+@seealso
+Notation Reference: @ruser{Multiple voices}.
+
+
 @node Szólamok és vokális zene
 @subsection Szólamok és vokális zene
 @translationof Voices and vocals
-@translationof Voices and vocals
 
-@untranslated
-
-
-@c index Lyrics context, creating
-@c index lyrics, linking to voice
-@c index lyrics and beaming
-@c index beaming and lyrics
-@c ode{\autoBeamOff} to turn off the automatic beaming.
-@c index vocal score structure
-@c index choir staff
-@c ode{\lyricmode} to ensure they are interpreted as lyrics
-@c index hymn structure
-@c index SATB structure
-@c index vocal scores with multiple verses
-@c index multiple vocal verses
-@c index verses, multiple vocal
-@c index verse and refrain
-@c index book, example of using
-@c ode{\score} blocks within an implicit @code{\book} block, as
+A vokális zene speciális nehézséget jelent: két kifejezést kell egyesíteni -- hangokat és a szöveget.
+
+@funindex \new Lyrics
+@funindex \lyricsto
+@funindex lyricsto
+@funindex Lyrics
+@cindex Lyrics context, creating
+@cindex lyrics, linking to voice
+
+Korábban már találkoztunk a @code{\addlyrics@{@}} paranccsal, ami
+az egyszerű kottákhoz elegendő. Azonban ez a módszer eléggé korlátolt.
+Bonyolultabb zene esetén, muszáj bevezetni a @code{Lyrics} 
+környezetet a @code{\new Lyrics} paranccsal és közvetlenül összekötni a 
+dalszöveget a hangjegyekkel. A @code{\lyricsto@{@}} parancs használatával
+hozzárendelhetjük a szöveget a megfelelő szólamhoz.
+
+@lilypond[quote,verbatim,fragment]
+<<
+  \new Voice = "one" \relative {
+    \autoBeamOff
+    \time 2/4
+    c''4 b8. a16 g4. f8 e4 d c2
+  }
+  \new Lyrics \lyricsto "one" {
+    No more let sins and sor -- rows grow.
+  }
+>>
+@end lilypond
+
+Megjegyzés: a dalszövegnek egy @code{Voice} környezethez kell kapcsolódnia,
+@emph{nem} @code{Staff} környezethez.  Ez egy olyan eset, amikor
+muszáj közvetlenül készíteni @code{Staff} és @code{Voice} környezetet is.
+
+@cindex lyrics and beaming
+@cindex beaming and lyrics
+@funindex \autoBeamOff
+@funindex autoBeamOff
+
+Az automatikus gerendázás -, amit a LilyPond használ - jól működik
+a hangszeres zenére, de nem túl jó a dalszövegek esetén,
+amikor előfordul, hogy nincs is szükség gerendákra vagy ha épp melizmát jeleznénk a dalszövegben.
+A fenti példában az @code{\autoBeamOff} paranccsal kikapcsoltuk az automatikus gerendázást.
+
+@funindex \new ChoirStaff
+@funindex ChoirStaff
+@funindex \lyricmode
+@funindex lyricmode
+@cindex vocal score structure
+@cindex choir staff
+
+A korábbi Judas Maccabæus példát használva
+nézzünk meg egy rugalmasabb módszert.  Először írjuk újra
+változók használatával, így a zene és a dalszöveg a kotta struktúrájától 
+különválik. Vezessünk be egy kottasorcsoportot, mely kórusszólamokat fog össze
+(ChoirStaff).
+A dalszöveget magát egy @code{\lyricmode} paranccsal
+vezetjük be, ezzel biztosítva, hogy dalszövegként és 
+ne zeneként legyen értelmezve.
+
+@lilypond[quote,verbatim]
+global = { \time 6/8 \partial 8 \key f \major}
+SopOneMusic = \relative {
+  c''8 | c([ bes)] a a([ g)] f | f'4. b, | c4.~ 4 | }
+SopTwoMusic = \relative {
+  r8 | r4. r4 c'8 | a'([ g)] f f([ e)] d | e([ d)] c bes' | }
+SopOneLyrics = \lyricmode {
+  Let | flee -- cy flocks the | hills a -- dorn, __ | }
+SopTwoLyrics = \lyricmode {
+  Let | flee -- cy flocks the | hills a -- dorn, | }
+
+\score {
+  \new ChoirStaff <<
+    \new Staff <<
+      \new Voice = "SopOne" {
+        \global
+        \SopOneMusic
+      }
+      \new Lyrics \lyricsto "SopOne" {
+        \SopOneLyrics
+      }
+    >>
+    \new Staff <<
+      \new Voice = "SopTwo" {
+        \global
+        \SopTwoMusic
+      }
+      \new Lyrics \lyricsto "SopTwo" {
+        \SopTwoLyrics
+      }
+    >>
+  >>
+}
+@end lilypond
+
+Ilyen az alapvető felépítése, struktúrája minden vokális zenének. Olykor több kottasor 
+szükséges vagy több szólam van egy-egy kottasorban, esetleg több versszakból áll a dalszöveg.
+A változók, amik a zenét tartalmazzák, könnyen külön fájlokba is rendezhetők, ha túl hosszúak lennének.
+
+@cindex hymn structure
+@cindex SATB structure
+@cindex vocal scores with multiple verses
+@cindex multiple vocal verses
+@cindex versszakok, multiple vocal
+
+Itt egy példa egy egyházi ének első sorára, aminek négy
+verszaka van, és négyszólamú kórusra íródott. Ebben az esetben a szavak mind a négy
+szólamra azonosak. Figyeljük meg, hogyan használjuk a változókat arra, 
+hogy különválasszuk a kottát és a szavakat a kotta felépítésétől.
+Figyeljük meg, hogy a  @q{TimeKey} nevű változó számos parancsot tartalmaz,
+melyet mindkét kottasorban felhasználunk!
+Más példákban ez a közös változó gyakran  @q{global} néven szerepel.
+
+@lilypond[quote,verbatim]
+TimeKey = { \time 4/4 \partial 4 \key c \major}
+SopMusic   = \relative { c'4 | e4. e8 g4  g  | a a g | }
+AltoMusic  = \relative { c'4 | c4. c8 e4  e  | f f e | }
+TenorMusic = \relative  { e4 | g4. g8 c4. b8 | a8 b c d e4 | }
+BassMusic  = \relative  { c4 | c4. c8 c4  c  | f8 g a b c4 | }
+VerseOne   = \lyricmode {
+  E -- | ter -- nal fa -- ther, | strong to save, | }
+VerseTwo   = \lyricmode {
+  O | Christ, whose voice the | wa -- ters heard, | }
+VerseThree = \lyricmode {
+  O | Ho -- ly Spi -- rit, | who didst brood | }
+VerseFour  = \lyricmode {
+  O | Tri -- ni -- ty of | love and pow'r | }
+
+\score {
+  \new ChoirStaff <<
+    \new Staff <<
+      \clef "treble"
+      \new Voice = "Sop"  { \voiceOne \TimeKey \SopMusic }
+      \new Voice = "Alto" { \voiceTwo \AltoMusic }
+      \new Lyrics \lyricsto "Sop" { \VerseOne   }
+      \new Lyrics \lyricsto "Sop" { \VerseTwo   }
+      \new Lyrics \lyricsto "Sop" { \VerseThree }
+      \new Lyrics \lyricsto "Sop" { \VerseFour  }
+    >>
+    \new Staff <<
+      \clef "bass"
+      \new Voice = "Tenor" { \voiceOne \TimeKey \TenorMusic }
+      \new Voice = "Bass"  { \voiceTwo \BassMusic }
+    >>
+  >>
+}
+@end lilypond
+
+@cindex versszakok és refrének
+
+A példát azzal fejezzük be, hogy megmutatjuk hogyan lehet egy olyan versszakot, 
+ami kétféle refrénnel folytatódik, két ötvonalas kottában leírni.
+Az egymást követő (szekvenciális) és egyidejű (szimultán) részek leírása
+egy kottán belül elég trükkös, úgyhogy a magyarázatot óvatosan kövessük!
+
+Kezdjük egy score blokkal, ami tartalmaz egy @code{ChoirStaff}-ot, 
+úgy beágyazva, ahogy szeretnénk, hogy látszódjon a kórusrész kezdetén. 
+Alapesetben szükség lenne hegyes zárójelekre ( << és >> ) a @code{\new ChoirStaff} után, 
+hogy minden kottasor párhuzamos legyen, de most itt el szeretnénk kerülni a 
+párhuzamosságot a szóló résznél, ezért zárójeleket használunk - bár a 
+hegyes zárójelek nem árthatnak. A @code{ChoirStaff}-on belül először szerepeljen az
+a kottasor, ami a versszakot tartalmazni fogja. Hangokat és dalszöveget kell párhuzamosan tartalmaznia, 
+tehát szükség lesz hegyes zárójelre a @code{\new Voice} és @code{\new Lyrics} esetén, hogy egy időben kezdődjenek:
+
+@lilypond[quote,verbatim,ragged-right]
+versszakhangok = \relative {
+  \clef "treble"
+  \key g \major
+  \time 3/4
+  g' g g | b b b |
+}
+
+szoveg = \lyricmode {
+  One two three four five six
+}
+\score {
+ \new ChoirStaff {
+  \new Staff <<
+    \new Voice = "versszak" {
+      \versszakhangok  \break
+    }
+    \new Lyrics \lyricsto "versszak" {
+      \szoveg
+    }
+  >>
+  }
+}
+@end lilypond
+
+Ezzel kész a verssor.
+
+Folytatni szeretnénk a refrenA-val ugyanabban az ötvonalas kottában, míg
+a második ötvonal ezzel párhuzamosan lenne a refrenB-nek, tehát
+ez egy párhuzamos rész, ami rögtön a @code{\break} után jön a "versszak" nevű szólamban.
+Igen, a a "versszak" nevű szólamon @emph{belül}! Íme a párhuzamos rész. Több kottasort 
+írhatunk hasonló módon. 
+
+@example
+<<
+  \refrenhangokA
+  \new Lyrics \lyricsto versszak @{
+    \refrenszovegA
+  @}
+  \new Staff <<
+    \new Voice = "refrenB" @{
+      \refrenhangokB
+    @}
+    \new Lyrics \lyricsto "refrenB" @{
+      \refrenszovegB
+    @}
+  >>
+>>
+@end example
+
+Itt a végső eredmény két kottasorral a kórusban, mutatva a verse Voice-on belül pozicionált
+párhuzamos részt:
+
+@lilypond[quote,verbatim, ragged-right]
+versszakhangok = \relative {
+  \clef "treble"
+  \key g \major
+  \time 3/4
+  g' g g | b b b |
+}
+refrenhangokA = \relative {
+  \time 2/4
+  c'' c | g g \bar "|."
+}
+refrenhangokB = \relative {
+  \clef "bass"
+  \key g \major
+  c e | d d |
+}
+szoveg = \lyricmode {
+  One two three four five six
+}
+refrenszovegA = \lyricmode {
+  la la la la
+}
+refrenszovegB = \lyricmode {
+  dum dum dum dum
+}
+\score {
+  \new ChoirStaff {
+    \new Staff <<
+      \new Voice = "versszak" {
+        \versszakhangok \break
+        <<
+          \refrenhangokA
+          \new Lyrics \lyricsto "versszak" {
+            \refrenszovegA
+          }
+          \new Staff <<
+            \new Voice = "refrenB" {
+              \refrenhangokB
+            }
+            \new Lyrics \lyricsto "refrenB" {
+              \refrenszovegB
+            }
+          >>
+        >>
+      }
+      \new Lyrics \lyricsto "versszak" {
+        \szoveg
+      }
+    >>
+  }
+}
+@end lilypond
+
+@cindex book, example of using
+@funindex \book
+@funindex book
+
+Habár ez egy érdekes és hasznos példa arra, hogy megértsük, hogyan működnek
+az egymásutáni és egyidejű blokkok, gyakorlatban valószínűleg a többség ezt két
+@code{\score} blokként írná meg egy implicit  @code{\book} blokkon belül, valahogy így:
+
+
+@lilypond[quote,verbatim,ragged-right]
+versenotes = \relative {
+  \clef "treble"
+  \key g \major
+  \time 3/4
+  g' g g | b b b |
+}
+refrainnotesA = \relative {
+  \time 2/4
+  c'' c | g g \bar "|."
+}
+refrainnotesB = \relative {
+  \clef "bass"
+  \key g \major
+  c e | d d |
+}
+versewords = \lyricmode {
+  One two three four five six
+}
+refrainwordsA = \lyricmode {
+  la la la la
+}
+refrainwordsB = \lyricmode {
+  dum dum dum dum
+}
+\score {
+  \new Staff <<
+    \new Voice = "verse" {
+      \versenotes
+    }
+    \new Lyrics \lyricsto "verse" {
+      \versewords
+    }
+  >>
+}
+
+\score {
+  \new ChoirStaff <<
+    \new Staff <<
+      \new Voice = "refrainA" {
+        \refrainnotesA
+      }
+      \new Lyrics \lyricsto "refrainA" {
+        \refrainwordsA
+      }
+    >>
+    \new Staff <<
+      \new Voice = "refrainB" {
+        \refrainnotesB
+      }
+      \new Lyrics \lyricsto "refrainB" {
+        \refrainwordsB
+      }
+    >>
+  >>
+}
+@end lilypond
+
+
+@seealso
+Notation Reference: @ruser{Vocal music}.
+
+
 @node Kontextusok és ábrázolók
 @section Kontextusok és ábrázolók
 @translationof Contexts and engravers
-@translationof Contexts and engravers
 
-@untranslated
+
+Kontextusok és ábrázolók korábban említésre kerültek; viszont most részletesebben
+foglalkozunk a fogalommal, mivel ezeket használhatjuk a LilyPond kimeneti eredményének finomhangolására.
 
 
 @menu
 @node A kontextus fogalma
 @subsection A kontextus fogalma
 @translationof Contexts explained
-@translationof Contexts explained
 
-@untranslated
+@cindex contexts explained
+
+When music is printed, many notational elements which do not
+appear explicitly in the input file must be added to the
+output.  For example, compare the input and output of the
+following example:
+
+@lilypond[quote,verbatim,relative=2,fragment]
+cis4 cis2. g4
+@end lilypond
+
+The input is rather sparse, but in the output, bar lines,
+accidentals, clef, and time signature have been added.  When
+LilyPond @emph{interprets} the input the musical information
+is parsed from left to right, similar to the way a performer
+reads the score.  While reading the input, the program remembers
+where measure boundaries are, and which pitches require explicit
+accidentals.  This information must be held on several levels.
+For example, an accidental affects only a single staff, while
+a bar line must be synchronized across the entire score.
+
+Within LilyPond, these rules and bits of information are grouped in
+@emph{Contexts}.  We have already introduced the @code{Voice} context.
+Others are the @code{Staff} and @code{Score} contexts.  Contexts are
+hierarchical to reflect the hierarchical nature of a musical score.
+For example: a @code{Staff} context can contain many @code{Voice}
+contexts, and a @code{Score} context can contain many @code{Staff}
+contexts.
 
-
-@c index contexts explained
 @quotation
 @sourceimage{context-example,5cm,,}
 @end quotation
-@c ode{Score} and @code{Staff} contexts.
-@c ode{Voice} contexts there are contexts which fit between
-@c ode{PianoStaff} and @code{ChoirStaff} contexts.  There
-@c ode{GregorianTranscriptionStaff}.
+
+Each context has the responsibility for enforcing some notation rules,
+creating some notation objects and maintaining the associated
+properties.  For example, the @code{Voice} context may introduce an
+accidental and then the @code{Staff} context maintains the rule to
+show or suppress the accidental for the remainder of the measure.
+
+As another example, the synchronization of bar lines is, by default,
+handled in the @code{Score} context.
+However, in some music we may not want the bar lines to be
+synchronized -- consider a polymetric score in 4/4 and 3/4 time.
+In such cases, we must modify the default settings of the
+@code{Score} and @code{Staff} contexts.
+
+For very simple scores, contexts are created implicitly, and you need
+not be aware of them.  For larger pieces, such as anything with more
+than one staff, they must be
+created explicitly to make sure that you get as many staves as you
+need, and that they are in the correct order.  For typesetting pieces
+with specialized notation, it is usual to modify existing, or
+even to define totally new, contexts.
+
+In addition to the @code{Score,} @code{Staff} and
+@code{Voice} contexts there are contexts which fit between
+the score and staff levels to control staff groups, such as the
+@code{PianoStaff} and @code{ChoirStaff} contexts.  There
+are also alternative staff and voice contexts, and contexts for
+lyrics, percussion, fret boards, figured bass, etc.
+
+The names of all context types are formed from one or more
+words, each word being capitalized and joined immediately to the
+preceding word with no hyphen or underscore, e.g.,
+@code{GregorianTranscriptionStaff}.
+
+
+@seealso
+Notation Reference: @ruser{A kontextus fogalma}.
+
+
 @node Kontextusok létrehozása
 @subsection Kontextusok létrehozása
 @translationof Creating contexts
-@translationof Creating contexts
 
-@untranslated
 
-
-@c index new contexts
-@c index creating contexts
-@c index contexts, creating
-@c ode{Staff} contexts may also be left to be created automatically,
-@c ode{Voice}).  This command creates a new context, and starts
-@c ode{\with} block in which one or more score-wide default values
-@c ode{\with} blocks can be found under the heading
+@funindex \new
+@funindex new
+@cindex new contexts
+@cindex creating contexts
+@cindex contexts, creating
+
+In an input file a score block, introduced with a @code{\score}
+command, contains a single music expression and an associated
+output definition (either a @code{\layout} or a @code{\midi} block).
+The @code{Score} context is usually left to be created automatically
+when the interpretation of that music expression starts.
+
+For scores with only one voice and one staff, the @code{Voice} and
+@code{Staff} contexts may also be left to be created automatically,
+but for more complex scores it is necessary to create them by hand.
+The simplest command that does this is @code{\new}.  It is prepended
+to a music expression, for example
+
+@example
+\new @var{type} @var{music-expression}
+@end example
+
+@noindent
+where @var{type} is a context name (like @code{Staff} or
+@code{Voice}).  This command creates a new context, and starts
+interpreting the @var{music-expression} within that context.
+
+(Note that a @code{\new Score} command is not normally required,
+as the essential top-level @code{Score} context is created
+automatically when the music expression within the @code{\score}
+block is interpreted.  The only reason for creating a @code{Score}
+context explicitly using @code{\new Score} is to introduce a
+@code{\with} block in which one or more score-wide default values
+of context properties may be specified.  Information on using
+@code{\with} blocks can be found under the heading
+@qq{Setting context properties with @code{\\with} } in
 @ref{Kontextusok tulajdonságainak módosítása}.)
-@c ode{Staff} and @code{Voice} contexts in earlier sections, but
-@c index contexts, naming
-@c index naming contexts
-@c ode{Staff}, @code{Voice}, etc, and the identifying name of a
+
+You have seen many practical examples which created new
+@code{Staff} and @code{Voice} contexts in earlier sections, but
+to remind you how these commands are used in practice, here's an
+annotated real-music example:
+
+@lilypond[quote,verbatim,ragged-right]
+\score {  % start of single compound music expression
+  <<  % start of simultaneous staves section
+    \time 2/4
+    \new Staff {  % create RH staff
+      \key g \minor
+      \clef "treble"
+      \new Voice {  % create voice for RH notes
+        \relative {  % start of RH notes
+          d''4 ees16 c8.
+          d4 ees16 c8.
+        }  % end of RH notes
+      }  % end of RH voice
+    }  % end of RH staff
+    \new Staff <<  % create LH staff; needs two simultaneous voices
+      \key g \minor
+      \clef "bass"
+      \new Voice {  % create LH voice one
+        \voiceOne
+        \relative {  % start of LH voice one notes
+          g8 <bes d> ees, <g c>
+          g8 <bes d> ees, <g c>
+        }  % end of LH voice one notes
+      }  % end of LH voice one
+      \new Voice {  % create LH voice two
+        \voiceTwo
+        \relative {  % start of LH voice two notes
+          g4 ees
+          g4 ees
+        }  % end of LH voice two notes
+      }  % end of LH voice two
+    >>  % end of LH staff
+  >>  % end of simultaneous staves section
+}  % end of single compound music expression
+@end lilypond
+
+(Note how all the statements which open a block with either a
+curly bracket, @code{@{}, or double angle brackets, @code{<<},
+are indented by two further spaces, and the corresponding
+closing bracket is indented by exactly the same amount.  While
+this is not required, following this practice will greatly
+reduce the number of @q{unmatched bracket} errors, and is
+strongly recommended.  It enables the structure of the music to
+be seen at a glance, and any unmatched brackets will be obvious.
+Note too how the LH staff is created using double angle brackets
+because it requires two voices for its music, whereas the RH staff
+is created with a single music expression surrounded by curly
+brackets because it requires only one voice.)
+
+@cindex contexts, naming
+@cindex naming contexts
+
+The @code{\new} command may also give an identifying name to the
+context to distinguish it from other contexts of the same type,
+
+@example
+\new @var{type} = @var{id} @var{music-expression}
+@end example
+
+Note the distinction between the name of the context type,
+@code{Staff}, @code{Voice}, etc, and the identifying name of a
+particular instance of that type, which can be any sequence of letters
+invented by the user.  Digits and spaces can also be used in the
+identifying name, but then it has to be placed in quotes,
+i.e. @code{\new Staff = "MyStaff 1" @var{music-expression}}.
+The identifying name is used to
+refer back to that particular instance of a context.  We saw this in
+use in the section on lyrics, see @ref{Szólamok és vokális zene}.
+
+
+@seealso
+Notation Reference: @ruser{Kontextusok létrehozása}.
+
+
 @node Az ábrázoló fogalma
 @subsection Az ábrázoló fogalma
 @translationof Engravers explained
-@translationof Engravers explained
 
-@untranslated
+@cindex engravers
+
+Every mark on the printed output of a score produced by LilyPond
+is produced by an @code{Engraver}.  Thus there is an engraver
+to print staves, one to print note heads, one for stems, one for
+beams, etc, etc.  In total there are over 120 such engravers!
+Fortunately, for most scores it is not necessary to know about
+more than a few, and for simple scores you do not need to know
+about any.
+
+Engravers live and operate in Contexts.  Engravers such as the
+@code{Metronome_mark_engraver}, whose action and output apply to the
+score as a whole, operate in the highest level context -- the
+@code{Score} context.
+
+The @code{Clef_engraver} and @code{Key_engraver} are to be
+found in every @code{Staff} Context, as different staves may require
+different clefs and keys.
+
+The @code{Note_heads_engraver} and @code{Stem_engraver} live
+in every @code{Voice} context, the lowest level context of all.
+
+Each engraver processes the particular objects associated
+with its function, and maintains the properties that relate
+to that function.  These properties, like the properties
+associated with contexts, may be modified to change the
+operation of the engraver or the appearance of those elements
+in the printed score.
+
+Engravers all have compound names formed from words which
+describe their function.  Just the first word is capitalized,
+and the remainder are joined to it with underscores.  Thus
+the @code{Staff_symbol_engraver} is responsible for creating the
+lines of the staff, the @code{Clef_engraver} determines and sets
+the pitch reference point on the staff by drawing a clef symbol.
+
+Here are some of the most common engravers together with their
+function.  You will see it is usually easy to guess the function
+from the name, or vice versa.
+
+@multitable @columnfractions .3 .7
+@headitem Engraver
+  @tab Function
+@item Accidental_engraver
+  @tab Makes accidentals, cautionary and suggested accidentals
+@item Beam_engraver
+  @tab Engraves beams
+@item Clef_engraver
+  @tab Engraves clefs
+@item Completion_heads_engraver
+  @tab Splits notes which cross bar lines
+@item Dynamic_engraver
+  @tab Creates hairpins and dynamic texts
+@item Forbid_line_break_engraver
+  @tab Prevents line breaks if a musical element is still active
+@item Key_engraver
+  @tab Creates the key signature
+@item Metronome_mark_engraver
+  @tab Engraves metronome marking
+@item Note_heads_engraver
+  @tab Engraves note heads
+@item Rest_engraver
+  @tab Engraves rests
+@item Staff_symbol_engraver
+  @tab Engraves the five (by default) lines of the staff
+@item Stem_engraver
+  @tab Creates stems and single-stem tremolos
+@item Time_signature_engraver
+  @tab Creates time signatures
+@end multitable
+
+@smallspace
+
+We shall see later how the output of LilyPond can be changed
+by modifying the action of Engravers.
+
+
+@seealso
+Internals reference: @rinternals{Engravers and Performers}.
 
 
-@c index engravers
-@c ode{Metronome_mark_engraver}, whose action and output apply to the
-@c ode{Score} context.
-@c The old Dynamic_engraver is deprecated. -jm
 @node Kontextusok tulajdonságainak módosítása
 @subsection Kontextusok tulajdonságainak módosítása
 @translationof Modifying context properties
-@translationof Modifying context properties
 
-@untranslated
+@cindex context properties
+@cindex context properties, modifying
+@cindex modifying context properties
+@funindex \set
+@funindex set
+@funindex \unset
+@funindex unset
+
+Contexts are responsible for holding the values of a number of
+context @emph{properties}.  Many of them can be changed to
+influence the interpretation of the input and so change the
+appearance of the output.  They are changed by the
+@code{\set} command.  This takes the form
+
+@example
+\set @emph{ContextName}.@emph{propertyName} = #@emph{value}
+@end example
+
+Where the @emph{ContextName} is usually @code{Score},
+@code{Staff} or @code{Voice}.  It may be omitted,
+in which case the current context (typically @code{Voice}) is assumed.
+
+The names of context properties consist of words joined
+together with no hyphens or underscores, all except the
+first having a capital letter.  Here are a few examples
+of some commonly used ones.  There are many more.
 
-
-@c index context properties
-@c index context properties, modifying
-@c index modifying context properties
-@c ode{\set} command.  This takes the form
-@c ode{Staff} or @code{Voice}.  It may be omitted,
 @c attempt to force this onto a new page
-@c index properties operating in contexts
-@c index setting properties within contexts
-@c ode{instrumentName} clearly lives in the @code{Staff} context, since
-@c ode{\set} command set the property @code{instrumentName} in the
-@c ode{Voice} context to @qq{Alto}, but as LilyPond does not look
-@c ode{\set} or @code{\unset} again.  Let's try changing the
-@c ode{##t} and @code{##f}, with two hash signs.  A text property
-@subsubheading Kontextusok tulajdonságainak beállítása a @code{\with} paranccsal
-@c index context properties, setting with \with
-@c ode{\new Score} command, like this:
-@c ode{\set} and returned to the default value set in the
-@c ode{\with} block with @code{\unset}.
-@c index fontSize, default and setting
-@c ode{\unset fontSize} command.
-@subsubheading Kontextusok tulajdonságainak beállítása a @code{\context} paranccsal
-@c index context properties, setting with \context
-@c ode{\with} block, introduced above.  It is placed in a
-@c ode{\context} block within a @code{\layout} block.  Each
-@c ode{\context} block will affect all contexts of the type specified
-@c ode{\layout} block appears.  Here is a example to show the format:
-@c ode{\set} commands embedded in music statements.
-@c FIXME
-@c uncomment when backslash-node-name issue is resolved -pm
-@c @ruser{The set command}.
+@need 50
+@multitable @columnfractions .25 .15 .45 .15
+@headitem propertyName
+  @tab Type
+  @tab Function
+  @tab Example Value
+@item extraNatural
+  @tab Boolean
+  @tab If true, set extra natural signs before accidentals
+  @tab @code{#t}, @code{#f}
+@item currentBarNumber
+  @tab Integer
+  @tab Set the current bar number
+  @tab @code{50}
+@item doubleSlurs
+  @tab Boolean
+  @tab If true, print slurs both above and below notes
+  @tab @code{#t}, @code{#f}
+@item instrumentName
+  @tab Text
+  @tab Set the name to be placed at the start of the staff
+  @tab @code{"Cello I"}
+@item fontSize
+  @tab Real
+  @tab Increase or decrease the font size
+  @tab @code{2.4}
+@item stanza
+  @tab Text
+  @tab Set the text to print before the start of a verse
+  @tab @code{"2"}
+@end multitable
+
+@noindent
+where a Boolean is either True (@code{#t}) or False (@code{#f}),
+an Integer is a positive whole number, a Real is a positive
+or negative decimal number, and text is enclosed in double
+apostrophes.  Note the occurrence of hash signs,
+(@code{#}), in two different places -- as part of the Boolean
+value before the @code{t} or @code{f}, and before @emph{value}
+in the @code{\set} statement.  So when a Boolean is being
+entered you need to code two hash signs, e.g., @code{##t}.
+
+@cindex properties operating in contexts
+@cindex setting properties within contexts
+
+Before we can set any of these properties we need to know
+in which context they operate.  Sometimes this is obvious,
+but occasionally it can be tricky.  If the wrong context
+is specified, no error message is produced, but the expected
+action will not take place.  For example, the
+@code{instrumentName} clearly lives in the @code{Staff} context, since
+it is the staff that is to be named.
+In this example the first staff is labeled, but not the second,
+because we omitted the context name.
+
+@lilypond[quote,verbatim,ragged-right]
+<<
+  \new Staff \relative {
+    \set Staff.instrumentName = #"Soprano"
+    c''4 c
+ }
+  \new Staff \relative {
+  \set instrumentName = #"Alto"  % Wrong!
+  d'4 d
+ }
+>>
+@end lilypond
+
+Remember the default context name is @code{Voice}, so the second
+@code{\set} command set the property @code{instrumentName} in the
+@code{Voice} context to @qq{Alto}, but as LilyPond does not look
+for any such property in the @code{Voice} context, no
+further action took place.  This is not an error, and no error
+message is logged in the log file.
+
+Similarly, if the property name is mis-spelt no error message is
+produced, and clearly the expected action cannot be performed.  In
+fact, you can set any (fictitious) @q{property} using any name you
+like in any context that exists by using the @code{\set} command.  But
+if the name is not known to LilyPond it will not cause any action to
+be taken.  Some text editors with special support for LilyPond input
+files document property names with bullets when you hover them with
+the mouse, like JEdit with LilyPondTool, or highlight unknown property
+names differently, like ConTEXT.  If you do not use an editor with
+such features, it is recommended to check the property name in the
+Internals Reference: see @rinternals{Tunable context properties}, or
+@rinternals{Contexts}.
+
+The @code{instrumentName} property will take effect only
+if it is set in the @code{Staff} context, but
+some properties can be set in more than one context.
+For example, the property @code{extraNatural} is by
+default set to ##t (true) for all staves.
+If it is set to ##f (false) in one particular @code{Staff}
+context it applies just to the accidentals on that staff.
+If it is set to false in the @code{Score} context
+it applies to all staves.
+
+So this turns off extra naturals in one staff:
+
+@lilypond[quote,verbatim,ragged-right]
+<<
+  \new Staff \relative {
+    ais'4 aes
+  }
+  \new Staff \relative {
+    \set Staff.extraNatural = ##f
+    ais'4 aes
+  }
+>>
+@end lilypond
+
+@noindent
+and this turns them off in all staves:
+
+@lilypond[quote,verbatim,ragged-right]
+<<
+  \new Staff \relative {
+    ais'4 aes
+  }
+  \new Staff \relative {
+    \set Score.extraNatural = ##f
+    ais'4 aes
+  }
+>>
+@end lilypond
+
+As another example, if @code{clefTransposition} is set in
+the @code{Score} context this immediately changes the value
+of the octavation in all current staves and sets a new default
+value which will be applied to all staves.
+
+The opposite command, @code{\unset}, effectively removes the
+property from the context, which causes most properties to
+revert to their default value.  Usually @code{\unset} is not
+required as a new @code{\set} command will achieve what is
+wanted.
+
+The @code{\set} and @code{\unset} commands can appear anywhere
+in the input file and will take effect from the time they are
+encountered until the end of the score or until the property is
+@code{\set} or @code{\unset} again.  Let's try changing the
+font size, which affects the size of the note heads (among
+other things) several times.  The change is from the default
+value, not the most recently set value.
+
+@lilypond[quote,verbatim,ragged-right,relative=1,fragment]
+c4
+% make note heads smaller
+\set fontSize = #-4
+d e
+% make note heads larger
+\set fontSize = #2.5
+f g
+% return to default size
+\unset fontSize
+a b
+@end lilypond
+
+We have now seen how to set the values of several different types of
+property.  Note that integers and numbers are always preceded by a
+hash sign, @code{#}, while a true or false value is specified by
+@code{##t} and @code{##f}, with two hash signs.  A text property
+should be enclosed in double quotation signs, as above, although we
+shall see later that text can actually be specified in a much more
+general way by using the very powerful @code{\markup} command.
+
+@subsubheading Setting context properties with @code{\with}
+
+@funindex \with
+@funindex with
+@cindex context properties, setting with \with
+
+The default value of context properties may be set at the time the
+context is created.  Sometimes this is a clearer way of setting a
+property value if it is to remain fixed for the duration of
+the context.  When a context is created with a @code{\new}
+command it may be followed immediately by a @code{\with @{ .. @}}
+block in which the default property values are set.  For example,
+if we wish to suppress the printing of extra naturals for the
+duration of a staff we would write:
+
+@example
+\new Staff \with @{ extraNatural = ##f @}
+@end example
+
+@noindent
+like this:
+
+@lilypond[quote,verbatim,ragged-right]
+<<
+  \new Staff
+  \relative {
+    gis' ges aes ais
+  }
+  \new Staff \with { extraNatural = ##f }
+  \relative {
+    gis' ges aes ais
+  }
+>>
+@end lilypond
+
+Or, if the property override is to be applied to all staves
+within the score, it may be appended to an explicit
+@code{\new Score} command, like this:
+
+@lilypond[quote,verbatim,ragged-right]
+\score {
+  \new Score \with { extraNatural = ##f } <<
+    \new Staff {
+      \relative {
+        gis' ges aes ais
+      }
+    }
+    \new Staff {
+      \relative {
+        gis' ges aes ais
+      }
+    }
+  >>
+}
+@end lilypond
+
+Properties set in this way may still be changed dynamically using
+@code{\set} and returned to the default value set in the
+@code{\with} block with @code{\unset}.
+
+@cindex fontSize, default and setting
+
+So if the @code{fontSize} property is set in a @code{\with} clause
+it sets the default value of the font size.  If it is later changed
+with @code{\set}, this new default value may be restored with the
+@code{\unset fontSize} command.
+
+@subsubheading Setting context properties with @code{\context}
+
+@cindex context properties, setting with \context
+@funindex \context
+@funindex context
+
+The values of context properties may be set in @emph{all} contexts
+of a particular type, such as all @code{Staff} contexts, with a single
+command.  The context type is identified by using its
+type name, like @code{Staff}, prefixed by a back-slash: @code{\Staff}.
+The statement which sets the property value is the same as that in a
+@code{\with} block, introduced above.  It is placed in a
+@code{\context} block within a @code{\layout} block.  Each
+@code{\context} block will affect all contexts of the type specified
+throughout the @code{\score} or @code{\book} block in which the
+@code{\layout} block appears.  Here is a example to show the format:
+
+@lilypond[verbatim,quote]
+\score {
+  \new Staff {
+    \relative {
+      cis''4 e d ces
+    }
+  }
+  \layout {
+    \context {
+      \Staff
+      extraNatural = ##t
+    }
+  }
+}
+@end lilypond
+
+@noindent
+Context properties set in this way may be overridden for particular
+instances of contexts by statements in a @code{\with} block, and by
+@code{\set} commands embedded in music statements.
+
+
+@seealso
+Notation Reference:
+@ruser{Changing context default settings}.
+@ruser{The set command}.
+
+Internals Reference:
+@rinternals{Contexts},
+@rinternals{Tunable context properties}.
+
+
 @node Ábrázolók hozzáadása és eltávolítása
 @subsection Ábrázolók hozzáadása és eltávolítása
 @translationof Adding and removing engravers
-@translationof Adding and removing engravers
 
-@untranslated
-
-
-@c index engravers, adding
-@c index adding engravers
-@c index engravers, removing
-@c index removing engravers
-@subsubheading Egyetlenegy kontextus módosítása
-@c ode{\with} command placed immediately after the context creation
-@c index ambitus engraver
-@c ode{\consists @var{Engraver_name}},
-@c ode{Ambitus_engraver}, which is not normally included in any
-@c ode{Staff} context, it calculates the range from all
-@subsubheading Azonos típusú kontextusok módosítása
-@c ode{\set} command in a @code{\context} block in the
+@cindex engravers, adding
+@cindex adding engravers
+@cindex engravers, removing
+@cindex removing engravers
+
+@funindex \consists
+@funindex consists
+@funindex \remove
+@funindex remove
+
+We have seen that contexts each contain several engravers, each
+of which is responsible for producing a particular part of the
+output, like bar lines, staves, note heads, stems, etc.  If an
+engraver is removed from a context, it can no longer produce its
+output.  This is a crude way of modifying the output, but it
+can sometimes be useful.
+
+@subsubheading Changing a single context
+
+To remove an engraver from a single context we use the
+@code{\with} command placed immediately after the context creation
+command, as in the previous section.
+
+As an illustration, let's repeat an example from the previous section
+with the staff lines removed.  Remember that the staff lines are
+produced by the @code{Staff_symbol_engraver}.
+
+@lilypond[quote,verbatim,ragged-right]
+\new Staff \with {
+  \remove "Staff_symbol_engraver"
+}
+\relative {
+  c'4
+  \set fontSize = #-4  % make note heads smaller
+  d e
+  \set fontSize = #2.5  % make note heads larger
+  f g
+  \unset fontSize  % return to default size
+  a b
+}
+@end lilypond
+
+@cindex ambitus engraver
+
+Engravers can also be added to individual contexts.
+The command to do this is
+
+@code{\consists @var{Engraver_name}},
+
+@noindent
+placed inside a @code{\with} block.  Some vocal scores have an ambitus
+placed at the beginning of a staff to indicate the range of notes in
+that staff -- see @rglos{ambitus}.  The ambitus is produced by the
+@code{Ambitus_engraver}, which is not normally included in any
+context.  If we add it to the @code{Voice} context, it calculates the
+range from that voice only:
+
+@lilypond[quote,verbatim,ragged-right]
+\new Staff <<
+  \new Voice \with {
+    \consists "Ambitus_engraver"
+  }
+  \relative {
+    \voiceOne
+    c'' a b g
+  }
+  \new Voice
+  \relative {
+    \voiceTwo
+    c' e d f
+  }
+>>
+@end lilypond
+
+@noindent
+but if we add the ambitus engraver to the
+@code{Staff} context, it calculates the range from all
+the notes in all the voices on that staff:
+
+@lilypond[quote,verbatim,ragged-right]
+\new Staff \with {
+    \consists "Ambitus_engraver"
+  }
+  <<
+  \new Voice
+  \relative {
+    \voiceOne
+    c'' a b g
+  }
+  \new Voice
+  \relative {
+    \voiceTwo
+    c' e d f
+  }
+>>
+@end lilypond
+
+@subsubheading Changing all contexts of the same type
+
+@funindex \layout
+@funindex layout
+
+The examples above show how to remove or add engravers to
+individual contexts.  It is also possible to remove or add
+engravers to every context of a specific type by placing the
+commands in the appropriate context in a @code{\layout}
+block.  For example, if we wanted to show an ambitus for every
+staff in a four-staff score, we could write
+
+@lilypond[quote,verbatim,ragged-right]
+\score {
+  <<
+    \new Staff <<
+      \relative {
+        c'' a b g
+      }
+    >>
+    \new Staff <<
+      \relative {
+        c' a b g
+      }
+    >>
+    \new Staff <<
+      \clef "G_8"
+      \relative {
+        c' a b g
+      }
+    >>
+    \new Staff <<
+      \clef "bass"
+      \relative {
+        c a b g
+      }
+    >>
+  >>
+  \layout {
+    \context {
+      \Staff
+      \consists "Ambitus_engraver"
+    }
+  }
+}
+@end lilypond
+
+@noindent
+The values of context properties may also be set
+for all contexts of a particular type by including the
+@code{\set} command in a @code{\context} block in the
+same way.
+
+
+@seealso
+Notation Reference: @ruser{Modifying context plug-ins},
+@ruser{Changing context default settings}.
+
+
 @node A sablonok kibővítése
 @section A sablonok kibővítése
 @translationof Extending the templates
-@translationof Extending the templates
-
-@untranslated
 
+You've read the tutorial, you know how to write music, you
+understand the fundamental concepts.  But how can you
+get the staves that you want?  Well, you can find lots of
+templates (see @ref{Templates}) which may give you a start.
+But what if you want something that isn't covered there?  Read on.
 
 @menu
 * Szoprán és cselló::
 @node Szoprán és cselló
 @subsection Szoprán és cselló
 @translationof Soprano and cello
-@translationof Soprano and cello
-
-@untranslated
 
+@cindex template, modifying
+@cindex modifying templates
+
+Start off with the template that seems closest to what you want to
+end up with.  Let's say that you want to write something for
+soprano and cello.  In this case, we would start with the
+@q{Notes and lyrics} template (for the soprano part).
+
+@example
+\version @w{"@version{}"}
+melody = \relative @{
+  \clef treble
+  \key c \major
+  \time 4/4
+  a4 b c d
+@}
+
+text = \lyricmode @{
+  Aaa Bee Cee Dee
+@}
+
+\score @{
+  <<
+    \new Voice = "one" @{
+      \autoBeamOff
+      \melody
+    @}
+    \new Lyrics \lyricsto "one" \text
+  >>
+  \layout @{ @}
+  \midi @{ @}
+@}
+@end example
+
+Now we want to add a cello part.  Let's look at the @q{Notes only} example:
+
+@example
+\version @w{"@version{}"}
+melody = \relative @{
+  \clef treble
+  \key c \major
+  \time 4/4
+  a4 b c d
+@}
+
+\score @{
+  \new Staff \melody
+  \layout @{ @}
+  \midi @{ @}
+@}
+@end example
+
+We don't need two @code{\version} commands.  We'll need the
+@code{melody} section.  We don't want two @code{\score} sections
+-- if we had two @code{\score}s, we'd get the two parts separately.
+We want them together, as a duet.  Within the @code{\score}
+section, we don't need two @code{\layout} or @code{\midi}.
+
+If we simply cut and paste the @code{melody} section, we would
+end up with two @code{melody} definitions.  This would not generate
+an error, but the second one would be used for both melodies.
+So let's rename them to make them distinct.  We'll call the
+section for the soprano @code{sopranoMusic} and the section for
+the cello @code{celloMusic}.  While we're doing this, let's rename
+@code{text} to be @code{sopranoLyrics}.  Remember to rename both
+instances of all these names -- both the initial definition (the
+@code{melody = \relative c' @{ } part) and the name's use (in the
+@code{\score} section).
+
+While we're doing this, let's change the cello part's staff --
+celli normally use bass clef.  We'll also give the cello some
+different notes.
+
+@example
+\version @w{"@version{}"}
+sopranoMusic = \relative @{
+  \clef treble
+  \key c \major
+  \time 4/4
+  a4 b c d
+@}
+
+sopranoLyrics = \lyricmode @{
+  Aaa Bee Cee Dee
+@}
+
+celloMusic = \relative @{
+  \clef bass
+  \key c \major
+  \time 4/4
+  d4 g fis8 e d4
+@}
+
+\score @{
+  <<
+    \new Voice = "one" @{
+      \autoBeamOff
+      \sopranoMusic
+    @}
+    \new Lyrics \lyricsto "one" \sopranoLyrics
+  >>
+  \layout @{ @}
+  \midi @{ @}
+@}
+@end example
+
+This is looking promising, but the cello part won't appear in the
+score -- we haven't used it in the @code{\score} section.  If we
+want the cello part to appear under the soprano part, we need to add
+
+@example
+\new Staff \celloMusic
+@end example
+
+@noindent
+underneath the soprano stuff.  We also need to add @code{<<} and
+@code{>>} around the music -- that tells LilyPond that there's
+more than one thing (in this case, two @code{Staves}) happening
+at once.  The @code{\score} looks like this now:
 
-@c index template, modifying
-@c index modifying templates
-@c ode{melody} section.  We don't want two @code{\score} sections
-@c ode{text} to be @code{sopranoLyrics}.  Remember to rename both
-@c ode{melody = \relative c' @{ } part) and the name's use (in the
-@c ode{\score} section).
-@c ode{>>} around the music -- that tells LilyPond that there's
 @c Indentation in this example is deliberately poor
+@example
+\score @{
+  <<
+    <<
+      \new Voice = "one" @{
+        \autoBeamOff
+        \sopranoMusic
+      @}
+      \new Lyrics \lyricsto "one" \sopranoLyrics
+    >>
+    \new Staff \celloMusic
+  >>
+  \layout @{ @}
+  \midi @{ @}
+@}
+@end example
+
+@noindent
+This looks a bit messy; the indentation is messed up now.  That is
+easily fixed.  Here's the complete soprano and cello template.
+
+@lilypond[quote,verbatim,ragged-right,addversion]
+sopranoMusic = \relative {
+  \clef treble
+  \key c \major
+  \time 4/4
+  a4 b c d
+}
+
+sopranoLyrics = \lyricmode {
+  Aaa Bee Cee Dee
+}
+
+celloMusic = \relative {
+  \clef bass
+  \key c \major
+  \time 4/4
+  d4 g fis8 e d4
+}
+
+\score {
+  <<
+    <<
+      \new Voice = "one" {
+        \autoBeamOff
+        \sopranoMusic
+      }
+      \new Lyrics \lyricsto "one" \sopranoLyrics
+    >>
+    \new Staff \celloMusic
+  >>
+  \layout { }
+  \midi { }
+}
+@end lilypond
+
+
+@seealso
+The starting templates can be found in the @q{Templates} appendix,
+see @ref{Single staff}.
+
+
 @node Négyszólamú vegyeskar
 @subsection Négyszólamú vegyeskar
 @translationof Four-part SATB vocal score
-@translationof Four-part SATB vocal score
 
-@untranslated
+@cindex template, SATB
+@cindex SATB template
 
+Most vocal scores of music written for four-part mixed choir
+with orchestral accompaniment such as Mendelssohn's Elijah or
+Handel's Messiah have the choral music and words on four
+staves, one for each of SATB, with a piano reduction of the
+orchestral accompaniment underneath.  Here's an example
+from Handel's Messiah:
 
-@c index template, SATB
-@c index SATB template
 @c The following should appear as music without code
-@c ode{\voiceXXX} commands should be removed.  We also need to specify
+@lilypond[quote,ragged-right]
+global = { \key d \major \time 4/4 }
+sopranoMusic = \relative {
+  \clef "treble"
+  r4 d''2 a4 | d4. d8 a2 | cis4 d cis2 |
+}
+sopranoWords = \lyricmode {
+  Wor -- thy is the lamb that was slain
+}
+altoMusic = \relative {
+  \clef "treble"
+  r4 a'2 a4 | fis4. fis8 a2 | g4 fis e2 |
+}
+altoWords = \sopranoWords
+tenorMusic = \relative {
+  \clef "G_8"
+  r4 fis'2 e4 | d4. d8 d2 | e4 a, cis2 |
+}
+tenorWords = \sopranoWords
+bassMusic = \relative {
+  \clef "bass"
+  r4 d'2 cis4 | b4. b8 fis2 | e4 d a'2 |
+}
+bassWords = \sopranoWords
+upper = \relative {
+  \clef "treble"
+  \global
+  r4 <a' d fis>2 <a e' a>4
+  <d fis d'>4. <d fis d'>8 <a d a'>2
+  <g cis g'>4 <a d fis> <a cis e>2
+}
+lower = \relative {
+  \clef "bass"
+  \global
+  <d, d'>4 <d d'>2 <cis cis'>4
+  <b b'>4. <b' b'>8 <fis fis'>2
+  <e e'>4 <d d'> <a' a'>2
+}
+
+\score {
+  <<  % combine ChoirStaff and PianoStaff in parallel
+    \new ChoirStaff <<
+      \new Staff = "sopranos" <<
+        \set Staff.instrumentName = #"Soprano"
+        \new Voice = "sopranos" {
+          \global
+          \sopranoMusic
+        }
+      >>
+      \new Lyrics \lyricsto "sopranos" {
+        \sopranoWords
+      }
+      \new Staff = "altos" <<
+        \set Staff.instrumentName = #"Alto"
+        \new Voice = "altos" {
+          \global
+          \altoMusic
+        }
+      >>
+      \new Lyrics \lyricsto "altos" { \altoWords }
+      \new Staff = "tenors" <<
+        \set Staff.instrumentName = #"Tenor"
+        \new Voice = "tenors" {
+          \global
+          \tenorMusic
+        }
+      >>
+      \new Lyrics \lyricsto "tenors" { \tenorWords }
+      \new Staff = "basses" <<
+        \set Staff.instrumentName = #"Bass"
+        \new Voice = "basses" {
+          \global
+          \bassMusic
+        }
+      >>
+      \new Lyrics \lyricsto "basses" {
+        \bassWords
+      }
+    >>  % end ChoirStaff
+    \new PianoStaff <<
+      \set PianoStaff.instrumentName = #"Piano"
+      \new Staff = "upper" \upper
+      \new Staff = "lower" \lower
+    >>
+  >>
+}
+@end lilypond
+
+None of the templates provides this layout exactly.  The nearest is
+@q{SATB vocal score and automatic piano reduction} -- see @ref{Vocal
+ensembles} -- but we need to change the layout and add a piano
+accompaniment which is not derived automatically from the vocal parts.
+The variables holding the music and words for the vocal parts are
+fine, but we shall need to add variables for the piano reduction.
+
+The order in which the contexts appear in the ChoirStaff of the
+template do not correspond with the order in the vocal score shown
+above.  We need to rearrange them so there are four staves with the
+words written directly underneath the notes for each part.  All the
+voices should be @code{\voiceOne}, which is the default, so the
+@code{\voiceXXX} commands should be removed.  We also need to specify
+the tenor clef for the tenors.  The way in which lyrics are specified
+in the template has not yet been encountered so we need to use the
+method with which we are familiar.  We should also add the names of
+each staff.
+
+Doing this gives for our ChoirStaff:
+
+@example
+    \new ChoirStaff <<
+      \new Staff = "sopranos" <<
+        \set Staff.instrumentName = #"Soprano"
+        \new Voice = "sopranos" @{
+          \global
+          \sopranoMusic
+        @}
+      >>
+      \new Lyrics \lyricsto "sopranos" @{
+        \sopranoWords
+     @}
+      \new Staff = "altos" <<
+        \set Staff.instrumentName = #"Alto"
+        \new Voice = "altos" @{
+          \global
+          \altoMusic
+        @}
+      >>
+      \new Lyrics \lyricsto "altos" @{
+        \altoWords
+      @}
+      \new Staff = "tenors" <<
+        \set Staff.instrumentName = #"Tenor"
+        \new Voice = "tenors" @{
+          \global
+          \tenorMusic
+        @}
+      >>
+      \new Lyrics \lyricsto "tenors" @{
+        \tenorWords
+      @}
+      \new Staff = "basses" <<
+        \set Staff.instrumentName = #"Bass"
+        \new Voice = "basses" @{
+          \global
+          \bassMusic
+        @}
+      >>
+      \new Lyrics \lyricsto "basses" @{
+        \bassWords
+      @}
+    >>  % end ChoirStaff
+@end example
+
+Next we must work out the piano part.  This is
+easy - we just pull out the piano part from the
+@q{Solo piano} template:
+
+@example
+\new PianoStaff <<
+  \set PianoStaff.instrumentName = #"Piano  "
+  \new Staff = "upper" \upper
+  \new Staff = "lower" \lower
+>>
+@end example
+
+and add the variable definitions for @code{upper}
+and @code{lower}.
+
+The ChoirStaff and PianoStaff must be combined
+using angle brackets as we want them to be
+stacked one above the other:
+
+@example
+<<  % combine ChoirStaff and PianoStaff one above the other
+  \new ChoirStaff <<
+    \new Staff = "sopranos" <<
+      \new Voice = "sopranos" @{
+        \global
+        \sopranoMusic
+      @}
+    >>
+    \new Lyrics \lyricsto "sopranos" @{
+      \sopranoWords
+     @}
+    \new Staff = "altos" <<
+      \new Voice = "altos" @{
+        \global
+        \altoMusic
+      @}
+    >>
+    \new Lyrics \lyricsto "altos" @{
+      \altoWords
+    @}
+    \new Staff = "tenors" <<
+      \clef "G_8"  % tenor clef
+      \new Voice = "tenors" @{
+        \global
+        \tenorMusic
+      @}
+    >>
+    \new Lyrics \lyricsto "tenors" @{
+      \tenorWords
+    @}
+    \new Staff = "basses" <<
+      \clef "bass"
+      \new Voice = "basses" @{
+        \global
+        \bassMusic
+      @}
+    >>
+    \new Lyrics \lyricsto "basses" @{
+      \bassWords
+    @}
+  >>  % end ChoirStaff
+
+  \new PianoStaff <<
+    \set PianoStaff.instrumentName = #"Piano"
+    \new Staff = "upper" \upper
+    \new Staff = "lower" \lower
+  >>
+>>
+@end example
+
+Combining all these together and adding the music
+for the three bars of the example above gives:
+
+@lilypond[quote,verbatim,ragged-right,addversion]
+global = {
+  \key d \major
+  \time 4/4
+}
+sopranoMusic = \relative {
+  \clef "treble"
+  r4 d''2 a4 | d4. d8 a2 | cis4 d cis2 |
+}
+sopranoWords = \lyricmode {
+  Wor -- thy is the lamb that was slain
+}
+altoMusic = \relative {
+  \clef "treble"
+  r4 a'2 a4 | fis4. fis8 a2 | g4 fis fis2 |
+}
+altoWords = \sopranoWords
+tenorMusic = \relative {
+  \clef "G_8"
+  r4 fis'2 e4 | d4. d8 d2 | e4 a, cis2 |
+}
+tenorWords = \sopranoWords
+bassMusic = \relative {
+  \clef "bass"
+  r4 d'2 cis4 | b4. b8 fis2 | e4 d a'2 |
+}
+bassWords = \sopranoWords
+upper = \relative {
+  \clef "treble"
+  \global
+  r4 <a' d fis>2 <a e' a>4
+  <d fis d'>4. <d fis d'>8 <a d a'>2
+  <g cis g'>4 <a d fis> <a cis e>2
+}
+lower = \relative {
+  \clef "bass"
+  \global
+  <d, d'>4 <d d'>2 <cis cis'>4
+  <b b'>4. <b' b'>8 <fis fis'>2
+  <e e'>4 <d d'> <a' a'>2
+}
+
+\score {
+  <<  % combine ChoirStaff and PianoStaff in parallel
+    \new ChoirStaff <<
+      \new Staff = "sopranos" <<
+        \set Staff.instrumentName = #"Soprano"
+        \new Voice = "sopranos" {
+          \global
+          \sopranoMusic
+        }
+      >>
+      \new Lyrics \lyricsto "sopranos" {
+        \sopranoWords
+      }
+      \new Staff = "altos" <<
+        \set Staff.instrumentName = #"Alto"
+        \new Voice = "altos" {
+          \global
+          \altoMusic
+        }
+      >>
+      \new Lyrics \lyricsto "altos" {
+        \altoWords
+      }
+      \new Staff = "tenors" <<
+        \set Staff.instrumentName = #"Tenor"
+        \new Voice = "tenors" {
+          \global
+          \tenorMusic
+        }
+      >>
+      \new Lyrics \lyricsto "tenors" {
+        \tenorWords
+      }
+      \new Staff = "basses" <<
+        \set Staff.instrumentName = #"Bass"
+        \new Voice = "basses" {
+          \global
+          \bassMusic
+        }
+      >>
+      \new Lyrics \lyricsto "basses" {
+        \bassWords
+      }
+    >>  % end ChoirStaff
+
+    \new PianoStaff <<
+      \set PianoStaff.instrumentName = #"Piano  "
+      \new Staff = "upper" \upper
+      \new Staff = "lower" \lower
+    >>
+  >>
+}
+@end lilypond
+
+
 @node Kotta létrehozása az alapoktól
 @subsection Kotta létrehozása az alapoktól
 @translationof Building a score from scratch
-@translationof Building a score from scratch
 
-@untranslated
+@cindex template, writing your own
+@cindex example of writing a score
+@cindex writing a score, example
+@cindex score, example of writing
+
+After gaining some facility with writing LilyPond code, you
+may find that it is easier to build a score from scratch
+rather than modifying one of the templates.  You can also
+develop your own style this way to suit the sort of music you
+like.  Let's see how to put together the score for an organ
+prelude as an example.
+
+We begin with a header section.  Here go the title, name
+of composer, etc, then come any variable definitions, and
+finally the score block.  Let's start with these in outline
+and fill in the details later.
+
+We'll use the first two bars of Bach's prelude
+based on @emph{Jesu, meine Freude} which is written for two
+manuals and pedal organ.  You can see these two bars of music
+at the bottom of this section.  The top manual part has two voices,
+the lower and pedal organ one each.  So we need four
+music definitions and one to define the time signature
+and key:
+
+@example
+\version @w{"@version{}"}
+\header @{
+  title = "Jesu, meine Freude"
+  composer = "J S Bach"
+@}
+TimeKey = @{
+  \time 4/4
+  \key c \minor
+@}
+ManualOneVoiceOneMusic = @{ s1 @}
+ManualOneVoiceTwoMusic = @{ s1 @}
+ManualTwoMusic = @{ s1 @}
+PedalOrganMusic = @{ s1 @}
+
+\score @{
+@}
+@end example
+
+For now we've just used a spacer note, @code{s1},
+instead of the real music.  We'll add that later.
+
+Next let's see what should go in the score block.
+We simply mirror the staff structure we want.
+Organ music is usually written on three staves,
+one for each manual and one for the pedals.  The
+manual staves should be bracketed together, so we
+need to use a PianoStaff for them.  The first
+manual part needs two voices and the second manual
+part just one.
+
+@example
+  \new PianoStaff <<
+    \new Staff = "ManualOne" <<
+      \new Voice @{
+        \ManualOneVoiceOneMusic
+      @}
+      \new Voice @{
+        \ManualOneVoiceTwoMusic
+      @}
+    >>  % end ManualOne Staff context
+    \new Staff = "ManualTwo" <<
+      \new Voice @{
+        \ManualTwoMusic
+      @}
+    >>  % end ManualTwo Staff context
+  >>  % end PianoStaff context
+@end example
+
+Next we need to add a staff for the pedal organ.
+This goes underneath the PianoStaff, but it must
+be simultaneous with it, so we need angle brackets
+around the two.  Missing these out would generate
+an error in the log file.  It's a common mistake
+which you'll make sooner or later!  Try copying
+the final example at the end of this section,
+remove these angle brackets, and compile it to
+see what errors it generates.
+
+@example
+<<  % PianoStaff and Pedal Staff must be simultaneous
+  \new PianoStaff <<
+    \new Staff = "ManualOne" <<
+      \new Voice @{
+        \ManualOneVoiceOneMusic
+      @}
+      \new Voice @{
+        \ManualOneVoiceTwoMusic
+      @}
+    >>  % end ManualOne Staff context
+    \new Staff = "ManualTwo" <<
+      \new Voice @{
+        \ManualTwoMusic
+      @}
+    >>  % end ManualTwo Staff context
+  >>  % end PianoStaff context
+  \new Staff = "PedalOrgan" <<
+    \new Voice @{
+      \PedalOrganMusic
+    @}
+  >>
+>>
+@end example
+
+It is not necessary to use the simultaneous construct
+@code{<< .. >>} for the manual two staff and the pedal organ staff,
+since they contain only one music expression, but it does no harm,
+and always using angle brackets after @code{\new Staff} is a good
+habit to cultivate in case there are multiple voices.  The opposite
+is true for Voices: these should habitually be followed by braces
+@code{@{ .. @}} in case your music is coded in several variables
+which need to run consecutively.
+
+Let's add this structure to the score block, and adjust the indenting.
+We also add the appropriate clefs, ensure stems, ties and slurs in
+each voice on the upper staff point to the right direction with
+@code{\voiceOne} and @code{\voiceTwo}, and enter the time signature
+and key to each staff using our predefined variable, @code{\TimeKey}.
+
+@example
+\score @{
+  <<  % PianoStaff and Pedal Staff must be simultaneous
+    \new PianoStaff <<
+      \new Staff = "ManualOne" <<
+        \TimeKey  % set time signature and key
+        \clef "treble"
+        \new Voice @{
+          \voiceOne
+          \ManualOneVoiceOneMusic
+        @}
+        \new Voice @{
+          \voiceTwo
+          \ManualOneVoiceTwoMusic
+        @}
+      >>  % end ManualOne Staff context
+      \new Staff = "ManualTwo" <<
+        \TimeKey
+        \clef "bass"
+        \new Voice @{
+          \ManualTwoMusic
+        @}
+      >>  % end ManualTwo Staff context
+    >>  % end PianoStaff context
+    \new Staff = "PedalOrgan" <<
+      \TimeKey
+      \clef "bass"
+      \new Voice @{
+        \PedalOrganMusic
+      @}
+    >>  % end PedalOrgan Staff
+  >>
+@}  % end Score context
+@end example
+
+That completes the structure.  Any three-staff organ music
+will have a similar structure, although the number of voices
+may vary.  All that remains now
+is to add the music, and combine all the parts together.
+
+@lilypond[quote,verbatim,ragged-right,addversion]
+\header {
+  title = "Jesu, meine Freude"
+  composer = "J S Bach"
+}
+TimeKey = {
+  \time 4/4
+  \key c \minor
+}
+ManualOneVoiceOneMusic = \relative {
+  g'4 g f ees
+  d2 c2
+}
+ManualOneVoiceTwoMusic = \relative {
+  ees'16 d ees8~ 16 f ees d c8 d~ d c~
+  c c4 b8 c8. g16 c b c d
+}
+ManualTwoMusic = \relative {
+  c'16 b c8~ 16 b c g a8 g~ 16 g aes ees
+  f ees f d g aes g f ees d e8~ 8es16 f ees d
+}
+PedalOrganMusic = \relative {
+  r8 c16 d ees d ees8~ 16 a, b g c b c8
+  r16 g ees f g f g8 c,2
+}
+
+\score {
+  <<  % PianoStaff and Pedal Staff must be simultaneous
+    \new PianoStaff <<
+      \new Staff = "ManualOne" <<
+        \TimeKey  % set time signature and key
+        \clef "treble"
+        \new Voice {
+          \voiceOne
+          \ManualOneVoiceOneMusic
+        }
+        \new Voice {
+          \voiceTwo
+          \ManualOneVoiceTwoMusic
+        }
+      >>  % end ManualOne Staff context
+      \new Staff = "ManualTwo" <<
+        \TimeKey
+        \clef "bass"
+        \new Voice {
+          \ManualTwoMusic
+        }
+      >>  % end ManualTwo Staff context
+    >>  % end PianoStaff context
+    \new Staff = "PedalOrgan" <<
+      \TimeKey
+      \clef "bass"
+      \new Voice {
+        \PedalOrganMusic
+      }
+    >>  % end PedalOrgan Staff context
+  >>
+}  % end Score context
+@end lilypond
 
 
-@c index template, writing your own
-@c index example of writing a score
-@c index writing a score, example
-@c index score, example of writing
-@c ode{<< .. >>} for the manual two staff and the pedal organ staff,
-@c ode{@{ .. @}} in case your music is coded in several variables
-@c ode{\voiceOne} and @code{\voiceTwo}, and enter the time signature
 @node Kevesebb gépelés változókkal és függvényekkel
 @subsection Kevesebb gépelés változókkal és függvényekkel
 @translationof Saving typing with variables and functions
-@translationof Saving typing with variables and functions
-
-@untranslated
 
+@cindex variables
+@cindex variables
+
+By this point, you've seen this kind of thing:
+
+@lilypond[quote,verbatim,ragged-right]
+hornNotes = \relative { c''4 b dis c }
+\score {
+  {
+    \hornNotes
+  }
+}
+@end lilypond
+
+You may even realize that this could be useful in minimalist music:
+
+@lilypond[quote,verbatim,ragged-right]
+fragmentA = \relative { a'4 a8. b16 }
+fragmentB = \relative { a'8. gis16 ees4 }
+violin = \new Staff {
+  \fragmentA
+  \fragmentA
+  \fragmentB
+  \fragmentA
+}
+\score {
+  {
+    \violin
+  }
+}
+@end lilypond
+
+However, you can also use these variables (also known as
+macros, or user-defined commands) for tweaks:
 
-@c index variables
-@c index variables
 @c TODO Avoid padtext - not needed with skylining
+@lilypond[quote,verbatim,ragged-right]
+dolce = \markup { \italic \bold dolce }
+padText = { \once \override TextScript.padding = #5.0 }
+fthenp=_\markup { \dynamic f \italic \small { 2nd } \hspace #0.1 \dynamic p }
+violin = \relative {
+  \repeat volta 2 {
+    c''4._\dolce b8 a8 g a b
+    \padText
+    c4.^"hi there!" d8 e' f g d
+    c,4.\fthenp b8 c4 c-.
+  }
+}
+\score {
+  {
+    \violin
+  }
+\layout { ragged-right=##t }
+}
+@end lilypond
+
+These variables are obviously useful for saving
+typing.  But they're worth considering even if you
+only use them once -- they reduce complexity.  Let's
+look at the previous example without any
+variables.  It's a lot harder to read, especially
+the last line.
+
+@example
+violin = \relative @{
+  \repeat volta 2 @{
+    c''4._\markup @{ \italic \bold dolce @} b8 a8 g a b
+    \once \override TextScript.padding = #5.0
+    c4.^"hi there!" d8 e' f g d
+    c,4.\markup @{ \dynamic f \italic \small @{ 2nd @}
+      \hspace #0.1 \dynamic p @}
+    b8 c4 c-.
+  @}
+@}
+@end example
+
 @c TODO Replace the following with a better example  -td
 @c Skylining handles this correctly without padText
-@c ode{padtext=}).
-@node Partitúra és szólamkották
-@subsection Partitúra és szólamkották
-@translationof Scores and parts
-@translationof Scores and parts
 
-@untranslated
+So far we've seen static substitution -- when LilyPond
+sees @code{\padText}, it replaces it with the stuff that
+we've defined it to be (ie the stuff to the right of
+@code{padtext=}).
+
+LilyPond can handle non-static substitution, too (you
+can think of these as functions).
+
+@lilypond[quote,verbatim,ragged-right]
+padText =
+#(define-music-function (padding) (number?)
+  #{
+    \once \override TextScript.padding = #padding
+  #})
+
+\relative {
+  c'''4^"piu mosso" b a b
+  \padText #1.8
+  c4^"piu mosso" d e f
+  \padText #2.6
+  c4^"piu mosso" fis a g
+}
+@end lilypond
+
+Using variables is also a good way to reduce work if the
+LilyPond input syntax changes (see
+@rprogram{Updating files with convert-ly}).  If
+you have a single definition (such as @code{\dolce}) for all your
+input files (see @ref{Style sheets}), then if the syntax changes, you
+only need to update your single @code{\dolce} definition,
+instead of making changes throughout every @file{.ly} file.
 
 
-@c ode{\transpose f@tie{}c'} indicates that the argument, being
-@c ode{\hornNotes}, should be transposed by a fifth upwards.  Sounding
-@c ode{f} is denoted by notated @code{c'}, which corresponds with the
-@c ode{Score} context to true (@code{##t}).  Prepending the rest and
+@node Partitúra és szólamkották
+@subsection Partitúra és szólamkották
+@translationof Scores and parts
 
+In orchestral music, all notes are printed twice.  Once in a part for
+the musicians, and once in a full score for the conductor.  Variables can
+be used to avoid double work.  The music is entered once, and stored in
+a variable.  The contents of that variable is then used to generate
+both the part and the full score.
+
+It is convenient to define the notes in a special file.  For example,
+suppose that the file @file{horn-music.ly} contains the following part
+of a horn/@/bassoon duo
+
+@example
+hornNotes = \relative @{
+  \time 2/4
+  r4 f8 a cis4 f e d
+@}
+@end example
+
+@noindent
+Then, an individual part is made by putting the following in a file
+
+@example
+\include "horn-music.ly"
+\header @{
+  instrument = "Horn in F"
+@}
+
+@{
+ \transpose f c' \hornNotes
+@}
+@end example
+
+The line
+
+@example
+\include "horn-music.ly"
+@end example
+
+@noindent
+substitutes the contents of @file{horn-music.ly} at this position in
+the file, so @code{hornNotes} is defined afterwards.  The command
+@code{\transpose f@tie{}c'} indicates that the argument, being
+@code{\hornNotes}, should be transposed by a fifth upwards.  Sounding
+@code{f} is denoted by notated @code{c'}, which corresponds with the
+tuning of a normal French Horn in@tie{}F.  The transposition can be seen
+in the following output
+
+@lilypond[quote,ragged-right]
+\transpose f c' \relative {
+  \time 2/4
+  r4 f8 a cis4 f e d
+}
+@end lilypond
+
+In ensemble pieces, one of the voices often does not play for many
+measures.  This is denoted by a special rest, the multi-measure
+rest.  It is entered with a capital @code{R} followed by a duration
+(@code{1}@tie{}for a whole note, @code{2}@tie{}for a half note,
+etc.).  By multiplying the
+duration, longer rests can be constructed.  For example, this rest
+takes 3@tie{}measures in 2/4 time
+
+@example
+R2*3
+@end example
+
+When printing the part, multi-rests
+must be condensed.  This is done by setting a run-time variable
+
+@example
+\set Score.skipBars = ##t
+@end example
+
+@noindent
+This command sets the property @code{skipBars} in the
+@code{Score} context to true (@code{##t}).  Prepending the rest and
+this option to the music above, leads to the following result
+
+@lilypond[quote,ragged-right]
+\transpose f c' \relative {
+  \time 2/4
+  \set Score.skipBars = ##t
+  R2*3
+  r4 f8 a cis4 f e d
+}
+@end lilypond
+
+
+The score is made by combining all of the music together.  Assuming
+that the other voice is in @code{bassoonNotes} in the file
+@file{bassoon-music.ly}, a score is made with
+
+@example
+\include "bassoon-music.ly"
+\include "horn-music.ly"
+
+<<
+  \new Staff \hornNotes
+  \new Staff \bassoonNotes
+>>
+@end example
+
+@noindent
+leading to
+
+@lilypond[quote,ragged-right]
+\relative <<
+  \new Staff {
+    \time 2/4
+    R2*3
+    r4 f8 a cis4 f e d
+  }
+  \new Staff {
+    \clef bass
+    r4 d,8 f | gis4 c | b bes |
+    a8 e f4 | g d | gis f |
+  }
+>>
+@end lilypond