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