]> git.donarmstrong.com Git - lilypond.git/blob - Documentation/cs/learning/fundamental.itely
Doc-cs. Update of fundamental.itely.
[lilypond.git] / Documentation / cs / learning / fundamental.itely
1 @c -*- coding: utf-8; mode: texinfo; documentlanguage: cs -*-
2
3 @ignore
4     Translation of GIT committish: a463d80d4be008ce05b12de86fc21f2b7c1c120f
5
6     When revising a translation, copy the HEAD committish of the
7     version that you are working on.  For details, see the Contributors'
8     Guide, node Updating translation committishes.
9 @end ignore
10
11 @c \version "2.16.0"
12 @c Translators: Pavel Fric
13
14 @node Základní pojmy
15 @chapter Základní pojmy
16 @translationof Fundamental concepts
17
18 Poté co ve cvičení bylo ukázáno, jak lze z jednoduchého textového souboru
19 vytvořit překrásně formátované hudební noty, jsou v této kapitole
20 představeny koncepty a techniky, jak se dají tvořit i složitější
21 notové zápisy.
22
23 @menu
24 * Jak pracují vstupní soubory LilyPondu::
25 * Hlasy obsahují noty::
26 * Prostředí a rytci::
27 * Rozšíření příkladů::
28 @end menu
29
30 @node Jak pracují vstupní soubory LilyPondu
31 @section Jak pracují vstupní soubory LilyPondu
32 @translationof How LilyPond input files work
33
34 Vstupní formát pro LilyPond měl poměrně volnou podobu, takže
35 zkušení uživatele tu mají hodně volnosti v ovlivnění stavby jejich
36 zdrojových souborů.  Pro nováčky ale tato ohebnost může být zprvu
37 matoucí.  V této kapitole by proto z toho důvodu měla být představena
38 část z těchto staveb. Mnohé ale bude pro zjednodušení
39 vynecháno.  Na úplný popis vstupního formátu se podívejte
40 na @ruser{Stavba souboru}.
41
42 Většinu příkladů v této příručce představují malé úryvky, jako
43 je tento:
44
45 @example
46 c4 a b c
47 @end example
48
49 Jak je snad známo, nedá se takový úryvek v této podobě
50 přeložit.  Tyto příklady jsou tedy jen zkrácenou formou
51 skutečných příkladů.  Přinejmenším se musí dodatečně uzavřít ve
52 složených závorkách.
53
54 @example
55 @{
56   c4 a b c
57 @}
58 @end example
59
60 Většina příkladů rovněž používá příkaz @code{\relative c'}.
61 Ten pro překlad souborů není nezbytný, ale ve většině případů
62 tak notová sazba vypadá zřídka, když se tento příkaz
63 vynechá.
64
65 @lilypond[quote,fragment,ragged-right,verbatim]
66 \relative c'' {
67   c4 a b c
68 }
69 @end lilypond
70
71 Úplné vymezení vstupního formátu se nachází
72 v kapitole @ruser{Stavba souboru}.
73
74 @menu
75 * Uvedení do stavby souboru v LilyPondu::
76 * Notový zápis je jedním (jediným) složeným hudebním výrazem::
77 * Naskládání hudebních výrazů do sebe::
78 * O ne-naskládatelnosti závorek a ligatur::
79 @end menu
80
81 @node Uvedení do stavby souboru v LilyPondu
82 @subsection Uvedení do stavby souboru v LilyPondu
83 @translationof Introduction to the LilyPond file structure
84
85 @cindex Vstupní formát
86 @cindex Stavba souboru
87 @cindex Stavba, soubor
88
89 Základní příklad vstupního souboru pro LilyPond zní:
90
91 @example
92 \version @w{"@version{}"}
93
94 \header @{ @}
95
96 \score @{
97   @var{...složený hudební výraz...}  % Celé noty přijdou sem!
98   \layout @{ @}
99   \midi @{ @}
100 @}
101 @end example
102
103 @noindent
104 Na základě pružnosti LilyPond je mnoho obměn tohoto schématu,
105 ale tento příklad slouží jako jednoduchý výchozí bod.
106
107 @funindex \book
108 @funindex \score
109 @funindex book
110 @funindex score
111 @cindex book
112 @cindex score
113
114 Až dosud ještě žádný z příkladů příkaz @code{\score@{@}}
115 nepoužil, neboť Lilypond takové dodatečné příkazy automaticky
116 vkládá v případě potřeby, když má vstupní soubor jednoduchou
117 stavbu.
118
119 Podívejme se na jeden takový jednoduchý příklad:
120
121 @example
122 \relative c'' @{
123   c4 a d c
124 @}
125 @end example
126
127 @noindent
128 Na pozadí k tomu přichází ještě několik rovin: LilyPondovský kód
129 v hořejší podobě je ve skutečnosti zestručněním.  I když by se
130 takové soubory daly napsat a také správně zapsat, znamená
131 úplný kód, který je zde míněn, vlastně:
132
133 @example
134 \book @{
135   \score @{
136     \new Staff @{
137       \new Voice @{
138         \relative c'' @{
139           c4 a b c
140         @}
141       @}
142     @}
143     \layout @{ @}
144   @}
145 @}
146 @end example
147
148 @noindent
149 Jinými slovy:  Když vstupní soubor obsahuje nějaký jednoduchý výraz,
150 LilyPond bude soubor vykládat tak, jakoby byl onen výraz zadán uvnitř
151 výše ukázaných příkazů.  Tato nutná stavba je vytvořena automaticky
152 v paměti při vyvolání LilyPondu,
153 aniž by si uživatel něčeho z toho všiml.
154
155 @cindex Skrytá prostředí
156 @cindex Prostředí, skrytá
157
158 @strong{Slovo varování je však vysloveno!} Mnohé z příkladů
159 v dokumentaci k LilyPondu vědomě vynechávají příklady @code{\new Staff}
160 a @code{\new Voice} k vytvoření notové osnovy a hlasu (obojí je v
161 LilyPondu tak zvané prostředí),
162 aby byla LilyPondem v paměti vytvořena skrytě.
163 Pro jednoduché dokumenty to obecně pracuje velmi dobře, u
164 složitějších notových zápisů z toho ale mohou povstat neočekávané
165 výsledky, částečně dokonce neočekávané prázdné notové osnovy.  Jak
166 otevřeně vytvářet odpovídající prostředí v takovém případě,
167 se podívejte na @ref{Prostředí a rytci,,prostředí a rytce}.
168
169 @warning{Když se zadává více jak dvojice notových řádků,
170 doporučuje se vytvořit notové osnovy a hlasy vždy otevřeně
171 pomocí @code{\new Staff} a @code{\new Voice}.}
172
173 V této chvíli se ale chceme vrátit k našemu prvnímu příkladu a
174 blíže se podívat jen na příkaz @code{\score}.
175
176 Notový zápis (@code{\score}) musí vždy začínat nějakým hudebním
177 výrazem.  To je koneckonců každá hudba, počínaje jednotlivou
178 notou až po rostoucí notový zápis s mnoha notovými osnovami
179 (zde označeno pomocí @code{GrandStaff}):
180
181 @example
182 @{
183   \new GrandStaff <<
184     @var{...zde celý notový zápis...}
185   >>
186 @}
187 @end example
188
189 @noindent
190 Protože se vše nachází uvnitř složených závorek @code{@{ ... @}},
191 zachází se s tím jako s jediným hudebním výrazem.
192
193
194 Jak již bylo řečeno předtím, může blok @code{\score} obsahovat i jiné věci, jako například
195
196 @example
197 \score @{
198   @{ c'4 a b c' @}
199   \layout @{ @}
200   \midi @{ @}
201   \header @{ @}
202 @}
203 @end example
204
205 @funindex \header
206 @funindex \layout
207 @funindex \midi
208 @funindex header
209 @funindex layout
210 @funindex midi
211 @cindex header
212 @cindex midi
213 @cindex Layout
214 @cindex Hlavička
215
216 @noindent
217 Jak je vidět, jsou ty tři příkazy @code{\header}, @code{\layout} a
218 @code{\midi} zvláštní povahy: V protikladu k mnoha jiným příkazům,
219 které také začínají zpětným lomítkem @code{\}, @emph{nejsou} hudebním výrazem
220 a také nejsou částí nějakého hudebního výrazu.  Z toho důvodu mohou být umístěny
221 jak dovnitř bloku @code{\score} tak mimo
222 něj.  Ve skutečnosti jsou tyto příkazy většinou umisťovány mimo blok
223 @code{\score}, například se příkaz @code{\header} nachází
224 velice často nad prostředím @code{\score}, jak ukazuje příklad na
225 začátku tohoto oddílu.  Pracuje to právě tak dobře.
226
227 Dvěma dosud neviděnými příkazy jsou
228 @code{\layout @{ @}} a @code{\midi @{@}}.  Když se objeví v nějakém
229 souboru, vede to k tomu, že Lilypond vytvoří tisknutelný soubor PDF
230 popřípadě soubor MIDI.  Přesněji jsou popsány v uživatelské příručce -
231 notace -- @ruser{Rozvržení notového zápisu} a
232 @ruser{Vytváření souborů MIDI}.
233
234 @cindex Notové zápisy, více
235 @cindex Prostředí book, skryté
236 @cindex Skryté prostředí book
237 @funindex \book
238 @funindex book
239
240 Váš LilyPondovský kód může obsahovat více bloků @code{\score}.
241 Každý z nich je vykládán jako samostatný notový zápis, ovšem
242 všechny jsou umístěny v tomtéž výstupním souboru.
243 Příkaz @code{\book} není otevřeně nezbytný -- je vytvořen
244 skrytě.  Když však má být vytvořen pro každý blok @code{\score} v
245 souboru @file{.ly} vlastní výstupní soubor,
246 potom se musí každý z těchto bloků zapsat do vlastního bloku @code{\book}:
247  Každý blok @code{\book} pak vytváří vlastní výstupní soubor.
248
249 Shrnutí:
250
251 Každý blok @code{\book} vytváří vlastní výstupní soubor (např. soubor
252 PDF).  Pokud jste otevřeně žádný takový blok nezadali,
253 LilyPond celý obsah souboru zapíše dovnitř jednoho jediného
254 skrytého bloku @code{\book}.
255
256 Každý blok @code{\score} popiseje jeden samostatný hudební kus
257 uvnitř bloku @code{\book}.
258
259 @cindex Prostředí Layout, umístění
260 @cindex Umístění prostředí layout
261
262 Každý blok @code{\layout} ovlivňuje @code{\score} nebo
263 @code{\book}, ve kterém se vyskytuje.  Tak působí například blok
264 @code{\layout} uvnitř bloku @code{\score} jen na tento jeden
265 blok a celý jeho obsah, blok @code{\layout} mimo
266 blok @code{\score} (a proto uvnitř skrytě vytvořeného
267 otevřeně zadaného bloku @code{\book}) však na
268 všechny bloky @code{\score} uvnitř tohoto bloku @code{\book}.
269
270 Více podrobností se nachází v části @ruser{Více notových zápisů v knize}.
271
272 @cindex Proměnné
273 @cindex Identifikátor
274
275 Dobrou možností pro zjednodušení jsou vlastní vymezené proměnné,
276 jak je to také ukázáno v @ref{Pořádání děl pomocí proměnných}.
277 Všechny předlohy používají tuto možnost:
278
279 @example
280 melodie = \relative c' @{
281   c4 a b c
282 @}
283
284 \score @{
285   @{ \melodie @}
286 @}
287 @end example
288
289 Když LilyPond zpracovává tento soubor, bere obsah
290 z @code{melodie} (vše po rovnítku) a vkládá to,
291 kdykoli vidí @code{\melodie}. Názvy jsou
292 volně volitelné, proměnná se právě tak dobře může
293 jmenovat  @code{melodie}, @code{GLOBAL}, @code{praváRukaKlavír},
294 nebo @code{cokoliDalšího}.
295 Jako název proměnné se dá použít skoro jakýkoli oblíbený název,
296 musí se v něm ovšem vyskytovat jen písmena (takže žádná čísla, podtržítka,
297 zvláštní znaky, atd.) a nesmí znít jako příkaz pro LilyPond.  Pro více
298 informací se podívejte na
299 @ref{Úspora psaní na stroji pomocí proměnných a funkcí,,úsporu psaní na stroji pomocí proměnných a funkcí}.  Přesně jsou
300 tato omezení popsána v části @ruser{Stavba souboru}.
301
302
303 @seealso
304 Úplné vymezení vstupního souboru se nachází v
305 @ruser{Stavba souboru}.
306
307
308 @node Notový zápis je jedním (jediným) složeným hudebním výrazem
309 @subsection Notový zápis je jedním (jediným) složeným hudebním výrazem
310 @translationof Score is a (single) compound musical expression
311
312 @funindex \score
313 @funindex score
314 @cindex score
315 @cindex Notový zápis
316 @cindex Hudební kus
317 @cindex Složený hudební výraz
318 @cindex Hudební výraz, složený
319
320
321 V předchozí kapitole, @ref{Uvedení do stavby souboru v LilyPondu},
322 byla popsána obecná stavba jednoho LilyPondovského zdrojového
323 souboru.  Ale zjevně jsme vypustili nejdůležitější
324 otázku, totiž jak se zjistí, co se má napsat
325 po @code{\score}.
326
327 Ve skutečnosti to ale není vůbec žádným tajemstvím.  Tento
328 řádek je odpovědí:
329
330 @quotation
331 @emph{Notový zápis začíná vždy @code{\score}, který je následován
332 jedním hudebním výrazem.}
333 @end quotation
334
335 @noindent
336 Možná byste si měl ještě jednou zběžně přečíst, abyste pochopil, co jsou to hudební výrazy,
337 @ref{Vysvětlení hudebních výrazů,,vysvětlení hudebních výrazů}.  V této
338 kapitole bylo ukázáno, jak se velké hudební výrazy
339 skládají z malých částí.  Noty mohou být spojeny s akordy
340 atd. Nyní ale jdeme v jiném směru a pozorujeme,
341 jak se dá rozložit velký hudební výraz. Kvůli zjednodušení
342 v našem příkladu použijeme jen jednoho zpěváka a
343 klavír.  Nepotřebujeme žádnou skupinu
344 osnov (@code{StaffGroup}), která jednoduše způsobeje jen to,
345 že osnovy jsou spojeny závorkami, seskupuje je; ty tedy budou
346 odstraněny.  @emph{Potřebujeme} ale osnovy pro zpěváka a klavír.
347
348 @example
349 \score @{
350   @{
351     <<
352       \new Staff = "Zpěvák" <<
353       >>
354       \new PianoStaff = "Klavír" <<
355       >>
356     >>
357   @}
358   \layout @{ @}
359 @}
360 @end example
361
362 Zde byly osnovy pojmenovány: @qq{Zpěvák} a
363 @qq{Klavír}.  To v tomto případě není přímo nutné,
364 ale je dobré zvyknout si na tento způsob psaní, aby se hned
365 poznalo, o kterou osnovu se jedná.
366
367 K zapamatování: @code{<<} a @code{>>} jsou noty vysázeny
368 zároveň.  To způsobuje, že se hlasová část a klavírní osnova objevují
369 v notovém zápisu nad sebou.  Konstrukce @code{<< ... >>} pro zpěvákovu osnovu
370 v příkladu výše není nutná, protože zde se mají vkládat noty jen
371 jednoho hlasu, ale @code{<< ... >>}
372 namísto závorek jsou nezbytné, hned jak se má vkládat
373 více než jeden hlas, tedy dva a více současných výrazů, nebo jeden notový hlas a text
374 písně.  V našem případě se má zapsat jeden hlas s textem písně,
375 takže jsou potřeba špičaté závorky. Noty přidáme teprve později,
376 pro teď tedy přidáme nějaké noty a text.  Pokud si nevzpomínáte,
377 jak se text písně zapisuje, přečtěte si ještě
378 jednou o @code{\addlyrics} v @ref{Zápis jednoduchých písní,,zápisu jednoduchých písní}.
379
380 @lilypond[verbatim,quote,ragged-right]
381 \score {
382   <<
383     \new Staff = "singer" <<
384       \new Voice = "vocal" { c'1 }
385       \addlyrics { And }
386     >>
387     \new PianoStaff = "piano" <<
388       \new Staff = "upper" { c'1 }
389       \new Staff = "lower" { c'1 }
390     >>
391   >>
392   \layout { }
393 }
394 @end lilypond
395
396 Nyní máme mnohem více podrobností.  Máme osnovu (angl. staff)
397 pro jednoho zpěváka, ve které se zase nachází jeden hlas
398 (angl. voice).  @code{Voice} znamená pro LilyPond hlas (jak
399 zazpívaný tak zahraný; prostě soubor not, nikoli nutně zpívaných zpěvákem
400  -- například housle hrají jeden hlas) a případně dodatečný text.  Dodatečně
401 se zapíší dvě notové osnovy pro klavír příkazem @code{\new
402 PianoStaff}.  @code{PianoStaff} označuje prostředí klavíru (procházející
403 taktové čáry a složené závorky na začátku), v němž se potom opět
404 zřizují dvě vlastní osnovy ("nahoře" pro pravou ruku a
405 "dole" pro levou), i když spodní osnova musí ještě dostat
406 basový klíč.
407
408 Nyní bychom do tohoto prostředí mohli začít vkládat noty.  Uvnitř
409 složených závorek vedle @code{\new Voice = "Zpěvní hlas"}
410 bychom mohli zapisovat
411
412 @example
413 \relative c'' @{
414   r4 d8\noBeam g, c4 r
415 @}
416 @end example
417
418 @noindent
419 Ale když se soubor píše takto přímo, začne být
420 část @code{\score} velmi dlouhá a je dosti obtížné porozumět tomu,
421 jak vše souvisí.  Z toho důvodu se nabízí použití identifikátorů
422 (nebo jinak také proměnných).  Byly vysvětleny na začátku předchozí
423 části, jak si zajisté vzpomínáte?  Abychom zajistili,
424 že obsah proměnné @code{text} je vykládán jako text písně,
425 interpretiert wird, uvedeme jej @code{\lyricmode}.  Tak jako
426 @code{\addlyrics}, je tímto vstupní režim přepnut na
427 text písně. Bez tohoto příkazu by se LilyPond pokoušel vykládat obsah
428 proměnné jako noty a přitom by docházelo k vytváření
429 množství chyb. (Kromě toho je dostupných ještě několik dalších
430 zadávacích režimů, podívejte se na @ruser{Vstupní režimy}.)
431
432 Takže nyní máme, když přidáme několik not a basový klíč
433 pro levou ruku, následující příklad:
434
435 @lilypond[verbatim,quote,ragged-right]
436 melody = \relative c'' { r4 d8\noBeam g, c4 r }
437 text   = \lyricmode { And God said, }
438 upper  = \relative c'' { <g d g,>2~ <g d g,> }
439 lower  = \relative c { b2 e }
440
441 \score {
442   <<
443     \new Staff = "singer" <<
444       \new Voice = "vocal" { \melody }
445       \addlyrics { \text }
446     >>
447     \new PianoStaff = "piano" <<
448       \new Staff = "upper" { \upper }
449       \new Staff = "lower" {
450         \clef "bass"
451         \lower
452       }
453     >>
454   >>
455   \layout { }
456 }
457 @end lilypond
458
459 Při zapisování (nebo při čtení) prostředí @code{\score}
460 by se mělo postupovat pomalu a pečlivě.  Nejlepší je začít s největšími
461 útvary, a pak vymezit v nich obsažené menší útvary.  Také pomáhá velice
462 dbát na přesné odsazení, aby každý řádek, jenž přísluší k
463 téže úrovni, skutečně vodorovně začínal na tom
464 samém místě.
465
466
467 @seealso
468 Notace: @ruser{Stavba notového zápisu}.
469
470
471 @node Naskládání hudebních výrazů do sebe
472 @subsection Naskládání hudebních výrazů do sebe
473 @translationof Nesting music expressions
474
475 @cindex Notové osnovy, dočasné
476 @cindex Ossia
477 @cindex Dočasné notové osnovy
478
479 Notové osnovy (prostředí @q{Staff}) není bezpodmínečně potřeba
480 vytvořit hned na začátku -- mohou být uvedeny i kdykoli
481 později.  To je obzvláště užitečné při vytváření oddílů
482 @rglosnamed{ossia,Ossias}.  Zde následuje krátký příklad toho,
483 jak je možné vytvořit dodatečnou dočasnou notovou osnovu
484 jen pro dobu trvání tří not:
485
486 @lilypond[verbatim,quote,ragged-right]
487 \new Staff {
488   \relative g' {
489     r4 g8 g c4 c8 d |
490     e4 r8
491     <<
492       { f8 c c }
493       \new Staff {
494         f8 f c
495       }
496     >>
497     r4 |
498   }
499 }
500 @end lilypond
501
502 @noindent
503 Jak je vidět, velikost notového klíče je tatáž, jaká se vyskytuje
504 i při změně klíče -- o něco menší, než
505 jakou má klíč na začátku notové osnovy.   Toto je obvyklé u
506 notových klíčů, které jsou zapsány uvnitř notové osnovy.
507
508 @cindex Notová osnova, umístění
509 @cindex Umístění notové osnovy
510
511 Oddíl ossia může být zapsán i mimo hlavní notovou
512 osnovu:
513
514 @lilypond[verbatim,quote,ragged-right]
515 \new Staff = "main" {
516   \relative g' {
517     r4 g8 g c4 c8 d |
518     e4 r8
519     <<
520       { f8 c c }
521       \new Staff \with {
522         alignAboveContext = #"main"
523       } { f8 f c }
524     >>
525     r4 |
526   }
527 }
528 @end lilypond
529
530 Tento příklad používá příkaz @code{\with}, který bude později
531 vysvětlen ještě přesněji.  Jím lze měnit výchozí chování jedné
532 notové osnovy: Zde se jednoduše říká, že nová notová osnova
533 se má umístit nad již jsoucí osnovu s názvem
534 @qq{main} namísto výchozího umístění, které je
535 pod ní.
536
537
538 @seealso
539 Ossia jsou často tisknuta bez notového klíče a bez taktového označení,
540 většinou také o něco menší, než jiné osnovy.  Toto je přirozeně možné
541 i v LilyPondu, vyžaduje to ale příkazy, jež dosud ještě nebyly
542 představeny.  Podívejte se na @ref{Velikost předmětů,,velikosti předmětů}
543 a @ruser{Osnovy ossia}.
544
545
546 @node O ne-naskládatelnosti závorek a ligatur
547 @subsection O ne-naskládatelnosti závorek a ligatur
548 @translationof On the un-nestedness of brackets and ties
549
550 @cindex Závorky, naskládání
551 @cindex Naskládání závorek
552 @cindex Typy závorek
553
554 Již jste při psaní vstupního souboru pro LilyPond poznali
555 četné různé druhy závorek a staveb na způsob závorek.  Tyto
556 se řídí různými pravidly, která mohou zpočátku působit
557 matoucím dojmem.  Předtím než budou představena přesná pravidla,
558 pojďme si tyto různé druhy závorek a staveb na způsob závorek
559 krátce projít znovu:
560
561 @c attempt to force this onto a new page
562 @need 50
563 @multitable @columnfractions .3 .7
564 @headitem Druh závorek
565   @tab Funkce
566 @item @code{@{ .. @}}
567   @tab Uzavírá postupnou část hudby
568 @item @code{< .. >}
569   @tab Uzavírá noty jednoho akordu
570 @item @code{<< .. >>}
571   @tab Uzavírá souběžné hudební výrazy
572 @item @code{( .. )}
573   @tab Označuje začátek a konec obloučku
574 @item @code{\( .. \)}
575   @tab Označuje začátek a konec frázovacího obloučku
576 @item @code{[ .. ]}
577   @tab Označuje začátek a konec ručně vytvořeného trámce
578 @end multitable
579
580 Dodatečně by snad měly být ještě dále zmíněny některé další
581 konstrukce, které noty ať už jakkoli spojují:
582 ligatury (označované vlnovkou @code{~}),
583 trioly (psané jako @code{\times x/y @{..@}}) und
584 ozdoby (poznamenávané jako @code{\grace@{..@}}).
585
586 Mimo LilyPond vyžaduje běžné používání závorek,
587 aby byly jejich odpovídající druhy správně seskládány,
588 jako je tomu například tady @code{<< [ @{ ( .. ) @} ] >>}.  Uzavírající
589 závorky přitom přicházejí v obráceném pořadí k
590 otevírajícím závorkám.  Toto je také v LilyPondu
591 @strong{nutnost} pro ony tři druhy závorek, jež byly v hořejší
592 tabulce popsány slovem @q{uzavírá} -- musí být správně
593 vkládány.
594 Nicméně zbývající stavby na způsob závorek (v tabulce popsány
595 slovem @q{označuje}), ligatury a trioly
596 bezpodmínečně s jinými závorkami nebo stavbami na způsob závorek
597 seskládány být čistě @strong{nemusí}.  Vlastně také ani nejsou nějakými
598 závorkami v tom smyslu, že by něco svíraly, nýbrž mnohem více
599 jsou ukazateli, na kterém místě určitý hudební předmět
600 začíná nebo končí.
601
602 Tak tedy může například takový frázovací oblouček začínat před
603 ručně vloženým trámcem, a přece končit již před jeho koncem.
604 Toto sice může z hudebního pohledu dávat málo smyslu, ale v LilyPondu
605 je možné i toto:
606
607 @lilypond[quote,verbatim,ragged-right,relative=2]
608 { g8\( a b[ c b\) a] g4 }
609 @end lilypond
610
611 Ve všeobecnosti se dá říct, že mohou být různé druhy závorek,
612 staveb na způsob závorek, legatových obloučků,
613 triol a ozdob libovolně dávány dohromady.
614 Následující příklad ukazuje trámec, který sahá až k triole
615 (řádek 1), ligaturu, která rovněž dosahuje k triole
616 (řádek 2), trámec a ligaturu sahající k triole,
617 oblouček, který běží přes dvě trioly, jakož i frázovací
618 oblouček, který začíná u trioly (řádky 3 a 4).
619
620 @lilypond[quote,verbatim,ragged-right]
621 {
622 r16[ g \times 2/3 { r16 e'8] }
623 g16( a \times 2/3 { b16 d) e' }
624 g8[( a \times 2/3 { b8 d') e'~] } |
625 \times 4/5 { e'32\( a b d' e' } a'4.\)
626 }
627 @end lilypond
628
629
630 @node Hlasy obsahují noty
631 @section Hlasy obsahují noty
632 @translationof Voices contain music
633
634 Zpěváci potřebují ke zpívání hlasy, a LilyPond je potřebuje také:
635 ve skutečnosti jsou všechny noty pro všechny nástroje zapsány v
636 v notovém zápisu uvnitř hlasů.  Hlas je v LilyPondu
637 tím nejzákladnějším pojmem.
638
639 @menu
640 * Slyším hlasy::
641 * Přímo vyjádřené začátky hlasů::
642 * Hlasy a zpěvy::
643 @end menu
644
645 @node Slyším hlasy
646 @subsection Slyším hlasy
647 @translationof I'm hearing Voices
648
649 @cindex Vícehlasost
650 @cindex Úrovně
651 @cindex Vícehlasy
652 @cindex Hlasy, více
653 @cindex Voice context
654 @cindex context, Voice
655 @cindex Prostředí hlasu
656 @cindex Prostředí, hlas
657 @cindex Současné noty
658 @cindex Hlasy proti akordům
659 @cindex Akordy proti hlasům
660 @cindex Noty současně
661
662 Nejnižší, nejzákladnější a nejvnitřnější úrovně v LilyPondovském notovém
663 zápisu jsou nazvány @qq{Voice context} (prostředí hlasu) nebo také jen @qq{Voice}
664 (hlas).  Hlasy jsou v jiných notačních programech někdy označovány
665 jako @qq{layer} (úroveň).
666
667 Skutečně je úroveň hlasu tou jedinou, která opravdu může obsahovat
668 noty.  Pokud není otevřeně vytvořeno žádné prostředí hlasu,
669 je jedno vytvořeno automaticky, jak to bylo ukázáno na začátku
670 této kapitoly.  Některé nástroje, jako je tomu například u hoboje, mohou
671 zároveň zahrát jen jednu notu.  Noty pro takové nástroje jsou jednohlasé
672 a potřebují jen jeden hlas.  Nástroje, které současně dokáží zahrát
673 více not, jako klavír, naproti tomu často potřebují více
674 hlasů, aby mohly popsat různé současně zaznívající noty
675 s často rozdílnými rytmy.
676
677 Jeden hlas přirozeně může v jednom akordu obsahovat více not
678 -- takže kdy přesně je potřeba více hlasů? Podívejme se nejprve na
679 tento příklad se čtyřmi akordy:
680
681 @lilypond[quote,verbatim,ragged-right,relative=1]
682 \key g \major
683 <d g>4 <d fis> <d a'> <d g>
684 @end lilypond
685
686 To lze vyjádřit tak, že se pro ukázání akordů použijí jednoduché špičaté
687 závorky @code{< ... >}.  A pro to je potřeba jen jednoho
688 hlasu.  Ale předpokládejme, že by Fis bylo vlastně osminovou
689 notou, kterou následuje osminová nota G (jako průchodný tón
690 k A)? Zde máme dvě noty, které začínají ve stejnou dobu,
691 ale mají rozdílné doby trvání: čtvrťová nota D a osminová nota
692 Fis.  Jak by je šlo zapsat? Jako akord je napsat nejde,
693 protože v jednom akordu musejí mít všechny noty stejnou
694 délku.  Ani nemohou být zapsány jako po sobě jdoucí noty,
695 neboť začínají v ten samý čas.  V takovém případě tedy potřebujeme dva
696 hlasy.
697
698 Jak se to ale vyjádří v LilyPondovské skladbě?
699
700 @funindex << \\ >>
701 @funindex \\
702
703 Nejjednodušším způsobem, jak provést zápis částí s více než jedním hlasem
704 na osnovu, je hlasy zapsat za sebou (pokaždé se závorkami
705 @code{@{ ... @}}), a pak je souběžně spojit špičatými závorkami
706 (@code{<<...>>}).  Obě části ještě dodatečně musejí být jedna od druhé
707 odděleny dvěma zpětnými lomítky (@code{\\}),
708 aby byly rozpoznány jako dva různé hlasy.  Bez těchto oddělovačů by
709 byly zapsány jako jeden hlas.  Tato technika je obzvláště vhodná, když
710 se jedná o noty, které jsou jako hudba především jednohlasé,
711 v nichž se ale příležitostně sem tam vyskytují místa, která jsou
712 vícehlasá.
713
714 Takto to vypadá, když jsou akordy rozděleny do dvou hlasů
715 a k průchodnému tónu je ještě přidán legatový oblouček:
716
717 @lilypond[quote,verbatim,ragged-right,relative=2]
718 \key g \major
719 %    Voice "1"               Voice "2"
720 << { g4 fis8( g) a4 g } \\ { d4 d d d }  >>
721 @end lilypond
722
723 Všimněte si, že nožičky druhého hlasu nyní ukazují dolů.
724
725 Tady je jiný jednoduchý příklad:
726
727 @lilypond[quote,verbatim,ragged-right,relative=2]
728 \key d \minor
729 %    Voice "1"             Voice "2"
730 << { r4 g g4. a8 }    \\ { d,2 d4 g }       >>
731 << { bes4 bes c bes } \\ { g4 g g8( a) g4 } >>
732 << { a2. r4 }         \\ { fis2. s4 }       >>
733 @end lilypond
734
735 Není nutné používat pro každý takt vlastní stavbu
736 @code{<< \\ >>}.  U hudby s jen málo notami na takt to může
737 zdrojový soubor udělat čitelnějším, ale když se v jednom taktu vyskytuje
738 mnoho not, může být lepší napsat každý hlas odděleně,
739 jako zde:
740
741 @lilypond[quote,verbatim,ragged-right,relative=2]
742 \key d \minor
743 << {
744   % Voice "1"
745   r4 g g4. a8 |
746   bes4 bes c bes |
747   a2. r4 |
748 } \\ {
749   % Voice "2"
750   d,2 d4 g |
751   g4 g g8( a) g4 |
752   fis2. s4 |
753 } >>
754 @end lilypond
755
756 Tento příklad má jen dva hlasy, ale stejné stavby lze použít,
757 když máme tři nebo více hlasů, tak, že přidáme více oddělovačů,
758 zpětných lomítek.
759
760 Hlasová prostředí nesou názvy @code{"1"}, @code{"2"} atd. V každém
761 z těchto prostředí je nastaven svislý směr nožiček, legatových obloučků,
762 ligatur, značek pro dynamiku atd. tak, jak se patří.
763
764 @lilypond[quote,verbatim]
765 \new Staff \relative c' {
766   % Main voice
767   c16 d e f
768   %    Voice "1"     Voice "2"                Voice "3"
769   << { g4 f e } \\ { r8 e4 d c8~ } >> |
770   << { d2 e }   \\ { c8 b16 a b8 g~ g2 } \\ { s4 b c2 } >> |
771 }
772 @end lilypond
773
774 Tyto hlasy jsou všechny odděleny od hlavního hlasu, který obsahuje noty
775 mimo stavbu @code{<< .. >>}.  Pojmenujme ji
776 @emph{souběžná stavba}.  Ligatury a legatové obloučky
777 mohou dohromady spojovat pouze noty uvnitř těchže hlasů a nemohou tedy
778 přesahovat do souběžné stavby a ze souběžné stavby.  Obráceně platí,
779 že současné hlasy z vlastní souběžné stavby ve stejné notové osnově
780 jsou týmiž hlasy.  Na všechny souběžné stavby se vztahují i jiné
781 s prostředím hlasu spojené vlastnosti.  Zde je stejný příklad,
782 ale s různými barvami a hlavičkami not pro každý hlas.
783 Všimněte si, že změny v jednom hlasu se nevztahují na jiné hlasy,
784 ale nadále trvají v tomtéž hlase a jsou v něm přítomny ještě později.
785 Všimněte si také, že spojené noty mohou být rozděleny přes stejný hlas
786 do dvou staveb, jak je to ukázáno zde na modrém trojúhelníkovém hlase.
787
788 @lilypond[quote,verbatim]
789 \new Staff \relative c' {
790   % Main voice
791   c16 d e f
792   <<   % Bar 1
793     {
794       \voiceOneStyle
795       g4 f e
796     }
797   \\
798     {
799       \voiceTwoStyle
800       r8 e4 d c8~
801     }
802   >> |
803   <<  % Bar 2
804      % Voice 1 continues
805     { d2 e }
806   \\
807      % Voice 2 continues
808     { c8 b16 a b8 g~ g2 }
809   \\
810     {
811       \voiceThreeStyle
812       s4 b c2
813     }
814   >> |
815 }
816 @end lilypond
817
818 @funindex \voiceOneStyle
819 @funindex \voiceTwoStyle
820 @funindex \voiceThreeStyle
821 @funindex \voiceFourStyle
822 @funindex \voiceNeutralStyle
823
824 Příkazy @code{\voiceXXXStyle} jsou tu především k tomu, aby se používaly
825 v vzdělávacích dokumentech, jako je tento.
826 Mění barvu notové hlavičky, nožičky a trámce, a dodatečně
827 podobu notové hlavičky, takže se hlasy dají snadno od sebe
828 rozlišit.  První hlas je nastaven jako červený kosočtverec,
829 druhý hlas je nastaven jako modrý trojúhelník, třetí hlas je
830 nastaven jako zelený kruh s křížkem a čtvrtý hlas (který tu použit
831 není) má tmavěčervený kříž.  @code{\voiceNeutralStyle} (zde také
832 není použit) změny vrací zpět na výchozí styl.  Později bude
833 ukázáno, jak mohou být příkazy, jako je tento, vytvářeny samotným
834 uživatelem.  Podívejte se také na @ref{Viditelnost a barva předmětů} a
835 @ref{Použití proměnných pro ladění}.
836
837 @cindex Vícehlasost a relativní notační režim
838 @cindex Relativní notační režim a vícehlasost
839
840 Vícehlasost nemění vztahy not uvnitř bloku
841 @code{\relative}.  Každá nota je nadále počítána ve vztahu k
842 předchozí notě, nebo poměrně k první notě předchozího
843 akordu.  Tak například zde je spočítáno
844
845 @example
846 \relative c' @{ NoteA << < NoteB NoteC > \\ NoteD >> NoteE @}
847 @end example
848
849 @noindent
850 @code{NoteB} se zřetelem na @code{NoteA}                      @*
851 @code{NoteC} se zřetelem na @code{NoteB}, ne @code{noteA};   @*
852 @code{NoteD} se zřetelem na @code{NoteB}, ne @code{NoteA} nebo
853 @code{NoteC};                                                 @*
854 @code{NoteE} se zřetelem na @code{NoteD}, ne @code{NoteA}.
855
856 Jinou možností je umístit příkaz @code{\relative} na začátek
857 před každý hlas.  To se nabízí, když jsou hlasy od sebe ve větší
858 vzdálenosti. Může to být, když jsou noty v hlasech
859 široce odděleny, přehlednější.
860
861 @example
862 \relative c' @{ NoteA ... @}
863 <<
864   \relative c'' @{ < NoteB NoteC > ... @}
865 \\
866   \relative g' @{ NoteD ... @}
867 >>
868 \relative c' @{ NoteE ... @}
869 @end example
870
871 Pojďme konečně rozebrat hlasy ve složitějším kuse hudby.
872 Zde jsou noty prvních dvou taktů Chopinových
873 @notation{Deux Nocturnes}, Op. 32.  Tento příklad bude později použit
874 v této a další kapitole, aby na něm byly názorně ukázány různé techniky,
875 jak vytvářet noty.  Proto si na tomto místě v kódu nevšímejte čehokoli,
876 co by vám přišlo záhadné, a soustřeďte se jen na noty
877 a hlasy.  Složitější věci budou vysvětleny v pozdějších částech.
878
879 @c The following should appear as music without code
880 @lilypond[quote,ragged-right]
881 \new Staff \relative c'' {
882   \key aes \major
883   <<  % Voice one
884     { c2 aes4. bes8 }
885   \\  % Voice two
886     { aes2 f4 fes }
887   \\  % No voice three
888   \\  % Voice four
889     {
890       % Ignore these for now - they are explained in Ch 4
891       \once \override NoteColumn #'force-hshift = #0
892       <ees c>2
893       \once \override NoteColumn #'force-hshift = #0.5
894       des2
895     }
896   >> |
897   <c ees aes c>1 |
898 }
899 @end lilypond
900
901 Směr nožičky se často používá k tomu, aby se ukázala souvislost
902 dvou souběžných melodií.  Zde ukazují nožičky všech horních
903 not nahoru a nožičky všech dolních not dolů.
904 To je první známkou toho, že je potřeba více než jeden
905 hlas.
906
907 Ale skutečná nezbytnost více hlasů nadejde teprve tehdy,
908 když současně zaznívají různé noty, které začínají ve stejnou dobu,
909 mají rozdílné doby trvání.  Podívejte se na noty, jež začínají na
910 třetí době prvního taktu.  As je tečkovaná čtvrťová nota,
911 F je čtvrťová nota a Des je půlová nota.  Nemohou být
912 zapsány jako akord, protože všechny noty jednoho akordu
913 mají stejnou dobu trvání.  Nemohou být ale zapsány ani jako jdoucí po sobě,
914 protože musí začínat v tutéž dobu.  Tato část taktu
915 potřebuje tři hlasy, a běžně se zapisují tři hlasy
916 pro celý takt, jak je to vidět na příkladu níže;
917 kde jsou použity různé hlavičky not a barvy pro různé
918 hlasy.  Ještě jednou: Zdrojový kód pro tento příklad bude později
919 vysvětlen znovu, proto si nevšímejte ničeho, čemu zde nemůžete
920 porozumět.
921
922 @c The following should appear as music without code
923 @c The three voice styles should be defined in -init
924 @lilypond[quote,ragged-right]
925 \new Staff \relative c'' {
926   \key aes \major
927   <<
928     {  % Voice one
929       \voiceOneStyle
930       c2 aes4. bes8
931     }
932   \\  % Voice two
933     { \voiceTwoStyle
934       aes2 f4 fes
935     }
936   \\  % No Voice three (we want stems down)
937   \\  % Voice four
938     { \voiceThreeStyle
939       % Ignore these for now - they are explained in Ch 4
940       \once \override NoteColumn #'force-hshift = #0
941       <ees c>2
942       \once \override NoteColumn #'force-hshift = #0.5
943       des2
944     }
945   >>
946   <c ees aes c>1
947 }
948 @end lilypond
949
950 Pokusme se tedy tyto noty zapsat od začátku.  Jak je zde
951 vidět, je tu obsaženo několik potíží.  Začneme, jak jsme
952 se to naučili, pomocí konstrukcí @code{<< \\  >>},
953 kterou zapíšeme tři hlasy prvního taktu:
954
955 @lilypond[quote,verbatim,ragged-right]
956 \new Staff \relative c'' {
957   \key aes \major
958   <<
959     { c2 aes4. bes8 } \\ { aes2 f4 fes } \\ { <ees c>2 des }
960   >> |
961   <c ees aes c>1 |
962 }
963 @end lilypond
964
965 @cindex Nožička dolů
966 @cindex Nožička nahoru
967 @cindex Notová nožička, Směr
968 @cindex Směr notové nožičky
969 @cindex Hlasy a směr notové nožičky
970 @cindex Směr notové nožičky ve hlasech
971
972 Směr notové nožičky je přiřazen automaticky; hlasy s lichým
973 číslem nesou nožičky nahoru, sudé mají nožičky dolů.  Nožičky
974 pro hlasy 1 a 2 jsou správně, ale nožičky třetího hlasu
975 by v tomto příkladu měly vlastně ukazovat dolů.  Můžeme to opravit
976 jednoduše tak, že vypustíme třetí hlas, přeskočíme jej a noty
977 umístíme do čtvrtého hlasu.  To se udělá jednoduše přidáním
978 páru @code{\\}.
979
980 @lilypond[quote,verbatim,ragged-right]
981 \new Staff \relative c'' {
982   \key aes \major
983   <<  % Voice one
984     { c2 aes4. bes8 }
985   \\  % Voice two
986     { aes2 f4 fes }
987   \\  % Omit Voice three
988   \\  % Voice four
989     { <ees c>2 des }
990   >> |
991   <c ees aes c>1 |
992 }
993 @end lilypond
994
995 @noindent
996 Vidíme, že se tím mění směr nožiček, ale ukazuje se jiný
997 problém, na který se někdy při více hlasech narazí:
998 Nožičky not jednoho hlasu se mohou střetávat s nožičkami jiného hlasu.
999 LilyPond dovoluje notám různých hlasů, aby se nacházely ve
1000 stejné svislé poloze, za předpokladu že nožičky ukazují v opačných
1001 směrech, a třetí a čtvrtý hlas pak umísťuje tak, aby pokud možno
1002 k vzájemnému střetu nedocházelo.  Obvykle to pracuje
1003 dobře, ale v tomto případě jsou noty nejnižšího hlasu
1004 zřetelně nedobře umístěny.  LilyPond nabízí několik různých způsobů,
1005 jak vodorovnou polohu not přizpůsobit.  Nejsme však ještě tak daleko,
1006 abychom tyto funkce mohli použít. Proto
1007 tento problém odložíme na později; viz vlastnost @code{force-hshift} v
1008 @ref{Oprava překrývajících se not}.
1009
1010
1011 @seealso
1012 Notace: @ruser{Více hlasů}.
1013
1014
1015 @node Přímo vyjádřené začátky hlasů
1016 @subsection Přímo vyjádřené začátky hlasů
1017 @translationof Explicitly instantiating voices
1018
1019 @funindex \voiceOne
1020 @funindex voiceOne
1021 @funindex \voiceTwo
1022 @funindex voiceTwo
1023 @funindex \voiceThree
1024 @funindex voiceThree
1025 @funindex \voiceFour
1026 @funindex voiceFour
1027 @funindex \oneVoice
1028 @funindex oneVoice
1029 @funindex \new Voice
1030 @cindex Voice context, erstellen von
1031 @cindex Stimmenkontexte, erstellen von
1032
1033 Voice-Kontexte können auch manuell innerhalb
1034 eines @code{<< >>}-Abschnittes initiiert werden.  Mit den Befehlen
1035 @code{\voiceOne} bis hin zu @code{\voiceFour} kann jeder Stimme
1036 entsprechendes Verhalten von vertikaler Verschiebung und Richtung
1037 von Hälsen und anderen Objekten hinzugefügt werden.  In längeren
1038 Partituren können die Stimmen damit besser auseinander gehalten
1039 werden.
1040
1041 Die @code{<< \\ >>}-Konstruktion, die wir im vorigen Abschnitt
1042 verwendet haben:
1043
1044 @example
1045 \new Staff @{
1046   \relative c' @{
1047     << @{ e4 f g a @} \\ @{ c,4 d e f @} >>
1048   @}
1049 @}
1050 @end example
1051
1052 @noindent
1053 ist identisch mit
1054
1055 @example
1056 \new Staff <<
1057   \new Voice = "1" @{ \voiceOne \relative c' @{ e4 f g a @} @}
1058   \new Voice = "2" @{ \voiceTwo \relative c' @{ c4 d e f @} @}
1059 >>
1060 @end example
1061
1062 Beide würden folgendes Notenbild erzeugen:
1063
1064 @c The following example should not display the code
1065 @lilypond[ragged-right,quote]
1066 \new Staff <<
1067   \new Voice = "1" { \voiceOne \relative c' { e4 f g a } }
1068   \new Voice = "2" { \voiceTwo \relative c' { c4 d e f } }
1069 >>
1070 @end lilypond
1071
1072 @cindex Stimmen, mehrere zu einer zusammenführen
1073 @cindex eine Stimme wiederherstellen
1074
1075 Der @code{\voiceXXX}-Befehl setzt die Richtung von Hälsen,
1076 Bögen, Artikulationszeichen, Text, Punktierungen und Fingersätzen.
1077 @code{\voiceOne} und @code{\voiceThree} lassen diese Objekte
1078 nach oben zeigen, @code{\voiceTwo} und @code{\voiceFour}
1079 dagegen lassen sie abwärts zeigen. Diese Befehle erzeugen eine
1080 horizontale Verschiebung, wenn es erforderlich ist, um Zusammenstöße
1081 zu vermeiden.  Der Befehl
1082 @code{\oneVoice} stellt wieder auf das normale Verhalten um.
1083
1084 Schauen wir uns in einigen einfachen Beispielen an, was genau
1085 die Befehle @code{\oneVoice}, @code{\voiceOne} und @code{voiceTwo}
1086 mit Text, Bögen und Dynamikbezeichnung anstellen:
1087
1088 @lilypond[quote,ragged-right,verbatim]
1089 \relative c' {
1090   % Default behavior or behavior after \oneVoice
1091   c4 d8~ d e4( f | g4 a) b-> c |
1092 }
1093 @end lilypond
1094
1095 @lilypond[quote,ragged-right,verbatim]
1096 \relative c' {
1097   \voiceOne
1098   c4 d8~ d e4( f | g4 a) b-> c |
1099   \oneVoice
1100   c,4 d8~ d e4( f | g4 a) b-> c |
1101 }
1102 @end lilypond
1103
1104 @lilypond[quote,ragged-right,verbatim]
1105 \relative c' {
1106   \voiceTwo
1107   c4 d8~ d e4( f | g4 a) b-> c |
1108   \oneVoice
1109   c,4 d8~ d e4( f | g4 a) b-> c |
1110 }
1111 @end lilypond
1112
1113 Schauen wir und nun drei unterschiedliche Arten an, den gleichen
1114 Abschnitt polyphoner Musik zu notieren, jede Art mit ihren
1115 Vorteilen in unterschiedlichen Situationen.  Wir benutzen dabei
1116 das Beispiel vom vorherigen Abschnitt.
1117
1118 Ein Ausdruck, der direkt innerhalb einer @code{<< >>}-Umgebung
1119 auftritt, gehört der Hauptstimme an.  Das ist nützlich, wenn zusätzliche
1120 Stimme auftreten, während die Hauptstimme sich fortsetzt.  Hier also
1121 eine bessere Version des Beispiels aus dem vorigen Abschnitt.  Die
1122 farbigen Kreuz-Notenköpfe zeigen, dass die Hauptstimme sich jetzt in
1123 einem einzigen Stimmen (@code{voice})-Kontext befindet.  Somit kann ein
1124 Phrasierungsbogen ober sie gesetzt werden.
1125
1126 @lilypond[quote,ragged-right,verbatim]
1127 \new Staff \relative c' {
1128   \voiceOneStyle
1129   % The following notes are monophonic
1130   c16^( d e f
1131   % Start simultaneous section of three voices
1132   <<
1133     % Continue the main voice in parallel
1134     { g4 f e | d2 e) | }
1135     % Initiate second voice
1136     \new Voice {
1137       % Set stems, etc., down
1138       \voiceTwo
1139       r8 e4 d c8~ | c8 b16 a b8 g~ g2 |
1140     }
1141     % Initiate third voice
1142     \new Voice {
1143       % Set stems, etc, up
1144       \voiceThree
1145       s2. | s4 b4 c2 |
1146     }
1147   >>
1148 }
1149 @end lilypond
1150
1151 @cindex Verschachteln von musikalischen Ausdrücken
1152 @cindex Verschachteln von gleichzeitigen Ausdrücken
1153 @cindex Ausdrücke, Verschachteln von
1154 @cindex Stimmen, temporär
1155 @cindex Stimmen, Verschachteln von
1156 @cindex Verschachteln von Stimmen
1157 @cindex temporäre Stimmen
1158
1159 Tiefer verschachtelte polyphone Konstrukte sind möglich, und
1160 wenn eine Stimme nur kurz auftaucht, kann das der bessere Weg
1161 sein, Noten zu setzen:
1162
1163 @lilypond[quote,ragged-right,verbatim]
1164 \new Staff \relative c' {
1165   c16^( d e f
1166   <<
1167     { g4 f e | d2 e2) | }
1168     \new Voice {
1169       \voiceTwo
1170       r8 e4 d c8~
1171       <<
1172         { c8 b16 a b8 g~ g2 | }
1173         \new Voice {
1174           \voiceThree
1175           s4 b4 c2 |
1176         }
1177       >>
1178     }
1179   >>
1180 }
1181 @end lilypond
1182
1183 @cindex Platzhalternoten
1184 @cindex unsichtbare Noten
1185 @cindex Noten verstecken
1186
1187 Diese Methode, neue Stimmen kurzzeitig zu verschachteln, bietet sich
1188 an, wenn nur sehr kleine Abschnitte polyphonisch gesetzt sind.  Wenn
1189 aber die ganze Partitur polyphon ist, ist es meistens klarer, direkt
1190 unterschiedliche Stimmen über die gesamte Partitur hinweg einzusetzen.
1191 Hierbei kann man mit unsichtbaren Noten dann die Stellen überspringen,
1192 an denen die Stimme nicht auftaucht, wie etwa hier:
1193
1194 @lilypond[quote,ragged-right,verbatim]
1195 \new Staff \relative c' <<
1196   % Initiate first voice
1197   \new Voice {
1198     \voiceOne
1199     c16^( d e f g4 f e | d2 e) |
1200   }
1201   % Initiate second voice
1202   \new Voice {
1203     % Set stems, etc, down
1204     \voiceTwo
1205     s4 r8 e4 d c8~ | c8 b16 a b8 g~ g2 |
1206   }
1207   % Initiate third voice
1208   \new Voice {
1209     % Set stems, etc, up
1210     \voiceThree
1211     s1 | s4 b c2 |
1212   }
1213 >>
1214 @end lilypond
1215
1216 @subsubheading Notenkolumnen
1217
1218 @cindex Notenkolumne
1219 @cindex Notenkollision
1220 @cindex Zusammenstöße von Noten
1221 @cindex Kollisionen von Noten
1222 @cindex Vertikale Position
1223 @cindex shift-Befehle
1224 @cindex Verschieben von Noten
1225 @funindex \shiftOff
1226 @funindex \shiftOn
1227 @funindex \shiftOnn
1228 @funindex \shiftOnnn
1229 @funindex shiftOff
1230 @funindex shiftOn
1231 @funindex shiftOnn
1232 @funindex shiftOnnn
1233
1234 Dicht notierte Noten in einem Akkord, oder Noten auf der gleichen
1235 Taktzeit aber in unterschiedlichen Stimmen, werden in zwei, manchmal
1236 auch mehreren Kolumnen gesetzt, um die Noten am Überschneiden zu
1237 hindern.  Wir bezeichnen sie als Notenkolumnen.  Jede Stimme hat
1238 eine eigene Kolumne, und ein stimmenabhängiger Verschiebunsbefehl (engl.
1239 shift) wird eingesetzt, wenn eine Kollision auftreten könnte.
1240 Das zeigt das Beispiel oben.  Im zweiten Takt wird das C der zweiten
1241 Stimme nach rechts verschoben, relativ gesehen zum D der ersten Stimme,
1242 und im letzten Akkord wird das C der dritten Stimme auch nach
1243 rechts verschoben im Verhältnis zu den anderen Stimmen.
1244
1245 Die Befehle @code{\shiftOn}, @code{\shiftOnn}, @code{\shiftOnnn} und
1246 @code{\shiftOff} bestimmen den Grad, zu dem Noten und Akkorde
1247 verschoben werden sollen, wenn sich sonst eine Kollision nicht
1248 vermeiden ließe.  Die Standardeinstellung ist, dass die äußeren
1249 Stimmen (also normalerweise Stimme 1 und 2) @code{\shiftOff}
1250 eingestellt haben, während für die inneren Stimmen (3 und 4)
1251 @code{\shiftOn} eingeschaltet ist.  Wenn eine Verschiebung
1252 auftritt, werden Stimmen 1 und 3 nach rechts und Stimmen 2 und 4
1253 nach links verschoben.
1254
1255 @code{\shiftOnn} und @code{\shiftOnnn} definieren weitere
1256 Verschiebungsebenen, die man kurzzeitig anwählen kann, um
1257 Zusammenstöße in komplexen Situationen aufzulösen, siehe auch
1258 @ref{Příklady ze života}.
1259
1260 Eine Notenkolumne kann nur eine Note (oder einen Akkord) von
1261 einer Stimme mit Hälsen nach oben und eine Note (oder einen
1262 Akkord) von einer Stimme mit Hälsen nach unten tragen.  Wenn
1263 Noten von zwei Stimmen mit den Hälsen in die gleiche Richtung
1264 an der selben Stelle auftreten und in beiden Stimmen ist
1265 keine Verschiebung oder die gleiche Verschiebungsebene
1266 definiert, wird die Fehlermeldung
1267 @qq{zu viele kollidierende Notenspalten werden ignoriert}
1268 ausgegeben.
1269
1270
1271 @seealso
1272 Notationsreferenz: @ruser{Mehrere Stimmen}.
1273
1274
1275 @node Hlasy a zpěvy
1276 @subsection Hlasy a zpěvy
1277 @translationof Voices and vocals
1278
1279 Die Notation von Vokalmusik ihre eigene Schwierigkeit, nämlich
1280 die Kombination von zwei Ausdrücken: den Noten und dem Text.
1281 Achtung: Der Gesangstext wird auf Englisch @qq{lyrics} genannt.
1282
1283
1284 @funindex \new Lyrics
1285 @funindex \lyricsto
1286 @funindex lyricsto
1287 @funindex Lyrics
1288 @cindex Lyrics context, erstellen
1289 @cindex Gesangtext, Verbindung mit Noten
1290
1291 Wir haben schon den @code{\addlyrics@{@}}-Befehl betrachtet,
1292 mit dem einfache Partituren gut erstellt werden können.
1293 Diese Methode ist jedoch recht eingeschränkt.  Wenn der Notensatz
1294 komplexer wird, muss der Gesangstext mit einem neuen
1295 @code{Lyrics}-Kontext begonnen werden (mit dem Befehl
1296 @code{\new Lyrics}) und durch den Befehl @code{\lyricsto@{@}}
1297 mit einer bestimmten Stimme verknüpft werden, indem die
1298 Bezeichnung der Stimme benutzt wird.
1299
1300 @lilypond[quote,verbatim]
1301 <<
1302   \new Voice = "one" {
1303     \relative c'' {
1304       \autoBeamOff
1305       \time 2/4
1306       c4 b8. a16 | g4. f8 | e4 d | c2 |
1307     }
1308   }
1309   \new Lyrics \lyricsto "one" {
1310     No more let | sins and | sor -- rows | grow. |
1311   }
1312 >>
1313 @end lilypond
1314
1315 Beachten Sie, dass der Notentext nur mit einem @code{Voice}-Kontext
1316 verknüpft werden kann, nicht mit einem @code{Staff}-Kontext.
1317 In diesem Fall also müssen Sie ein System (@code{Staff}) und
1318 eine Stimme (@code{Voice}) explizit erstellen, damit alles
1319 funktioniert.
1320
1321 @cindex Gesangstext und Balken
1322 @cindex Text und Balken
1323 @cindex Balken und Text
1324 @funindex \autoBeamOff
1325 @funindex autoBeamOff
1326
1327 Die automatischen Balken, die LilyPond in der Standardeinstellung
1328 setzt, eignen sich sehr gut für instrumentale Musik, aber nicht
1329 so gut für Musik mit Text, wo man entweder gar keine Balken
1330 benutzt oder sie einsetzt, um Melismen zu verdeutlichen.
1331 Im Beispiel oben wird deshalb der Befehl @code{\autoBeamOff}
1332 eingesetzt um die automatischen Balken (engl. beam) auszuschalten.
1333
1334 @funindex \new ChoirStaff
1335 @funindex \lyricmode
1336 @funindex ChoirStaff
1337 @funindex lyricmode
1338 @cindex Vokalpartitur, Aufbau
1339 @cindex Chorpartitur, Aufbau
1340
1341 Wir wollen das frühere Beispiel von @notation{Judas Maccabæus}
1342 benutzen, um diese flexiblere Technik für Gesangstexte
1343 zu illustrieren.  Das Beispiel wurde so umgeformt, dass jetzt
1344 Variablen eingesetzt werden, um den Text und die Noten
1345 von der Partiturstruktur zu trennen.  Es wurde zusätzlich
1346 eine Chorpartiturklammer hinzugefügt.  Der Gesangtext muss mit
1347 @code{\lyricmode} eingegeben werden, damit er als Text und
1348 nicht als Noten interpretiert werden kann.
1349
1350 @lilypond[quote,verbatim]
1351 global = { \key f \major \time 6/8 \partial 8 }
1352
1353 SopOneMusic = \relative c'' {
1354   c8 | c8([ bes)] a a([ g)] f | f'4. b, | c4.~ c4
1355 }
1356 SopOneLyrics = \lyricmode {
1357   Let | flee -- cy flocks the | hills a -- dorn, __
1358 }
1359 SopTwoMusic = \relative c' {
1360   r8 | r4. r4 c8 | a'8([ g)] f f([ e)] d | e8([ d)] c bes'
1361 }
1362 SopTwoLyrics = \lyricmode {
1363   Let | flee -- cy flocks the | hills a -- dorn,
1364 }
1365
1366 \score {
1367   \new ChoirStaff <<
1368     \new Staff <<
1369       \new Voice = "SopOne" {
1370         \global
1371         \SopOneMusic
1372       }
1373       \new Lyrics \lyricsto "SopOne" {
1374         \SopOneLyrics
1375       }
1376     >>
1377     \new Staff <<
1378       \new Voice = "SopTwo" {
1379         \global
1380         \SopTwoMusic
1381       }
1382       \new Lyrics \lyricsto "SopTwo" {
1383         \SopTwoLyrics
1384       }
1385     >>
1386   >>
1387 }
1388 @end lilypond
1389
1390 Dies ist die Grundstruktur für alle Chorpartituren.  Mehr
1391 Systeme können hinzugefügt werden, wenn sie gebraucht werden, mehr
1392 Stimmen können zu jedem System hinzugefügt werden, mehr
1393 Strophen können zum Text hinzugefügt werden, und schließlich
1394 können die Variablen schnell in eine eigene Datei verschoben
1395 werden, wenn sie zu lang werden sollten.
1396
1397 @cindex Choralnotation
1398 @cindex Hymnus-Notation
1399 @cindex SATB-Partitur
1400 @cindex mehrere Strophen
1401 @cindex Strophen, mehrere
1402 @cindex Choral mit mehreren Strophen
1403
1404 Hier ein Beispiel der ersten Zeile eines Chorals mit vier
1405 Strophen für gemischten Chor.  In diesem Fall ist der Text
1406 für alle vier Stimmen identisch.  Beachten Sie, wie die
1407 Variablen eingesetzt werden, um Inhalt (Noten und Text) und Form
1408 (die Partitur) voneinander zu trennen.  Eine Variable wurde
1409 eingesetzt, um die Elemente, die auf beiden Systemen auftauchen,
1410 aufzunehmen, nämlich Taktart und Tonart.  Solch eine
1411 Variable wird oft auch mit @qq{global} bezeichnet.
1412
1413 @lilypond[quote,verbatim]
1414 keyTime = { \key c \major \time 4/4 \partial 4 }
1415
1416 SopMusic   = \relative c' { c4 | e4. e8 g4  g    | a4   a   g  }
1417 AltoMusic  = \relative c' { c4 | c4. c8 e4  e    | f4   f   e  }
1418 TenorMusic = \relative c  { e4 | g4. g8 c4.   b8 | a8 b c d e4 }
1419 BassMusic  = \relative c  { c4 | c4. c8 c4  c    | f8 g a b c4 }
1420
1421 VerseOne =
1422   \lyricmode { E -- | ter -- nal fa -- ther, | strong to save, }
1423 VerseTwo   =
1424   \lyricmode { O | Christ, whose voice the | wa -- ters heard, }
1425 VerseThree =
1426   \lyricmode { O | Ho -- ly Spi -- rit, | who didst brood }
1427 VerseFour  =
1428   \lyricmode { O | Tri -- ni -- ty of | love and pow'r }
1429
1430 \score {
1431   \new ChoirStaff <<
1432     \new Staff <<
1433       \clef "treble"
1434       \new Voice = "Sop"  { \voiceOne \keyTime \SopMusic }
1435       \new Voice = "Alto" { \voiceTwo \AltoMusic }
1436       \new Lyrics \lyricsto "Sop" { \VerseOne   }
1437       \new Lyrics \lyricsto "Sop" { \VerseTwo   }
1438       \new Lyrics \lyricsto "Sop" { \VerseThree }
1439       \new Lyrics \lyricsto "Sop" { \VerseFour  }
1440     >>
1441     \new Staff <<
1442       \clef "bass"
1443       \new Voice = "Tenor" { \voiceOne \keyTime \TenorMusic }
1444       \new Voice = "Bass"  { \voiceTwo \BassMusic }
1445     >>
1446   >>
1447 }
1448 @end lilypond
1449
1450
1451 @seealso
1452 Notation Reference: @ruser{Notation von Gesang}.
1453
1454
1455 @node Prostředí a rytci
1456 @section Prostředí a rytci
1457 @translationof Contexts and engravers
1458
1459 Prostředí a rytci (@qq{Stempel}) sind in den vorherigen
1460 Abschnitten schon aufgetaucht; hier wollen wir uns ihnen
1461 nun etwas ausführlicher widmen, denn sie sind sehr
1462 wichtig, um Feineinstellungen in der LilyPond-Notenausgabe
1463 vornehmen zu können.
1464
1465 @menu
1466 * Vysvětlení prostředí::
1467 * Vytvoření prostředí::
1468 * Vysvětlení rytců::
1469 * Změna vlastností prostředí::
1470 * Přidání a odstranění rytců::
1471 @end menu
1472
1473 @node Vysvětlení prostředí
1474 @subsection Vysvětlení prostředí
1475 @translationof Contexts explained
1476
1477 @cindex Kontexte erklärt
1478
1479 Wenn Noten gesetzt werden, müssen viele Elemente zu der Notenausgabe
1480 hinzugefügt werden,
1481 die im Quellcode gar nicht explizit vorkommen.  Vergleichen Sie
1482 etwa den Quellcode und die Notenausgabe des folgenden Beispiels:
1483
1484 @lilypond[quote,verbatim,relative=2]
1485 cis4 cis2. | a4 a2. |
1486 @end lilypond
1487
1488 Der Quellcode ist sehr kurz und knapp, während in der
1489 Notenausgabe Taktlinien, Vorzeichen, ein Schlüssel und
1490 eine Taktart hinzugefügt wurden.  Während LilyPond
1491 den Eingabetext @emph{interpretiert}, wird die
1492 musikalische Information von rechts nach links gelesen,
1493 in etwa, wie man eine Partitur von links nach
1494 rechts liest.  Während das Programm den Code liest,
1495 merkt es sich, wo sich Taktgrenzen befinden und
1496 für welche Tonhöhen Versetzungszeichen gesetzt werden
1497 müssen.  Diese Information muss auf mehreren Ebenen
1498 gehandhabt werden, denn Versetzungszeichen etwa
1499 beziehen sich nur auf ein System, Taktlinien dagegen
1500 üblicherweise auf die gesamte Partitur.
1501
1502 Innerhalb von LilyPond sind diese Regeln und
1503 Informationshappen in @emph{Kontexten} (engl.
1504 contexts) gruppiert.  Der @code{Voice} (Stimmen)-Kontext
1505 wurde schon vorgestellt.  Daneben
1506 gibt es noch die @code{Staff} (Notensystem-) und
1507 @code{Score} (Partitur)-Kontexte.  Kontexte sind
1508 hierarchisch geschichtet um die hierarchische
1509 Struktur einer Partitur zu spiegeln.  Ein @code{Staff}-Kontext
1510 kann zum Beispiel viele @code{Voice}-Kontexte beinhalten,
1511 und ein @code{Score}-Kontext kann viele
1512 @code{Staff}-Kontexte beinhalten.
1513
1514 @quotation
1515 @sourceimage{context-example,5cm,,}
1516 @end quotation
1517
1518 Jeder Kontext hat die Aufgabe, bestimmte Notationsregeln
1519 zu erzwingen, bestimmte Notationsobjekte zu erstellen und
1520 verbundene Elemente zu ordnen.  Der @code{Voice}-Kontext
1521 zum Beispiel kann eine Vorzeichenregel einführen und der
1522 @code{Staff}-Kontext hält diese Regel dann aufrecht, um
1523 einzuordnen, ob ein Versetzungszeichen gesetzt werden
1524 muss oder nicht.
1525
1526 Ein anderes Beispiel: die Synchronisation der Taktlinien ist
1527 standardmäßig im @code{Score}-Kontext verankert.  Manchmal sollen
1528 die Systeme einer Partitur aber unterschiedliche Taktarten
1529 enthalten, etwa in einer polymetrischen Partitur mit
1530 4/4- und 3/4-Takt.  In diesem Fall müssen also die Standardeinstellungen
1531 der @code{Score}- und @code{Staff}-Kontexte verändert werden.
1532
1533 In einfachen Partituren werden die Kontexte implizit erstellt,
1534 und es kann sein, dass Sie sich dessen gar nicht bewusst sind.
1535 Für etwas größere Projekte, etwa mit vielen Systemen, müssen
1536 die Kontexte aber explizit erstellt werden, um sicher zu gehen,
1537 dass man auch wirklich die erwünschte Zahl an Systemen in der
1538 richtigen Reihenfolge erhält.  Wenn Stücke mit spezialisierter
1539 Notation gesetzt werden sollen, ist es üblich, die existierenden
1540 Kontexte zu verändern oder gar gänzlich neue zu definieren.
1541
1542 Zusätzlich zu den @code{Score,} @code{Staff} und
1543 @code{Voice}-Kontexten gibt es noch Kontexte, die zwischen
1544 der Partitur- und Systemebene liegen und Gruppen von Systemen
1545 kontrollieren.  Das sind beispielsweise der
1546 @code{PianoStaff} und @code{ChoirStaff}-Kontext.  Es gibt zusätzlich
1547 alternative Kontexte für Systeme und Stimmen sowie eigene Kontexte
1548 für Gesangstexte, Perkussion, Griffsymbole, Generalbass usw.
1549
1550 Die Bezeichnungen all dieser Kontexte werden von einem oder mehreren
1551 englischen
1552 Wörtern gebildet, dabei wird jedes Wort mit einem Großbuchstaben
1553 begonnen und direkt an das folgende ohne Bindestrich oder Unterstrich
1554 angeschlossen, etwa
1555 @code{GregorianTranscriptionStaff}.
1556
1557
1558 @seealso
1559 Notationreferenz: @ruser{Vysvětlení prostředí}.
1560
1561
1562 @node Vytvoření prostředí
1563 @subsection Vytvoření prostředí
1564 @translationof Creating contexts
1565
1566 @funindex \new
1567 @funindex new
1568 @cindex Neue Kontexte
1569 @cindex Erstellen von Kontexten
1570 @cindex Kontexte, Erstellen
1571
1572 In einer Eingabedatei enthält eine @code{Score}-Umgebung (einen
1573 Kontext), die mit
1574 dem Befehl @code{\score} eingeleitet wird, nur einen einzigen
1575 musikalischen Ausdruck und mit ihm verknüpft eine Ausgabedefinition
1576 (entweder eine @code{\layout}- oder eine @code{\midi}-Umgebung).
1577 Üblicherweise wird der @code{Score}-Kontext automatisch von
1578 LilyPond erstellt, wenn der musikalische Ausdruck interpretiert
1579 wird.
1580
1581 Wenn nur ein System vorhanden ist, kann man es ruhig
1582 LilyPond überlassen, auch die @code{Voice}- und @code{Staff}-Kontexte
1583 zu erstellen, aber für komplexere Partituren ist es notwendig,
1584 sie mit einem Befehl zu erstellen.  Der einfachste Befehl
1585 hierzu ist @code{\new}.  Er wird dem musikalischen Ausdruck
1586 vorangestellt, etwa so:
1587
1588 @example
1589 \new @var{Typ} @var{musikalischer Ausdruck}
1590 @end example
1591
1592 @noindent
1593 wobei @var{Typ} eine Kontextbezeichnung (wie etwa @code{Staff} oder
1594 @code{Voice}) ist.  Dieser Befehl erstellt einen neuen Kontext und
1595 beginnt, den @var{muskalischen Ausdruck} innerhalb dieses
1596 Kontexts auszuwerten.
1597
1598 @warning{Der @bs{}@code{new Score}-Befehl sollte nicht benutzt werden,
1599 weil der Partitur-(Score)-Kontext der obersten Ebene
1600 normalerweise automatisch erstellt wird, wenn der musikalische Ausdruck
1601 innerhalb der @code{\score}-Umgebung interpretiert wird.  Standard-Werte
1602 von Kontexteigenschaften, die für einen bestimmten @code{Score} gelten
1603 sollen, können innerhalb der @bs{}@code{layout}-Umgebung definiert werden.
1604 Siehe @ref{Změna vlastností prostředí,,změnu vlastností prostředí}.}
1605
1606 Wir haben schon viele explizite Beispiel gesehen, in denen
1607 neue @code{Staff}- und @code{Voice}-Kontexte erstellt wurden, aber
1608 um noch einmal ins Gedächtnis zu rufen, wie diese Befehle benutzt
1609 werden, hier ein kommentiertes Beispiel aus dem richtigen Leben:
1610
1611 @lilypond[quote,verbatim,ragged-right]
1612 \score {  % start of single compound music expression
1613   <<  % start of simultaneous staves section
1614     \time 2/4
1615     \new Staff {  % create RH staff
1616       \clef "treble"
1617       \key g \minor
1618       \new Voice {  % create voice for RH notes
1619         \relative c'' {  % start of RH notes
1620           d4 ees16 c8.
1621           d4 ees16 c8.
1622         }  % end of RH notes
1623       }  % end of RH voice
1624     }  % end of RH staff
1625     \new Staff <<  % create LH staff; needs two simultaneous voices
1626       \clef "bass"
1627       \key g \minor
1628       \new Voice {  % create LH voice one
1629         \voiceOne
1630         \relative g {  % start of LH voice one notes
1631           g8 <bes d> ees, <g c>
1632           g8 <bes d> ees, <g c>
1633         }  % end of LH voice one notes
1634       }  % end of LH voice one
1635       \new Voice {  % create LH voice two
1636         \voiceTwo
1637         \relative g {  % start of LH voice two notes
1638           g4 ees
1639           g4 ees
1640         }  % end of LH voice two notes
1641       }  % end of LH voice two
1642     >>  % end of LH staff
1643   >>  % end of simultaneous staves section
1644 }  % end of single compound music expression
1645 @end lilypond
1646
1647 (Beachten Sie, dass wir hier alle Zeilen, die eine neue
1648 Umgebung entweder mit einer geschweiften Klammer (@code{@{})
1649 oder doppelten spitzen Klammern (@code{<<}) öffnen, mit
1650 jeweils zwei Leerzeichen, und die entsprechenden
1651 schließenden Klammern mit der gleichen Anzahl Leerzeichen
1652 eingerückt werden.  Dies ist nicht erforderlich, es wird aber
1653 zu einem großen Teil die nicht passenden Klammerpaar-Fehler
1654 eliminieren und ist darum sehr empfohlen.  Es macht es
1655 möglich, die Struktur einer Partitur auf einen Blick zu
1656 verstehen, und alle nicht passenden Klammern
1657 erschließen sich schnell.  Beachten Sie auch, dass das
1658 untere Notensystem mit eckigen Klammern erstellt wird,
1659 denn innerhalb dieses Systems brauchen wir zwei Stimmen,
1660 um die Noten darzustellen.  Das obere System braucht
1661 nur einen einzigen musikalischen Ausdruck und ist deshalb
1662 von geschweiften Klammern umschlossen.)
1663
1664 @cindex Kontexte, Benennung
1665 @cindex Benennung von Kontexten
1666
1667 Der @code{\new}-Befehl kann einem Kontext auch einen
1668 Namen zur Identifikation geben, um ihn von anderen Kontexten des
1669 selben Typs zu unterscheiden:
1670
1671 @example
1672 \new @var{Typ} = @var{Name} @var{musikalischer Ausdruck}
1673 @end example
1674
1675 Beachten Sie den Unterschied zwischen der Bezeichnung des
1676 Kontexttyps (@code{Staff}, @code{Voice}, usw.) und dem
1677 Namen, der aus beliebigen Buchstaben bestehen kann
1678 und vom Benutzer frei erfunden werden kann.  Zahlen und
1679 Leerzeichen können auch benutzt werden, in dem Fall
1680 muss der Name aber von doppelten Anführungszeichen
1681 umgeben werden, also etwa
1682 @code{\new Staff = "Mein System 1" @var{musikalischer Ausdruck}}.
1683 Der Name wird
1684 benutzt, um später auf genau diesen spezifischen Kontext
1685 zu verweisen.  Dieses Vorgehen wurde schon in dem Abschnitt
1686 zu Gesangstexten angewandt, siehe @ref{Hlasy a zpěvy,,hlasy a zpěvy}.
1687
1688
1689 @seealso
1690 Notationsreferenz: @ruser{Vytvoření prostředí}.
1691
1692
1693 @node Vysvětlení rytců
1694 @subsection Vysvětlení rytců
1695 @translationof Engravers explained
1696
1697 @cindex Engraver
1698 @cindex Stempel (Engraver)
1699
1700 Jedes Zeichen des fertigen Notensatzes von LilyPond wird
1701 von einem @code{Engraver} (Stempel) produziert.  Es gibt
1702 also einen Engraver, der die Systeme erstellt, einen, der die
1703 Notenköpfe ausgibt, einen für die Hälse, einen für die
1704 Balken usw. Insgesamt gibt es über 120 Engraver! Zum
1705 Glück braucht man für die meisten Partituren nur ein
1706 paar Engraver, und für einfache Partituren muss man eigentlich
1707 überhaupt nichts über sie wissen.
1708
1709 Engraver leben und wirken aus den Kontexten heraus.  Engraver
1710 wie der @code{Metronome_mark_engraver}, dessen Aktion
1711 und Ausgabe sich auf die gesamte Partitur bezieht, wirken
1712 in der obersten Kontextebene -- dem @code{Score}-Kontext.
1713
1714 Der @code{Clef_engraver} (Schlüssel-Stempel) und der
1715 @code{Key_engraver} (Vorzeichen-Stempel)  finden sich in
1716 jedem @code{Staff}-Kontext, denn unterschiedliche Systeme
1717 könnten unterschiedliche Tonarten und Notenschlüssel
1718 brauchen.
1719
1720 Der @code{Note_heads_engraver} (Notenkopf-Stempel) und der
1721 @code{Stem_engraver} (Hals-Stempel) befinden sich in jedem
1722 @code{Voice}-Kontext, der untersten Kontextebene.
1723
1724 Jeder Engraver bearbeitet die bestimmten Objekte, die mit
1725 seiner Funktion assoziiert sind, und verwaltet die Eigenschaften
1726 dieser Funktion.  Diese Eigenschaften, wie etwa die Eigenschaften,
1727 die mit Kontexten assoziiert sind, können verändert werden,
1728 um die Wirkungsweise des Engravers oder das Erscheinungsbild
1729 der von ihm produzierten Elemente in der Partitur zu ändern.
1730
1731 Alle Engraver haben zusammengesetzte Bezeichnung, die aus
1732 den (englischen) Wörtern ihrer Funktionsweise bestehen.  Nur
1733 das erste Wort hat einen Großbuchstaben, und die restlichen
1734 Wörter werden mit einem Unterstrich angefügt.  Ein
1735 @code{Staff_symbol_engraver}  verantwortet also die Erstellung
1736 der Notenlinien, ein @code{Clef_engraver} entscheidet über die
1737 Art der Notenschlüssel und setzt die entsprechenden Symbole; damit
1738 wird gleichzeitig die Referenztonhöhe auf dem Notensystem festgelegt.
1739
1740 Hier die meistgebräuchlichen Engraver mit ihrer Funktion.
1741 Sie werden sehen, dass es mit etwas Englischkenntnissen
1742 einfach ist, die Funktion eines Engravers von seiner Bezeichnung
1743 abzuleiten.
1744
1745 @multitable @columnfractions .3 .7
1746 @headitem Engraver
1747   @tab Funktion
1748 @item Accidental_engraver
1749   @tab Erstellt Versetzungszeichen, vorgeschlagene und Warnversetzungszeichen.
1750 @item Beam_engraver
1751   @tab Erstellt Balken.
1752 @item Clef_engraver
1753   @tab Erstellt Notenschlüssel.
1754 @item Completion_heads_engraver
1755   @tab Teilt Noten in kleiner Werte, wenn sie über die Taktlinie reichen.
1756 @c The old Dynamic_engraver is deprecated. -jm
1757 @item New_dynamic_engraver
1758   @tab Erstellt Dynamik-Klammern und Dynamik-Texte.
1759 @item Forbid_line_break_engraver
1760   @tab Verbietet Zeilenumbrüche, solange ein musikalisches Element aktiv ist.
1761 @item Key_engraver
1762   @tab Erstellt die Vorzeichen.
1763 @item Metronome_mark_engraver
1764   @tab Erstellt Metronom-Bezeichnungen.
1765 @item Note_heads_engraver
1766   @tab Erstellt Notenköpfe.
1767 @item Rest_engraver
1768   @tab Erstellt Pausen.
1769 @item Staff_symbol_engraver
1770   @tab Ersetllt die (standardmäßig) fünf Notenlinien des Systems.
1771 @item Stem_engraver
1772   @tab Erstellt die Notenhälse und Tremolos mit einem Hals.
1773 @item Time_signature_engraver
1774   @tab Erstellt die Taktartbezeichnung.
1775 @end multitable
1776
1777 @smallspace
1778
1779 Es soll später gezeigt werden, wie die LilyPond-Ausgabe
1780 verändert werden kann, indem die Wirkungsweise der
1781 Engraver beeinflusst wird.
1782
1783
1784 @seealso
1785 Referenz der Interna: @rinternals{Engravers and Performers}.
1786
1787
1788 @node Změna vlastností prostředí
1789 @subsection Změna vlastností prostředí
1790 @translationof Modifying context properties
1791
1792 @cindex Kontext-Eigenschaften, Verändern
1793 @cindex Eigenschaften von Kontexten
1794 @cindex Verändern von Kontext-Eigenschaften
1795 @funindex \set
1796 @funindex \unset
1797 @funindex set
1798 @funindex unset
1799
1800 Kontexte sind dafür verantwortlich, die Werte bestimmter
1801 Kontext-@emph{Eigenschaften} zu speichern.  Viele davon
1802 können verändert werden, um die Interpretation der
1803 Eingabe zu beeinflussen und die Ausgabe zu verändern.
1804 Kontexte werden mit dem @code{\set}-Befehl geändert.
1805 Er wird in Form
1806
1807 @example
1808 \set @var{KontextBezeichnung}.@var{eigenschaftsBezeichnung} = #@var{Wert}
1809 @end example
1810
1811 @noindent
1812 verwendet, wobei @var{KontextBezeichnung} üblicherweise
1813 @code{Score},
1814 @code{Staff} oder @code{Voice} ist.  Der erste Teil kann auch
1815 ausgelassen werden; in diesem Fall wird der aktuelle
1816 Kontext (üblicherweise @code{Voice}) eingesetzt.
1817
1818 Die Bezeichnung von Kontexten-Eigenschaften besteht
1819 aus zwei Wörtern, die ohne Unterstrich oder Bindestrich
1820 verbunden sind.  Alle außer dem ersten werden am Anfang
1821 groß geschrieben.  Hier einige Beispiele der gebräuchlichsten
1822 Kontext-Eigenschaften.  Es gibt sehr viel mehr.
1823
1824 @c attempt to force this onto a new page
1825 @need 50
1826 @multitable @columnfractions .25 .15 .45 .15
1827 @headitem eigenschaftsBezeichnung
1828   @tab Typ
1829   @tab Funktion
1830   @tab Beispiel-Wert
1831 @item extraNatural
1832   @tab boolescher Wert
1833   @tab Wenn wahr, werden zusätzliche Auflösungszeichen vor Versetzungszeichen gesetzt.
1834   @tab @code{#t}, @code{#f}
1835 @item currentBarNumber
1836   @tab Integer
1837   @tab Setzt die aktuelle Taktnummer.
1838   @tab @code{50}
1839 @item doubleSlurs
1840   @tab boolescher Wert
1841   @tab Wenn wahr, werden Legatobögen über und unter die Noten gesetzt.
1842   @tab @code{#t}, @code{#f}
1843 @item instrumentName
1844   @tab Text
1845   @tab Setzt die Instrumentenbezeichnung am Anfang eines Systems.
1846   @tab @code{"Cello I"}
1847 @item fontSize
1848   @tab reale Zahl
1849   @tab Vergrößert oder verkleinert die Schriftgröße.
1850   @tab @code{2.4}
1851 @item stanza
1852   @tab Text
1853   @tab Setzt den Text zu Beginn einer Strophe.
1854   @tab @code{"2"}
1855 @end multitable
1856
1857 @noindent
1858 Ein boolescher Wert ist entweder wahr  (@code{#t})
1859 oder falsch (@code{#f}),
1860 ein Integer eine positive ganze Zahl, ein Real (reelle Zahl) eine positive
1861 oder negative Dezimalzahl, und Text wird in doppelte
1862 Anführungszeichen (Shift+2) eingeschlossen.  Beachten Sie
1863 das Vorkommen des Rautenzeichens
1864 (@code{#}) an unterschiedlichen Stellen: als Teil eines
1865 booleschen Wertes vor dem @code{t} oder @code{f}, aber
1866 auch vor einem @emph{Wert} in der
1867 @code{\set}-Befehlskette.  Wenn ein boolescher Wert
1868 eingegeben werden soll, braucht man also zwei
1869 Rautenzeichen, z. B. @code{##t}.
1870
1871 @cindex Eigenschaften in Kontexten
1872 @cindex Veränderung von Eigenschaften in Kontexten
1873
1874 Bevor eine Eigenschaft geändert werden kann, muss man wissen,
1875 in welchem Kontext sie sich befindet.  Manchmal versteht das
1876 sich von selbst, aber in einigen Fällen kann es zunächst
1877 unverständlich erscheinen.  Wenn der falsche Kontext angegeben
1878 wird, wird keine Fehlermeldung produziert, aber die
1879 Veränderung wird einfach nicht ausgeführt.
1880 @code{instrumentName} befindet sich offensichtlich innerhalb
1881 von einem @code{Staff}-Kontext, denn das Notensystem soll
1882 benannt werden.  In dem folgenden Beispiel erhält das erste
1883 System korrekt die Instrumentenbezeichnung, das zweite aber
1884 nicht, weil der Kontext ausgelassen wurde.
1885
1886 @lilypond[quote,verbatim,ragged-right]
1887 <<
1888   \new Staff \relative c'' {
1889     \set Staff.instrumentName = #"Soprano"
1890     c2 c
1891  }
1892   \new Staff \relative c' {
1893     \set instrumentName = #"Alto"  % Wrong!
1894     d2 d
1895  }
1896 >>
1897 @end lilypond
1898
1899 Denken Sie daran, dass der Standardkontext @code{Voice} ist; in dem
1900 zweiten @code{\set}-Befehl wird also die Eigenschaft @code{instrumentName}
1901 im @code{Voice}-Kontext auf @qq{Alto}, gesetzt, aber weil LilyPond diese
1902 Eigenschaft nicht im @code{Voice}-Kontext vermutet, passiert einfach
1903 gar nichts.  Das ist kein Fehler, und darum wird auch keine Fehlermeldung
1904 produziert.
1905
1906 Ebenso gibt es keine Fehlermeldung, wenn die Kontext-Bezeichnung
1907 falsch geschrieben wird und die Änderung also nicht ausgeführt werden
1908 kann.  Tatsächlich kann eine beliebige (ausgedachte) Kontextbezeichnung
1909 mit dem @code{\set}-Befehl eingesetzt werden, genauso wie die, die
1910 wirklich existieren.  Aber wenn LilyPond diese Bezeichnung nicht
1911 zuordnen kann, bewirkt der Befehl einfach gar nichts.  Manche Editoren,
1912 die Unterstützung für LilyPond-Befehle mitbringen, markieren existierende
1913 Kontextbezeichnungen mit einem Punkt, wenn man mit der Maus darüber
1914 fährt (wie etwa JEdit mit dem LilyPondTool), oder markieren
1915 unbekannte Bezeichnungen anders (wie ConTEXT).  Wenn Sie keinen
1916 Editor mit LilyPond-Unterstützung einsetzen, wird empfohlen, die
1917 Bezeichnungen in der Interna-Referenz zu überprüfen: siehe
1918 @rinternals{Tunable context properties}, oder
1919 @rinternals{Contexts}.
1920
1921 Die Eigenschaft @code{instrumentName} wird erst aktiv, wenn sie
1922 in einem @code{Staff}-Kontext gesetzt wird, aber manche Eigenschaften
1923 können in mehr als einem Kontext benutzt werden.  Als Beispiel mag die
1924 @code{extraNatural}-Eigenschaft dienen, die zusätzliche Erniedrigungszeichen
1925 setzt.  Die Standardeinstellung ist ##t (wahr) in allen Systemen.
1926 Wenn sie nur in einem @code{Staff} (Notensystem) auf ##f (falsch)
1927 gesetzt wird, wirkt sie sich auf alle Noten in diesem System aus.  Wird
1928 sie dagegen in der @code{Score}-Umgebung gesetzt, wirkt sich das
1929 auf alle darin enthaltenen Systeme aus.
1930
1931 Das also bewirkt, dass die zusätzlichen Erniedrigungszeichen in einem System
1932 ausgeschaltet sind:
1933
1934 @lilypond[quote,verbatim,ragged-right]
1935 <<
1936   \new Staff \relative c'' {
1937     ais2 aes
1938   }
1939   \new Staff \relative c'' {
1940     \set Staff.extraNatural = ##f
1941     ais2 aes
1942   }
1943 >>
1944 @end lilypond
1945
1946 @noindent
1947 während das dazu dient, sie in allen Systemen auszuschalten:
1948
1949 @lilypond[quote,verbatim,ragged-right]
1950 <<
1951   \new Staff \relative c'' {
1952     ais2 aes
1953   }
1954   \new Staff \relative c'' {
1955     \set Score.extraNatural = ##f
1956     ais2 aes
1957   }
1958 >>
1959 @end lilypond
1960
1961 Ein anderes Beispiel ist die Eigenschaft @code{clefOctavation}:
1962 wenn sie im @code{Score}-Kontext gesetzt wird, ändert sich sofort
1963 der Wert der Oktavierung in allen aktuellen Systemen und wird
1964 auf einen neuen Wert gesetzt, der sich auf alle Systeme auswirkt.
1965
1966 Der gegenteilige Befehl, @code{\unset}, entfernt die Eigenschaft
1967 effektiv wieder von dem Kontext: in den meisten Fällen wird der
1968 Kontext auf ihre Standardeinstellungen zurückgesetzt.
1969 Normalerweise wird aber @code{\unset} nicht benötigt,
1970 denn ein neues @code{\set} erledigt alles, was man braucht.
1971
1972 Die @code{\set}- und @code{\unset}-Befehle könne überall im
1973 Eingabequelltext erscheinen und werden aktiv von dem Moment, an
1974 dem sie auftreten bis zum Ende der Partitur oder bis die Eigenschaft
1975 mit @code{\set} oder @code{\unset} neu gesetzt wird.  Versuchen
1976 wir als Beispiel, die Schriftgröße mehrmals zu ändern, was sich unter anderem
1977 auf die Notenköpfe auswirkt.  Die Änderung bezieht sich immer auf den Standard,
1978 nicht vom letzten gesetzten Wert.
1979
1980 @lilypond[quote,verbatim,ragged-right,relative=1]
1981 c4 d
1982 % make note heads smaller
1983 \set fontSize = #-4
1984 e4 f |
1985 % make note heads larger
1986 \set fontSize = #2.5
1987 g4 a
1988 % return to default size
1989 \unset fontSize
1990 b4 c |
1991 @end lilypond
1992
1993 Wir haben jetzt gesehen, wie sich die Werte von unterschiedlichen
1994 Eigenschaften ändern lassen.  Beachten Sie, dass Integer und
1995 Zahlen immer mit einem Rautenzeichen beginnen, während
1996 die Werte wahr und falsch (mit @code{##t} und @code{##f}
1997 notiert) immer mit zwei Rauten beginnen.  Eine Eigenschaft, die
1998 aus Text besteht, muss in doppelte Anführungsstriche gesetzt werden,
1999 auch wenn wir später sehen werden, dass Text auf eine sehr viel
2000 allgemeinere und mächtigere Art mit dem @code{\markup}-Befehl
2001 eingegeben werden kann.
2002
2003 @subsubheading Kontexteigenschaften mit @code{\with} setzen
2004
2005 @funindex \with
2006 @funindex with
2007 @cindex Kontexteigenschaft, setzen mit \with
2008
2009 Die Standardwerte von Kontexteigenschaften können zu dem Zeitpunkt
2010 definiert werden, an welchem der Kontext erstellt wird. Manchmal
2011 ist das eine saubere Weise, eine Eigenschaft zu bestimmen, die für
2012 die gesamte Partitur erhalten bleichen soll.  Wenn ein Kontext mit
2013 einem @code{\new}-Befehl erstellt wird, können in einer
2014 direkt folgenden @code{\with @{ .. @}}-Umgebung die Eigenschaften
2015 bestimmt werden.  Wenn also die zusätzlichen
2016 Auflösungszeichen für eine ganze Partitur gelten sollen, könnte
2017 man schreiben:
2018
2019 @example
2020 \new Staff \with @{ extraNatural = ##f @}
2021 @end example
2022
2023 @noindent
2024 etwa so:
2025
2026 @lilypond[quote,verbatim,ragged-right]
2027 <<
2028   \new Staff
2029     \relative c'' {
2030       gis4 ges aes ais
2031     }
2032   \new Staff \with { extraNatural = ##f } {
2033     \relative c'' {
2034       gis ges aes ais
2035     }
2036   }
2037 >>
2038 @end lilypond
2039
2040 Eigenschaften, die auf diese Arte gesetzt werden, können immer noch
2041 dynamisch mit dem @code{\set}-Befehl geändert werden und mit
2042 @code{\unset} auf ihre Standardeinstellungen zurückgesetzt werden,
2043 wie sie vorher in der @code{\with}-Umgebung definiert wurden.
2044
2045 @cindex Schriftgröße, Standardeinstellung
2046 @cindex fontSize (Schriftgröße), Standardeinstellung
2047
2048 Wenn also die @code{fontSize}-Eigenschaft in einer @code{\with}-Umgebung
2049 definiert wird, wird der Standardwert für die Schriftgröße
2050 festgelegt.  Wenn dieser Wert später mit @code{\set} verändert
2051 wird, kann dieser neue Standardwert mit dem Befehl
2052 @code{\unset fontSize} wieder erreicht werden.
2053
2054 @subsubheading Kontexteigenschaften mit @code{\context} setzen
2055
2056 @cindex Kontexteigenschaften, mit \context setzen
2057 @cindex Eigenschaften von Kontexten, mit \context setzen
2058 @funindex \context
2059 @funindex context
2060
2061 Die Werte von Kontext-Eigenschaften können in @emph{allen} Kontexten
2062 eines bestimmten Typs (etwa alle @code{Staff}-Kontexte)
2063 gleichzeitig mit einem Befehl gesetzt werden.  Der Kontext wird
2064 spezifiziert, indem seine Bezeichnung benutzt wird, also etwa
2065 @code{Staff}, mit einem Backslash davor: @code{\Staff}.  Der Befehl
2066 für die Eigenschaft ist der gleiche, wie er auch in der
2067 @code{\with}-Konstruktion benutzt wird, wie oben gezeigt.  Er wird in
2068 eine @code{\context}-Umgebung eingebettet, welche wiederum innerhalb
2069 von einer @code{\layout}-Umgebung steht.  Jede @code{\context}-Umgebung
2070 wirkt sich auf alle Kontexte dieses Types aus, welche sich in der
2071 aktuellen Partitur befinden (d. h. innerhalb einer @code{\score}-
2072 oder @code{\book}-Umgebung).  Hier ist ein Beispiel, wie man diese
2073 Funktion anwendet:
2074
2075 @lilypond[verbatim,quote]
2076 \score {
2077   \new Staff {
2078     \relative c'' {
2079       cis4 e d ces
2080     }
2081   }
2082   \layout {
2083     \context {
2084       \Staff
2085       extraNatural = ##t
2086     }
2087   }
2088 }
2089 @end lilypond
2090
2091 Wenn die Veränderung der Eigenschaft sich auf alle Systeme einer
2092 @code{score}-Umgebung beziehen soll:
2093
2094 @lilypond[quote,verbatim]
2095 \score {
2096   <<
2097     \new Staff {
2098       \relative c'' {
2099         gis4 ges aes ais
2100       }
2101     }
2102     \new Staff {
2103       \relative c'' {
2104         gis4 ges aes ais
2105       }
2106     }
2107   >>
2108   \layout {
2109     \context {
2110       \Score extraNatural = ##f
2111     }
2112   }
2113 }
2114 @end lilypond
2115
2116 @noindent
2117 Kontext-Eigenschaften, die auf diese Weise gesetzt werden, können für
2118 bestimmten Kontexte überschrieben werden, indem die
2119 @code{\with}-Konstruktion eingesetzt wird, oder mit @code{\set}-Befehlen
2120 innerhalb der aktuellen Noten.
2121
2122
2123 @seealso
2124 Notationsreferenz:
2125 @ruser{Die Standardeinstellungen von Kontexten ändern},
2126 @ruser{Der set-Befehl}.
2127
2128 Referenz der Interna:
2129 @rinternals{Contexts},
2130 @rinternals{Tunable context properties}.
2131
2132
2133 @node Přidání a odstranění rytců
2134 @subsection Přidání a odstranění rytců
2135 @translationof Adding and removing engravers
2136
2137 @cindex Engraver, Hinzufügen von
2138 @cindex Engraver, Entfernen von
2139 @cindex Hinzufügen von Engravern
2140 @cindex Entfernen von Engravern
2141
2142 @funindex \consists
2143 @funindex \remove
2144 @funindex consists
2145 @funindex remove
2146
2147 Wir haben gesehen, dass jeder Kontext eine Anzahl an Engravern
2148 (Stempeln) beinhaltet, von denen ein jeder einen bestimmten
2149 Teil des fertigen Notensatzes produziert, wie z. B. Taktlinien,
2150 Notenlinien, Notenköpfe, Hälse usw. Wenn ein Engraver aus
2151 einem Kontext entfernt wird, kann er seine Objekte nicht
2152 länger produzieren.  Das ist eine eher grobe Methode, die
2153 Notenausgabe zu beeinflussen, aber es kann von großem
2154 Nutzen sein.
2155
2156
2157 @subsubheading Einen einzelnen Kontext verändern
2158
2159 Um einen Engraver von einem einzelnen Kontext zu entfernen,
2160 wir der @code{\with}-Befehl eingesetzt, direkt hinter
2161 den Befehl zur Kontext-Erstellung geschrieben, wie
2162 in dem vorigen Abschnitt gezeigt.
2163
2164 Als ein Beispiel wollen wir das Beispiel aus dem letzten
2165 Abschnitt produzieren, aber die Notenlinien entfernen.  Erinnern
2166 Sie sich, dass die Notenlinien vom @code{Staff_symbol_engraver}
2167 erstellt werden.
2168
2169 @lilypond[quote,verbatim,ragged-right]
2170 \new Staff \with {
2171   \remove Staff_symbol_engraver
2172 }
2173 \relative c' {
2174   c4 d
2175   \set fontSize = #-4  % make note heads smaller
2176   e4 f |
2177   \set fontSize = #2.5  % make note heads larger
2178   g4 a
2179   \unset fontSize  % return to default size
2180   b4 c |
2181 }
2182 @end lilypond
2183
2184 @cindex Ambitus-Engraver
2185
2186 Engraver können auch zu einem bestimmten
2187 Kontext hinzugefügt werden.  Dies geschieht
2188 mit dem Befehl
2189
2190 @code{\consists @var{Engraver_bezeichnung}}
2191
2192 @noindent
2193 welcher auch wieder innerhalb der @code{\with}-Umgebung
2194 gesetzt wird.  Einige Chorpartituren zeigen einen
2195 Ambitus direkt zu Beginn der ersten Notenzeile, um
2196 den Stimmumfang des Stückes anzuzeigen, siehe auch
2197 @rglos{ambitus}.  Der Ambitus wird vom
2198 @code{Ambitus_engraver} erstellt, der normalerweise
2199 in keinem Kontext enthalten ist.  Wenn wir
2200 ihn zum @code{Voice}-Kontext hinzufügen, errechnet
2201 er automatisch den Stimmumfang für diese einzelne Stimme
2202 und zeigt ihn an:
2203
2204 @lilypond[quote,verbatim,ragged-right]
2205 \new Staff <<
2206   \new Voice \with {
2207     \consists Ambitus_engraver
2208   } {
2209     \relative c'' {
2210       \voiceOne
2211       c4 a b g
2212     }
2213   }
2214   \new Voice {
2215     \relative c' {
2216       \voiceTwo
2217       c4 e d f
2218     }
2219   }
2220 >>
2221 @end lilypond
2222
2223 @noindent
2224 wenn wir den Ambitus-Engraver allerdings zum
2225 @code{Staff}-Kontext hinzufügen, wird der Stimmumfang aller
2226 Stimmen in diesem Notensystem errechnet:
2227
2228 @lilypond[quote,verbatim,ragged-right]
2229 \new Staff \with {
2230   \consists Ambitus_engraver
2231 }
2232 <<
2233   \new Voice {
2234     \relative c'' {
2235       \voiceOne
2236       c4 a b g
2237     }
2238   }
2239   \new Voice {
2240     \relative c' {
2241       \voiceTwo
2242       c4 e d f
2243     }
2244   }
2245 >>
2246 @end lilypond
2247
2248
2249 @subsubheading Alle Kontexte des gleichen Typs verändern
2250
2251 @funindex \layout
2252
2253 Die vorigen Beispiele zeigen, wie man Engraver in einem
2254 bestimmten Kontext hinzufügen oder entfernen kann.  Es ist
2255 auch möglich, Engraver in jedem Kontext eines bestimmten
2256 Typs hinzuzufügen oder zu entfernen.  Dazu werden die
2257 Befehle in dem entsprechenden Kontext in einer
2258 @code{\layout}-Umgebung gesetzt.  Wenn wir also z. B.
2259 den Ambitus für jedes Notensystem in einer Partitur
2260 mit vier Systemen anzeigen wollen, könnte das so aussehen:
2261
2262 @lilypond[quote,verbatim,ragged-right]
2263 \score {
2264   <<
2265     \new Staff {
2266       \relative c'' {
2267         c4 a b g
2268       }
2269     }
2270     \new Staff {
2271       \relative c' {
2272         c4 a b g
2273       }
2274     }
2275     \new Staff {
2276       \clef "G_8"
2277       \relative c' {
2278         c4 a b g
2279       }
2280     }
2281     \new Staff {
2282       \clef "bass"
2283       \relative c {
2284         c4 a b g
2285       }
2286     }
2287   >>
2288   \layout {
2289     \context {
2290       \Staff
2291       \consists Ambitus_engraver
2292     }
2293   }
2294 }
2295 @end lilypond
2296
2297 @noindent
2298 Die Werte der Kontext-Eigenschaften können auch für
2299 alle Kontexte eines bestimmten Typs auf die gleiche
2300 Weise geändert werden, indem der @code{\set}-Befehl in
2301 einer @code{\context}-Umgebung angewendet wird.
2302
2303
2304 @seealso
2305 Notationsreferenz: @ruser{Umgebungs-Plugins verändern},
2306 @ruser{Die Standardeinstellungen von Kontexten ändern}.
2307
2308 @knownissues
2309 Die @code{Stem_engraver} und @code{Beam_engraver} fügen ihre
2310 Objekte an Notenköpfe an.  Wenn der @code{Note_heads_engraver}
2311 entfernt wird, werden keine Notenköpfe erstellt und demzufolge auch keine
2312 Hälse oder Bögen dargestellt.
2313
2314
2315 @node Rozšíření příkladů
2316 @section Rozšíření příkladů
2317 @translationof Extending the templates
2318
2319 Sie haben sich durch die Übung gearbeitet, Sie
2320 wissen jetzt, wie Sie Notensatz produzieren, und Sie
2321 haben die grundlegenden Konzepte verstanden.  Aber wie
2322 erhalten Sie genau die Systeme, die Sie brauchen? Es
2323 gibt eine ganze Anzahl an fertigen Vorlagen
2324 (siehe @ref{Předlohy}), mit denen Sie beginnen
2325 können.  Aber was, wenn Sie nicht genau das finden,
2326 was Sie brauchen? Lesen Sie weiter.
2327
2328 @menu
2329 * Soprán a violoncello::
2330 * Čtyřhlasý notový zápis SATB::
2331 * Vytvoření notového zápisu od základu::
2332 * Úspora psaní na stroji pomocí proměnných a funkcí::
2333 * Notové zápisy a hlasy::
2334 @end menu
2335
2336
2337 @node Soprán a violoncello
2338 @subsection Soprán a violoncello
2339 @translationof Soprano and cello
2340
2341 @cindex Template, Verändern von
2342 @cindex Vorlage, Verändern von
2343 @cindex Veränderung von Vorlagen
2344
2345 Beginnen Sie mit der Vorlage, die Ihren Vorstellungen
2346 am nächsten kommt.  Nehmen wir einmal an, Sie wollen
2347 ein Stück für Soprán a violoncello schreiben.  In diesem
2348 Fall könnten Sie mit der Vorlage @qq{Noten und Text}
2349 (für die Sopran-Stimme) beginnen.
2350
2351 @example
2352 \version @w{"@version{}"}
2353 melody = \relative c' @{
2354   \clef "treble"
2355   \key c \major
2356   \time 4/4
2357   a4 b c d
2358 @}
2359
2360 text = \lyricmode @{
2361   Aaa Bee Cee Dee
2362 @}
2363
2364 \score @{
2365   <<
2366     \new Voice = "one" @{
2367       \autoBeamOff
2368       \melody
2369     @}
2370     \new Lyrics \lyricsto "one" \text
2371   >>
2372   \layout @{ @}
2373   \midi @{ @}
2374 @}
2375 @end example
2376
2377 Jetzt wollen wir die Cello-Stimme hinzufügen.  Schauen wir uns das
2378 Beispiel @qq{Nur Noten} an:
2379
2380 @example
2381 \version @w{"@version{}"}
2382
2383 melody = \relative c' @{
2384   \clef "treble"
2385   \key c \major
2386   \time 4/4
2387   a4 b c d
2388 @}
2389
2390 \score @{
2391   \new Staff \melody
2392   \layout @{ @}
2393   \midi @{ @}
2394 @}
2395 @end example
2396
2397 Wir brauchen den @code{\version}-Befehl nicht zweimal.  Wir
2398 brauchen aber den @code{melody}-Abschnitt.  Wir wollen
2399 keine zwei @code{\score} (Partitur)-Abschnitte -- mit zwei
2400 @code{\score}-Abschnitten würden wir zwei Stimmen
2401 getrennt voneinander erhalten.  In diesem Fall wollen wir
2402 sie aber zusammen, als Duett.  Schließlich brauchen wir
2403 innerhalb des @code{\score}-Abschnittes nur einmal die
2404 Befehle @code{\layout} und @code{\midi}.
2405
2406 Wenn wir jetzt einfach zwei @code{melody}-Abschnitte in
2407 unsere Datei kopieren würden, hätten wir zwei @code{melody}-Variable.
2408 Das würde zu keinem Fehler führen, aber die zweite von ihnen
2409 würde für beide Melodien eingesetzt werden.  Wir müssen
2410 ihnen also andere Bezeichnungen zuweisen, um sie voneinander
2411 zu unterscheiden.  Nennen wir die Abschnitte also @code{SopranNoten}
2412 für den Sopran und @code{CelloNoten} für die Cellostimme.  Wenn
2413 wir schon dabei sind, können wir @code{text}auch nach
2414 @code{SoprText} umbenennen.  Denken Sie daran, beide
2415 Vorkommen der Bezeichnung zu ändern: einmal die Definition
2416 gleich am Anfang (@code{melody = \relative c' @{ }) und
2417 dann auch noch die Benutzung der Variable innerhalb des
2418 @code{\score}-Abschnittes.
2419
2420 Gleichzeitig können wir auch noch das Notensystem für das
2421 Cello ändern -- das Cello hat normalerweise einen Bassschlüssel.
2422 Wir ändern auch die Noten etwas ab.
2423
2424 @example
2425 \version @w{"@version{}"}
2426
2427 SopranNoten = \relative c' @{
2428   \clef "treble"
2429   \key c \major
2430   \time 4/4
2431   a4 b c d
2432 @}
2433
2434 SoprText = \lyricmode @{
2435   Aaa Bee Cee Dee
2436 @}
2437
2438 CelloNoten = \relative c @{
2439   \clef "bass"
2440   \key c \major
2441   \time 4/4
2442   d4 g fis8 e d4
2443 @}
2444
2445 \score @{
2446   <<
2447     \new Voice = "eins" @{
2448       \autoBeamOff
2449       \SopranNoten
2450     @}
2451     \new Lyrics \lyricsto "eins" \Soprantext
2452   >>
2453   \layout @{ @}
2454   \midi @{ @}
2455 @}
2456 @end example
2457
2458 Das sieht schon vielversprechend aus, aber die Cello-Stimme
2459 erscheint noch nicht im Notensatz -- wir haben vergessen,
2460 sie in den @code{\score}-Abschnitt einzufügen.  Wenn die
2461 Cello-Stimme unterhalb des Soprans erscheinen soll, müssen
2462 wir
2463
2464 @example
2465 \new Staff \CelloNoten
2466 @end example
2467
2468 @noindent
2469 unter dem Befehl für den Sopran hinzufügen.  Wir brauchen auch
2470 die spitzen Klammern (@code{<<} und @code{>>}) um die
2471 Noten, denn damit wird LilyPond mitgeteilt, dass mehr als
2472 ein Ereignis gleichzeitig stattfindet (in diesem Fall sind es
2473 zwei @code{Staff}-Instanzen).  Der @code{\score}-Abschnitt
2474 sieht jetzt so aus:
2475
2476 @c Indentation in this example is deliberately poor
2477 @example
2478 \score @{
2479   <<
2480     <<
2481       \new Voice = "eins" @{
2482         \autoBeamOff
2483         \SopranNoten
2484       @}
2485       \new Lyrics \lyricsto "eins" \SoprText
2486     >>
2487     \new Staff \CelloNoten
2488   >>
2489   \layout @{ @}
2490   \midi @{ @}
2491 @}
2492 @end example
2493
2494 @noindent
2495 Das sieht etwas unschön aus, vor allem die Einrückung stimmt
2496 nicht mehr.  Das können wir aber schnell in Ordnung bringen.
2497 Hier also die gesamte Vorlage für Soprán a violoncello:
2498
2499 @lilypond[quote,verbatim,ragged-right,addversion]
2500 sopranoMusic = \relative c' {
2501   \clef "treble"
2502   \key c \major
2503   \time 4/4
2504   a4 b c d
2505 }
2506
2507 sopranoLyrics = \lyricmode {
2508   Aaa Bee Cee Dee
2509 }
2510
2511 celloMusic = \relative c {
2512   \clef "bass"
2513   \key c \major
2514   \time 4/4
2515   d4 g fis8 e d4
2516 }
2517
2518 \score {
2519   <<
2520     <<
2521       \new Voice = "one" {
2522         \autoBeamOff
2523         \sopranoMusic
2524       }
2525       \new Lyrics \lyricsto "one" \sopranoLyrics
2526     >>
2527     \new Staff \celloMusic
2528   >>
2529   \layout { }
2530   \midi { }
2531 }
2532 @end lilypond
2533
2534
2535 @seealso
2536 Die Vorlagen, mit denen wir begonnen haben, können im
2537 Anhang @qq{Předlohy} gefunden werden, siehe
2538 @ref{Jednotlivá notová osnova}.
2539
2540
2541 @node Čtyřhlasý notový zápis SATB
2542 @subsection Čtyřhlasý notový zápis SATB
2543 @translationof Four-part SATB vocal score
2544
2545 @cindex Vorlage, SATB
2546 @cindex Vorlage, Chorpartitur
2547 @cindex SATB-Vorlage
2548 @cindex Chorpartitur, Vorlage
2549
2550 Die meisten Partituren für vierstimmigen gemischten Chor
2551 mit Orchesterbegleitung (wie etwa Mendelssohns @notation{Elias}
2552 oder Händels @notation{Messias})  sind so aufgebaut, dass
2553 für jede der vier Stimmen ein eigenes System besteht und
2554 die Orchesterbegleitung dann als Klavierauszug darunter
2555 notiert wird.  Hier ein Beispiel aus Händels @notation{Messias}:
2556
2557 @c The following should appear as music without code
2558 @lilypond[quote,ragged-right]
2559 global = { \key d \major \time 4/4 }
2560
2561 sopranoMusic = \relative c'' {
2562   \clef "treble"
2563   r4 d2 a4 | d4. d8 a2 | cis4 d cis2 |
2564 }
2565 sopranoWords = \lyricmode {
2566   Wor -- thy | is the lamb | that was slain |
2567 }
2568 altoMusic = \relative a' {
2569   \clef "treble"
2570   r4 a2 a4 | fis4. fis8 a2 | g4 fis e2 |
2571 }
2572 altoWords = \sopranoWords
2573 tenorMusic = \relative c' {
2574   \clef "G_8"
2575   r4 fis2 e4 | d4. d8 d2 | e4 a, cis2 |
2576 }
2577 tenorWords = \sopranoWords
2578 bassMusic = \relative c' {
2579   \clef "bass"
2580   r4 d2 cis4 | b4. b8 fis2 | e4 d a'2 |
2581 }
2582 bassWords = \sopranoWords
2583 upper = \relative a' {
2584   \clef "treble"
2585   \global
2586   r4 <a d fis>2 <a e' a>4
2587   <d fis d'>4. <d fis d'>8 <a d a'>2
2588   <g cis g'>4 <a d fis> <a cis e>2
2589 }
2590 lower = \relative c, {
2591   \clef "bass"
2592   \global
2593   <d d'>4 <d d'>2 <cis cis'>4
2594   <b b'>4. <b' b'>8 <fis fis'>2
2595   <e e'>4 <d d'> <a' a'>2
2596 }
2597
2598 \score {
2599   <<  % combine ChoirStaff and PianoStaff in parallel
2600     \new ChoirStaff <<
2601       \new Staff = "sopranos" <<
2602         \set Staff.instrumentName = #"Soprano"
2603         \new Voice = "sopranos" {
2604           \global
2605           \sopranoMusic
2606         }
2607       >>
2608       \new Lyrics \lyricsto "sopranos" {
2609         \sopranoWords
2610       }
2611       \new Staff = "altos" <<
2612         \set Staff.instrumentName = #"Alto"
2613         \new Voice = "altos" {
2614           \global
2615           \altoMusic
2616         }
2617       >>
2618       \new Lyrics \lyricsto "altos" {
2619         \altoWords
2620       }
2621       \new Staff = "tenors" <<
2622         \set Staff.instrumentName = #"Tenor"
2623         \new Voice = "tenors" {
2624           \global
2625           \tenorMusic
2626         }
2627       >>
2628       \new Lyrics \lyricsto "tenors" {
2629         \tenorWords
2630       }
2631       \new Staff = "basses" <<
2632         \set Staff.instrumentName = #"Bass"
2633         \new Voice = "basses" {
2634           \global
2635           \bassMusic
2636         }
2637       >>
2638       \new Lyrics \lyricsto "basses" {
2639         \bassWords
2640       }
2641     >>  % end ChoirStaff
2642
2643     \new PianoStaff <<
2644       \set PianoStaff.instrumentName = #"Piano"
2645       \new Staff = "upper" \upper
2646       \new Staff = "lower" \lower
2647     >>
2648   >>
2649 }
2650 @end lilypond
2651
2652 Keine der Vorlage bietet diesen Aufbau direkt an.  Die Vorlage, die
2653 am nächsten daran liegt, ist @qq{SATB-Partitur und automatischer
2654 Klavierauszug}, siehe @ref{Vokální soubor}.  Wir müssen diese
2655 Vorlage aber so anpassen, dass die Noten für das Klavier nicht
2656 automatisch aus dem Chorsatz generiert werden.  Die Variablen
2657 für die Noten und den Text des Chores sind in Ordnung, wir
2658 müssen nun noch Variablen für die Klaviernoten hinzufügen.
2659
2660 Die Reihenfolge, in welcher die Variablen in das Chorsystem
2661 (@code{ChoirStaff}) eingefügt werden, entspricht nicht der
2662 in dem Beispiel oben.  Wir wollen sie so sortieren, dass die
2663 Texte jeder Stimme direkt unter den Noten notiert werden.
2664 Alle Stimmen sollten als @code{\voiceOne} notiert werden,
2665 welches die Standardeinstellung ist; wir können also die
2666 @code{\voiceXXX}-Befehle entfernen.  Wir müssen auch noch
2667 den Schlüssel für den Tenor ändern.  Die Methode, mit der
2668 der Text den Stimmen zugewiesen wird, ist uns noch nicht
2669 bekannt, darum wollen wir sie umändern auf die Weise, die
2670 wir schon kennen.  Wir fügen auch noch Instrumentbezeichnungen
2671 zu den Systemen hinzu.
2672
2673 Damit erhalten wir folgenden @code{ChoirStaff}:
2674
2675 @example
2676 \new ChoirStaff <<
2677   \new Staff = "sopranos" <<
2678     \set Staff.instrumentName = #"Sopran"
2679     \new Voice = "sopranos" @{
2680       \global
2681       \sopranoMusic
2682     @}
2683   >>
2684   \new Lyrics \lyricsto "sopranos" @{
2685     \sopranoWords
2686   @}
2687   \new Staff = "altos" <<
2688     \set Staff.instrumentName = #"Alt"
2689     \new Voice = "altos" @{
2690       \global
2691       \altoMusic
2692     @}
2693   >>
2694   \new Lyrics \lyricsto "altos" @{
2695     \altoWords
2696   @}
2697   \new Staff = "tenors" <<
2698     \set Staff.instrumentName = #"Tenor"
2699     \new Voice = "tenors" @{
2700       \global
2701       \tenorMusic
2702     @}
2703   >>
2704   \new Lyrics \lyricsto "tenors" @{
2705     \tenorWords
2706   @}
2707   \new Staff = "basses" <<
2708     \set Staff.instrumentName = #"Bass"
2709     \new Voice = "basses" @{
2710       \global
2711       \bassMusic
2712     @}
2713   >>
2714   \new Lyrics \lyricsto "basses" @{
2715     \bassWords
2716   @}
2717 >>  % end ChoirStaff
2718 @end example
2719
2720 Als nächstes müssen wir das Klaviersystem bearbeiten.
2721 Das ist einfach: wir nehmen einfach den Klavierteil
2722 aus der @qq{Piano solo}-Vorlage:
2723
2724 @example
2725 \new PianoStaff <<
2726   \set PianoStaff.instrumentName = #"Piano  "
2727   \new Staff = "oben" \oben
2728   \new Staff = "unten" \unten
2729 >>
2730 @end example
2731
2732 @noindent
2733 und fügen die Variablen @code{oben}
2734 und @code{unten} hinzu.
2735
2736 Das Chorsystem und das Pianosystem müssen mit
2737 spitzen Klammern kombiniert werden, damit beide
2738 übereinander erscheinen:
2739
2740 @example
2741 <<  % ChoirStaff und PianoStaff parallel kombinieren
2742   \new ChoirStaff <<
2743     \new Staff = "sopranos" <<
2744       \new Voice = "sopranos" @{
2745         \global
2746         \sopranoMusic
2747       @}
2748     >>
2749     \new Lyrics \lyricsto "sopranos" @{
2750       \sopranoWords
2751      @}
2752     \new Staff = "altos" <<
2753       \new Voice = "altos" @{
2754         \global
2755         \altoMusic
2756       @}
2757     >>
2758     \new Lyrics \lyricsto "altos" @{
2759       \altoWords
2760     @}
2761     \new Staff = "tenors" <<
2762       \clef "G_8"  % tenor clef
2763       \new Voice = "tenors" @{
2764         \global
2765         \tenorMusic
2766       @}
2767     >>
2768     \new Lyrics \lyricsto "tenors" @{
2769       \tenorWords
2770     @}
2771     \new Staff = "basses" <<
2772       \clef "bass"
2773       \new Voice = "basses" @{
2774         \global
2775         \bassMusic
2776       @}
2777     >>
2778     \new Lyrics \lyricsto "basses" @{
2779       \bassWords
2780     @}
2781   >>  % end ChoirStaff
2782
2783   \new PianoStaff <<
2784     \set PianoStaff.instrumentName = #"Piano"
2785     \new Staff = "upper" \upper
2786     \new Staff = "lower" \lower
2787   >>
2788 >>
2789 @end example
2790
2791 Alles miteinander kombiniert und mit den Noten für drei
2792 Takte sieht unser Beispiel nun so aus:
2793
2794 @lilypond[quote,verbatim,ragged-right,addversion]
2795 global = {
2796   \key d \major
2797   \time 4/4
2798 }
2799 sopranoMusic = \relative c'' {
2800   \clef "treble"
2801   r4 d2 a4 | d4. d8 a2 | cis4 d cis2 |
2802 }
2803 sopranoWords = \lyricmode {
2804   Wor -- thy | is the lamb | that was slain |
2805 }
2806 altoMusic = \relative a' {
2807   \clef "treble"
2808   r4 a2 a4 | fis4. fis8 a2 | g4 fis fis2 |
2809 }
2810 altoWords = \sopranoWords
2811 tenorMusic = \relative c' {
2812   \clef "G_8"
2813   r4 fis2 e4 | d4. d8 d2 | e4 a, cis2 |
2814 }
2815 tenorWords = \sopranoWords
2816 bassMusic = \relative c' {
2817   \clef "bass"
2818   r4 d2 cis4 | b4. b8 fis2 | e4 d a'2 |
2819 }
2820 bassWords = \sopranoWords
2821 upper = \relative a' {
2822   \clef "treble"
2823   \global
2824   r4 <a d fis>2 <a e' a>4
2825   <d fis d'>4. <d fis d'>8 <a d a'>2
2826   <g cis g'>4 <a d fis> <a cis e>2
2827 }
2828 lower = \relative c, {
2829   \clef "bass"
2830   \global
2831   <d d'>4 <d d'>2 <cis cis'>4
2832   <b b'>4. <b' b'>8 <fis fis'>2
2833   <e e'>4 <d d'> <a' a'>2
2834 }
2835
2836 \score {
2837   <<  % combine ChoirStaff and PianoStaff in parallel
2838     \new ChoirStaff <<
2839       \new Staff = "sopranos" <<
2840         \set Staff.instrumentName = #"Soprano"
2841         \new Voice = "sopranos" {
2842           \global
2843           \sopranoMusic
2844         }
2845       >>
2846       \new Lyrics \lyricsto "sopranos" {
2847         \sopranoWords
2848       }
2849       \new Staff = "altos" <<
2850         \set Staff.instrumentName = #"Alto"
2851         \new Voice = "altos" {
2852           \global
2853           \altoMusic
2854         }
2855       >>
2856       \new Lyrics \lyricsto "altos" {
2857         \altoWords
2858       }
2859       \new Staff = "tenors" <<
2860         \set Staff.instrumentName = #"Tenor"
2861         \new Voice = "tenors" {
2862           \global
2863           \tenorMusic
2864         }
2865       >>
2866       \new Lyrics \lyricsto "tenors" {
2867         \tenorWords
2868       }
2869       \new Staff = "basses" <<
2870         \set Staff.instrumentName = #"Bass"
2871         \new Voice = "basses" {
2872           \global
2873           \bassMusic
2874         }
2875       >>
2876       \new Lyrics \lyricsto "basses" {
2877         \bassWords
2878       }
2879     >>  % end ChoirStaff
2880
2881     \new PianoStaff <<
2882       \set PianoStaff.instrumentName = #"Piano  "
2883       \new Staff = "upper" \upper
2884       \new Staff = "lower" \lower
2885     >>
2886   >>
2887 }
2888 @end lilypond
2889
2890
2891 @node Vytvoření notového zápisu od základu
2892 @subsection Vytvoření notového zápisu od základu
2893 @translationof Building a score from scratch
2894
2895 @cindex Template, eigene schreiben
2896 @cindex Vorlagen, eigene schreiben
2897 @cindex eigene Vorlagen erstellen
2898 @cindex Erstellen von eigenen Vorlagen
2899 @cindex Schreiben von eigenen Vorlagen
2900
2901 Wenn Sie einige Fertigkeit im Schreiben von LilyPond-Code
2902 gewonnen haben, werden Sie vielleicht feststellen, dass es
2903 manchmal einfacher ist, von Grund auf anzufangen, anstatt
2904 die fertigen Vorlagen zu verändern.  Auf diese Art könne Sie
2905 auch Ihren eigenen Stil entwickeln, und ihn der Musik anpassen,
2906 die Sie notieren wollen.  Als Beispiel wollen wir demonstrieren,
2907 wie man die Partitur für ein Orgelpreludium von Grund auf
2908 konstruiert.
2909
2910 Beginnen wir mit dem Kopf, dem @code{header}-Abschnitt.
2911 Hier notieren wir den Titel, den Namen des Komponisten usw.
2912 Danach schreiben wir die einzelnen Variablen auf und
2913 schließlich am Ende die eigentliche Partitur, den
2914 @code{\score}-Abschnitt.  Beginnen wir mit einer groben
2915 Struktur, in die wir dann die Einzelheiten nach und nach
2916 eintragen.
2917
2918 Als Beispiel benutzen wir zwei Takte aus dem Orgelpreludium
2919 @notation{Jesu, meine Freude} von J. S. Bach, notiert
2920 für zwei Manuale und Pedal.  Sie können die Noten am Ende
2921 dieses Abschnittes sehen.  Das obere Manual trägt zwei Stimmen,
2922 das untere und das Pedalsystem jeweils nur eine.  Wir
2923 brauchen also vier Variablen für die Noten und eine, um
2924 Taktart und Tonart zu definieren.
2925
2926 @example
2927 \version @w{"@version{}"}
2928 \header @{
2929   title = "Jesu, meine Freude"
2930   composer = "J. S. Bach"
2931 @}
2932 keyTime = @{ \key c \minor \time 4/4 @}
2933 ManualOneVoiceOneMusic = @{ s1 @}
2934 ManualOneVoiceTwoMusic = @{ s1 @}
2935 ManualTwoMusic = @{ s1 @}
2936 PedalOrganMusic = @{ s1 @}
2937
2938 \score @{
2939 @}
2940 @end example
2941
2942 Im Moment haben wir eine unsichtbare
2943 Note in jede Stimme eingesetzt (@code{s1}).
2944 Die Noten werden später hinzugefügt.
2945
2946 Als nächstes schauen wir uns an, was in die
2947 Partitur (die @code{\score}-Umgebung)
2948 kommt.  Dazu wird einfach die Notensystemstruktur
2949 konstruiert, die wir benötigen.  Orgelmusik
2950 wird meistens auf drei Systemen notiert, eins
2951 für jedes Manual und ein drittes für die Pedalnoten.
2952 Die Systeme für die Manuale werden mit einer
2953 geschweiften Klammer verbunden, wir
2954 benutzen hier also ein @code{PianoStaff}.
2955 Das erste Manualsystem braucht zwei Stimmen,
2956 das zweite nur eine.
2957
2958 @example
2959 \new PianoStaff <<
2960   \new Staff = "ManualOne" <<
2961     \new Voice @{
2962       \ManualOneVoiceOneMusic
2963     @}
2964     \new Voice @{
2965       \ManualOneVoiceTwoMusic
2966     @}
2967   >>  % Ende ManualOne Systemkontext
2968   \new Staff = "ManualTwo" <<
2969     \new Voice @{
2970       \ManualTwoMusic
2971     @}
2972   >>  % Ende ManualTwo Systemkontext
2973 >>  % Ende PianoStaff Kontext
2974 @end example
2975
2976 Als nächstes soll das System für das Pedal hinzugefügt
2977 werden.  Es soll unter das Klaviersystem gesetzt
2978 werden, aber muss gleichzeitig mit ihm erscheinen.
2979 Wir brauchen also spitze Klammern um beide
2980 Definitionen.  Sie wegzulassen würde eine Fehlermeldung
2981 in der Log-Datei hervorrufen.  Das ist ein sehr
2982 häufiger Fehler, der wohl auch Ihnen früher
2983 oder später unterläuft.  Sie können das fertige
2984 Beispiel am Ende des Abschnittes kopieren und die
2985 Klammern entfernen, um zu sehen, wie die
2986 Fehlermeldung aussehen kann, die Sie in solch
2987 einem Fall erhalten würden.
2988
2989 @example
2990 <<  % PianoStaff and Pedal Staff must be simultaneous
2991   \new PianoStaff <<
2992     \new Staff = "ManualOne" <<
2993       \new Voice @{
2994         \ManualOneVoiceOneMusic
2995       @}
2996       \new Voice @{
2997         \ManualOneVoiceTwoMusic
2998       @}
2999     >>  % end ManualOne Staff context
3000     \new Staff = "ManualTwo" <<
3001       \new Voice @{
3002         \ManualTwoMusic
3003       @}
3004     >>  % end ManualTwo Staff context
3005   >>  % end PianoStaff context
3006   \new Staff = "PedalOrgan" <<
3007     \new Voice @{
3008       \PedalOrganMusic
3009     @}
3010   >>
3011 >>
3012 @end example
3013
3014 Es ist nicht notwendig, die simultane Konstruktion
3015 @code{<< .. >>} innerhalb des zweiten Manualsystems
3016 und des Pedalsystems zu benutzen, denn sie enthalten
3017 nur eine Stimme.  Andererseits schadet es nichts, sie
3018 zu schreiben, und es ist eine gute Angewohnheit, immer
3019 die spitzen Klammern nach einem @code{\new Staff} zu
3020 schreiben, wenn mehr als eine Stimme vorkommen könnten.
3021 Für Stimmen (@code{Voice}) dagegen gilt genau das
3022 Gegenteil: eine neue Stimme sollte immer von
3023 geschweiften Klammern (@code{@{ .. @}}) gefolgt
3024 werden, falls Sie ihre Noten in mehrere Variable aufteilen,
3025 die nacheinander gesetzt werden sollen.
3026
3027 Fügen wir also diese Struktur zu der @code{\score}-Umgebung
3028 hinzu und bringen wir die Einzüge in Ordnung.  Gleichzeitig
3029 wollen wir die richtigen Schlüssel setzen und die Richtung der
3030 Hälse und Bögen in den Stimmen des oberen Systems
3031 kontrollieren, indem die obere Stimme ein
3032 @code{\voiceOne}, die untere dagegen ein @code{\voiceTwo}
3033 erhält.  Die Taktart und Tonart werden mit unserer fertigen
3034 Variable @code{\keyTime} eingefügt.
3035
3036 @example
3037 \score @{
3038   <<  % PianoStaff and Pedal Staff must be simultaneous
3039     \new PianoStaff <<
3040       \new Staff = "ManualOne" <<
3041         \keyTime  % set time signature and key
3042         \clef "treble"
3043         \new Voice @{
3044           \voiceOne
3045           \ManualOneVoiceOneMusic
3046         @}
3047         \new Voice @{
3048           \voiceTwo
3049           \ManualOneVoiceTwoMusic
3050         @}
3051       >>  % end ManualOne Staff context
3052       \new Staff = "ManualTwo" <<
3053         \keyTime
3054         \clef "bass"
3055         \new Voice @{
3056           \ManualTwoMusic
3057         @}
3058       >>  % end ManualTwo Staff context
3059     >>  % end PianoStaff context
3060     \new Staff = "PedalOrgan" <<
3061       \keyTime
3062       \clef "bass"
3063       \new Voice @{
3064         \PedalOrganMusic
3065       @}
3066     >>  % end PedalOrgan Staff
3067   >>
3068 @}  % end Score context
3069 @end example
3070
3071 @cindex Spreizbarkeit von Systemen
3072 @cindex Dehnung von Systemen, vertikal
3073 @cindex Systeme, vertikales Dehnen
3074
3075 Das Layout des Orgelsystems oben ist fast perfekt, es hat jedoch einen kleinen
3076 Fehler, den man nicht bemerken kann, wenn man nur ein einzelnes System
3077 betrachtet:  Der Abstand des Pedalsystems zum System der linken Hand
3078 sollte in etwa der gleiche sein wie der Abstand zwischen den Systemen
3079 der linken und rechten Hand.  Die Dehnbarkeit von Systemen in einem
3080 Klaviersystem (@code{PianoStaff})-Kontext ist beschränkt (sodass der
3081 Abstand zwischen den Systemen der linken und rechten Hand nicht zu groß
3082 wird), und das Pedalsystem sollte sich genauso verhalten.
3083
3084 @cindex Untereigenschaft
3085 @cindex sub-properties
3086 @cindex graphische Objekte
3087 @cindex Grobs
3088 @cindex Objekte, graphische
3089
3090 Die Spreizbarkeit von Systemen kann mit der @code{staff-staff-spacing}-Eigenschaft
3091 des @code{VerticalAxisGroup}-@qq{graphischen Objekts} (üblicherweise als
3092 @qq{Grob} innerhalb der LilyPond-Dokumentation bezeichnet) kontrolliert
3093 werden.  An dieser Stelle brauchen Sie sich um die Details nicht zu
3094 sorgen, sie werden später erklärt.  Sehr Neugierige können sich den
3095 Abschnitt @ruser{Grundlagen zum Verändern von Eigenschaften} anschauen.  Im Moment
3096 kann man nicht nur die @code{strechability} (Spreizbarkeit)-Untereigenschaft verändern,
3097 darum müssen hier auch die anderen Untereigenschaften kopiert werden.  Die
3098 Standardeinstellungen dieser Untereigenschaften finden sich in der Datei
3099 @file{scm/define-grobs.scm} in den Definitionen für den
3100 @code{VerticalAxisGroup}-Grob.  Der Wert für @code{strechability} wird aus
3101 der Definition für das Klaviersystem (@code{PianoStaff}) entnommen
3102 (in der Datei @file{ly/engraver-init.ly}), damit die Werte identisch
3103 sind.
3104
3105 @example
3106 \score @{
3107   <<  % PianoStaff and Pedal Staff must be simultaneous
3108     \new PianoStaff <<
3109       \new Staff = "ManualOne" <<
3110         \keyTime  % set key and time signature
3111         \clef "treble"
3112         \new Voice @{
3113           \voiceOne
3114           \ManualOneVoiceOneMusic
3115         @}
3116         \new Voice @{
3117           \voiceTwo
3118           \ManualOneVoiceTwoMusic
3119         @}
3120       >>  % end ManualOne Staff context
3121       \new Staff = "ManualTwo" \with @{
3122         \override VerticalAxisGroup
3123           #'staff-staff-spacing #'stretchability = 5
3124       @} <<
3125         \keyTime
3126         \clef "bass"
3127         \new Voice @{
3128           \ManualTwoMusic
3129         @}
3130       >>  % end ManualTwo Staff context
3131     >>  % end PianoStaff context
3132     \new Staff = "PedalOrgan" <<
3133       \keyTime
3134       \clef "bass"
3135       \new Voice @{
3136         \PedalOrganMusic
3137       @}
3138     >>  % end PedalOrgan Staff
3139   >>
3140 @}  % end Score context
3141 @end example
3142
3143 Damit ist das Grundgerüst fertig.  Jede Orgelmusik mit drei
3144 Systemen hat die gleiche Struktur, auch wenn die Anzahl der Stimmen
3145 in einem System sich ändern kann.  Jetzt müssen wir nur noch
3146 die Noten einfügen und alle Teile zusammenfügen, indem wir
3147 die Variablen mit einem Backslash in die Partitur einbauen.
3148
3149 @lilypond[quote,verbatim,ragged-right,addversion]
3150 \header {
3151   title = "Jesu, meine Freude"
3152   composer = "J S Bach"
3153 }
3154 keyTime = { \key c \minor \time 4/4 }
3155 ManualOneVoiceOneMusic = \relative g' {
3156   g4 g f ees |
3157   d2 c2 |
3158 }
3159 ManualOneVoiceTwoMusic = \relative c' {
3160   ees16 d ees8~ ees16 f ees d c8 d~ d c~ |
3161   c8 c4 b8 c8. g16 c b c d |
3162 }
3163 ManualTwoMusic = \relative c' {
3164   c16 b c8~ c16 b c g a8 g~ g16 g aes ees |
3165   f16 ees f d g aes g f ees d e8~ ees16 f ees d |
3166 }
3167 PedalOrganMusic = \relative c {
3168   r8 c16 d ees d ees8~ ees16 a, b g c b c8 |
3169   r16 g ees f g f g8 c,2 |
3170 }
3171
3172 \score {
3173   <<  % PianoStaff and Pedal Staff must be simultaneous
3174     \new PianoStaff <<
3175       \new Staff = "ManualOne" <<
3176         \keyTime  % set time signature and key
3177         \clef "treble"
3178         \new Voice {
3179           \voiceOne
3180           \ManualOneVoiceOneMusic
3181         }
3182         \new Voice {
3183           \voiceTwo
3184           \ManualOneVoiceTwoMusic
3185         }
3186       >>  % end ManualOne Staff context
3187       \new Staff = "ManualTwo" \with {
3188         \override VerticalAxisGroup
3189           #'staff-staff-spacing #'stretchability = 5
3190       } <<
3191         \keyTime
3192         \clef "bass"
3193         \new Voice {
3194           \ManualTwoMusic
3195         }
3196       >>  % end ManualTwo Staff context
3197     >>  % end PianoStaff context
3198     \new Staff = "PedalOrgan" <<
3199       \keyTime
3200       \clef "bass"
3201       \new Voice {
3202         \PedalOrganMusic
3203       }
3204     >>  % end PedalOrgan Staff context
3205   >>
3206 }  % end Score context
3207 @end lilypond
3208
3209 @seealso
3210 Glossar:
3211 @rglos{system}.
3212
3213
3214 @node Úspora psaní na stroji pomocí proměnných a funkcí
3215 @subsection Úspora psaní na stroji pomocí proměnných a funkcí
3216 @translationof Saving typing with variables and functions
3217
3218 @cindex Variablen
3219
3220 Bis jetzt wurde immer derartige Notation vorgestellt:
3221
3222 @lilypond[quote,verbatim,ragged-right]
3223 hornNotes = \relative c'' { c4 b dis c }
3224
3225 \score {
3226   {
3227     \hornNotes
3228   }
3229 }
3230 @end lilypond
3231
3232 Sie können sich vorstellen, dass das etwa für minimalistische
3233 Musik sehr nützlich sein könnte:
3234
3235 @lilypond[quote,verbatim,ragged-right]
3236 fragmentA = \relative c'' { a4 a8. b16 }
3237 fragmentB = \relative c'' { a8. gis16 ees4 }
3238 violin = \new Staff {
3239   \fragmentA \fragmentA |
3240   \fragmentB \fragmentA |
3241 }
3242
3243 \score {
3244   {
3245     \violin
3246   }
3247 }
3248 @end lilypond
3249
3250 Diese Variablen (die man auch als Makros oder Benutzer-Befehl
3251 bezeichnet) können jedoch auch für eigene Anpassungen eingesetzt
3252 werden:
3253
3254 @c TODO Avoid padtext - not needed with skylining
3255 @lilypond[quote,verbatim,ragged-right]
3256 dolce = \markup { \italic \bold dolce }
3257 padText = { \once \override TextScript #'padding = #5.0 }
3258 fthenp=_\markup {
3259     \dynamic f \italic \small { 2nd } \hspace #0.1 dynamic p
3260 }
3261
3262 violin = \relative c'' {
3263   \repeat volta 2 {
3264     c4._\dolce b8 a8 g a b
3265     \padText
3266     c4.^"hi there!" d8 e' f g d
3267     c,4.\fthenp b8 c4 c-.
3268   }
3269 }
3270
3271 \score {
3272   {
3273     \violin
3274   }
3275   \layout{ragged-right=##t}
3276 }
3277 @end lilypond
3278
3279 Derartige Variablen sind offensichtlich sehr nützlich, zu Tipparbeit zu ersparen.  Aber es lohnt sich schon, sie zu
3280 benutzen, wenn man sie nur einmal benutzen will, denn sie
3281 vereinfachen die Struktur einer Datei sehr stark.  Hier das
3282 vorige Beispiel ohne jede Benutzung von Variablen.  Es ist
3283 sehr viel schwerer lesbar, besonders die letzte Zeile.
3284
3285 @example
3286 violin = \relative c'' @{
3287   \repeat volta 2 @{
3288     c4._\markup @{ \italic \bold dolce @} b8 a8 g a b
3289     \once \override TextScript #'padding = #5.0
3290     c4.^"hi there!" d8 e' f g d
3291     c,4.\markup @{
3292       \dynamic f \italic \small @{ 2nd @} \hspace #0.1 \dynamic p
3293     @}
3294     b8 c4 c-. |
3295   @}
3296 @}
3297 @end example
3298
3299 @c TODO Replace the following with a better example  -td
3300 @c Skylining handles this correctly without padText
3301
3302 Bisher haben wir vor allem statische Ersetzungen betrachtet:
3303 wenn LilyPond etwa @code{\padText} sieht, wird es ersetzt mit
3304 all dem Code, mit dem wir es definiert haben (also alles,
3305 was sich rechts von @code{padtext=} befindet).
3306
3307 LilyPond kann auch nicht-statische Ersetzungen bewältigen.  Man
3308 kann sie sich als Funktionen vorstellen.
3309
3310 @lilypond[quote,verbatim,ragged-right]
3311 padText =
3312 #(define-music-function
3313      (parser location padding)
3314      (number?)
3315    #{
3316      \once \override TextScript #'padding = $padding
3317    #})
3318
3319 \relative c''' {
3320   c4^"piu mosso" b a b |
3321   \padText #1.8
3322   c4^"piu mosso" d e f |
3323   \padText #2.6
3324   c4^"piu mosso" fis a g |
3325 }
3326 @end lilypond
3327
3328 Die Benutzung von Variablen ist auch eine gute Möglichkeit,
3329 Arbeit zu vermeiden, wenn sich einmal die Syntax von LilyPond
3330 ändern sollte (siehe auch @rprogram{Updating old input files
3331 with convert-ly}).
3332 Wenn man eine einzige Definition hat (wie etwa @code{\dolce}),
3333 die für alle Vorkommen in der Notation eingesetzt wird, muss
3334 man auch nur einmal diese Definition aktualisieren, anstatt
3335 dass man sie in jeder @file{.ly}-Datei einzeln ändern müsste.
3336
3337
3338 @node Notové zápisy a hlasy
3339 @subsection Notové zápisy a hlasy
3340 @translationof Scores and parts
3341
3342 In Orchestermusik werden alle Noten zweimal gedruckt.  Einmal
3343 in einer Stimme für die Spieler, und einmal ein der Partitur
3344 für den Dirigenten.  Variablen können benutzen, um sich doppelte
3345 Arbeit zu ersparen.  Die Noten werden nur einmal eingegeben und
3346 in einer Variable abgelegt.  Der Inhalt der Variable wird dann
3347 benutzt um sowohl die Stimme als auch die Partitur zu erstellen.
3348
3349 Es bietet sich an, die Noten in einer extra Datei abzulegen.
3350 Nehmen wir an, dass die Datei @file{horn-music.ly} folgende
3351 Noten eines Horn/@/Fagott-Duos enthält:
3352
3353 @example
3354 hornNotes = \relative c @{
3355   \time 2/4
3356   r4 f8 a | cis4 f | e4 d |
3357 @}
3358 @end example
3359
3360 @noindent
3361 Eine Stimme wird also erstellt, indem man folgendes in eine
3362 Datei schreibt:
3363
3364 @example
3365 \include "horn-music.ly"
3366
3367 \header @{
3368   instrument = "Horn in F"
3369 @}
3370
3371 @{
3372  \transpose f c' \hornNotes
3373 @}
3374 @end example
3375
3376 Die Zeile
3377
3378 @example
3379 \include "horn-music.ly"
3380 @end example
3381
3382 @noindent
3383 ersetzt den Inhalt von @file{horn-music.ly} an dieser Position
3384 in der Datei, sodass @code{hornNotes} im Folgenden definiert
3385 ist.  Der Befehl @code{\transpose f@tie{}c'} zeigt an, dass
3386 das Argument (@code{\hornNotes}) eine Quinte nach oben transponiert
3387 werden soll.  Klingendes @code{f} wird als @code{c'}, wie es
3388 die Stimmung eines normalen F-Hornes verlangt.  Die Transposition
3389 kann in folgender Notenausgabe gesehen werden:
3390
3391 @lilypond[quote,ragged-right]
3392 \transpose f c' \relative c {
3393   \time 2/4
3394   r4 f8 a | cis4 f | e4 d |
3395 }
3396 @end lilypond
3397
3398 In Ensemblestücken sind manche Stimmen für viele Takte stumm.
3399 Das wird durch eine besondere Pause notiert, die Mehrtaktpause.
3400 Sie wird mit einem großen @code{R} notiert, gefolgt von der
3401 Dauer (@code{1}@tie{}für eine Ganze, @code{2}@tie{}für eine Halbe usw.).  Indem man die Dauern multipliziert, kann man auch
3402 längere Dauern erzeugen.  Diese Pause etwa dauert drei Takte
3403 in einem 2/4-Takt:
3404
3405 @example
3406 R2*3
3407 @end example
3408
3409 Wenn die Stimme gesetzt wird, werden Mehrtaktpausen komprimiert.  Das geschieht, indem man folgendes in die Datei
3410 schreibt:
3411
3412 @example
3413 \set Score.skipBars = ##t
3414 @end example
3415
3416 @noindent
3417 Dieser Befehl setzt die Eigenschaft @code{skipBars} im
3418 @code{Score}-Kontext auf wahr (@code{##t}).  Die Pause und diese Option zu der Musik von oben hinzugefügt, ergibt folgendes
3419 Beispiel:
3420
3421 @lilypond[quote,ragged-right]
3422 \transpose f c' \relative c {
3423   \time 2/4
3424   \set Score.skipBars = ##t
3425   R2*3 |
3426   r4 f8 a | cis4 f | e4 d |
3427 }
3428 @end lilypond
3429
3430 Die Partitur wird erstellt, indem man alle Noten kombiniert.
3431 Angenommen, die andere Stimme ist in @code{bassoonNotes}
3432 in der Datei @file{bassoon-music.ly} definiert, würde eine
3433 Partitur erstellt mit:
3434
3435 @example
3436 \include "bassoon-music.ly"
3437 \include "horn-music.ly"
3438
3439 <<
3440   \new Staff \hornNotes
3441   \new Staff \bassoonNotes
3442 >>
3443 @end example
3444
3445 @noindent
3446 woraus sich ergibt:
3447
3448 @lilypond[quote,ragged-right]
3449 \relative c <<
3450   \new Staff {
3451     \clef "treble"
3452     \time 2/4
3453     R2*3 |
3454     r4 f8 a | cis4 f | e4 d |
3455   }
3456   \new Staff {
3457     \clef "bass"
3458     \time 2/4
3459     r4 d,8 f | gis4 c | b4 bes |
3460     a8 e f4 | g4 d | gis4 f |
3461   }
3462 >>
3463 @end lilypond