]> git.donarmstrong.com Git - lilypond.git/blob - Documentation/cs/learning/fundamental.itely
Doc-cs. Partial translation 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.13.42"
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 * Souvislosti 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{stavbu 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{Souvislosti a rytci,,souvislosti 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 doporučení k notovému zápisu -- @ruser{Rozvržení notového zápisu} und
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í kousků 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 Doporučení k notovému zápisu: @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 gvysvě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 akkordu
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 Im Allgemeinen können die verschiedenen Klammerarten,
612 Klammer-artigen Konstruktionen, Haltebögen,
613 Triolen und Vorschlagnoten beliebig kombiniert werden.
614 Das folgende Beispiel zeigt einen Balken, der in eine Triole reicht
615 (Zeile 1), eine Bindebogen, der ebenfalls in eine Triole
616 reicht (Zeile 2), einen Balken und einen Bindeboden in eine Triole,
617 ein Haltebogen, der über zwei Triolen läuft, sowie einen
618 Phrasierungsbogen, der in einer Triole beginnt (Zeilen 3 und 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 Sänger brauchen Stimmen zum Singen, und LilyPond braucht sie auch:
635 in der Tat sind alle Noten für alle Instrumente in einer Partitur
636 innerhalb von Stimmen gesetzt.  Die Stimme ist das grundlegendste Prinzip
637 von LilyPond.
638
639 @menu
640 * Slyším hlasy::
641 * Přímé 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 Polyphonie
650 @cindex Ebenen
651 @cindex mehrere Stimmen
652 @cindex Stimmen, mehrere
653 @cindex Voice context
654 @cindex context, Voice
655 @cindex Kontext, Stimme
656 @cindex Stimmenkontext
657 @cindex gleichzeitige Noten
658 @cindex Stimmen versus Akkorde
659 @cindex Akkorde versus Stimmen
660 @cindex Noten gleichzeitig
661
662 Die grundlegendsten und innersten Ebenen ein einer LilyPond-Partitur
663 werden @qq{Voice context} (Stimmenkontext) oder auch nur @qq{Voice}
664 (Stimme) genannt.  Stimmen werden in anderen Notationsprogrammen
665 manchmal auch als @qq{layer} (Ebene) bezeichnet.
666
667 Tatsächlich ist die Stimmenebene die einzige, die wirklich Noten
668 enthalten kann.  Wenn kein Stimmenkontext explizit erstellt wird,
669 wird er automatisch erstellt, wie am Anfang dieses Kapitels
670 gezeigt.  Manche Instrumente wie etwa die Oboe können nur eine
671 Note gleichzeitig spielen.  Noten für solche Instrumente sind
672 monophon und brauchen nur eine einzige Stimme.  Instrumente, die
673 mehrere Noten gleichzeitig spielen können, wie das Klavier, brauchen
674 dagegen oft mehrere Stimmen, um die verschiedenen gleichzeitig
675 erklingenden Noten mit oft unterschiedlichen Rhythmen darstellen
676 zu können.
677
678 Eine einzelne Stimme kann natürlich auch vielen Noten in einem Akkord
679 enthalten -- wann also braucht man dann mehrere Stimmen? Schauen wir
680 uns zuerst dieses Beispiel mit vier Akkorden an:
681
682 @lilypond[quote,verbatim,ragged-right,relative=1]
683 \key g \major
684 <d g>4 <d fis> <d a'> <d g>
685 @end lilypond
686
687 Das kann ausgedrückt werden, indem man die einfachen spitzen Klammern
688 @code{< ... >} benützt, um Akkorde anzuzeigen.  Hierfür braucht man
689 nur eine Stimme.  Aber gesetzt der Fall das Fis sollte eigentlich
690 eine Achtelnote sein, gefolgt von einer Achtelnote G (als Durchgangsnote
691 hin zum A)? Hier haben wir also zwei Noten, die zur gleichen Zeit
692 beginnen, aber unterschiedliche Dauern haben: die Viertelnote D und die
693 Achtelnote Fis.  Wie können sie notiert werden? Als Akkord kann man sie
694 nicht schreiben, weil alle Noten in einem Akkord die gleiche Länge besitzen
695 müssen.  Sie können auch nicht als aufeinanderfolgende Noten geschrieben
696 werden, denn sie beginnen ja zur selben Zeit.  In diesem Fall also brauchen
697 wir zwei Stimmen.
698
699 Wie aber wird das in der LilyPond-Syntax ausgedrückt?
700
701 @funindex << \\ >>
702 @funindex \\
703
704 Die einfachste Art, Fragmente mit mehr als einer Stimme auf einem System
705 zu notieren, ist, die Stimmen nacheinander (jeweils mit den Klammern
706 @code{@{ ... @}}) zu schreiben und dann mit den spitzen Klammern
707 (@code{<<...>>}) simultan zu kombinieren.  Die beiden Fragmente müssen
708 zusätzlich noch mit zwei Backslash-Zeichen (@code{\\}) voneinander
709 getrennt werden, damit sie als zwei unterschiedliche Stimmen erkannt
710 werden.  Ohne diese Trenner würden sie als eine einzige Stimme notiert
711 werden.  Diese Technik ist besonders dann angebracht, wenn es sich bei
712 den Noten um hauptsächlich homophone Musik handelt, in der hier und da
713 polyphone Stellen vorkommen.
714
715 So sieht es aus, wenn die Akkorde in zwei Stimmen aufgeteilt werden
716 und zur Durchgangsnote noch ein Bogen hinzugefügt wird:
717
718 @lilypond[quote,verbatim,ragged-right,relative=2]
719 \key g \major
720 %    Voice "1"               Voice "2"
721 << { g4 fis8( g) a4 g } \\ { d4 d d d }  >>
722 @end lilypond
723
724 Beachte, dass die Hälse der zweiten Stimme nun nach unten zeigen.
725
726 Hier ein anderes Beispiel:
727
728 @lilypond[quote,verbatim,ragged-right,relative=2]
729 \key d \minor
730 %    Voice "1"             Voice "2"
731 << { r4 g g4. a8 }    \\ { d,2 d4 g }       >>
732 << { bes4 bes c bes } \\ { g4 g g8( a) g4 } >>
733 << { a2. r4 }         \\ { fis2. s4 }       >>
734 @end lilypond
735
736 Es ist nicht notwendig, für jeden Takt eine eigene
737 @code{<< \\ >>}-Konstruktion zu benutzen.  Bei Musik mit nur wenigen
738 Noten pro Takt kann es die Quelldatei besser lesbar machen, aber
739 wenn in einem Takt viele Noten vorkommen, kann man die gesamten Stimmen
740 separat schreiben, wie hier:
741
742 @lilypond[quote,verbatim,ragged-right,relative=2]
743 \key d \minor
744 << {
745   % Voice "1"
746   r4 g g4. a8 |
747   bes4 bes c bes |
748   a2. r4 |
749 } \\ {
750   % Voice "2"
751   d,2 d4 g |
752   g4 g g8( a) g4 |
753   fis2. s4 |
754 } >>
755 @end lilypond
756
757 Dieses Beispiel hat nur zwei Stimmen, aber die gleiche Konstruktion kann
758 angewendet werden, wenn man drei oder mehr Stimmen hat, indem man weitere
759 Backslash-Trenner hinzufügt.
760
761 Die Stimmenkontexte tragen die Namen @code{"1"}, @code{"2"} usw. In jedem
762 dieser Kontexte wird die vertikale Ausrichtung von Hälsen, Bögen, Dynamik-Zeichen
763 usw. entsprechend ausgerichtet.
764
765 @lilypond[quote,verbatim]
766 \new Staff \relative c' {
767   % Main voice
768   c16 d e f
769   %    Voice "1"     Voice "2"                Voice "3"
770   << { g4 f e } \\ { r8 e4 d c8~ } >> |
771   << { d2 e }   \\ { c8 b16 a b8 g~ g2 } \\ { s4 b c2 } >> |
772 }
773 @end lilypond
774
775 Diese Stimmen sind alle getrennt von der Hauptstimme, die die Noten
776 außerhalb der @code{<< .. >>}-Konstruktion beinhaltet.  Lassen wir es
777 uns die @emph{simultane Konstruktion} nennen.  Bindebögen und Legatobögen
778 können nur Noten in der selben Stimmen miteinander verbinden und können
779 also somit nicht aus der simultanen Konstruktion hinausreichen.  Umgekehrt
780 gilt, dass parallele Stimmen aus eigenen simultanen Konstruktionen auf
781 dem gleichen Notensystem die gleiche Stimme sind.  Auch andere, mit dem
782 Stimmenkontext verknüpfte Eigenschaften erstrecken sich auf alle
783 simultanen Konstrukte.  Hier das gleiche Beispiel, aber mit unterschiedlichen Farben für die Notenköpfe der unterschiedlichen Stimmen.
784 Beachten Sie, dass Änderungen in einer Stimme sich nicht auf die anderen
785 Stimmen erstrecken, aber sie sind weiterhin in der selben Stimme vorhanden,
786 auch noch später im Stück.  Beachten Sie auch, dass übergebundene Noten
787 über die gleiche Stimme in zwei Konstrukten verteilt werden können, wie
788 hier an der blauen Dreieckstimme gezeigt.
789
790 @lilypond[quote,verbatim]
791 \new Staff \relative c' {
792   % Main voice
793   c16 d e f
794   <<   % Bar 1
795     {
796       \voiceOneStyle
797       g4 f e
798     }
799   \\
800     {
801       \voiceTwoStyle
802       r8 e4 d c8~
803     }
804   >> |
805   <<  % Bar 2
806      % Voice 1 continues
807     { d2 e }
808   \\
809      % Voice 2 continues
810     { c8 b16 a b8 g~ g2 }
811   \\
812     {
813       \voiceThreeStyle
814       s4 b c2
815     }
816   >> |
817 }
818 @end lilypond
819
820 @funindex \voiceOneStyle
821 @funindex \voiceTwoStyle
822 @funindex \voiceThreeStyle
823 @funindex \voiceFourStyle
824 @funindex \voiceNeutralStyle
825
826 Die Befehle @code{\voiceXXXStyle} sind vor allem dazu da, um in
827 pädagogischen Dokumenten wie diesem hier angewandt zu werden.
828 Sie verändern die Farbe des Notenkopfes, des Halses und des Balkens, und
829 zusätzlich die Form des Notenkopfes, damit die einzelnen Stimmen
830 einfach auseinander gehalten werden können.  Die erste Stimme ist als
831 rote Raute definiert, die zweite Stimme als blaue Dreiecke, die dritte
832 Stimme als grüne Kreise mit Kreuz und die vierte Stimme (die hier nicht
833 benutzt wird) hat dunkelrote Kreuze.  @code{\voiceNeutralStyle} (hier auch
834 nicht benutzt) macht diese Änderungen rückgängig.  Später soll gezeigt
835 werden, wie Befehle wie diese vom Benutzer selber erstellt werden
836 können.  Siehe auch @ref{Sichtbarkeit und Farbe von Objekten} und
837 @ref{Variablen für Optimierungen einsetzen}.
838
839 @cindex Polyphonie und relativer Notationsmodus
840 @cindex relativer Notationsmodus und Polyphonie
841
842 Polyphonie ändert nicht die Verhältnisse der Noten innerhalb eines
843 @code{\relative}-Blocks.  Jede Note wird weiterhin relativ zu
844 der vorherigen Note errechnet, oder relativ zur ersten Note des vorigen
845 Akkords.  So ist etwa hier
846
847 @example
848 \relative c' @{ NoteA << < NoteB NoteC > \\ NoteD >> NoteE @}
849 @end example
850
851 @noindent
852 @code{NoteB} bezüglich @code{NoteA}                      @*
853 @code{NoteC} bezüglich @code{NoteB}, nicht @code{noteA};   @*
854 @code{NoteD} bezüglich @code{NoteB}, nicht @code{NoteA} oder
855 @code{NoteC};                                                 @*
856 @code{NoteE} bezüglich @code{NoteD}, nicht @code{NoteA} errechnet.
857
858 Eine andere Möglichkeit ist, den @code{\relative}-Befehl vor jede
859 Stimme zu stellen.  Das bietet sich an, wenn die Stimmen weit voneinander
860 entfernt sind.
861
862 @example
863 \relative c' @{ NoteA ... @}
864 <<
865   \relative c'' @{ < NoteB NoteC > ... @}
866 \\
867   \relative g' @{ NoteD ... @}
868 >>
869 \relative c' @{ NoteE ... @}
870 @end example
871
872 Zum Schluss wollen wir die Stimmen in einem etwas komplizierteren Stück
873 analysieren.  Hier die Noten der ersten zwei Takte von Chopins
874 @notation{Deux Nocturnes}, Op. 32.  Dieses Beispiel soll später in diesem
875 und dem nächsten Kapitel benutzt werden, um verschiedene Techniken,
876 Notation zu erstellen, zu demonstrieren.  Ignorieren Sie deshalb an diesem
877 Punkt alles in folgendem Code, das Ihnen seltsam vorkommt, und konzentrieren
878 Sie sich auf die Noten und die Stimmen.  Die komplizierten Dinge werden
879 in späteren Abschnitten erklärt werden.
880
881 @c The following should appear as music without code
882 @lilypond[quote,ragged-right]
883 \new Staff \relative c'' {
884   \key aes \major
885   <<  % Voice one
886     { c2 aes4. bes8 }
887   \\  % Voice two
888     { aes2 f4 fes }
889   \\  % No voice three
890   \\  % Voice four
891     {
892       % Ignore these for now - they are explained in Ch 4
893       \once \override NoteColumn #'force-hshift = #0
894       <ees c>2
895       \once \override NoteColumn #'force-hshift = #0.5
896       des2
897     }
898   >> |
899   <c ees aes c>1 |
900 }
901 @end lilypond
902
903 Die Richtung der Hälse wird  oft benutzt, um anzuzeigen, dass zwei
904 gleichzeitige Melodien sich fortsetzen.  Hier zeigen die Hälse aller
905 oberen Noten nach oben und die Hälse aller unteren Noten nach unten.
906 Das ist der erste Anhaltspunkt, dass mehr als eine Stimme benötigt
907 wird.
908
909 Aber die wirkliche Notwendigkeit für mehrere Stimmen tritt erst
910 dann auf, wenn unterschiedliche Noten gleichzeitig erklingen, aber
911 unterschiedliche Dauern besitzen.  Schauen Sie sich die Noten
912 auf dem dritten Schlag im ersten Takt an.  Das As ist eine punktierte
913 Viertel, das F ist eine Viertel und das Des eine Halbe.  Sie können
914 nicht als Akkord geschrieben werden, denn alle Noten in einem Akkord
915 besitzen die gleiche Dauer.  Sie können aber auch nicht nacheinander
916 geschrieben werden, denn sie beginnen auf der gleichen Taktzeit.  Dieser
917 Taktabschnitt benötigt drei Stimmen, und normalerweise schreibt man
918 drei Stimmen für den ganzen Takt, wie im Beispiel unten zu sehen ist;
919 hier sind unterschiedliche Köpfe und Farben für die verschiedenen Stimmen
920 eingesetzt.  Noch einmal: der Quellcode für dieses Beispiel wird später
921 erklärt werden, deshalb ignorieren Sie alles, was Sie hier nicht
922 verstehen können.
923
924 @c The following should appear as music without code
925 @c The three voice styles should be defined in -init
926 @lilypond[quote,ragged-right]
927 \new Staff \relative c'' {
928   \key aes \major
929   <<
930     {  % Voice one
931       \voiceOneStyle
932       c2 aes4. bes8
933     }
934   \\  % Voice two
935     { \voiceTwoStyle
936       aes2 f4 fes
937     }
938   \\  % No Voice three (we want stems down)
939   \\  % Voice four
940     { \voiceThreeStyle
941       % Ignore these for now - they are explained in Ch 4
942       \once \override NoteColumn #'force-hshift = #0
943       <ees c>2
944       \once \override NoteColumn #'force-hshift = #0.5
945       des2
946     }
947   >>
948   <c ees aes c>1
949 }
950 @end lilypond
951
952 Versuchen wir also, diese Musik selber zu notieren.  Wie wir sehen
953 werden, beinhaltet das einige Schwierigkeiten.  Fangen wir an, wie
954 wir es gelernt haben, indem wir mit der @code{<< \\  >>}-Konstruktion
955 die drei Stimmen des ersten Taktes notieren:
956
957 @lilypond[quote,verbatim,ragged-right]
958 \new Staff \relative c'' {
959   \key aes \major
960   <<
961     { c2 aes4. bes8 } \\ { aes2 f4 fes } \\ { <ees c>2 des }
962   >> |
963   <c ees aes c>1 |
964 }
965 @end lilypond
966
967 @cindex Hals nach unten
968 @cindex Hals nach oben
969 @cindex Notenhals, Richtung
970 @cindex Richtung des Notenhalses
971 @cindex Notenhalsrichtung
972 @cindex Stimmen und Notenhalsrichtung
973 @cindex Notenhalsrichtung in Stimmen
974
975 Die Richtung des Notenhalses wird automatisch zugewiesen; die ungeraden
976 Stimmen tragen Hälse nach oben, die gerade Hälse nach unten.  Die Hälse
977 für die Stimmen 1 und 2 stimmen, aber die Hälse in der dritten Stimme
978 sollen in diesem Beispiel eigentlich nach unten zeigen.  Wir können das
979 korrigieren, indem wir die dritte Stimme einfach auslassen und die
980 Noten in die vierte Stimme verschieben.  Das wird einfach vorgenommen,
981 indem noch ein Paar @code{\\}-Stimmen hinzugefügt wird.
982
983 @lilypond[quote,verbatim,ragged-right]
984 \new Staff \relative c'' {
985   \key aes \major
986   <<  % Voice one
987     { c2 aes4. bes8 }
988   \\  % Voice two
989     { aes2 f4 fes }
990   \\  % Omit Voice three
991   \\  % Voice four
992     { <ees c>2 des }
993   >> |
994   <c ees aes c>1 |
995 }
996 @end lilypond
997
998 @noindent
999 Wie zu sehen ist, ändert das die Richtung der Hälse, aber zeigt ein
1000 anderes Problem auf, auf das man manchmal bei mehreren Stimmen stößt:
1001 Die Hälse einer Stimme können mit den Hälsen anderer Stimmen kollidieren.
1002 LilyPond erlaubt Noten in verschiedenen Stimmen sich auf der gleichen
1003 vertikalen Position zu befinden, wenn die Hälse in entgegengesetzte
1004 Richtungen zeigen, und positioniert die dritte und vierte Stimme dann
1005 so, dass Zusammenstöße möglichst vermieden werden.  Das funktioniert
1006 gewöhnlich recht gut, aber in diesem Beispiel sind die Noten der untersten
1007 Stimme eindeutig standardmäßig schlecht positioniert.  LilyPond bietet
1008 verschiedene Möglichkeiten, die horizontale Position von Noten
1009 anzupassen.  Wir sind aber noch nicht so weit, dass wir diese Funktionen
1010 anwenden könnten.  Darum heben wir uns das Problem für einen späteren Abschnitt auf; siehe @code{force-hshift}-Eigenschaft in
1011 @ref{Überlappende Notation in Ordnung bringen}.
1012
1013
1014 @seealso
1015 Notationsreferenz: @ruser{Mehrere Stimmen}.
1016
1017
1018 @node Přímé začátky hlasů
1019 @subsection Přímé začátky hlasů
1020 @translationof Explicitly instantiating voices
1021
1022 @funindex \voiceOne
1023 @funindex voiceOne
1024 @funindex \voiceTwo
1025 @funindex voiceTwo
1026 @funindex \voiceThree
1027 @funindex voiceThree
1028 @funindex \voiceFour
1029 @funindex voiceFour
1030 @funindex \oneVoice
1031 @funindex oneVoice
1032 @funindex \new Voice
1033 @cindex Voice context, erstellen von
1034 @cindex Stimmenkontexte, erstellen von
1035
1036 Voice-Kontexte können auch manuell innerhalb
1037 eines @code{<< >>}-Abschnittes initiiert werden.  Mit den Befehlen
1038 @code{\voiceOne} bis hin zu @code{\voiceFour} kann jeder Stimme
1039 entsprechendes Verhalten von vertikaler Verschiebung und Richtung
1040 von Hälsen und anderen Objekten hinzugefügt werden.  In längeren
1041 Partituren können die Stimmen damit besser auseinander gehalten
1042 werden.
1043
1044 Die @code{<< \\ >>}-Konstruktion, die wir im vorigen Abschnitt
1045 verwendet haben:
1046
1047 @example
1048 \new Staff @{
1049   \relative c' @{
1050     << @{ e4 f g a @} \\ @{ c,4 d e f @} >>
1051   @}
1052 @}
1053 @end example
1054
1055 @noindent
1056 ist identisch mit
1057
1058 @example
1059 \new Staff <<
1060   \new Voice = "1" @{ \voiceOne \relative c' @{ e4 f g a @} @}
1061   \new Voice = "2" @{ \voiceTwo \relative c' @{ c4 d e f @} @}
1062 >>
1063 @end example
1064
1065 Beide würden folgendes Notenbild erzeugen:
1066
1067 @c The following example should not display the code
1068 @lilypond[ragged-right,quote]
1069 \new Staff <<
1070   \new Voice = "1" { \voiceOne \relative c' { e4 f g a } }
1071   \new Voice = "2" { \voiceTwo \relative c' { c4 d e f } }
1072 >>
1073 @end lilypond
1074
1075 @cindex Stimmen, mehrere zu einer zusammenführen
1076 @cindex eine Stimme wiederherstellen
1077
1078 Der @code{\voiceXXX}-Befehl setzt die Richtung von Hälsen,
1079 Bögen, Artikulationszeichen, Text, Punktierungen und Fingersätzen.
1080 @code{\voiceOne} und @code{\voiceThree} lassen diese Objekte
1081 nach oben zeigen, @code{\voiceTwo} und @code{\voiceFour}
1082 dagegen lassen sie abwärts zeigen. Diese Befehle erzeugen eine
1083 horizontale Verschiebung, wenn es erforderlich ist, um Zusammenstöße
1084 zu vermeiden.  Der Befehl
1085 @code{\oneVoice} stellt wieder auf das normale Verhalten um.
1086
1087 Schauen wir uns in einigen einfachen Beispielen an, was genau
1088 die Befehle @code{\oneVoice}, @code{\voiceOne} und @code{voiceTwo}
1089 mit Text, Bögen und Dynamikbezeichnung anstellen:
1090
1091 @lilypond[quote,ragged-right,verbatim]
1092 \relative c' {
1093   % Default behavior or behavior after \oneVoice
1094   c4 d8~ d e4( f | g4 a) b-> c |
1095 }
1096 @end lilypond
1097
1098 @lilypond[quote,ragged-right,verbatim]
1099 \relative c' {
1100   \voiceOne
1101   c4 d8~ d e4( f | g4 a) b-> c |
1102   \oneVoice
1103   c,4 d8~ d e4( f | g4 a) b-> c |
1104 }
1105 @end lilypond
1106
1107 @lilypond[quote,ragged-right,verbatim]
1108 \relative c' {
1109   \voiceTwo
1110   c4 d8~ d e4( f | g4 a) b-> c |
1111   \oneVoice
1112   c,4 d8~ d e4( f | g4 a) b-> c |
1113 }
1114 @end lilypond
1115
1116 Schauen wir und nun drei unterschiedliche Arten an, den gleichen
1117 Abschnitt polyphoner Musik zu notieren, jede Art mit ihren
1118 Vorteilen in unterschiedlichen Situationen.  Wir benutzen dabei
1119 das Beispiel vom vorherigen Abschnitt.
1120
1121 Ein Ausdruck, der direkt innerhalb einer @code{<< >>}-Umgebung
1122 auftritt, gehört der Hauptstimme an.  Das ist nützlich, wenn zusätzliche
1123 Stimme auftreten, während die Hauptstimme sich fortsetzt.  Hier also
1124 eine bessere Version des Beispiels aus dem vorigen Abschnitt.  Die
1125 farbigen Kreuz-Notenköpfe zeigen, dass die Hauptstimme sich jetzt in
1126 einem einzigen Stimmen (@code{voice})-Kontext befindet.  Somit kann ein
1127 Phrasierungsbogen ober sie gesetzt werden.
1128
1129 @lilypond[quote,ragged-right,verbatim]
1130 \new Staff \relative c' {
1131   \voiceOneStyle
1132   % The following notes are monophonic
1133   c16^( d e f
1134   % Start simultaneous section of three voices
1135   <<
1136     % Continue the main voice in parallel
1137     { g4 f e | d2 e) | }
1138     % Initiate second voice
1139     \new Voice {
1140       % Set stems, etc., down
1141       \voiceTwo
1142       r8 e4 d c8~ | c8 b16 a b8 g~ g2 |
1143     }
1144     % Initiate third voice
1145     \new Voice {
1146       % Set stems, etc, up
1147       \voiceThree
1148       s2. | s4 b4 c2 |
1149     }
1150   >>
1151 }
1152 @end lilypond
1153
1154 @cindex Verschachteln von musikalischen Ausdrücken
1155 @cindex Verschachteln von gleichzeitigen Ausdrücken
1156 @cindex Ausdrücke, Verschachteln von
1157 @cindex Stimmen, temporär
1158 @cindex Stimmen, Verschachteln von
1159 @cindex Verschachteln von Stimmen
1160 @cindex temporäre Stimmen
1161
1162 Tiefer verschachtelte polyphone Konstrukte sind möglich, und
1163 wenn eine Stimme nur kurz auftaucht, kann das der bessere Weg
1164 sein, Noten zu setzen:
1165
1166 @lilypond[quote,ragged-right,verbatim]
1167 \new Staff \relative c' {
1168   c16^( d e f
1169   <<
1170     { g4 f e | d2 e2) | }
1171     \new Voice {
1172       \voiceTwo
1173       r8 e4 d c8~
1174       <<
1175         { c8 b16 a b8 g~ g2 | }
1176         \new Voice {
1177           \voiceThree
1178           s4 b4 c2 |
1179         }
1180       >>
1181     }
1182   >>
1183 }
1184 @end lilypond
1185
1186 @cindex Platzhalternoten
1187 @cindex unsichtbare Noten
1188 @cindex Noten verstecken
1189
1190 Diese Methode, neue Stimmen kurzzeitig zu verschachteln, bietet sich
1191 an, wenn nur sehr kleine Abschnitte polyphonisch gesetzt sind.  Wenn
1192 aber die ganze Partitur polyphon ist, ist es meistens klarer, direkt
1193 unterschiedliche Stimmen über die gesamte Partitur hinweg einzusetzen.
1194 Hierbei kann man mit unsichtbaren Noten dann die Stellen überspringen,
1195 an denen die Stimme nicht auftaucht, wie etwa hier:
1196
1197 @lilypond[quote,ragged-right,verbatim]
1198 \new Staff \relative c' <<
1199   % Initiate first voice
1200   \new Voice {
1201     \voiceOne
1202     c16^( d e f g4 f e | d2 e) |
1203   }
1204   % Initiate second voice
1205   \new Voice {
1206     % Set stems, etc, down
1207     \voiceTwo
1208     s4 r8 e4 d c8~ | c8 b16 a b8 g~ g2 |
1209   }
1210   % Initiate third voice
1211   \new Voice {
1212     % Set stems, etc, up
1213     \voiceThree
1214     s1 | s4 b c2 |
1215   }
1216 >>
1217 @end lilypond
1218
1219 @subsubheading Notenkolumnen
1220
1221 @cindex Notenkolumne
1222 @cindex Notenkollision
1223 @cindex Zusammenstöße von Noten
1224 @cindex Kollisionen von Noten
1225 @cindex Vertikale Position
1226 @cindex shift-Befehle
1227 @cindex Verschieben von Noten
1228 @funindex \shiftOff
1229 @funindex \shiftOn
1230 @funindex \shiftOnn
1231 @funindex \shiftOnnn
1232 @funindex shiftOff
1233 @funindex shiftOn
1234 @funindex shiftOnn
1235 @funindex shiftOnnn
1236
1237 Dicht notierte Noten in einem Akkord, oder Noten auf der gleichen
1238 Taktzeit aber in unterschiedlichen Stimmen, werden in zwei, manchmal
1239 auch mehreren Kolumnen gesetzt, um die Noten am Überschneiden zu
1240 hindern.  Wir bezeichnen sie als Notenkolumnen.  Jede Stimme hat
1241 eine eigene Kolumne, und ein stimmenabhängiger Verschiebunsbefehl (engl.
1242 shift) wird eingesetzt, wenn eine Kollision auftreten könnte.
1243 Das zeigt das Beispiel oben.  Im zweiten Takt wird das C der zweiten
1244 Stimme nach rechts verschoben, relativ gesehen zum D der ersten Stimme,
1245 und im letzten Akkord wird das C der dritten Stimme auch nach
1246 rechts verschoben im Verhältnis zu den anderen Stimmen.
1247
1248 Die Befehle @code{\shiftOn}, @code{\shiftOnn}, @code{\shiftOnnn} und
1249 @code{\shiftOff} bestimmen den Grad, zu dem Noten und Akkorde
1250 verschoben werden sollen, wenn sich sonst eine Kollision nicht
1251 vermeiden ließe.  Die Standardeinstellung ist, dass die äußeren
1252 Stimmen (also normalerweise Stimme 1 und 2) @code{\shiftOff}
1253 eingestellt haben, während für die inneren Stimmen (3 und 4)
1254 @code{\shiftOn} eingeschaltet ist.  Wenn eine Verschiebung
1255 auftritt, werden Stimmen 1 und 3 nach rechts und Stimmen 2 und 4
1256 nach links verschoben.
1257
1258 @code{\shiftOnn} und @code{\shiftOnnn} definieren weitere
1259 Verschiebungsebenen, die man kurzzeitig anwählen kann, um
1260 Zusammenstöße in komplexen Situationen aufzulösen, siehe auch
1261 @ref{Beispiele aus dem Leben}.
1262
1263 Eine Notenkolumne kann nur eine Note (oder einen Akkord) von
1264 einer Stimme mit Hälsen nach oben und eine Note (oder einen
1265 Akkord) von einer Stimme mit Hälsen nach unten tragen.  Wenn
1266 Noten von zwei Stimmen mit den Hälsen in die gleiche Richtung
1267 an der selben Stelle auftreten und in beiden Stimmen ist
1268 keine Verschiebung oder die gleiche Verschiebungsebene
1269 definiert, wird die Fehlermeldung
1270 @qq{zu viele kollidierende Notenspalten werden ignoriert}
1271 ausgegeben.
1272
1273
1274 @seealso
1275 Notationsreferenz: @ruser{Mehrere Stimmen}.
1276
1277
1278 @node Hlasy a zpěvy
1279 @subsection Hlasy a zpěvy
1280 @translationof Voices and vocals
1281
1282 Die Notation von Vokalmusik ihre eigene Schwierigkeit, nämlich
1283 die Kombination von zwei Ausdrücken: den Noten und dem Text.
1284 Achtung: Der Gesangstext wird auf Englisch @qq{lyrics} genannt.
1285
1286
1287 @funindex \new Lyrics
1288 @funindex \lyricsto
1289 @funindex lyricsto
1290 @funindex Lyrics
1291 @cindex Lyrics context, erstellen
1292 @cindex Gesangtext, Verbindung mit Noten
1293
1294 Wir haben schon den @code{\addlyrics@{@}}-Befehl betrachtet,
1295 mit dem einfache Partituren gut erstellt werden können.
1296 Diese Methode ist jedoch recht eingeschränkt.  Wenn der Notensatz
1297 komplexer wird, muss der Gesangstext mit einem neuen
1298 @code{Lyrics}-Kontext begonnen werden (mit dem Befehl
1299 @code{\new Lyrics}) und durch den Befehl @code{\lyricsto@{@}}
1300 mit einer bestimmten Stimme verknüpft werden, indem die
1301 Bezeichnung der Stimme benutzt wird.
1302
1303 @lilypond[quote,verbatim]
1304 <<
1305   \new Voice = "one" {
1306     \relative c'' {
1307       \autoBeamOff
1308       \time 2/4
1309       c4 b8. a16 | g4. f8 | e4 d | c2 |
1310     }
1311   }
1312   \new Lyrics \lyricsto "one" {
1313     No more let | sins and | sor -- rows | grow. |
1314   }
1315 >>
1316 @end lilypond
1317
1318 Beachten Sie, dass der Notentext nur mit einem @code{Voice}-Kontext
1319 verknüpft werden kann, nicht mit einem @code{Staff}-Kontext.
1320 In diesem Fall also müssen Sie ein System (@code{Staff}) und
1321 eine Stimme (@code{Voice}) explizit erstellen, damit alles
1322 funktioniert.
1323
1324 @cindex Gesangstext und Balken
1325 @cindex Text und Balken
1326 @cindex Balken und Text
1327 @funindex \autoBeamOff
1328 @funindex autoBeamOff
1329
1330 Die automatischen Balken, die LilyPond in der Standardeinstellung
1331 setzt, eignen sich sehr gut für instrumentale Musik, aber nicht
1332 so gut für Musik mit Text, wo man entweder gar keine Balken
1333 benutzt oder sie einsetzt, um Melismen zu verdeutlichen.
1334 Im Beispiel oben wird deshalb der Befehl @code{\autoBeamOff}
1335 eingesetzt um die automatischen Balken (engl. beam) auszuschalten.
1336
1337 @funindex \new ChoirStaff
1338 @funindex \lyricmode
1339 @funindex ChoirStaff
1340 @funindex lyricmode
1341 @cindex Vokalpartitur, Aufbau
1342 @cindex Chorpartitur, Aufbau
1343
1344 Wir wollen das frühere Beispiel von @notation{Judas Maccabæus}
1345 benutzen, um diese flexiblere Technik für Gesangstexte
1346 zu illustrieren.  Das Beispiel wurde so umgeformt, dass jetzt
1347 Variablen eingesetzt werden, um den Text und die Noten
1348 von der Partiturstruktur zu trennen.  Es wurde zusätzlich
1349 eine Chorpartiturklammer hinzugefügt.  Der Gesangtext muss mit
1350 @code{\lyricmode} eingegeben werden, damit er als Text und
1351 nicht als Noten interpretiert werden kann.
1352
1353 @lilypond[quote,verbatim]
1354 global = { \key f \major \time 6/8 \partial 8 }
1355
1356 SopOneMusic = \relative c'' {
1357   c8 | c8([ bes)] a a([ g)] f | f'4. b, | c4.~ c4
1358 }
1359 SopOneLyrics = \lyricmode {
1360   Let | flee -- cy flocks the | hills a -- dorn, __
1361 }
1362 SopTwoMusic = \relative c' {
1363   r8 | r4. r4 c8 | a'8([ g)] f f([ e)] d | e8([ d)] c bes'
1364 }
1365 SopTwoLyrics = \lyricmode {
1366   Let | flee -- cy flocks the | hills a -- dorn,
1367 }
1368
1369 \score {
1370   \new ChoirStaff <<
1371     \new Staff <<
1372       \new Voice = "SopOne" {
1373         \global
1374         \SopOneMusic
1375       }
1376       \new Lyrics \lyricsto "SopOne" {
1377         \SopOneLyrics
1378       }
1379     >>
1380     \new Staff <<
1381       \new Voice = "SopTwo" {
1382         \global
1383         \SopTwoMusic
1384       }
1385       \new Lyrics \lyricsto "SopTwo" {
1386         \SopTwoLyrics
1387       }
1388     >>
1389   >>
1390 }
1391 @end lilypond
1392
1393 Dies ist die Grundstruktur für alle Chorpartituren.  Mehr
1394 Systeme können hinzugefügt werden, wenn sie gebraucht werden, mehr
1395 Stimmen können zu jedem System hinzugefügt werden, mehr
1396 Strophen können zum Text hinzugefügt werden, und schließlich
1397 können die Variablen schnell in eine eigene Datei verschoben
1398 werden, wenn sie zu lang werden sollten.
1399
1400 @cindex Choralnotation
1401 @cindex Hymnus-Notation
1402 @cindex SATB-Partitur
1403 @cindex mehrere Strophen
1404 @cindex Strophen, mehrere
1405 @cindex Choral mit mehreren Strophen
1406
1407 Hier ein Beispiel der ersten Zeile eines Chorals mit vier
1408 Strophen für gemischten Chor.  In diesem Fall ist der Text
1409 für alle vier Stimmen identisch.  Beachten Sie, wie die
1410 Variablen eingesetzt werden, um Inhalt (Noten und Text) und Form
1411 (die Partitur) voneinander zu trennen.  Eine Variable wurde
1412 eingesetzt, um die Elemente, die auf beiden Systemen auftauchen,
1413 aufzunehmen, nämlich Taktart und Tonart.  Solch eine
1414 Variable wird oft auch mit @qq{global} bezeichnet.
1415
1416 @lilypond[quote,verbatim]
1417 keyTime = { \key c \major \time 4/4 \partial 4 }
1418
1419 SopMusic   = \relative c' { c4 | e4. e8 g4  g    | a4   a   g  }
1420 AltoMusic  = \relative c' { c4 | c4. c8 e4  e    | f4   f   e  }
1421 TenorMusic = \relative c  { e4 | g4. g8 c4.   b8 | a8 b c d e4 }
1422 BassMusic  = \relative c  { c4 | c4. c8 c4  c    | f8 g a b c4 }
1423
1424 VerseOne =
1425   \lyricmode { E -- | ter -- nal fa -- ther, | strong to save, }
1426 VerseTwo   =
1427   \lyricmode { O | Christ, whose voice the | wa -- ters heard, }
1428 VerseThree =
1429   \lyricmode { O | Ho -- ly Spi -- rit, | who didst brood }
1430 VerseFour  =
1431   \lyricmode { O | Tri -- ni -- ty of | love and pow'r }
1432
1433 \score {
1434   \new ChoirStaff <<
1435     \new Staff <<
1436       \clef "treble"
1437       \new Voice = "Sop"  { \voiceOne \keyTime \SopMusic }
1438       \new Voice = "Alto" { \voiceTwo \AltoMusic }
1439       \new Lyrics \lyricsto "Sop" { \VerseOne   }
1440       \new Lyrics \lyricsto "Sop" { \VerseTwo   }
1441       \new Lyrics \lyricsto "Sop" { \VerseThree }
1442       \new Lyrics \lyricsto "Sop" { \VerseFour  }
1443     >>
1444     \new Staff <<
1445       \clef "bass"
1446       \new Voice = "Tenor" { \voiceOne \keyTime \TenorMusic }
1447       \new Voice = "Bass"  { \voiceTwo \BassMusic }
1448     >>
1449   >>
1450 }
1451 @end lilypond
1452
1453
1454 @seealso
1455 Notation Reference: @ruser{Notation von Gesang}.
1456
1457
1458 @node Souvislosti a rytci
1459 @section Souvislosti a rytci
1460 @translationof Contexts and engravers
1461
1462 Souvislosti a rytci (@qq{Stempel}) sind in den vorherigen
1463 Abschnitten schon aufgetaucht; hier wollen wir uns ihnen
1464 nun etwas ausführlicher widmen, denn sie sind sehr
1465 wichtig, um Feineinstellungen in der LilyPond-Notenausgabe
1466 vornehmen zu können.
1467
1468 @menu
1469 * Vysvětlení souvislostí::
1470 * Vytvoření souvislostí::
1471 * Vysvětlení rytců::
1472 * Změna souvisejících vlastností::
1473 * Přidání a odstranění rytců::
1474 @end menu
1475
1476 @node Vysvětlení souvislostí
1477 @subsection Vysvětlení souvislostí
1478 @translationof Contexts explained
1479
1480 @cindex Kontexte erklärt
1481
1482 Wenn Noten gesetzt werden, müssen viele Elemente zu der Notenausgabe
1483 hinzugefügt werden,
1484 die im Quellcode gar nicht explizit vorkommen.  Vergleichen Sie
1485 etwa den Quellcode und die Notenausgabe des folgenden Beispiels:
1486
1487 @lilypond[quote,verbatim,relative=2]
1488 cis4 cis2. | a4 a2. |
1489 @end lilypond
1490
1491 Der Quellcode ist sehr kurz und knapp, während in der
1492 Notenausgabe Taktlinien, Vorzeichen, ein Schlüssel und
1493 eine Taktart hinzugefügt wurden.  Während LilyPond
1494 den Eingabetext @emph{interpretiert}, wird die
1495 musikalische Information von rechts nach links gelesen,
1496 in etwa, wie man eine Partitur von links nach
1497 rechts liest.  Während das Programm den Code liest,
1498 merkt es sich, wo sich Taktgrenzen befinden und
1499 für welche Tonhöhen Versetzungszeichen gesetzt werden
1500 müssen.  Diese Information muss auf mehreren Ebenen
1501 gehandhabt werden, denn Versetzungszeichen etwa
1502 beziehen sich nur auf ein System, Taktlinien dagegen
1503 üblicherweise auf die gesamte Partitur.
1504
1505 Innerhalb von LilyPond sind diese Regeln und
1506 Informationshappen in @emph{Kontexten} (engl.
1507 contexts) gruppiert.  Der @code{Voice} (Stimmen)-Kontext
1508 wurde schon vorgestellt.  Daneben
1509 gibt es noch die @code{Staff} (Notensystem-) und
1510 @code{Score} (Partitur)-Kontexte.  Kontexte sind
1511 hierarchisch geschichtet um die hierarchische
1512 Struktur einer Partitur zu spiegeln.  Ein @code{Staff}-Kontext
1513 kann zum Beispiel viele @code{Voice}-Kontexte beinhalten,
1514 und ein @code{Score}-Kontext kann viele
1515 @code{Staff}-Kontexte beinhalten.
1516
1517 @quotation
1518 @sourceimage{context-example,5cm,,}
1519 @end quotation
1520
1521 Jeder Kontext hat die Aufgabe, bestimmte Notationsregeln
1522 zu erzwingen, bestimmte Notationsobjekte zu erstellen und
1523 verbundene Elemente zu ordnen.  Der @code{Voice}-Kontext
1524 zum Beispiel kann eine Vorzeichenregel einführen und der
1525 @code{Staff}-Kontext hält diese Regel dann aufrecht, um
1526 einzuordnen, ob ein Versetzungszeichen gesetzt werden
1527 muss oder nicht.
1528
1529 Ein anderes Beispiel: die Synchronisation der Taktlinien ist
1530 standardmäßig im @code{Score}-Kontext verankert.  Manchmal sollen
1531 die Systeme einer Partitur aber unterschiedliche Taktarten
1532 enthalten, etwa in einer polymetrischen Partitur mit
1533 4/4- und 3/4-Takt.  In diesem Fall müssen also die Standardeinstellungen
1534 der @code{Score}- und @code{Staff}-Kontexte verändert werden.
1535
1536 In einfachen Partituren werden die Kontexte implizit erstellt,
1537 und es kann sein, dass Sie sich dessen gar nicht bewusst sind.
1538 Für etwas größere Projekte, etwa mit vielen Systemen, müssen
1539 die Kontexte aber explizit erstellt werden, um sicher zu gehen,
1540 dass man auch wirklich die erwünschte Zahl an Systemen in der
1541 richtigen Reihenfolge erhält.  Wenn Stücke mit spezialisierter
1542 Notation gesetzt werden sollen, ist es üblich, die existierenden
1543 Kontexte zu verändern oder gar gänzlich neue zu definieren.
1544
1545 Zusätzlich zu den @code{Score,} @code{Staff} und
1546 @code{Voice}-Kontexten gibt es noch Kontexte, die zwischen
1547 der Partitur- und Systemebene liegen und Gruppen von Systemen
1548 kontrollieren.  Das sind beispielsweise der
1549 @code{PianoStaff} und @code{ChoirStaff}-Kontext.  Es gibt zusätzlich
1550 alternative Kontexte für Systeme und Stimmen sowie eigene Kontexte
1551 für Gesangstexte, Perkussion, Griffsymbole, Generalbass usw.
1552
1553 Die Bezeichnungen all dieser Kontexte werden von einem oder mehreren
1554 englischen
1555 Wörtern gebildet, dabei wird jedes Wort mit einem Großbuchstaben
1556 begonnen und direkt an das folgende ohne Bindestrich oder Unterstrich
1557 angeschlossen, etwa
1558 @code{GregorianTranscriptionStaff}.
1559
1560
1561 @seealso
1562 Notationreferenz: @ruser{Vysvětlení souvislostí}.
1563
1564
1565 @node Vytvoření souvislostí
1566 @subsection Vytvoření souvislostí
1567 @translationof Creating contexts
1568
1569 @funindex \new
1570 @funindex new
1571 @cindex Neue Kontexte
1572 @cindex Erstellen von Kontexten
1573 @cindex Kontexte, Erstellen
1574
1575 In einer Eingabedatei enthält eine @code{Score}-Umgebung (einen
1576 Kontext), die mit
1577 dem Befehl @code{\score} eingeleitet wird, nur einen einzigen
1578 musikalischen Ausdruck und mit ihm verknüpft eine Ausgabedefinition
1579 (entweder eine @code{\layout}- oder eine @code{\midi}-Umgebung).
1580 Üblicherweise wird der @code{Score}-Kontext automatisch von
1581 LilyPond erstellt, wenn der musikalische Ausdruck interpretiert
1582 wird.
1583
1584 Wenn nur ein System vorhanden ist, kann man es ruhig
1585 LilyPond überlassen, auch die @code{Voice}- und @code{Staff}-Kontexte
1586 zu erstellen, aber für komplexere Partituren ist es notwendig,
1587 sie mit einem Befehl zu erstellen.  Der einfachste Befehl
1588 hierzu ist @code{\new}.  Er wird dem musikalischen Ausdruck
1589 vorangestellt, etwa so:
1590
1591 @example
1592 \new @var{Typ} @var{musikalischer Ausdruck}
1593 @end example
1594
1595 @noindent
1596 wobei @var{Typ} eine Kontextbezeichnung (wie etwa @code{Staff} oder
1597 @code{Voice}) ist.  Dieser Befehl erstellt einen neuen Kontext und
1598 beginnt, den @var{muskalischen Ausdruck} innerhalb dieses
1599 Kontexts auszuwerten.
1600
1601 @warning{Der @bs{}@code{new Score}-Befehl sollte nicht benutzt werden,
1602 weil der Partitur-(Score)-Kontext der obersten Ebene
1603 normalerweise automatisch erstellt wird, wenn der musikalische Ausdruck
1604 innerhalb der @code{\score}-Umgebung interpretiert wird.  Standard-Werte
1605 von Kontexteigenschaften, die für einen bestimmten @code{Score} gelten
1606 sollen, können innerhalb der @bs{}@code{layout}-Umgebung definiert werden.
1607 Siehe @ref{Změna souvisejících vlastností,,změnu souvisejících vlastností}.}
1608
1609 Wir haben schon viele explizite Beispiel gesehen, in denen
1610 neue @code{Staff}- und @code{Voice}-Kontexte erstellt wurden, aber
1611 um noch einmal ins Gedächtnis zu rufen, wie diese Befehle benutzt
1612 werden, hier ein kommentiertes Beispiel aus dem richtigen Leben:
1613
1614 @lilypond[quote,verbatim,ragged-right]
1615 \score {  % start of single compound music expression
1616   <<  % start of simultaneous staves section
1617     \time 2/4
1618     \new Staff {  % create RH staff
1619       \clef "treble"
1620       \key g \minor
1621       \new Voice {  % create voice for RH notes
1622         \relative c'' {  % start of RH notes
1623           d4 ees16 c8.
1624           d4 ees16 c8.
1625         }  % end of RH notes
1626       }  % end of RH voice
1627     }  % end of RH staff
1628     \new Staff <<  % create LH staff; needs two simultaneous voices
1629       \clef "bass"
1630       \key g \minor
1631       \new Voice {  % create LH voice one
1632         \voiceOne
1633         \relative g {  % start of LH voice one notes
1634           g8 <bes d> ees, <g c>
1635           g8 <bes d> ees, <g c>
1636         }  % end of LH voice one notes
1637       }  % end of LH voice one
1638       \new Voice {  % create LH voice two
1639         \voiceTwo
1640         \relative g {  % start of LH voice two notes
1641           g4 ees
1642           g4 ees
1643         }  % end of LH voice two notes
1644       }  % end of LH voice two
1645     >>  % end of LH staff
1646   >>  % end of simultaneous staves section
1647 }  % end of single compound music expression
1648 @end lilypond
1649
1650 (Beachten Sie, dass wir hier alle Zeilen, die eine neue
1651 Umgebung entweder mit einer geschweiften Klammer (@code{@{})
1652 oder doppelten spitzen Klammern (@code{<<}) öffnen, mit
1653 jeweils zwei Leerzeichen, und die entsprechenden
1654 schließenden Klammern mit der gleichen Anzahl Leerzeichen
1655 eingerückt werden.  Dies ist nicht erforderlich, es wird aber
1656 zu einem großen Teil die nicht passenden Klammerpaar-Fehler
1657 eliminieren und ist darum sehr empfohlen.  Es macht es
1658 möglich, die Struktur einer Partitur auf einen Blick zu
1659 verstehen, und alle nicht passenden Klammern
1660 erschließen sich schnell.  Beachten Sie auch, dass das
1661 untere Notensystem mit eckigen Klammern erstellt wird,
1662 denn innerhalb dieses Systems brauchen wir zwei Stimmen,
1663 um die Noten darzustellen.  Das obere System braucht
1664 nur einen einzigen musikalischen Ausdruck und ist deshalb
1665 von geschweiften Klammern umschlossen.)
1666
1667 @cindex Kontexte, Benennung
1668 @cindex Benennung von Kontexten
1669
1670 Der @code{\new}-Befehl kann einem Kontext auch einen
1671 Namen zur Identifikation geben, um ihn von anderen Kontexten des
1672 selben Typs zu unterscheiden:
1673
1674 @example
1675 \new @var{Typ} = @var{Name} @var{musikalischer Ausdruck}
1676 @end example
1677
1678 Beachten Sie den Unterschied zwischen der Bezeichnung des
1679 Kontexttyps (@code{Staff}, @code{Voice}, usw.) und dem
1680 Namen, der aus beliebigen Buchstaben bestehen kann
1681 und vom Benutzer frei erfunden werden kann.  Zahlen und
1682 Leerzeichen können auch benutzt werden, in dem Fall
1683 muss der Name aber von doppelten Anführungszeichen
1684 umgeben werden, also etwa
1685 @code{\new Staff = "Mein System 1" @var{musikalischer Ausdruck}}.
1686 Der Name wird
1687 benutzt, um später auf genau diesen spezifischen Kontext
1688 zu verweisen.  Dieses Vorgehen wurde schon in dem Abschnitt
1689 zu Gesangstexten angewandt, siehe @ref{Hlasy a zpěvy,,hlasy a zpěvy}.
1690
1691
1692 @seealso
1693 Notationsreferenz: @ruser{Vytvoření souvislostí}.
1694
1695
1696 @node Vysvětlení rytců
1697 @subsection Vysvětlení rytců
1698 @translationof Engravers explained
1699
1700 @cindex Engraver
1701 @cindex Stempel (Engraver)
1702
1703 Jedes Zeichen des fertigen Notensatzes von LilyPond wird
1704 von einem @code{Engraver} (Stempel) produziert.  Es gibt
1705 also einen Engraver, der die Systeme erstellt, einen, der die
1706 Notenköpfe ausgibt, einen für die Hälse, einen für die
1707 Balken usw. Insgesamt gibt es über 120 Engraver! Zum
1708 Glück braucht man für die meisten Partituren nur ein
1709 paar Engraver, und für einfache Partituren muss man eigentlich
1710 überhaupt nichts über sie wissen.
1711
1712 Engraver leben und wirken aus den Kontexten heraus.  Engraver
1713 wie der @code{Metronome_mark_engraver}, dessen Aktion
1714 und Ausgabe sich auf die gesamte Partitur bezieht, wirken
1715 in der obersten Kontextebene -- dem @code{Score}-Kontext.
1716
1717 Der @code{Clef_engraver} (Schlüssel-Stempel) und der
1718 @code{Key_engraver} (Vorzeichen-Stempel)  finden sich in
1719 jedem @code{Staff}-Kontext, denn unterschiedliche Systeme
1720 könnten unterschiedliche Tonarten und Notenschlüssel
1721 brauchen.
1722
1723 Der @code{Note_heads_engraver} (Notenkopf-Stempel) und der
1724 @code{Stem_engraver} (Hals-Stempel) befinden sich in jedem
1725 @code{Voice}-Kontext, der untersten Kontextebene.
1726
1727 Jeder Engraver bearbeitet die bestimmten Objekte, die mit
1728 seiner Funktion assoziiert sind, und verwaltet die Eigenschaften
1729 dieser Funktion.  Diese Eigenschaften, wie etwa die Eigenschaften,
1730 die mit Kontexten assoziiert sind, können verändert werden,
1731 um die Wirkungsweise des Engravers oder das Erscheinungsbild
1732 der von ihm produzierten Elemente in der Partitur zu ändern.
1733
1734 Alle Engraver haben zusammengesetzte Bezeichnung, die aus
1735 den (englischen) Wörtern ihrer Funktionsweise bestehen.  Nur
1736 das erste Wort hat einen Großbuchstaben, und die restlichen
1737 Wörter werden mit einem Unterstrich angefügt.  Ein
1738 @code{Staff_symbol_engraver}  verantwortet also die Erstellung
1739 der Notenlinien, ein @code{Clef_engraver} entscheidet über die
1740 Art der Notenschlüssel und setzt die entsprechenden Symbole; damit
1741 wird gleichzeitig die Referenztonhöhe auf dem Notensystem festgelegt.
1742
1743 Hier die meistgebräuchlichen Engraver mit ihrer Funktion.
1744 Sie werden sehen, dass es mit etwas Englischkenntnissen
1745 einfach ist, die Funktion eines Engravers von seiner Bezeichnung
1746 abzuleiten.
1747
1748 @multitable @columnfractions .3 .7
1749 @headitem Engraver
1750   @tab Funktion
1751 @item Accidental_engraver
1752   @tab Erstellt Versetzungszeichen, vorgeschlagene und Warnversetzungszeichen.
1753 @item Beam_engraver
1754   @tab Erstellt Balken.
1755 @item Clef_engraver
1756   @tab Erstellt Notenschlüssel.
1757 @item Completion_heads_engraver
1758   @tab Teilt Noten in kleiner Werte, wenn sie über die Taktlinie reichen.
1759 @c The old Dynamic_engraver is deprecated. -jm
1760 @item New_dynamic_engraver
1761   @tab Erstellt Dynamik-Klammern und Dynamik-Texte.
1762 @item Forbid_line_break_engraver
1763   @tab Verbietet Zeilenumbrüche, solange ein musikalisches Element aktiv ist.
1764 @item Key_engraver
1765   @tab Erstellt die Vorzeichen.
1766 @item Metronome_mark_engraver
1767   @tab Erstellt Metronom-Bezeichnungen.
1768 @item Note_heads_engraver
1769   @tab Erstellt Notenköpfe.
1770 @item Rest_engraver
1771   @tab Erstellt Pausen.
1772 @item Staff_symbol_engraver
1773   @tab Ersetllt die (standardmäßig) fünf Notenlinien des Systems.
1774 @item Stem_engraver
1775   @tab Erstellt die Notenhälse und Tremolos mit einem Hals.
1776 @item Time_signature_engraver
1777   @tab Erstellt die Taktartbezeichnung.
1778 @end multitable
1779
1780 @smallspace
1781
1782 Es soll später gezeigt werden, wie die LilyPond-Ausgabe
1783 verändert werden kann, indem die Wirkungsweise der
1784 Engraver beeinflusst wird.
1785
1786
1787 @seealso
1788 Referenz der Interna: @rinternals{Engravers and Performers}.
1789
1790
1791 @node Změna souvisejících vlastností
1792 @subsection Změna souvisejících vlastností
1793 @translationof Modifying context properties
1794
1795 @cindex Kontext-Eigenschaften, Verändern
1796 @cindex Eigenschaften von Kontexten
1797 @cindex Verändern von Kontext-Eigenschaften
1798 @funindex \set
1799 @funindex \unset
1800 @funindex set
1801 @funindex unset
1802
1803 Kontexte sind dafür verantwortlich, die Werte bestimmter
1804 Kontext-@emph{Eigenschaften} zu speichern.  Viele davon
1805 können verändert werden, um die Interpretation der
1806 Eingabe zu beeinflussen und die Ausgabe zu verändern.
1807 Kontexte werden mit dem @code{\set}-Befehl geändert.
1808 Er wird in Form
1809
1810 @example
1811 \set @var{KontextBezeichnung}.@var{eigenschaftsBezeichnung} = #@var{Wert}
1812 @end example
1813
1814 @noindent
1815 verwendet, wobei @var{KontextBezeichnung} üblicherweise
1816 @code{Score},
1817 @code{Staff} oder @code{Voice} ist.  Der erste Teil kann auch
1818 ausgelassen werden; in diesem Fall wird der aktuelle
1819 Kontext (üblicherweise @code{Voice}) eingesetzt.
1820
1821 Die Bezeichnung von Kontexten-Eigenschaften besteht
1822 aus zwei Wörtern, die ohne Unterstrich oder Bindestrich
1823 verbunden sind.  Alle außer dem ersten werden am Anfang
1824 groß geschrieben.  Hier einige Beispiele der gebräuchlichsten
1825 Kontext-Eigenschaften.  Es gibt sehr viel mehr.
1826
1827 @c attempt to force this onto a new page
1828 @need 50
1829 @multitable @columnfractions .25 .15 .45 .15
1830 @headitem eigenschaftsBezeichnung
1831   @tab Typ
1832   @tab Funktion
1833   @tab Beispiel-Wert
1834 @item extraNatural
1835   @tab boolescher Wert
1836   @tab Wenn wahr, werden zusätzliche Auflösungszeichen vor Versetzungszeichen gesetzt.
1837   @tab @code{#t}, @code{#f}
1838 @item currentBarNumber
1839   @tab Integer
1840   @tab Setzt die aktuelle Taktnummer.
1841   @tab @code{50}
1842 @item doubleSlurs
1843   @tab boolescher Wert
1844   @tab Wenn wahr, werden Legatobögen über und unter die Noten gesetzt.
1845   @tab @code{#t}, @code{#f}
1846 @item instrumentName
1847   @tab Text
1848   @tab Setzt die Instrumentenbezeichnung am Anfang eines Systems.
1849   @tab @code{"Cello I"}
1850 @item fontSize
1851   @tab reale Zahl
1852   @tab Vergrößert oder verkleinert die Schriftgröße.
1853   @tab @code{2.4}
1854 @item stanza
1855   @tab Text
1856   @tab Setzt den Text zu Beginn einer Strophe.
1857   @tab @code{"2"}
1858 @end multitable
1859
1860 @noindent
1861 Ein boolescher Wert ist entweder wahr  (@code{#t})
1862 oder falsch (@code{#f}),
1863 ein Integer eine positive ganze Zahl, ein Real (reelle Zahl) eine positive
1864 oder negative Dezimalzahl, und Text wird in doppelte
1865 Anführungszeichen (Shift+2) eingeschlossen.  Beachten Sie
1866 das Vorkommen des Rautenzeichens
1867 (@code{#}) an unterschiedlichen Stellen: als Teil eines
1868 booleschen Wertes vor dem @code{t} oder @code{f}, aber
1869 auch vor einem @emph{Wert} in der
1870 @code{\set}-Befehlskette.  Wenn ein boolescher Wert
1871 eingegeben werden soll, braucht man also zwei
1872 Rautenzeichen, z. B. @code{##t}.
1873
1874 @cindex Eigenschaften in Kontexten
1875 @cindex Veränderung von Eigenschaften in Kontexten
1876
1877 Bevor eine Eigenschaft geändert werden kann, muss man wissen,
1878 in welchem Kontext sie sich befindet.  Manchmal versteht das
1879 sich von selbst, aber in einigen Fällen kann es zunächst
1880 unverständlich erscheinen.  Wenn der falsche Kontext angegeben
1881 wird, wird keine Fehlermeldung produziert, aber die
1882 Veränderung wird einfach nicht ausgeführt.
1883 @code{instrumentName} befindet sich offensichtlich innerhalb
1884 von einem @code{Staff}-Kontext, denn das Notensystem soll
1885 benannt werden.  In dem folgenden Beispiel erhält das erste
1886 System korrekt die Instrumentenbezeichnung, das zweite aber
1887 nicht, weil der Kontext ausgelassen wurde.
1888
1889 @lilypond[quote,verbatim,ragged-right]
1890 <<
1891   \new Staff \relative c'' {
1892     \set Staff.instrumentName = #"Soprano"
1893     c2 c
1894  }
1895   \new Staff \relative c' {
1896     \set instrumentName = #"Alto"  % Wrong!
1897     d2 d
1898  }
1899 >>
1900 @end lilypond
1901
1902 Denken Sie daran, dass der Standardkontext @code{Voice} ist; in dem
1903 zweiten @code{\set}-Befehl wird also die Eigenschaft @code{instrumentName}
1904 im @code{Voice}-Kontext auf @qq{Alto}, gesetzt, aber weil LilyPond diese
1905 Eigenschaft nicht im @code{Voice}-Kontext vermutet, passiert einfach
1906 gar nichts.  Das ist kein Fehler, und darum wird auch keine Fehlermeldung
1907 produziert.
1908
1909 Ebenso gibt es keine Fehlermeldung, wenn die Kontext-Bezeichnung
1910 falsch geschrieben wird und die Änderung also nicht ausgeführt werden
1911 kann.  Tatsächlich kann eine beliebige (ausgedachte) Kontextbezeichnung
1912 mit dem @code{\set}-Befehl eingesetzt werden, genauso wie die, die
1913 wirklich existieren.  Aber wenn LilyPond diese Bezeichnung nicht
1914 zuordnen kann, bewirkt der Befehl einfach gar nichts.  Manche Editoren,
1915 die Unterstützung für LilyPond-Befehle mitbringen, markieren existierende
1916 Kontextbezeichnungen mit einem Punkt, wenn man mit der Maus darüber
1917 fährt (wie etwa JEdit mit dem LilyPondTool), oder markieren
1918 unbekannte Bezeichnungen anders (wie ConTEXT).  Wenn Sie keinen
1919 Editor mit LilyPond-Unterstützung einsetzen, wird empfohlen, die
1920 Bezeichnungen in der Interna-Referenz zu überprüfen: siehe
1921 @rinternals{Tunable context properties}, oder
1922 @rinternals{Contexts}.
1923
1924 Die Eigenschaft @code{instrumentName} wird erst aktiv, wenn sie
1925 in einem @code{Staff}-Kontext gesetzt wird, aber manche Eigenschaften
1926 können in mehr als einem Kontext benutzt werden.  Als Beispiel mag die
1927 @code{extraNatural}-Eigenschaft dienen, die zusätzliche Erniedrigungszeichen
1928 setzt.  Die Standardeinstellung ist ##t (wahr) in allen Systemen.
1929 Wenn sie nur in einem @code{Staff} (Notensystem) auf ##f (falsch)
1930 gesetzt wird, wirkt sie sich auf alle Noten in diesem System aus.  Wird
1931 sie dagegen in der @code{Score}-Umgebung gesetzt, wirkt sich das
1932 auf alle darin enthaltenen Systeme aus.
1933
1934 Das also bewirkt, dass die zusätzlichen Erniedrigungszeichen in einem System
1935 ausgeschaltet sind:
1936
1937 @lilypond[quote,verbatim,ragged-right]
1938 <<
1939   \new Staff \relative c'' {
1940     ais2 aes
1941   }
1942   \new Staff \relative c'' {
1943     \set Staff.extraNatural = ##f
1944     ais2 aes
1945   }
1946 >>
1947 @end lilypond
1948
1949 @noindent
1950 während das dazu dient, sie in allen Systemen auszuschalten:
1951
1952 @lilypond[quote,verbatim,ragged-right]
1953 <<
1954   \new Staff \relative c'' {
1955     ais2 aes
1956   }
1957   \new Staff \relative c'' {
1958     \set Score.extraNatural = ##f
1959     ais2 aes
1960   }
1961 >>
1962 @end lilypond
1963
1964 Ein anderes Beispiel ist die Eigenschaft @code{clefOctavation}:
1965 wenn sie im @code{Score}-Kontext gesetzt wird, ändert sich sofort
1966 der Wert der Oktavierung in allen aktuellen Systemen und wird
1967 auf einen neuen Wert gesetzt, der sich auf alle Systeme auswirkt.
1968
1969 Der gegenteilige Befehl, @code{\unset}, entfernt die Eigenschaft
1970 effektiv wieder von dem Kontext: in den meisten Fällen wird der
1971 Kontext auf ihre Standardeinstellungen zurückgesetzt.
1972 Normalerweise wird aber @code{\unset} nicht benötigt,
1973 denn ein neues @code{\set} erledigt alles, was man braucht.
1974
1975 Die @code{\set}- und @code{\unset}-Befehle könne überall im
1976 Eingabequelltext erscheinen und werden aktiv von dem Moment, an
1977 dem sie auftreten bis zum Ende der Partitur oder bis die Eigenschaft
1978 mit @code{\set} oder @code{\unset} neu gesetzt wird.  Versuchen
1979 wir als Beispiel, die Schriftgröße mehrmals zu ändern, was sich unter anderem
1980 auf die Notenköpfe auswirkt.  Die Änderung bezieht sich immer auf den Standard,
1981 nicht vom letzten gesetzten Wert.
1982
1983 @lilypond[quote,verbatim,ragged-right,relative=1]
1984 c4 d
1985 % make note heads smaller
1986 \set fontSize = #-4
1987 e4 f |
1988 % make note heads larger
1989 \set fontSize = #2.5
1990 g4 a
1991 % return to default size
1992 \unset fontSize
1993 b4 c |
1994 @end lilypond
1995
1996 Wir haben jetzt gesehen, wie sich die Werte von unterschiedlichen
1997 Eigenschaften ändern lassen.  Beachten Sie, dass Integer und
1998 Zahlen immer mit einem Rautenzeichen beginnen, während
1999 die Werte wahr und falsch (mit @code{##t} und @code{##f}
2000 notiert) immer mit zwei Rauten beginnen.  Eine Eigenschaft, die
2001 aus Text besteht, muss in doppelte Anführungsstriche gesetzt werden,
2002 auch wenn wir später sehen werden, dass Text auf eine sehr viel
2003 allgemeinere und mächtigere Art mit dem @code{\markup}-Befehl
2004 eingegeben werden kann.
2005
2006 @subsubheading Kontexteigenschaften mit @code{\with} setzen
2007
2008 @funindex \with
2009 @funindex with
2010 @cindex Kontexteigenschaft, setzen mit \with
2011
2012 Die Standardwerte von Kontexteigenschaften können zu dem Zeitpunkt
2013 definiert werden, an welchem der Kontext erstellt wird. Manchmal
2014 ist das eine saubere Weise, eine Eigenschaft zu bestimmen, die für
2015 die gesamte Partitur erhalten bleichen soll.  Wenn ein Kontext mit
2016 einem @code{\new}-Befehl erstellt wird, können in einer
2017 direkt folgenden @code{\with @{ .. @}}-Umgebung die Eigenschaften
2018 bestimmt werden.  Wenn also die zusätzlichen
2019 Auflösungszeichen für eine ganze Partitur gelten sollen, könnte
2020 man schreiben:
2021
2022 @example
2023 \new Staff \with @{ extraNatural = ##f @}
2024 @end example
2025
2026 @noindent
2027 etwa so:
2028
2029 @lilypond[quote,verbatim,ragged-right]
2030 <<
2031   \new Staff
2032     \relative c'' {
2033       gis4 ges aes ais
2034     }
2035   \new Staff \with { extraNatural = ##f } {
2036     \relative c'' {
2037       gis ges aes ais
2038     }
2039   }
2040 >>
2041 @end lilypond
2042
2043 Eigenschaften, die auf diese Arte gesetzt werden, können immer noch
2044 dynamisch mit dem @code{\set}-Befehl geändert werden und mit
2045 @code{\unset} auf ihre Standardeinstellungen zurückgesetzt werden,
2046 wie sie vorher in der @code{\with}-Umgebung definiert wurden.
2047
2048 @cindex Schriftgröße, Standardeinstellung
2049 @cindex fontSize (Schriftgröße), Standardeinstellung
2050
2051 Wenn also die @code{fontSize}-Eigenschaft in einer @code{\with}-Umgebung
2052 definiert wird, wird der Standardwert für die Schriftgröße
2053 festgelegt.  Wenn dieser Wert später mit @code{\set} verändert
2054 wird, kann dieser neue Standardwert mit dem Befehl
2055 @code{\unset fontSize} wieder erreicht werden.
2056
2057 @subsubheading Kontexteigenschaften mit @code{\context} setzen
2058
2059 @cindex Kontexteigenschaften, mit \context setzen
2060 @cindex Eigenschaften von Kontexten, mit \context setzen
2061 @funindex \context
2062 @funindex context
2063
2064 Die Werte von Kontext-Eigenschaften können in @emph{allen} Kontexten
2065 eines bestimmten Typs (etwa alle @code{Staff}-Kontexte)
2066 gleichzeitig mit einem Befehl gesetzt werden.  Der Kontext wird
2067 spezifiziert, indem seine Bezeichnung benutzt wird, also etwa
2068 @code{Staff}, mit einem Backslash davor: @code{\Staff}.  Der Befehl
2069 für die Eigenschaft ist der gleiche, wie er auch in der
2070 @code{\with}-Konstruktion benutzt wird, wie oben gezeigt.  Er wird in
2071 eine @code{\context}-Umgebung eingebettet, welche wiederum innerhalb
2072 von einer @code{\layout}-Umgebung steht.  Jede @code{\context}-Umgebung
2073 wirkt sich auf alle Kontexte dieses Types aus, welche sich in der
2074 aktuellen Partitur befinden (d. h. innerhalb einer @code{\score}-
2075 oder @code{\book}-Umgebung).  Hier ist ein Beispiel, wie man diese
2076 Funktion anwendet:
2077
2078 @lilypond[verbatim,quote]
2079 \score {
2080   \new Staff {
2081     \relative c'' {
2082       cis4 e d ces
2083     }
2084   }
2085   \layout {
2086     \context {
2087       \Staff
2088       extraNatural = ##t
2089     }
2090   }
2091 }
2092 @end lilypond
2093
2094 Wenn die Veränderung der Eigenschaft sich auf alle Systeme einer
2095 @code{score}-Umgebung beziehen soll:
2096
2097 @lilypond[quote,verbatim]
2098 \score {
2099   <<
2100     \new Staff {
2101       \relative c'' {
2102         gis4 ges aes ais
2103       }
2104     }
2105     \new Staff {
2106       \relative c'' {
2107         gis4 ges aes ais
2108       }
2109     }
2110   >>
2111   \layout {
2112     \context {
2113       \Score extraNatural = ##f
2114     }
2115   }
2116 }
2117 @end lilypond
2118
2119 @noindent
2120 Kontext-Eigenschaften, die auf diese Weise gesetzt werden, können für
2121 bestimmten Kontexte überschrieben werden, indem die
2122 @code{\with}-Konstruktion eingesetzt wird, oder mit @code{\set}-Befehlen
2123 innerhalb der aktuellen Noten.
2124
2125
2126 @seealso
2127 Notationsreferenz:
2128 @ruser{Die Standardeinstellungen von Kontexten ändern},
2129 @ruser{Der set-Befehl}.
2130
2131 Referenz der Interna:
2132 @rinternals{Contexts},
2133 @rinternals{Tunable context properties}.
2134
2135
2136 @node Přidání a odstranění rytců
2137 @subsection Přidání a odstranění rytců
2138 @translationof Adding and removing engravers
2139
2140 @cindex Engraver, Hinzufügen von
2141 @cindex Engraver, Entfernen von
2142 @cindex Hinzufügen von Engravern
2143 @cindex Entfernen von Engravern
2144
2145 @funindex \consists
2146 @funindex \remove
2147 @funindex consists
2148 @funindex remove
2149
2150 Wir haben gesehen, dass jeder Kontext eine Anzahl an Engravern
2151 (Stempeln) beinhaltet, von denen ein jeder einen bestimmten
2152 Teil des fertigen Notensatzes produziert, wie z. B. Taktlinien,
2153 Notenlinien, Notenköpfe, Hälse usw. Wenn ein Engraver aus
2154 einem Kontext entfernt wird, kann er seine Objekte nicht
2155 länger produzieren.  Das ist eine eher grobe Methode, die
2156 Notenausgabe zu beeinflussen, aber es kann von großem
2157 Nutzen sein.
2158
2159
2160 @subsubheading Einen einzelnen Kontext verändern
2161
2162 Um einen Engraver von einem einzelnen Kontext zu entfernen,
2163 wir der @code{\with}-Befehl eingesetzt, direkt hinter
2164 den Befehl zur Kontext-Erstellung geschrieben, wie
2165 in dem vorigen Abschnitt gezeigt.
2166
2167 Als ein Beispiel wollen wir das Beispiel aus dem letzten
2168 Abschnitt produzieren, aber die Notenlinien entfernen.  Erinnern
2169 Sie sich, dass die Notenlinien vom @code{Staff_symbol_engraver}
2170 erstellt werden.
2171
2172 @lilypond[quote,verbatim,ragged-right]
2173 \new Staff \with {
2174   \remove Staff_symbol_engraver
2175 }
2176 \relative c' {
2177   c4 d
2178   \set fontSize = #-4  % make note heads smaller
2179   e4 f |
2180   \set fontSize = #2.5  % make note heads larger
2181   g4 a
2182   \unset fontSize  % return to default size
2183   b4 c |
2184 }
2185 @end lilypond
2186
2187 @cindex Ambitus-Engraver
2188
2189 Engraver können auch zu einem bestimmten
2190 Kontext hinzugefügt werden.  Dies geschieht
2191 mit dem Befehl
2192
2193 @code{\consists @var{Engraver_bezeichnung}}
2194
2195 @noindent
2196 welcher auch wieder innerhalb der @code{\with}-Umgebung
2197 gesetzt wird.  Einige Chorpartituren zeigen einen
2198 Ambitus direkt zu Beginn der ersten Notenzeile, um
2199 den Stimmumfang des Stückes anzuzeigen, siehe auch
2200 @rglos{ambitus}.  Der Ambitus wird vom
2201 @code{Ambitus_engraver} erstellt, der normalerweise
2202 in keinem Kontext enthalten ist.  Wenn wir
2203 ihn zum @code{Voice}-Kontext hinzufügen, errechnet
2204 er automatisch den Stimmumfang für diese einzelne Stimme
2205 und zeigt ihn an:
2206
2207 @lilypond[quote,verbatim,ragged-right]
2208 \new Staff <<
2209   \new Voice \with {
2210     \consists Ambitus_engraver
2211   } {
2212     \relative c'' {
2213       \voiceOne
2214       c4 a b g
2215     }
2216   }
2217   \new Voice {
2218     \relative c' {
2219       \voiceTwo
2220       c4 e d f
2221     }
2222   }
2223 >>
2224 @end lilypond
2225
2226 @noindent
2227 wenn wir den Ambitus-Engraver allerdings zum
2228 @code{Staff}-Kontext hinzufügen, wird der Stimmumfang aller
2229 Stimmen in diesem Notensystem errechnet:
2230
2231 @lilypond[quote,verbatim,ragged-right]
2232 \new Staff \with {
2233   \consists Ambitus_engraver
2234 }
2235 <<
2236   \new Voice {
2237     \relative c'' {
2238       \voiceOne
2239       c4 a b g
2240     }
2241   }
2242   \new Voice {
2243     \relative c' {
2244       \voiceTwo
2245       c4 e d f
2246     }
2247   }
2248 >>
2249 @end lilypond
2250
2251
2252 @subsubheading Alle Kontexte des gleichen Typs verändern
2253
2254 @funindex \layout
2255
2256 Die vorigen Beispiele zeigen, wie man Engraver in einem
2257 bestimmten Kontext hinzufügen oder entfernen kann.  Es ist
2258 auch möglich, Engraver in jedem Kontext eines bestimmten
2259 Typs hinzuzufügen oder zu entfernen.  Dazu werden die
2260 Befehle in dem entsprechenden Kontext in einer
2261 @code{\layout}-Umgebung gesetzt.  Wenn wir also z. B.
2262 den Ambitus für jedes Notensystem in einer Partitur
2263 mit vier Systemen anzeigen wollen, könnte das so aussehen:
2264
2265 @lilypond[quote,verbatim,ragged-right]
2266 \score {
2267   <<
2268     \new Staff {
2269       \relative c'' {
2270         c4 a b g
2271       }
2272     }
2273     \new Staff {
2274       \relative c' {
2275         c4 a b g
2276       }
2277     }
2278     \new Staff {
2279       \clef "G_8"
2280       \relative c' {
2281         c4 a b g
2282       }
2283     }
2284     \new Staff {
2285       \clef "bass"
2286       \relative c {
2287         c4 a b g
2288       }
2289     }
2290   >>
2291   \layout {
2292     \context {
2293       \Staff
2294       \consists Ambitus_engraver
2295     }
2296   }
2297 }
2298 @end lilypond
2299
2300 @noindent
2301 Die Werte der Kontext-Eigenschaften können auch für
2302 alle Kontexte eines bestimmten Typs auf die gleiche
2303 Weise geändert werden, indem der @code{\set}-Befehl in
2304 einer @code{\context}-Umgebung angewendet wird.
2305
2306
2307 @seealso
2308 Notationsreferenz: @ruser{Umgebungs-Plugins verändern},
2309 @ruser{Die Standardeinstellungen von Kontexten ändern}.
2310
2311 @knownissues
2312 Die @code{Stem_engraver} und @code{Beam_engraver} fügen ihre
2313 Objekte an Notenköpfe an.  Wenn der @code{Note_heads_engraver}
2314 entfernt wird, werden keine Notenköpfe erstellt und demzufolge auch keine
2315 Hälse oder Bögen dargestellt.
2316
2317
2318 @node Rozšíření příkladů
2319 @section Rozšíření příkladů
2320 @translationof Extending the templates
2321
2322 Sie haben sich durch die Übung gearbeitet, Sie
2323 wissen jetzt, wie Sie Notensatz produzieren, und Sie
2324 haben die grundlegenden Konzepte verstanden.  Aber wie
2325 erhalten Sie genau die Systeme, die Sie brauchen? Es
2326 gibt eine ganze Anzahl an fertigen Vorlagen
2327 (siehe @ref{Vorlagen}), mit denen Sie beginnen
2328 können.  Aber was, wenn Sie nicht genau das finden,
2329 was Sie brauchen? Lesen Sie weiter.
2330
2331 @menu
2332 * Soprán a violoncello::
2333 * Čtyřhlasý notový zápis SATB::
2334 * Vytvoření notového zápisu od základu::
2335 * Úspora psaní na stroji pomocí proměnných a funkcí::
2336 * Notové zápisy a hlasy::
2337 @end menu
2338
2339
2340 @node Soprán a violoncello
2341 @subsection Soprán a violoncello
2342 @translationof Soprano and cello
2343
2344 @cindex Template, Verändern von
2345 @cindex Vorlage, Verändern von
2346 @cindex Veränderung von Vorlagen
2347
2348 Beginnen Sie mit der Vorlage, die Ihren Vorstellungen
2349 am nächsten kommt.  Nehmen wir einmal an, Sie wollen
2350 ein Stück für Soprán a violoncello schreiben.  In diesem
2351 Fall könnten Sie mit der Vorlage @qq{Noten und Text}
2352 (für die Sopran-Stimme) beginnen.
2353
2354 @example
2355 \version @w{"@version{}"}
2356 melody = \relative c' @{
2357   \clef "treble"
2358   \key c \major
2359   \time 4/4
2360   a4 b c d
2361 @}
2362
2363 text = \lyricmode @{
2364   Aaa Bee Cee Dee
2365 @}
2366
2367 \score @{
2368   <<
2369     \new Voice = "one" @{
2370       \autoBeamOff
2371       \melody
2372     @}
2373     \new Lyrics \lyricsto "one" \text
2374   >>
2375   \layout @{ @}
2376   \midi @{ @}
2377 @}
2378 @end example
2379
2380 Jetzt wollen wir die Cello-Stimme hinzufügen.  Schauen wir uns das
2381 Beispiel @qq{Nur Noten} an:
2382
2383 @example
2384 \version @w{"@version{}"}
2385
2386 melody = \relative c' @{
2387   \clef "treble"
2388   \key c \major
2389   \time 4/4
2390   a4 b c d
2391 @}
2392
2393 \score @{
2394   \new Staff \melody
2395   \layout @{ @}
2396   \midi @{ @}
2397 @}
2398 @end example
2399
2400 Wir brauchen den @code{\version}-Befehl nicht zweimal.  Wir
2401 brauchen aber den @code{melody}-Abschnitt.  Wir wollen
2402 keine zwei @code{\score} (Partitur)-Abschnitte -- mit zwei
2403 @code{\score}-Abschnitten würden wir zwei Stimmen
2404 getrennt voneinander erhalten.  In diesem Fall wollen wir
2405 sie aber zusammen, als Duett.  Schließlich brauchen wir
2406 innerhalb des @code{\score}-Abschnittes nur einmal die
2407 Befehle @code{\layout} und @code{\midi}.
2408
2409 Wenn wir jetzt einfach zwei @code{melody}-Abschnitte in
2410 unsere Datei kopieren würden, hätten wir zwei @code{melody}-Variable.
2411 Das würde zu keinem Fehler führen, aber die zweite von ihnen
2412 würde für beide Melodien eingesetzt werden.  Wir müssen
2413 ihnen also andere Bezeichnungen zuweisen, um sie voneinander
2414 zu unterscheiden.  Nennen wir die Abschnitte also @code{SopranNoten}
2415 für den Sopran und @code{CelloNoten} für die Cellostimme.  Wenn
2416 wir schon dabei sind, können wir @code{text}auch nach
2417 @code{SoprText} umbenennen.  Denken Sie daran, beide
2418 Vorkommen der Bezeichnung zu ändern: einmal die Definition
2419 gleich am Anfang (@code{melody = \relative c' @{ }) und
2420 dann auch noch die Benutzung der Variable innerhalb des
2421 @code{\score}-Abschnittes.
2422
2423 Gleichzeitig können wir auch noch das Notensystem für das
2424 Cello ändern -- das Cello hat normalerweise einen Bassschlüssel.
2425 Wir ändern auch die Noten etwas ab.
2426
2427 @example
2428 \version @w{"@version{}"}
2429
2430 SopranNoten = \relative c' @{
2431   \clef "treble"
2432   \key c \major
2433   \time 4/4
2434   a4 b c d
2435 @}
2436
2437 SoprText = \lyricmode @{
2438   Aaa Bee Cee Dee
2439 @}
2440
2441 CelloNoten = \relative c @{
2442   \clef "bass"
2443   \key c \major
2444   \time 4/4
2445   d4 g fis8 e d4
2446 @}
2447
2448 \score @{
2449   <<
2450     \new Voice = "eins" @{
2451       \autoBeamOff
2452       \SopranNoten
2453     @}
2454     \new Lyrics \lyricsto "eins" \Soprantext
2455   >>
2456   \layout @{ @}
2457   \midi @{ @}
2458 @}
2459 @end example
2460
2461 Das sieht schon vielversprechend aus, aber die Cello-Stimme
2462 erscheint noch nicht im Notensatz -- wir haben vergessen,
2463 sie in den @code{\score}-Abschnitt einzufügen.  Wenn die
2464 Cello-Stimme unterhalb des Soprans erscheinen soll, müssen
2465 wir
2466
2467 @example
2468 \new Staff \CelloNoten
2469 @end example
2470
2471 @noindent
2472 unter dem Befehl für den Sopran hinzufügen.  Wir brauchen auch
2473 die spitzen Klammern (@code{<<} und @code{>>}) um die
2474 Noten, denn damit wird LilyPond mitgeteilt, dass mehr als
2475 ein Ereignis gleichzeitig stattfindet (in diesem Fall sind es
2476 zwei @code{Staff}-Instanzen).  Der @code{\score}-Abschnitt
2477 sieht jetzt so aus:
2478
2479 @c Indentation in this example is deliberately poor
2480 @example
2481 \score @{
2482   <<
2483     <<
2484       \new Voice = "eins" @{
2485         \autoBeamOff
2486         \SopranNoten
2487       @}
2488       \new Lyrics \lyricsto "eins" \SoprText
2489     >>
2490     \new Staff \CelloNoten
2491   >>
2492   \layout @{ @}
2493   \midi @{ @}
2494 @}
2495 @end example
2496
2497 @noindent
2498 Das sieht etwas unschön aus, vor allem die Einrückung stimmt
2499 nicht mehr.  Das können wir aber schnell in Ordnung bringen.
2500 Hier also die gesamte Vorlage für Soprán a violoncello:
2501
2502 @lilypond[quote,verbatim,ragged-right,addversion]
2503 sopranoMusic = \relative c' {
2504   \clef "treble"
2505   \key c \major
2506   \time 4/4
2507   a4 b c d
2508 }
2509
2510 sopranoLyrics = \lyricmode {
2511   Aaa Bee Cee Dee
2512 }
2513
2514 celloMusic = \relative c {
2515   \clef "bass"
2516   \key c \major
2517   \time 4/4
2518   d4 g fis8 e d4
2519 }
2520
2521 \score {
2522   <<
2523     <<
2524       \new Voice = "one" {
2525         \autoBeamOff
2526         \sopranoMusic
2527       }
2528       \new Lyrics \lyricsto "one" \sopranoLyrics
2529     >>
2530     \new Staff \celloMusic
2531   >>
2532   \layout { }
2533   \midi { }
2534 }
2535 @end lilypond
2536
2537
2538 @seealso
2539 Die Vorlagen, mit denen wir begonnen haben, können im
2540 Anhang @qq{Vorlagen} gefunden werden, siehe
2541 @ref{Ein einzelnes System}.
2542
2543
2544 @node Čtyřhlasý notový zápis SATB
2545 @subsection Čtyřhlasý notový zápis SATB
2546 @translationof Four-part SATB vocal score
2547
2548 @cindex Vorlage, SATB
2549 @cindex Vorlage, Chorpartitur
2550 @cindex SATB-Vorlage
2551 @cindex Chorpartitur, Vorlage
2552
2553 Die meisten Partituren für vierstimmigen gemischten Chor
2554 mit Orchesterbegleitung (wie etwa Mendelssohns @notation{Elias}
2555 oder Händels @notation{Messias})  sind so aufgebaut, dass
2556 für jede der vier Stimmen ein eigenes System besteht und
2557 die Orchesterbegleitung dann als Klavierauszug darunter
2558 notiert wird.  Hier ein Beispiel aus Händels @notation{Messias}:
2559
2560 @c The following should appear as music without code
2561 @lilypond[quote,ragged-right]
2562 global = { \key d \major \time 4/4 }
2563
2564 sopranoMusic = \relative c'' {
2565   \clef "treble"
2566   r4 d2 a4 | d4. d8 a2 | cis4 d cis2 |
2567 }
2568 sopranoWords = \lyricmode {
2569   Wor -- thy | is the lamb | that was slain |
2570 }
2571 altoMusic = \relative a' {
2572   \clef "treble"
2573   r4 a2 a4 | fis4. fis8 a2 | g4 fis e2 |
2574 }
2575 altoWords = \sopranoWords
2576 tenorMusic = \relative c' {
2577   \clef "G_8"
2578   r4 fis2 e4 | d4. d8 d2 | e4 a, cis2 |
2579 }
2580 tenorWords = \sopranoWords
2581 bassMusic = \relative c' {
2582   \clef "bass"
2583   r4 d2 cis4 | b4. b8 fis2 | e4 d a'2 |
2584 }
2585 bassWords = \sopranoWords
2586 upper = \relative a' {
2587   \clef "treble"
2588   \global
2589   r4 <a d fis>2 <a e' a>4
2590   <d fis d'>4. <d fis d'>8 <a d a'>2
2591   <g cis g'>4 <a d fis> <a cis e>2
2592 }
2593 lower = \relative c, {
2594   \clef "bass"
2595   \global
2596   <d d'>4 <d d'>2 <cis cis'>4
2597   <b b'>4. <b' b'>8 <fis fis'>2
2598   <e e'>4 <d d'> <a' a'>2
2599 }
2600
2601 \score {
2602   <<  % combine ChoirStaff and PianoStaff in parallel
2603     \new ChoirStaff <<
2604       \new Staff = "sopranos" <<
2605         \set Staff.instrumentName = #"Soprano"
2606         \new Voice = "sopranos" {
2607           \global
2608           \sopranoMusic
2609         }
2610       >>
2611       \new Lyrics \lyricsto "sopranos" {
2612         \sopranoWords
2613       }
2614       \new Staff = "altos" <<
2615         \set Staff.instrumentName = #"Alto"
2616         \new Voice = "altos" {
2617           \global
2618           \altoMusic
2619         }
2620       >>
2621       \new Lyrics \lyricsto "altos" {
2622         \altoWords
2623       }
2624       \new Staff = "tenors" <<
2625         \set Staff.instrumentName = #"Tenor"
2626         \new Voice = "tenors" {
2627           \global
2628           \tenorMusic
2629         }
2630       >>
2631       \new Lyrics \lyricsto "tenors" {
2632         \tenorWords
2633       }
2634       \new Staff = "basses" <<
2635         \set Staff.instrumentName = #"Bass"
2636         \new Voice = "basses" {
2637           \global
2638           \bassMusic
2639         }
2640       >>
2641       \new Lyrics \lyricsto "basses" {
2642         \bassWords
2643       }
2644     >>  % end ChoirStaff
2645
2646     \new PianoStaff <<
2647       \set PianoStaff.instrumentName = #"Piano"
2648       \new Staff = "upper" \upper
2649       \new Staff = "lower" \lower
2650     >>
2651   >>
2652 }
2653 @end lilypond
2654
2655 Keine der Vorlage bietet diesen Aufbau direkt an.  Die Vorlage, die
2656 am nächsten daran liegt, ist @qq{SATB-Partitur und automatischer
2657 Klavierauszug}, siehe @ref{Vokalensemble}.  Wir müssen diese
2658 Vorlage aber so anpassen, dass die Noten für das Klavier nicht
2659 automatisch aus dem Chorsatz generiert werden.  Die Variablen
2660 für die Noten und den Text des Chores sind in Ordnung, wir
2661 müssen nun noch Variablen für die Klaviernoten hinzufügen.
2662
2663 Die Reihenfolge, in welcher die Variablen in das Chorsystem
2664 (@code{ChoirStaff}) eingefügt werden, entspricht nicht der
2665 in dem Beispiel oben.  Wir wollen sie so sortieren, dass die
2666 Texte jeder Stimme direkt unter den Noten notiert werden.
2667 Alle Stimmen sollten als @code{\voiceOne} notiert werden,
2668 welches die Standardeinstellung ist; wir können also die
2669 @code{\voiceXXX}-Befehle entfernen.  Wir müssen auch noch
2670 den Schlüssel für den Tenor ändern.  Die Methode, mit der
2671 der Text den Stimmen zugewiesen wird, ist uns noch nicht
2672 bekannt, darum wollen wir sie umändern auf die Weise, die
2673 wir schon kennen.  Wir fügen auch noch Instrumentbezeichnungen
2674 zu den Systemen hinzu.
2675
2676 Damit erhalten wir folgenden @code{ChoirStaff}:
2677
2678 @example
2679 \new ChoirStaff <<
2680   \new Staff = "sopranos" <<
2681     \set Staff.instrumentName = #"Sopran"
2682     \new Voice = "sopranos" @{
2683       \global
2684       \sopranoMusic
2685     @}
2686   >>
2687   \new Lyrics \lyricsto "sopranos" @{
2688     \sopranoWords
2689   @}
2690   \new Staff = "altos" <<
2691     \set Staff.instrumentName = #"Alt"
2692     \new Voice = "altos" @{
2693       \global
2694       \altoMusic
2695     @}
2696   >>
2697   \new Lyrics \lyricsto "altos" @{
2698     \altoWords
2699   @}
2700   \new Staff = "tenors" <<
2701     \set Staff.instrumentName = #"Tenor"
2702     \new Voice = "tenors" @{
2703       \global
2704       \tenorMusic
2705     @}
2706   >>
2707   \new Lyrics \lyricsto "tenors" @{
2708     \tenorWords
2709   @}
2710   \new Staff = "basses" <<
2711     \set Staff.instrumentName = #"Bass"
2712     \new Voice = "basses" @{
2713       \global
2714       \bassMusic
2715     @}
2716   >>
2717   \new Lyrics \lyricsto "basses" @{
2718     \bassWords
2719   @}
2720 >>  % end ChoirStaff
2721 @end example
2722
2723 Als nächstes müssen wir das Klaviersystem bearbeiten.
2724 Das ist einfach: wir nehmen einfach den Klavierteil
2725 aus der @qq{Piano solo}-Vorlage:
2726
2727 @example
2728 \new PianoStaff <<
2729   \set PianoStaff.instrumentName = #"Piano  "
2730   \new Staff = "oben" \oben
2731   \new Staff = "unten" \unten
2732 >>
2733 @end example
2734
2735 @noindent
2736 und fügen die Variablen @code{oben}
2737 und @code{unten} hinzu.
2738
2739 Das Chorsystem und das Pianosystem müssen mit
2740 spitzen Klammern kombiniert werden, damit beide
2741 übereinander erscheinen:
2742
2743 @example
2744 <<  % ChoirStaff und PianoStaff parallel kombinieren
2745   \new ChoirStaff <<
2746     \new Staff = "sopranos" <<
2747       \new Voice = "sopranos" @{
2748         \global
2749         \sopranoMusic
2750       @}
2751     >>
2752     \new Lyrics \lyricsto "sopranos" @{
2753       \sopranoWords
2754      @}
2755     \new Staff = "altos" <<
2756       \new Voice = "altos" @{
2757         \global
2758         \altoMusic
2759       @}
2760     >>
2761     \new Lyrics \lyricsto "altos" @{
2762       \altoWords
2763     @}
2764     \new Staff = "tenors" <<
2765       \clef "G_8"  % tenor clef
2766       \new Voice = "tenors" @{
2767         \global
2768         \tenorMusic
2769       @}
2770     >>
2771     \new Lyrics \lyricsto "tenors" @{
2772       \tenorWords
2773     @}
2774     \new Staff = "basses" <<
2775       \clef "bass"
2776       \new Voice = "basses" @{
2777         \global
2778         \bassMusic
2779       @}
2780     >>
2781     \new Lyrics \lyricsto "basses" @{
2782       \bassWords
2783     @}
2784   >>  % end ChoirStaff
2785
2786   \new PianoStaff <<
2787     \set PianoStaff.instrumentName = #"Piano"
2788     \new Staff = "upper" \upper
2789     \new Staff = "lower" \lower
2790   >>
2791 >>
2792 @end example
2793
2794 Alles miteinander kombiniert und mit den Noten für drei
2795 Takte sieht unser Beispiel nun so aus:
2796
2797 @lilypond[quote,verbatim,ragged-right,addversion]
2798 global = {
2799   \key d \major
2800   \time 4/4
2801 }
2802 sopranoMusic = \relative c'' {
2803   \clef "treble"
2804   r4 d2 a4 | d4. d8 a2 | cis4 d cis2 |
2805 }
2806 sopranoWords = \lyricmode {
2807   Wor -- thy | is the lamb | that was slain |
2808 }
2809 altoMusic = \relative a' {
2810   \clef "treble"
2811   r4 a2 a4 | fis4. fis8 a2 | g4 fis fis2 |
2812 }
2813 altoWords = \sopranoWords
2814 tenorMusic = \relative c' {
2815   \clef "G_8"
2816   r4 fis2 e4 | d4. d8 d2 | e4 a, cis2 |
2817 }
2818 tenorWords = \sopranoWords
2819 bassMusic = \relative c' {
2820   \clef "bass"
2821   r4 d2 cis4 | b4. b8 fis2 | e4 d a'2 |
2822 }
2823 bassWords = \sopranoWords
2824 upper = \relative a' {
2825   \clef "treble"
2826   \global
2827   r4 <a d fis>2 <a e' a>4
2828   <d fis d'>4. <d fis d'>8 <a d a'>2
2829   <g cis g'>4 <a d fis> <a cis e>2
2830 }
2831 lower = \relative c, {
2832   \clef "bass"
2833   \global
2834   <d d'>4 <d d'>2 <cis cis'>4
2835   <b b'>4. <b' b'>8 <fis fis'>2
2836   <e e'>4 <d d'> <a' a'>2
2837 }
2838
2839 \score {
2840   <<  % combine ChoirStaff and PianoStaff in parallel
2841     \new ChoirStaff <<
2842       \new Staff = "sopranos" <<
2843         \set Staff.instrumentName = #"Soprano"
2844         \new Voice = "sopranos" {
2845           \global
2846           \sopranoMusic
2847         }
2848       >>
2849       \new Lyrics \lyricsto "sopranos" {
2850         \sopranoWords
2851       }
2852       \new Staff = "altos" <<
2853         \set Staff.instrumentName = #"Alto"
2854         \new Voice = "altos" {
2855           \global
2856           \altoMusic
2857         }
2858       >>
2859       \new Lyrics \lyricsto "altos" {
2860         \altoWords
2861       }
2862       \new Staff = "tenors" <<
2863         \set Staff.instrumentName = #"Tenor"
2864         \new Voice = "tenors" {
2865           \global
2866           \tenorMusic
2867         }
2868       >>
2869       \new Lyrics \lyricsto "tenors" {
2870         \tenorWords
2871       }
2872       \new Staff = "basses" <<
2873         \set Staff.instrumentName = #"Bass"
2874         \new Voice = "basses" {
2875           \global
2876           \bassMusic
2877         }
2878       >>
2879       \new Lyrics \lyricsto "basses" {
2880         \bassWords
2881       }
2882     >>  % end ChoirStaff
2883
2884     \new PianoStaff <<
2885       \set PianoStaff.instrumentName = #"Piano  "
2886       \new Staff = "upper" \upper
2887       \new Staff = "lower" \lower
2888     >>
2889   >>
2890 }
2891 @end lilypond
2892
2893
2894 @node Vytvoření notového zápisu od základu
2895 @subsection Vytvoření notového zápisu od základu
2896 @translationof Building a score from scratch
2897
2898 @cindex Template, eigene schreiben
2899 @cindex Vorlagen, eigene schreiben
2900 @cindex eigene Vorlagen erstellen
2901 @cindex Erstellen von eigenen Vorlagen
2902 @cindex Schreiben von eigenen Vorlagen
2903
2904 Wenn Sie einige Fertigkeit im Schreiben von LilyPond-Code
2905 gewonnen haben, werden Sie vielleicht feststellen, dass es
2906 manchmal einfacher ist, von Grund auf anzufangen, anstatt
2907 die fertigen Vorlagen zu verändern.  Auf diese Art könne Sie
2908 auch Ihren eigenen Stil entwickeln, und ihn der Musik anpassen,
2909 die Sie notieren wollen.  Als Beispiel wollen wir demonstrieren,
2910 wie man die Partitur für ein Orgelpreludium von Grund auf
2911 konstruiert.
2912
2913 Beginnen wir mit dem Kopf, dem @code{header}-Abschnitt.
2914 Hier notieren wir den Titel, den Namen des Komponisten usw.
2915 Danach schreiben wir die einzelnen Variablen auf und
2916 schließlich am Ende die eigentliche Partitur, den
2917 @code{\score}-Abschnitt.  Beginnen wir mit einer groben
2918 Struktur, in die wir dann die Einzelheiten nach und nach
2919 eintragen.
2920
2921 Als Beispiel benutzen wir zwei Takte aus dem Orgelpreludium
2922 @notation{Jesu, meine Freude} von J. S. Bach, notiert
2923 für zwei Manuale und Pedal.  Sie können die Noten am Ende
2924 dieses Abschnittes sehen.  Das obere Manual trägt zwei Stimmen,
2925 das untere und das Pedalsystem jeweils nur eine.  Wir
2926 brauchen also vier Variablen für die Noten und eine, um
2927 Taktart und Tonart zu definieren.
2928
2929 @example
2930 \version @w{"@version{}"}
2931 \header @{
2932   title = "Jesu, meine Freude"
2933   composer = "J. S. Bach"
2934 @}
2935 keyTime = @{ \key c \minor \time 4/4 @}
2936 ManualOneVoiceOneMusic = @{ s1 @}
2937 ManualOneVoiceTwoMusic = @{ s1 @}
2938 ManualTwoMusic = @{ s1 @}
2939 PedalOrganMusic = @{ s1 @}
2940
2941 \score @{
2942 @}
2943 @end example
2944
2945 Im Moment haben wir eine unsichtbare
2946 Note in jede Stimme eingesetzt (@code{s1}).
2947 Die Noten werden später hinzugefügt.
2948
2949 Als nächstes schauen wir uns an, was in die
2950 Partitur (die @code{\score}-Umgebung)
2951 kommt.  Dazu wird einfach die Notensystemstruktur
2952 konstruiert, die wir benötigen.  Orgelmusik
2953 wird meistens auf drei Systemen notiert, eins
2954 für jedes Manual und ein drittes für die Pedalnoten.
2955 Die Systeme für die Manuale werden mit einer
2956 geschweiften Klammer verbunden, wir
2957 benutzen hier also ein @code{PianoStaff}.
2958 Das erste Manualsystem braucht zwei Stimmen,
2959 das zweite nur eine.
2960
2961 @example
2962 \new PianoStaff <<
2963   \new Staff = "ManualOne" <<
2964     \new Voice @{
2965       \ManualOneVoiceOneMusic
2966     @}
2967     \new Voice @{
2968       \ManualOneVoiceTwoMusic
2969     @}
2970   >>  % Ende ManualOne Systemkontext
2971   \new Staff = "ManualTwo" <<
2972     \new Voice @{
2973       \ManualTwoMusic
2974     @}
2975   >>  % Ende ManualTwo Systemkontext
2976 >>  % Ende PianoStaff Kontext
2977 @end example
2978
2979 Als nächstes soll das System für das Pedal hinzugefügt
2980 werden.  Es soll unter das Klaviersystem gesetzt
2981 werden, aber muss gleichzeitig mit ihm erscheinen.
2982 Wir brauchen also spitze Klammern um beide
2983 Definitionen.  Sie wegzulassen würde eine Fehlermeldung
2984 in der Log-Datei hervorrufen.  Das ist ein sehr
2985 häufiger Fehler, der wohl auch Ihnen früher
2986 oder später unterläuft.  Sie können das fertige
2987 Beispiel am Ende des Abschnittes kopieren und die
2988 Klammern entfernen, um zu sehen, wie die
2989 Fehlermeldung aussehen kann, die Sie in solch
2990 einem Fall erhalten würden.
2991
2992 @example
2993 <<  % PianoStaff and Pedal Staff must be simultaneous
2994   \new PianoStaff <<
2995     \new Staff = "ManualOne" <<
2996       \new Voice @{
2997         \ManualOneVoiceOneMusic
2998       @}
2999       \new Voice @{
3000         \ManualOneVoiceTwoMusic
3001       @}
3002     >>  % end ManualOne Staff context
3003     \new Staff = "ManualTwo" <<
3004       \new Voice @{
3005         \ManualTwoMusic
3006       @}
3007     >>  % end ManualTwo Staff context
3008   >>  % end PianoStaff context
3009   \new Staff = "PedalOrgan" <<
3010     \new Voice @{
3011       \PedalOrganMusic
3012     @}
3013   >>
3014 >>
3015 @end example
3016
3017 Es ist nicht notwendig, die simultane Konstruktion
3018 @code{<< .. >>} innerhalb des zweiten Manualsystems
3019 und des Pedalsystems zu benutzen, denn sie enthalten
3020 nur eine Stimme.  Andererseits schadet es nichts, sie
3021 zu schreiben, und es ist eine gute Angewohnheit, immer
3022 die spitzen Klammern nach einem @code{\new Staff} zu
3023 schreiben, wenn mehr als eine Stimme vorkommen könnten.
3024 Für Stimmen (@code{Voice}) dagegen gilt genau das
3025 Gegenteil: eine neue Stimme sollte immer von
3026 geschweiften Klammern (@code{@{ .. @}}) gefolgt
3027 werden, falls Sie ihre Noten in mehrere Variable aufteilen,
3028 die nacheinander gesetzt werden sollen.
3029
3030 Fügen wir also diese Struktur zu der @code{\score}-Umgebung
3031 hinzu und bringen wir die Einzüge in Ordnung.  Gleichzeitig
3032 wollen wir die richtigen Schlüssel setzen und die Richtung der
3033 Hälse und Bögen in den Stimmen des oberen Systems
3034 kontrollieren, indem die obere Stimme ein
3035 @code{\voiceOne}, die untere dagegen ein @code{\voiceTwo}
3036 erhält.  Die Taktart und Tonart werden mit unserer fertigen
3037 Variable @code{\keyTime} eingefügt.
3038
3039 @example
3040 \score @{
3041   <<  % PianoStaff and Pedal Staff must be simultaneous
3042     \new PianoStaff <<
3043       \new Staff = "ManualOne" <<
3044         \keyTime  % set time signature and key
3045         \clef "treble"
3046         \new Voice @{
3047           \voiceOne
3048           \ManualOneVoiceOneMusic
3049         @}
3050         \new Voice @{
3051           \voiceTwo
3052           \ManualOneVoiceTwoMusic
3053         @}
3054       >>  % end ManualOne Staff context
3055       \new Staff = "ManualTwo" <<
3056         \keyTime
3057         \clef "bass"
3058         \new Voice @{
3059           \ManualTwoMusic
3060         @}
3061       >>  % end ManualTwo Staff context
3062     >>  % end PianoStaff context
3063     \new Staff = "PedalOrgan" <<
3064       \keyTime
3065       \clef "bass"
3066       \new Voice @{
3067         \PedalOrganMusic
3068       @}
3069     >>  % end PedalOrgan Staff
3070   >>
3071 @}  % end Score context
3072 @end example
3073
3074 @cindex Spreizbarkeit von Systemen
3075 @cindex Dehnung von Systemen, vertikal
3076 @cindex Systeme, vertikales Dehnen
3077
3078 Das Layout des Orgelsystems oben ist fast perfekt, es hat jedoch einen kleinen
3079 Fehler, den man nicht bemerken kann, wenn man nur ein einzelnes System
3080 betrachtet:  Der Abstand des Pedalsystems zum System der linken Hand
3081 sollte in etwa der gleiche sein wie der Abstand zwischen den Systemen
3082 der linken und rechten Hand.  Die Dehnbarkeit von Systemen in einem
3083 Klaviersystem (@code{PianoStaff})-Kontext ist beschränkt (sodass der
3084 Abstand zwischen den Systemen der linken und rechten Hand nicht zu groß
3085 wird), und das Pedalsystem sollte sich genauso verhalten.
3086
3087 @cindex Untereigenschaft
3088 @cindex sub-properties
3089 @cindex graphische Objekte
3090 @cindex Grobs
3091 @cindex Objekte, graphische
3092
3093 Die Spreizbarkeit von Systemen kann mit der @code{staff-staff-spacing}-Eigenschaft
3094 des @code{VerticalAxisGroup}-@qq{graphischen Objekts} (üblicherweise als
3095 @qq{Grob} innerhalb der LilyPond-Dokumentation bezeichnet) kontrolliert
3096 werden.  An dieser Stelle brauchen Sie sich um die Details nicht zu
3097 sorgen, sie werden später erklärt.  Sehr Neugierige können sich den
3098 Abschnitt @ruser{Grundlagen zum Verändern von Eigenschaften} anschauen.  Im Moment
3099 kann man nicht nur die @code{strechability} (Spreizbarkeit)-Untereigenschaft verändern,
3100 darum müssen hier auch die anderen Untereigenschaften kopiert werden.  Die
3101 Standardeinstellungen dieser Untereigenschaften finden sich in der Datei
3102 @file{scm/define-grobs.scm} in den Definitionen für den
3103 @code{VerticalAxisGroup}-Grob.  Der Wert für @code{strechability} wird aus
3104 der Definition für das Klaviersystem (@code{PianoStaff}) entnommen
3105 (in der Datei @file{ly/engraver-init.ly}), damit die Werte identisch
3106 sind.
3107
3108 @example
3109 \score @{
3110   <<  % PianoStaff and Pedal Staff must be simultaneous
3111     \new PianoStaff <<
3112       \new Staff = "ManualOne" <<
3113         \keyTime  % set key and time signature
3114         \clef "treble"
3115         \new Voice @{
3116           \voiceOne
3117           \ManualOneVoiceOneMusic
3118         @}
3119         \new Voice @{
3120           \voiceTwo
3121           \ManualOneVoiceTwoMusic
3122         @}
3123       >>  % end ManualOne Staff context
3124       \new Staff = "ManualTwo" \with @{
3125         \override VerticalAxisGroup
3126           #'staff-staff-spacing #'stretchability = 5
3127       @} <<
3128         \keyTime
3129         \clef "bass"
3130         \new Voice @{
3131           \ManualTwoMusic
3132         @}
3133       >>  % end ManualTwo Staff context
3134     >>  % end PianoStaff context
3135     \new Staff = "PedalOrgan" <<
3136       \keyTime
3137       \clef "bass"
3138       \new Voice @{
3139         \PedalOrganMusic
3140       @}
3141     >>  % end PedalOrgan Staff
3142   >>
3143 @}  % end Score context
3144 @end example
3145
3146 Damit ist das Grundgerüst fertig.  Jede Orgelmusik mit drei
3147 Systemen hat die gleiche Struktur, auch wenn die Anzahl der Stimmen
3148 in einem System sich ändern kann.  Jetzt müssen wir nur noch
3149 die Noten einfügen und alle Teile zusammenfügen, indem wir
3150 die Variablen mit einem Backslash in die Partitur einbauen.
3151
3152 @lilypond[quote,verbatim,ragged-right,addversion]
3153 \header {
3154   title = "Jesu, meine Freude"
3155   composer = "J S Bach"
3156 }
3157 keyTime = { \key c \minor \time 4/4 }
3158 ManualOneVoiceOneMusic = \relative g' {
3159   g4 g f ees |
3160   d2 c2 |
3161 }
3162 ManualOneVoiceTwoMusic = \relative c' {
3163   ees16 d ees8~ ees16 f ees d c8 d~ d c~ |
3164   c8 c4 b8 c8. g16 c b c d |
3165 }
3166 ManualTwoMusic = \relative c' {
3167   c16 b c8~ c16 b c g a8 g~ g16 g aes ees |
3168   f16 ees f d g aes g f ees d e8~ ees16 f ees d |
3169 }
3170 PedalOrganMusic = \relative c {
3171   r8 c16 d ees d ees8~ ees16 a, b g c b c8 |
3172   r16 g ees f g f g8 c,2 |
3173 }
3174
3175 \score {
3176   <<  % PianoStaff and Pedal Staff must be simultaneous
3177     \new PianoStaff <<
3178       \new Staff = "ManualOne" <<
3179         \keyTime  % set time signature and key
3180         \clef "treble"
3181         \new Voice {
3182           \voiceOne
3183           \ManualOneVoiceOneMusic
3184         }
3185         \new Voice {
3186           \voiceTwo
3187           \ManualOneVoiceTwoMusic
3188         }
3189       >>  % end ManualOne Staff context
3190       \new Staff = "ManualTwo" \with {
3191         \override VerticalAxisGroup
3192           #'staff-staff-spacing #'stretchability = 5
3193       } <<
3194         \keyTime
3195         \clef "bass"
3196         \new Voice {
3197           \ManualTwoMusic
3198         }
3199       >>  % end ManualTwo Staff context
3200     >>  % end PianoStaff context
3201     \new Staff = "PedalOrgan" <<
3202       \keyTime
3203       \clef "bass"
3204       \new Voice {
3205         \PedalOrganMusic
3206       }
3207     >>  % end PedalOrgan Staff context
3208   >>
3209 }  % end Score context
3210 @end lilypond
3211
3212 @seealso
3213 Glossar:
3214 @rglos{system}.
3215
3216
3217 @node Úspora psaní na stroji pomocí proměnných a funkcí
3218 @subsection Úspora psaní na stroji pomocí proměnných a funkcí
3219 @translationof Saving typing with variables and functions
3220
3221 @cindex Variablen
3222
3223 Bis jetzt wurde immer derartige Notation vorgestellt:
3224
3225 @lilypond[quote,verbatim,ragged-right]
3226 hornNotes = \relative c'' { c4 b dis c }
3227
3228 \score {
3229   {
3230     \hornNotes
3231   }
3232 }
3233 @end lilypond
3234
3235 Sie können sich vorstellen, dass das etwa für minimalistische
3236 Musik sehr nützlich sein könnte:
3237
3238 @lilypond[quote,verbatim,ragged-right]
3239 fragmentA = \relative c'' { a4 a8. b16 }
3240 fragmentB = \relative c'' { a8. gis16 ees4 }
3241 violin = \new Staff {
3242   \fragmentA \fragmentA |
3243   \fragmentB \fragmentA |
3244 }
3245
3246 \score {
3247   {
3248     \violin
3249   }
3250 }
3251 @end lilypond
3252
3253 Diese Variablen (die man auch als Makros oder Benutzer-Befehl
3254 bezeichnet) können jedoch auch für eigene Anpassungen eingesetzt
3255 werden:
3256
3257 @c TODO Avoid padtext - not needed with skylining
3258 @lilypond[quote,verbatim,ragged-right]
3259 dolce = \markup { \italic \bold dolce }
3260 padText = { \once \override TextScript #'padding = #5.0 }
3261 fthenp=_\markup {
3262     \dynamic f \italic \small { 2nd } \hspace #0.1 dynamic p
3263 }
3264
3265 violin = \relative c'' {
3266   \repeat volta 2 {
3267     c4._\dolce b8 a8 g a b
3268     \padText
3269     c4.^"hi there!" d8 e' f g d
3270     c,4.\fthenp b8 c4 c-.
3271   }
3272 }
3273
3274 \score {
3275   {
3276     \violin
3277   }
3278   \layout{ragged-right=##t}
3279 }
3280 @end lilypond
3281
3282 Derartige Variablen sind offensichtlich sehr nützlich, zu Tipparbeit zu ersparen.  Aber es lohnt sich schon, sie zu
3283 benutzen, wenn man sie nur einmal benutzen will, denn sie
3284 vereinfachen die Struktur einer Datei sehr stark.  Hier das
3285 vorige Beispiel ohne jede Benutzung von Variablen.  Es ist
3286 sehr viel schwerer lesbar, besonders die letzte Zeile.
3287
3288 @example
3289 violin = \relative c'' @{
3290   \repeat volta 2 @{
3291     c4._\markup @{ \italic \bold dolce @} b8 a8 g a b
3292     \once \override TextScript #'padding = #5.0
3293     c4.^"hi there!" d8 e' f g d
3294     c,4.\markup @{
3295       \dynamic f \italic \small @{ 2nd @} \hspace #0.1 \dynamic p
3296     @}
3297     b8 c4 c-. |
3298   @}
3299 @}
3300 @end example
3301
3302 @c TODO Replace the following with a better example  -td
3303 @c Skylining handles this correctly without padText
3304
3305 Bisher haben wir vor allem statische Ersetzungen betrachtet:
3306 wenn LilyPond etwa @code{\padText} sieht, wird es ersetzt mit
3307 all dem Code, mit dem wir es definiert haben (also alles,
3308 was sich rechts von @code{padtext=} befindet).
3309
3310 LilyPond kann auch nicht-statische Ersetzungen bewältigen.  Man
3311 kann sie sich als Funktionen vorstellen.
3312
3313 @lilypond[quote,verbatim,ragged-right]
3314 padText =
3315 #(define-music-function
3316      (parser location padding)
3317      (number?)
3318    #{
3319      \once \override TextScript #'padding = $padding
3320    #})
3321
3322 \relative c''' {
3323   c4^"piu mosso" b a b |
3324   \padText #1.8
3325   c4^"piu mosso" d e f |
3326   \padText #2.6
3327   c4^"piu mosso" fis a g |
3328 }
3329 @end lilypond
3330
3331 Die Benutzung von Variablen ist auch eine gute Möglichkeit,
3332 Arbeit zu vermeiden, wenn sich einmal die Syntax von LilyPond
3333 ändern sollte (siehe auch @rprogram{Updating old input files
3334 with convert-ly}).
3335 Wenn man eine einzige Definition hat (wie etwa @code{\dolce}),
3336 die für alle Vorkommen in der Notation eingesetzt wird, muss
3337 man auch nur einmal diese Definition aktualisieren, anstatt
3338 dass man sie in jeder @file{.ly}-Datei einzeln ändern müsste.
3339
3340
3341 @node Notové zápisy a hlasy
3342 @subsection Notové zápisy a hlasy
3343 @translationof Scores and parts
3344
3345 In Orchestermusik werden alle Noten zweimal gedruckt.  Einmal
3346 in einer Stimme für die Spieler, und einmal ein der Partitur
3347 für den Dirigenten.  Variablen können benutzen, um sich doppelte
3348 Arbeit zu ersparen.  Die Noten werden nur einmal eingegeben und
3349 in einer Variable abgelegt.  Der Inhalt der Variable wird dann
3350 benutzt um sowohl die Stimme als auch die Partitur zu erstellen.
3351
3352 Es bietet sich an, die Noten in einer extra Datei abzulegen.
3353 Nehmen wir an, dass die Datei @file{horn-music.ly} folgende
3354 Noten eines Horn/@/Fagott-Duos enthält:
3355
3356 @example
3357 hornNotes = \relative c @{
3358   \time 2/4
3359   r4 f8 a | cis4 f | e4 d |
3360 @}
3361 @end example
3362
3363 @noindent
3364 Eine Stimme wird also erstellt, indem man folgendes in eine
3365 Datei schreibt:
3366
3367 @example
3368 \include "horn-music.ly"
3369
3370 \header @{
3371   instrument = "Horn in F"
3372 @}
3373
3374 @{
3375  \transpose f c' \hornNotes
3376 @}
3377 @end example
3378
3379 Die Zeile
3380
3381 @example
3382 \include "horn-music.ly"
3383 @end example
3384
3385 @noindent
3386 ersetzt den Inhalt von @file{horn-music.ly} an dieser Position
3387 in der Datei, sodass @code{hornNotes} im Folgenden definiert
3388 ist.  Der Befehl @code{\transpose f@tie{}c'} zeigt an, dass
3389 das Argument (@code{\hornNotes}) eine Quinte nach oben transponiert
3390 werden soll.  Klingendes @code{f} wird als @code{c'}, wie es
3391 die Stimmung eines normalen F-Hornes verlangt.  Die Transposition
3392 kann in folgender Notenausgabe gesehen werden:
3393
3394 @lilypond[quote,ragged-right]
3395 \transpose f c' \relative c {
3396   \time 2/4
3397   r4 f8 a | cis4 f | e4 d |
3398 }
3399 @end lilypond
3400
3401 In Ensemblestücken sind manche Stimmen für viele Takte stumm.
3402 Das wird durch eine besondere Pause notiert, die Mehrtaktpause.
3403 Sie wird mit einem großen @code{R} notiert, gefolgt von der
3404 Dauer (@code{1}@tie{}für eine Ganze, @code{2}@tie{}für eine Halbe usw.).  Indem man die Dauern multipliziert, kann man auch
3405 längere Dauern erzeugen.  Diese Pause etwa dauert drei Takte
3406 in einem 2/4-Takt:
3407
3408 @example
3409 R2*3
3410 @end example
3411
3412 Wenn die Stimme gesetzt wird, werden Mehrtaktpausen komprimiert.  Das geschieht, indem man folgendes in die Datei
3413 schreibt:
3414
3415 @example
3416 \set Score.skipBars = ##t
3417 @end example
3418
3419 @noindent
3420 Dieser Befehl setzt die Eigenschaft @code{skipBars} im
3421 @code{Score}-Kontext auf wahr (@code{##t}).  Die Pause und diese Option zu der Musik von oben hinzugefügt, ergibt folgendes
3422 Beispiel:
3423
3424 @lilypond[quote,ragged-right]
3425 \transpose f c' \relative c {
3426   \time 2/4
3427   \set Score.skipBars = ##t
3428   R2*3 |
3429   r4 f8 a | cis4 f | e4 d |
3430 }
3431 @end lilypond
3432
3433 Die Partitur wird erstellt, indem man alle Noten kombiniert.
3434 Angenommen, die andere Stimme ist in @code{bassoonNotes}
3435 in der Datei @file{bassoon-music.ly} definiert, würde eine
3436 Partitur erstellt mit:
3437
3438 @example
3439 \include "bassoon-music.ly"
3440 \include "horn-music.ly"
3441
3442 <<
3443   \new Staff \hornNotes
3444   \new Staff \bassoonNotes
3445 >>
3446 @end example
3447
3448 @noindent
3449 woraus sich ergibt:
3450
3451 @lilypond[quote,ragged-right]
3452 \relative c <<
3453   \new Staff {
3454     \clef "treble"
3455     \time 2/4
3456     R2*3 |
3457     r4 f8 a | cis4 f | e4 d |
3458   }
3459   \new Staff {
3460     \clef "bass"
3461     \time 2/4
3462     r4 d,8 f | gis4 c | b4 bes |
3463     a8 e f4 | g4 d | gis4 f |
3464   }
3465 >>
3466 @end lilypond