]> git.donarmstrong.com Git - lilypond.git/blob - Documentation/ja/learning/fundamental.itely
Docs: reorganize documentation directory structure
[lilypond.git] / Documentation / ja / learning / fundamental.itely
1 @c -*- coding: utf-8; mode: texinfo; documentlanguage: ja -*-
2
3 @ignore
4     Translation of GIT committish: 499a511d4166feaada31114e097f86b5e0c56421
5
6     When revising a translation, copy the HEAD committish of the
7     version that you are working on.  See TRANSLATION for details.
8 @end ignore
9
10 @c \version "2.12.0"
11
12 @c Translators: Yoshiki Sawada
13 @c Translation status: post-GDP
14
15 @node Fundamental concepts
16 @chapter Fundamental concepts
17 @c 基礎となるコンセプト
18
19 チュートリアルではシンプルなテキスト ファイルから美しい楽譜を刻譜する方法を見@c
20 てきました。このセクションでは、同じように美しいがより複雑な楽譜を作り出すのに@c
21 必要とされるコンセプトとテクニックについて紹介します。
22
23 @menu
24 * How LilyPond input files work::
25 * Voices contain music::
26 * Contexts and engravers::
27 * Extending the templates::
28 @end menu
29
30 @node How LilyPond input files work
31 @section How LilyPond input files work
32 @c LilyPond 入力ファイルの仕組み
33
34 LilyPond の入力フォーマットは非常に自由な形式であり、経験豊富なユーザにとって@c
35 はファイルを構築する際の自由度が高いです。しかしながら、この自由度が新しいユー@c
36 ザにとっては混乱の元になります。このセクションではこの入力ファイルの構造につい@c
37 ていくつか説明します。しかしながら、簡潔さを保つためにいくつかの詳細については@c
38 目をつぶるかもしれません。入力フォーマットについての完全な記述は、@ruser{File 
39 structure} を参照してください。
40 @c ファイル構造
41
42 @menu
43 * Introduction to the LilyPond file structure::
44 * Score is a (single) compound musical expression::
45 * Nesting music expressions::
46 * On the un-nestedness of brackets and ties::
47 @end menu
48
49
50 @node Introduction to the LilyPond file structure
51 @subsection Introduction to the LilyPond file structure
52 @c LilyPond ファイル構造の紹介
53
54 @cindex input format
55 @cindex file structure
56
57 LilyPond 入力ファイルの基本例は以下のようなものです:
58
59 @example
60 \version @w{"@version{}"}
61 \header @{ @}
62 \score @{
63   @var{...compound music expression...}  % all the music goes here!
64   @var{...複合音楽表記...}                  % すべての音楽がここに入ります!
65   \layout @{ @}
66   \midi @{ @}
67 @}
68 @end example
69
70 @noindent
71 基本パターンは本当にさまざまです。しかしながら、この例は開始点として役に立ちま@c
72 す。
73
74 @funindex \book
75 @funindex book
76 @funindex \score
77 @funindex score
78 @cindex book
79 @cindex score
80
81 これまで、あなたが見てきた例では @code{\score @{@}} コマンドを使用していません@c
82 でした。その理由は、あなたが LilyPond に与えたのが簡単な入力であった場合、@c
83 LilyPond が自動的に追加のコマンドを付け加えるからです。LilyPond は以下のような@c
84 入力:
85
86 @example
87 \relative c'' @{
88   c4 a d c
89 @}
90 @end example
91
92 @noindent
93 を以下を簡略表記したものとして扱います:
94
95 @example
96 \book @{
97   \score @{
98     \new Staff @{
99       \new Voice @{
100         \relative c'' @{
101           c4 a b c
102         @}
103       @}
104     @}
105     \layout @{ @}
106   @}
107 @}
108 @end example
109
110 言い換えると、入力が保持しているのが単一の音楽表記である場合、LilyPond はまる@c
111 でその音楽表記が上で示されたコマンドで包まれているかのように解釈します。
112
113 @cindex implicit contexts
114 @cindex contexts, implicit
115
116 @strong{一言警告!}  LilyPond ドキュメントの中にある多くの例では、@code{\new 
117 Staff} と @code{\new Voice} コマンドは暗黙的に作成されるために省略されていま@c
118 す。簡単な例ではそれでうまくいきますが、より複雑な例の場合 -- 特に追加のコマン@c
119 ドが使用される場合 -- コンテキストの暗黙的な作成は予想外の結果となる可能性があ@c
120 ります。多分、予期しない余分な譜が作成されるでしょう。コンテキストを明示的に作@c
121 成する方法は @ref{Contexts and engravers} で説明されています。
122 @c コンテキストとエングラーバ
123
124 @warning{数行以上の音楽を入力する場合、常に譜とボイスを明示的に作成したほうが@c
125 賢明です。}
126
127 今度は最初の例に戻って、@code{\score} コマンドについて検証します。他のことはデ@c
128 フォルトのままにしておきます。
129
130 @code{\score} ブロックは常にただ 1 つの音楽表記を保持していなければなりませ@c
131 ん。そして、その音楽表記は @code{\score} コマンドのすぐ後に置かれなければなり@c
132 ません。音楽表記は単一の音符である場合もありますし、以下のような巨大な複合表記@c
133 である場合もあるということを覚えておいてください:
134
135 @example
136 @{
137   \new StaffGroup <<
138     @var{...insert the whole score of a Wagner opera in here...}
139     @var{...ワーグナーのオペラの楽譜全体がここに入ります...}
140   >>
141 @}
142 @end example
143
144 @noindent
145 すべては @code{@{ ... @}} の内部にあるため、それは 1 つの音楽表記であるとカ@c
146 ウントされます。
147
148 以前見てきたように、@code{\score} ブロックは他のものを含む可能性もあります。例@c
149 えば以下のように:
150
151 @example
152 \score @{
153   @{ c'4 a b c' @}
154   \header @{ @}
155   \layout @{ @}
156   \midi @{ @}
157 @}
158 @end example
159
160 @funindex \header
161 @funindex header
162 @funindex \layout
163 @funindex layout
164 @funindex \midi
165 @funindex midi
166 @cindex header
167 @cindex layout
168 @cindex midi
169
170 @noindent
171 これら 3 つのコマンド -- @code{\header}, @code{\layout}, @code{\midi} -- は特@c
172 別なものであるということに注意してください: バックスラッシュ (@code{@bs{}}) で@c
173 始まる他の多くのコマンドとは異なり、これらは音楽表記@emph{ではなく}、何らかの@c
174 音楽表記の一部でもありません。そのため、これらは @code{\score} ブロックの内部@c
175 に置かれるかもしれませんし、外部に置かれるかもしれません。実際、これらのコマン@c
176 ドは一般的に @code{\score} ブロックの外側に置かれます -- 例えば、このセク@c
177 ションの最初の例のように @code{\header} はしばしば @code{\score} コマンドの上@c
178 に置かれます。
179
180 以前は見なかった他の 2 つのコマンドは @code{\layout @{ @}} と @code{\midi @{ @}} 
181 です。それらが上記のように記述された場合、LilyPond はそれぞれ譜刻された出力と 
182 MIDI 出力を作り出します。それらは表記リファレンスの @ruser{Score layout} と 
183 @ruser{Creating MIDI files} で完全に記述されています。
184 @c 楽譜のレイアウト
185 @c MIDI ファイルの作成
186
187 @cindex scores, multiple
188 @cindex book block, implicit
189 @cindex implicit book block
190 @funindex \book
191 @funindex book
192
193 あなたは複数の @code{\score} ブロックを記述するかもしれません。それらはそれぞ@c
194 れ別々の楽譜として扱われますが、それらは結合されて単一の出力ファイルに収められ@c
195 ます。@code{\book} コマンドは必要ありません -- このコマンドは暗黙的に 1 つ作成@c
196 されます。しかしながら、あなたが 1 つの @code{.ly} ファイルから別々に分かれた@c
197 出力ファイルを作成しようとするのなら、それぞれのセクションを異なる出力ファイル@c
198 に分けるために @code{\book} コマンドが使用されます: 各 @code{\book} ブロックは@c
199 別々の出力ファイルを作り出します。
200
201 要約:
202
203 各 @code{\book} ブロックは別々の出力ファイル (つまり PDF ファイル) を作成しま@c
204 す。あなたが明示的に @code{\book} コマンドを記述しなかった場合、LilyPond は暗@c
205 黙的に入力コードを @code{\book} ブロックで包み込みます。
206
207 各 @code{\score} ブロックは @code{\book} ブロック内部で別々の音楽表記のチャンク 
208 (塊) となります。
209
210 @cindex layout block, effect of location
211
212 各 @code{\layout} ブロックはそのブロックを含んでいる @code{\score} ブロックや 
213 @code{\book} ブロックに影響を与えます -- つまり、ある @code{\score} ブロックの@c
214 内部にある @code{\layout} ブロックはその @code{\score} ブロックにだけ影響を与@c
215 え、@code{\score} ブロックの外部にある (それゆえ、明示的あるいは暗黙的に 
216 @code{\book} ブロックの中にある) @code{\layout} ブロックはその @code{\book} ブ@c
217 ロックの中にあるすべての @code{\score} に影響を与えます。
218
219 詳細は、@ruser{Multiple scores in a book} を参照してください。
220 @c 1 つの book の中にある複数の score
221
222 @cindex variables
223
224 もう一つの重要な簡略表記は変数を定義することです。すべてのテンプレートがこれを@c
225 使っています:
226
227 @example
228 melody = \relative c' @{
229   c4 a b c
230 @}
231
232 \score @{
233   \melody
234 @}
235 @end example
236
237 LilyPond がこのファイルを見ると、@code{melody} の値 (イコール記号の後にあるす@c
238 べて) を記憶し、@code{\melody} と記述された箇所すべてにその値を挿入します。変@c
239 数の名前について特別なことは何もありません -- 変数名は @code{melody}, 
240 @code{global}, @code{TimeKey}, @code{pianorighthand}, @code{foofoobarbaz} など@c
241 となります。詳細は、@ref{Saving typing with variables and functions} を参照し@c
242 てください。変数名はアルファベットだけで構成されていて、LilyPond コマンド名と@c
243 異なっている限りは、ほぼどんな名前でも使用できるということを覚えておいてくださ@c
244 い。変数名の厳密な制限については、@ruser{File structure} で詳述されています。
245 @c 変数と関数を用いたタイピングの省力化
246 @c ファイル構造
247
248
249 @seealso
250 入力フォーマットの完全な定義は、@ruser{File structure} を参照してください。
251 @c ファイル構造
252
253
254 @node Score is a (single) compound musical expression
255 @subsection Score is a (single) compound musical expression
256 @c Score は (単一の) 複合的な音楽表記
257
258 @funindex \score
259 @funindex score
260 @cindex score
261 @cindex contents of a score block
262 @cindex score block, contents of
263 @cindex compound music expression
264 @cindex music expression, compound
265
266 前のセクション -- @ref{Introduction to the LilyPond file structure} -- で 
267 LilyPond 入力ファイルの一般的な構造について見てきました。しかしながら、我々は@c
268 最も重要な部分を飛ばしてきたようです: どうやって @code{\score} の後に記述する@c
269 ものを見つけ出すのでしょうか?
270 @c LilyPond ファイル構造の紹介
271
272 我々はそのことを完全には飛ばしてきませんでした。この大きな謎は簡単なことであ@c
273 り、謎でもなんでも@emph{ないのです}。以下の行がこの謎についてすべてを説明して@c
274 います:
275
276 @quotation
277 @emph{@code{\score} ブロックは 1 つの複合音楽表記で始まらなくてはなりません。}
278 @end quotation
279
280 @noindent
281 音楽表記と複合音楽表記が意味しているものを理解するには、チュートリアルの 
282 @ref{Music expressions explained} を読み返すと役に立つかもしれません。そこで@c
283 は、小さな音楽表記 -- 音符から始めて、それから和音など -- から大きな音楽表記を@c
284 構築する方法を説明しています。今度は、大きな音楽表記からはじめて、その複雑さを@c
285 減らしていきます。
286 @c 音楽表記の説明
287
288 @example
289 \score @{
290   @{ % this brace begins the overall compound music expression
291     % この中括弧は複合音楽表記全体の開始点です
292     \new StaffGroup <<
293       @var{...insert the whole score of a Wagner opera in here...}
294       @var{...ワーグナーのオペラの楽譜全体がここに入ります...}
295     >>
296   @} % this brace ends the overall compound music expression
297     % この中括弧は複合音楽表記全体の終了点です
298   \layout @{ @}
299 @}
300 @end example
301
302 ワーグナーのオペラの長さはこのマニュアルの軽く 2 倍はあります。そのため、歌手@c
303 とピアノだけを加えることにします。このアンサンブルでは複数の譜をまとめて左端に@c
304 中括弧を付ける @code{StaffGroup} は必要ありません。そのため、それを削除しま@c
305 す。しかしながら、歌手とピアノが@emph{必要}です。
306
307 @example
308 \score @{
309   <<
310     \new Staff = "singer" <<
311     >>
312     \new PianoStaff = "piano" <<
313     >>
314   >>
315   \layout @{ @}
316 @}
317 @end example
318
319 歌手とピアノが同時進行であることを示すために @code{@{ ... @}} の代わりに 
320 @code{<< ... >>} を使用するということを覚えておいてください。我々はボーカル 
321 パートとピアノパートが同時進行であるということを明確に示したいのであり、どちら@c
322 かがもう一方の後に演奏されるのではないのです!歌手の譜表は一続きの音楽表記を 1 
323 つだけ保持するため、歌手の譜表に対して << ... >> は必ずしも必要ありません。し@c
324 かしながら、譜表の中の音楽が 2 つの同時進行の音楽表記 -- つまり、2 つの同時進@c
325 行のボイスであるとか、歌詞付きの歌 -- である場合、中括弧の代わりに @code{<< ... 
326 >>} を使う必要があります。後で実際の音楽を加えてみますが、ここではダミーの音符@c
327 と歌詞を入力してみます。
328
329 @lilypond[verbatim,quote,ragged-right]
330 \score {
331   <<
332     \new Staff = "singer" <<
333       \new Voice = "vocal" { c'1 }
334       \addlyrics { And }
335     >>
336     \new PianoStaff = "piano" <<
337       \new Staff = "upper" { c'1 }
338       \new Staff = "lower" { c'1 }
339     >>
340   >>
341   \layout { }
342 }
343 @end lilypond
344
345 更に詳細を加えていきます。歌手の譜表は @code{Voice} (LilyPond では、この用語は@c
346 音符のセットを参照するものであり、必ずしもボーカルの音符であるわけではありません 
347 -- 例えば、一般にバイオリンは 1 つのボイスを演奏します) と歌詞を保持します。さ@c
348 らに、ピアノの譜表は上部譜表 (右手) と下部譜表 (左手) を保持します。
349
350 この段階で、音符の入力を開始することができます。@code{\new Voice = "vocal"} の@c
351 後の中括弧の中に、以下を書き加えることができます:
352
353 @example
354 \relative c'' @{
355   r4 d8\noBeam g, c4 r
356 @}
357 @end example
358
359 しかしながら、そのようにすると、@code{\score} セクションは非常に長くなり、何が@c
360 起こるのか理解しにくくなります。そのため、直接音符を付け加える代わりに変数を使@c
361 用しましょう。前のセクションで変数についての紹介を行いました。覚えていますよ@c
362 ね?では、いくつかの音符を加えて実際の楽譜の一部を作成してみましょう:
363
364 @lilypond[verbatim,quote,ragged-right]
365 melody = \relative c'' { r4 d8\noBeam g, c4 r }
366 text   = \lyricmode { And God said, }
367 upper  = \relative c'' { <g d g,>2~ <g d g,> }
368 lower  = \relative c { b2 e2 }
369
370 \score {
371   <<
372     \new Staff = "singer" <<
373       \new Voice = "vocal" { \melody }
374       \addlyrics { \text }
375     >>
376     \new PianoStaff = "piano" <<
377       \new Staff = "upper" { \upper }
378       \new Staff = "lower" {
379         \clef "bass"
380         \lower
381       }
382     >>
383   >>
384   \layout { }
385 }
386 @end lilypond
387
388 音符 -- これは @code{\relative} の中で導入されたり、音楽表記の中に直接含まれて@c
389 います -- と歌詞 -- これは @code{\lyricmode} で導入されています -- の違いに気@c
390 をつけてください。前者は LilyPond に後に続く内容を音楽として解釈するように指示@c
391 し、後者はテキストとして解釈するように指示します。
392
393 @code{\score} セクションを書いている (あるいは読んでいる) とき、ゆっくりと注意@c
394 深く進めてください。外側から始めて、それから内部の細かな部分に取り組んでくださ@c
395 い。さらに、きちんとインデントを入れると非常に役に立ちます - これは、同じレベ@c
396 ルにある各要素はテキスト エディタの中で同じ水平位置から始まるということを保証@c
397 します。
398
399 @code{\score} セクションを書いている (あるいは読んでいる) とき、ゆっくりと注意@c
400 深く進めてください。外側から始めて、それから内部の細かな部分に取り組んでくださ@c
401 い。さらに、きちんとインデントを入れると非常に役に立ちます -- これは、同じレベ@c
402 ルにある各要素はテキスト エディタの中で同じ水平位置から始まるということを保証@c
403 します。
404
405
406 @seealso
407 表記リファレンス: @ruser{Structure of a score}
408 @c score の構造
409
410
411 @node Nesting music expressions
412 @subsection Nesting music expressions
413 @c 音楽表記のネスト
414
415 @cindex staves, temporary
416 @cindex temporary staves
417 @cindex ossias
418
419 すべての譜をファイルの始めに宣言することは必須ではありません; 譜はどこででも臨@c
420 時に導入される可能性があります。これはオッシアを作成する際に特に有用です -- 
421 @rglos{ossia} を参照してください。ここで、3 つの音符に対して臨時に新しい譜表を@c
422 導入する方法を示すちょっとした例を挙げます:
423 @c オッシア
424
425 @lilypond[verbatim,quote,ragged-right]
426 \new Staff {
427   \relative g' {
428     r4 g8 g c4 c8 d |
429     e4 r8
430     <<
431       { f c c }
432       \new Staff {
433         f8 f c
434       }
435     >>
436     r4 |
437   }
438 }
439 @end lilypond
440
441 @noindent
442 音部記号のサイズは音部変更後に譜刻される音部記号のサイズ -- 行の開始点での音部@c
443 記号よりも少し小さい -- と同じであるということに注意してください。これは行の途@c
444 中で譜刻される音部記号全般に言えることです。
445
446 @cindex staff, positioning
447
448 オッシアは以下のように譜表の上に置かれるかもしれません:
449
450 @lilypond[verbatim,quote,ragged-right]
451 \new Staff = "main" {
452   \relative g' {
453     r4 g8 g c4 c8 d |
454     e4 r8
455     <<
456       { f c c }
457       \new Staff \with {
458         alignAboveContext = #"main" }
459       { f8 f c }
460     >>
461     r4 |
462   }
463 }
464 @end lilypond
465
466 この例は後で説明される @code{\with} を使用しています。このコマンドは単一の譜表@c
467 のデフォルトの振る舞いを変更することを意味します。ここでは、このコマンドは新し@c
468 い譜表をデフォルトの位置 (@qq{main} と呼ばれている譜表の下) ではなく、上に置く@c
469 べきであると言っています。
470
471
472 @seealso
473 オッシアはしばしば音部記号や拍子記号無しで描かれ、通常は小さなフォントで描かれ@c
474 ます。これらはまだ紹介されていない追加のコマンドを必要とします。@ref{Size of 
475 objects} と @ruser{Ossia staves} を参照してください。
476 @c オブジェクトのサイズ
477 @c オッシア譜
478
479
480 @node On the un-nestedness of brackets and ties
481 @subsection On the un-nestedness of brackets and ties
482 @c ネストされない括弧とタイ
483
484 @cindex brackets, nesting
485 @cindex bracket types
486 @cindex brackets, enclosing vs. marking
487
488 これまでに LilyPond への入力ファイルを書く際に使用する括弧にはいくつかの種類が@c
489 あるということを見てきました。これらは異なる規則 -- 最初は混乱を引き起こす可能@c
490 性があります -- に従います。規則についての説明を行う前に、括弧の種類を再確認し@c
491 てみましょう。
492
493 @c attempt to force this onto a new page
494 @need 50
495 @multitable @columnfractions .3 .7
496 @headitem 括弧のタイプ
497   @tab 機能
498 @item @code{@{ .. @}}
499   @tab 一続きの音楽を囲みます
500 @item @code{< .. >}
501   @tab 和音となる音符を囲みます
502 @item @code{<< .. >>}
503   @tab 同時進行する音楽表記を囲みます
504 @item @code{( .. )}
505   @tab スラーの開始点と終了点を意味します
506 @item @code{\( .. \)}
507   @tab フレージング スラーの開始点と終了点を意味します
508 @item @code{[ .. ]}
509   @tab 手動ビームの開始点と終了点を意味します
510 @end multitable
511
512 こららに対して、音符の間や音符をまたがって線を生成する他の構文を付け加えるべき@c
513 です: タイ (チルド @code{~} によって記述されます)、@c
514 連符 (@code{\times x/y @{..@}} として記述されます)、@c
515 グレイス ノート (@code{\grace@{..@}} として記述されます) です。
516
517 LilyPond 以外では、種類の異なる括弧が適切にネストされること -- @code{[ @{ ( .. ) 
518 @} ]} のように -- が一般的な使い方であり、括弧の終わりの順序は正確に括弧の始ま@c
519 りの順序と逆になります。このことは上記の表で @q{囲みます} という言葉で記述され@c
520 ている 3 種類の括弧に対しては@strong{必須}となります -- それらは適切にネストさ@c
521 れなければなりません。しかしながら、残りの括弧 -- 上記の表で @q{意味します} と@c
522 いう言葉で記述されいるものと、タイ、連符で使用されるもの -- はいかなる括弧とも@c
523 ネストされる必要は@strong{ありません}。実際、これらは何かを囲むという意味では@c
524 括弧ではありません -- それらは単に何かが始まる場所、終わる場所を示すためのマー@c
525 クです。
526
527 そのため、例えばフレージング スラーは手動で挿入されるビームの前に開始して、そ@c
528 の手動ビームの前に終わる可能性もあります -- たぶん音楽的ではないかもしれません@c
529 が、可能性はあります:
530
531 @lilypond[quote,verbatim,fragment,ragged-right,relative=2]
532  { g8\( a b[ c b\) a] }
533 @end lilypond
534
535 一般に、種類の異なる括弧と連符、タイ、グレースノートに適用される括弧は自由に混@c
536 ぜ合わせられるかもしれません。以下の例では、ビームは連符の中にまで伸びていて (行 
537 1)、スラーは連符の中にまで伸びていて (行 2)、ビームとスラーが連符の中にまで伸@c
538 びていて (行 3)、タイが 2 つの連符にまたがっていて、さらにフレージング スラー@c
539 が連符の外にまで伸びています (行 3 と 4)。
540
541 @lilypond[quote,verbatim,fragment,ragged-right]
542 {
543   r16[ g16 \times 2/3 {r16 e'8] }
544   g16( a \times 2/3 {b d) e' }
545   g8[( a \times 2/3 {b d') e'~]}
546   \times 4/5 {e'32\( a b d' e'} a'4.\)
547 }
548 @end lilypond
549
550
551 @node Voices contain music
552 @section Voices contain music
553 @c 音楽を保持するボイス
554
555 歌手は歌うボイスを必要とし、それゆえ LilyPond も歌う (演奏する) ボイスを必要と@c
556 します。楽譜の中にあるすべての楽器に対する実際の音楽はボイスの中に保持されます 
557 -- このことは LilyPond すべてのコンセプトの中での最も基礎的なことです。
558
559 @menu
560 * I'm hearing Voices::
561 * Explicitly instantiating voices::
562 * Voices and vocals::
563 @end menu
564
565 @node I'm hearing Voices
566 @subsection I'm hearing Voices
567 @c 私はボイスを聴いている
568
569 @cindex polyphony
570 @cindex layers
571 @cindex multiple voices
572 @cindex voices, multiple
573 @cindex Voice context
574 @cindex context, Voice
575 @cindex simultaneous music
576 @cindex music, simultaneous
577 @cindex concurrent music
578 @cindex music, concurrent
579 @cindex voices vs. chords
580 @cindex chords vs. voices
581
582 LilyPond の楽譜の中で最も低レベルで、最も基礎的であり、最も内部にあるレイヤは 
583 @q{ボイス コンテキスト} または縮めて単に @q{ボイス} と呼ばれます。ボイスはとき@c
584 どき他の表記パッケージの中で @q{レイヤ} と呼ばれます。
585
586 実際、ボイス レイヤまたはコンテキストは音楽を保持することができる唯一のもので@c
587 す。ボイス コンテキストが明示的に宣言されていない場合、この章の始めで見てきた@c
588 ようにボイス コンテキストが 1 つ自動的に生成されます。オーボエなどといった楽器@c
589 は同時に 1 つの音符だけを演奏できます。そのような楽器のために書かれた音楽は単@c
590 声であり、ボイスを 1 つだけを必要とします。ピアノのように同時に複数の音符を演@c
591 奏することができる楽器はしばしば、それらが演奏することのできる同時進行の異なる@c
592 音符やリズムをエンコードするために、複数のボイスを必要とします。
593
594 もちろん、単一のボイスは和音の中で多くの音符を保持することができます。それで@c
595 は、複数のボイスが実際に必要とされるのはどんな場合なのでしょうか?まずは、4 つ@c
596 の和音を持つ以下の例を見てください:
597
598 @lilypond[quote,verbatim,fragment,ragged-right,relative=1]
599 \key g \major
600 <d g>4 <d fis> <d a'> <d g>
601 @end lilypond
602
603 この例は単一の角括弧からなる和音記号@code{< ... >} を使って表記することがで@c
604 き、必要とされるボイスは 1 つだけです。しかしながら、F シャープが A に移行する@c
605 際に、F シャープは実際には 8 分音符であり、そのあとに 8 分音符の G が続くとし@c
606 たらどうでしょうか?そのような場合、同時に開始されるが演奏時間が異なる 2 つの@c
607 音符を持つことになります: 4 分音符の D と 8 分音符の F シャープです。これらの@c
608 音符をどのように記述すればよいのでしょうか?これらの音符は和音として記述するこ@c
609 とはできません。なぜなら、和音の中の音符はすべて同じ演奏時間でなければならない@c
610 からです。そして、それらの音符は同時に開始しなければならないので、2 つのシー@c
611 ケンシャルな (連続した) 音符として記述することもできません。この場合は 2 つの@c
612 ボイスが必要となります。
613
614 上記のことが LilyPond 入力構文でどのように達成されるのかを見てみましょう。
615
616 @funindex << \\ >>
617 @funindex \\
618
619 1 つの譜表に複数のボイスがある音楽断片を入力する最も簡単な方法は、各ボイスを@c
620 シーケンスに (続けて) 入力し (各ボイスを @code{@{...@}} の中に入れます)、それ@c
621 らのボイスを @code{<<...>>} を使って同時進行するよう組み合わせます。さらに、各@c
622 断片は、それぞれが別の断片であることを示すために、ダブル バックスラッシュ 
623 @code{\\} で区切られなければなりません。ダブル バックスラッシュが無ければ、す@c
624 べての音符は単一のボイスの中に挿入され、通常はエラーとなります。このテクニック@c
625 は、大部分が単声であり、時々短い部分で多声になる楽曲に特に適しています。
626
627 以下では、上記の例の和音を 2 つのボイスに分け、経過音とスラーを付け加えています:
628
629 @lilypond[quote,verbatim,fragment,ragged-right,relative=2]
630 \key g \major
631 %    Voice "1"                  Voice "2"
632 << { g4 fis8( g) a4 g }    \\ { d4 d d d }  >> |
633 @end lilypond
634
635 この例では 2 番目のボイスのステムが下向きになっていることに気づいてください。
636
637 今度はもう 1 つ簡単な例を挙げてみます:
638
639
640 @lilypond[quote,verbatim,fragment,ragged-right,relative=2]
641 \key d \minor
642 %    Voice "1"             Voice "2"
643 << { r4 g g4. a8 }    \\ { d,2 d4 g }       >> |
644 << { bes4 bes c bes } \\ { g4 g g8( a) g4 } >> |
645 << { a2. r4 }         \\ { fis2. s4 }       >> |
646 @end lilypond
647
648 各小節で別々に @code{<< \\ >>} 構造を使用する必要はありません。各小節に音符が@c
649 少ししかないような音楽の場合、このレイアウトはコードの可読性を良くするのに役立@c
650 ちます。しかしながら、各小節に多くの音符がある場合、以下のように各ボイスを分離@c
651 した方が良いかもしれません:
652
653 @lilypond[quote,verbatim,fragment,ragged-right,relative=2]
654 \key d \minor
655 << {
656   % Voice "1"
657   r4 g g4. a8 |
658   bes4 bes c bes |
659   a2. r4 |
660 } \\ {
661   % Voice "2"
662   d,2 d4 g |
663   g4 g g8( a) g4 |
664   fis2. s4 |
665 } >>
666 @end lilypond
667
668
669 @cindex voices, naming
670 @cindex voices crossing brackets
671 @cindex slurs crossing brackets
672 @cindex ties crossing brackest
673
674 この例にあるボイスは 2 つだけです。しかしながら、これと同じ構成にもっと多くの@c
675 バック スラッシュを付け加えることによって、3 つかそれ以上のボイスを持たせるこ@c
676 とになるかもしれません。
677
678 ボイス コンテキストは @code{"1"}, @code{"2"} などの名前を持ちます。各コンテキ@c
679 ストの中では、スラー、ステム、タイ、強弱記号などの垂直方向の向きは適切にセット@c
680 されます。
681
682 @lilypond[quote,verbatim,fragment]
683 \new Staff \relative c' {
684   % Main voice
685   c16 d e f
686   %    Voice "1"     Voice "2"                 Voice "3"
687   << { g4 f e } \\ { r8 e4 d c8 ~ } >> |
688   << { d2 e2 }  \\ { c8 b16 a b8 g ~ g2 } \\ { s4 b4 c2 } >> |
689 }
690 @end lilypond
691
692 これらのボイスはすべてメインのボイスからは分かれています。メインのボイスの音符は 
693 @code{<< .. >>} 構造の外にあるからです。この @code{<< .. >>} 構造を同時進行構@c
694 造と呼ぶことにしましょう。通常、スラーとタイは同じボイス内にある音符だけをつな@c
695 ぎます。そのため、スラーとタイは同時進行構造を出たり入ったりすることはありま@c
696 せん。反対に、同じ譜表上にある個々の同時進行構造で、平行の位置にあるボイスは同@c
697 じボイスになります。さらに、その他のボイス関連プロパティは同時進行構造をまた@c
698 がって持ち越されます。ここで、上記と同じ例で各ボイスに対して異なる色と音符玉を@c
699 割り当ててみます。あるボイスでの変更は他のボイスに影響を与えませんが、その後に@c
700 続く同じボイス (訳者: 平行位置にあるボイス) でその変更が維持されることに注意し@c
701 てください。さらに、タイでつながれた音符は、同じボイスとなる 2 つの同時進行構@c
702 造にまたがって分かれるかもしれないということに注意してください。
703
704 @lilypond[quote,verbatim]
705 \new Staff \relative c' {
706   % Main voice
707   c16 d e f
708   << % Bar 1
709     {
710       \voiceOneStyle
711       g4 f e
712     }
713   \\
714     {
715       \voiceTwoStyle
716       r8 e4 d c8 ~
717     }
718   >>
719   << % Bar 2
720      % Voice 1 continues
721     { d2 e2 }
722   \\
723      % Voice 2 continues
724     { c8 b16 a b8 g ~ g2 }
725   \\
726     {
727       \voiceThreeStyle
728       s4 b4 c2
729     }
730   >>
731 }
732 @end lilypond
733
734 @funindex \voiceOneStyle
735 @funindex \voiceTwoStyle
736 @funindex \voiceThreeStyle
737 @funindex \voiceFourStyle
738 @funindex \voiceNeutralStyle
739
740 コマンド @code{\voiceXXXStyle} は主にこのマニュアルのような教育目的のドキュ@c
741 メントで使用することを意図したものです。このコマンドは、各ボイスが容易に見分け@c
742 られるように、音符玉、ステム、ビームの色、それに音符玉のスタイルを変更します。@c
743 ボイス 1 は赤でダイアモンドの音符玉を持つようにセットされ、ボイス 2 は青で三角@c
744 形の音符玉を、ボイス 3 は緑で×付きの円を、ボイス 4 (ここでは使用されていません) 
745 はマゼンダの×の音符玉を持つようにセットされます。@code{\voiceNeutralStyle} 
746 (これもここでは使用されていません) は音符玉のスタイルをデフォルトに戻します。@c
747 後ほど、ユーザがこのようなコマンドを作成するための方法を見ていきます。@c
748 @ref{Visibility and color of objects} と @ref{Using variables for tweaks} を参@c
749 照してください。
750 @c オブジェクトの可視性と色
751 @c 調整のために変数を使用する
752
753 @cindex polyphony and relative note entry
754 @cindex relative note entry and polyphony
755
756 多声部は @code{\relative @{ @}} ブロック内の音符の相対関係を変えません。各音符@c
757 は直前の音符あるいは直前の和音の最初の音符との相対関係で計算されます。そのた@c
758 め、以下の例では
759
760 @example
761 \relative c' @{ noteA << < noteB noteC > \\ noteD >> noteE @}
762 @end example
763
764 @noindent
765 @code{noteB} は @code{noteA} との相対関係で決まり                         @*
766 @code{noteC} は @code{noteA} ではなく @code{noteB} との相対関係で決まり  @*
767 @code{noteD} は @code{noteA} や @code{noteC} ではなく
768 @code{noteC} との相対関係で決まり                                           @*
769 @code{noteE} は @code{noteA} ではなく @code{noteD} との相対関係で決まります。
770
771 各ボイスの中にある音符の音程がボイスごとに大きく離れている場合、各ボイスの始めに 
772 @code{\relative} コマンドを置くと明瞭になるかもしれません:
773
774 @example
775 \relative c' @{ noteA ... @}
776 <<
777   \relative c'' @{ < noteB noteC > ... @}
778 @bs{}@bs{}
779   \relative g' @{ noteD ... @}
780 >>
781 \relative c' @{ noteE ... @}
782 @end example
783
784 最後に、もっと複雑な楽曲の中にあるボイスを分析してみましょう。以下は、ショパンの 
785 Deux Nocturnes, Op 32 の 2 番の最初の 2 小節です。この例は、表記を記述するため@c
786 のテクニックをいくつか示すために、本章の後の方と次の章で使用されます。ですか@c
787 ら、今はコードの中にある意味不明に見えるものは無視して、音楽とボイスだけに注目@c
788 してください -- 込み入った内容は後ほど説明します。
789
790 @c The following should appear as music without code
791 @lilypond[quote,ragged-right]
792 \new Staff \relative c'' {
793   \key aes \major
794   << % Voice one
795     { c2 aes4. bes8 }
796   \\ % Voice two
797     { aes2 f4 fes }
798   \\ % No voice three
799   \\ % Voice four
800     {
801       % Ignore these for now - they are explained in Ch 4
802       \once \override NoteColumn #'force-hshift = #0
803       <ees c>2
804       \once \override NoteColumn #'force-hshift = #0.5
805       des2
806     }
807   >> |
808   <c ees aes c>1 |
809 }
810 @end lilypond
811
812 ステムの向きはしばしば 2 つの同時進行する旋律ラインのつながりを示すために使用@c
813 されます。ここでは、一番上の音符のステムはすべて上向きであり、下の方にある音符@c
814 のステムはすべて下向きです。これは、複数のボイスが必要とされているということを@c
815 示す最初の兆候です。
816
817 しかしながら、複数のボイスが実際に必要とされるのは、同時に始まる音符が異なる演@c
818 奏時間を持つ場合です。最初の小節の 3 拍目を見てください。A フラットは付点 4 分@c
819 音符であり、F は 4 分音符、D フラットは半音符です。これらの音符を和音として記@c
820 述することはできません。なぜなら、和音の中の音符はすべて同じ演奏時間でなければ@c
821 ならないからです。これらの音符をシーケンシャルな (連続する) 音符として記述する@c
822 こともできません。なぜなら、これらの音符は同時に始まらなければならないからで@c
823 す。この箇所では 3 つのボイスが必要となり、以下に示すように一般的にはこの小節@c
824 全体を 3 つのボイスで記述します。そこでは、3 つのボイスに対して異なる音符玉と@c
825 色を割り当てています。もう一度繰り返しますが、この例のコードのことは後ほど説明@c
826 しますので、理解できないことは無視してください。
827
828 @c The following should appear as music without code
829 @c The three voice styles should be defined in -init
830 @lilypond[quote,ragged-right]
831 \new Staff \relative c'' {
832   \key aes \major
833   <<
834     { % Voice one
835       \voiceOneStyle
836       c2 aes4. bes8
837     }
838   \\  % Voice two
839     { \voiceTwoStyle
840       aes2 f4 fes
841     }
842   \\  % No Voice three (we want stems down)
843   \\  % Voice four
844     { \voiceThreeStyle
845       % Ignore these for now - they are explained in Ch 4
846       \once \override NoteColumn #'force-hshift = #0
847       <ees c>2
848       \once \override NoteColumn #'force-hshift = #0.5
849       des2
850     }
851   >> |
852   <c ees aes c>1 |
853 }
854 @end lilypond
855
856
857 この音楽のコードをゼロから記述してみましょう。これから見ていくように、いくつか@c
858 の問題に遭遇します。すでに学んだように、最初の小節の音楽を 3 つのボイスに分け@c
859 て記述するために @code{<< \\  >>} 構造を使用します:
860
861 @c ignore
862 @lilypond[quote,verbatim,fragment,ragged-right]
863 \new Staff \relative c'' {
864   \key aes \major
865   <<
866     { c2 aes4. bes8 } \\ { aes2 f4 fes } \\ { <ees c>2 des2 }
867   >>
868   <c ees aes c>1
869 }
870 @end lilypond
871
872 @cindex stem down
873 @cindex voices and stem directions
874 @cindex stem directions and voices
875 @cindex stem up
876
877 ステムの向きは自動的に割り当てられ、奇数番号のボイスが上向きのステム、偶数番号@c
878 のボイスが下向きのステムを持ちます。ボイス 1 と 2 のステムは正しいのですが、ボ@c
879 イス 3 のステムはここでは下向きになるべきです。これは単純にボイス 3 を省略し@c
880 て、その音楽をボイス 4 に記述することによって修正できます:
881
882 @lilypond[quote,verbatim,fragment,ragged-right]
883 \new Staff \relative c'' {
884   \key aes \major
885   << % Voice one
886     { c2 aes4. bes8 }
887   \\ % Voice two
888     { aes2 f4 fes   }
889   \\ % Omit Voice three
890   \\ % Voice four
891     { <ees c>2 des2 }
892   >> |
893   <c ees aes c>1 |
894 }
895 @end lilypond
896
897 @noindent
898 これによりステムの向きが修正されました。しかしながら、複数のボイスを持つ場合に@c
899 しばしば発生する問題に遭遇してしまいました -- あるボイスの中にある音符のステム@c
900 が他のボイスの中にある音符玉と衝突しています。音符をレイアウトするときに、@c
901 LilyPond は 2 つのボイスのステムの向きを反対にすることによって 2 つのボイスの@c
902 音符や和音が同じ垂直方向の音符列に位置することを可能にします。しかしながら、3 
903 番目や 4 番目のボイスは音符玉の衝突を避けるために必要があれば移動させられま@c
904 す。これは普通はうまくいきますが、この例では一番下のボイスの音符はデフォルトの@c
905 状態では明らかにうまくいっていません。LilyPond は音符の水平方向位置を調節する@c
906 ためにいくつかの手段を提供します。我々はまだこの問題を修正するための方法を見て@c
907 いく準備が整っていないので、この問題は後に残しておくことにします -- 
908 @ref{Fixing overlapping notation} の @code{force-hshift} プロパティを参照して@c
909 ください。
910
911
912 @seealso
913 表記リファレンス: @ruser{Multiple voices}
914 @c 複数のボイス
915
916
917 @node Explicitly instantiating voices
918 @subsection Explicitly instantiating voices
919 @c ボイスの明示的なインスタンス化
920
921 @funindex \voiceOne
922 @funindex voiceOne
923 @funindex \voiceTwo
924 @funindex voiceTwo
925 @funindex \voiceThree
926 @funindex voiceThree
927 @funindex \voiceFour
928 @funindex voiceFour
929 @funindex \oneVoice
930 @funindex oneVoice
931 @funindex \new Voice
932 @cindex voice contexts, creating
933
934 多声部音楽を作成するためにボイス コンテキストを手動で @code{<< >>} ブロックの@c
935 中に作成することもできます。ステム、スラーなどの向きを示すために 
936 @code{\voiceOne} ... @code{\voiceFour} を使用します。この手法は各ボイスを別々@c
937 にして、より記述的な名前を与えることを可能にするため、長い楽譜ではわかりやすい@c
938 ものになります。
939
940 本質的には、前のセクションで使用した構造 @code{<< \\ >>}:
941
942 @example
943 \new Staff @{
944   \relative c' @{
945     << @{ e4 f g a @} @bs{}@bs{} @{ c,4 d e f @} >>
946   @}
947 @}
948 @end example
949
950 @noindent
951 は以下と等価です:
952
953 @example
954 \new Staff <<
955   \new Voice = "1" @{ \voiceOne \relative c' @{ e4 f g a @} @}
956   \new Voice = "2" @{ \voiceTwo \relative c' @{ c4 d e f @} @}
957 >>
958 @end example
959
960 上記の両方ともが以下の楽譜を生成します:
961
962 @c The following example should not display the code
963 @lilypond[ragged-right,quote]
964 \new Staff <<
965   \new Voice = "1" { \voiceOne \relative c' { e4 f g a } }
966   \new Voice = "2" { \voiceTwo \relative c' { c4 d e f } }
967 >>
968 @end lilypond
969
970 @cindex voices, reverting to single
971 @cindex reverting to a single voice
972
973 @code{\voiceXXX} コマンドはステム、スラー、タイ、アーティキュレーション、テキ@c
974 ストの注釈、付点音符の付点、運指記号の向きをセットします。@code{\voiceOne} と 
975 @code{\voiceThree} はこれらのオブジェクトを上向きにし、一方の @code{\voiceTwo} 
976 と @code{\voiceFour} は下向きにします。さらに、音符の玉の衝突を避ける必要があ@c
977 る場合、これらのコマンドは各ボイスに対して水平方向のシフトを発生させます。コ@c
978 マンド @code{\oneVoice} は設定を単一のボイスの場合の通常値に戻します。
979
980 いくつかの簡単な例で、@code{\oneVoice}, @code{\voiceOne}, @code{\voiceTwo} が@c
981 マークアップ、タイ、スラー、強弱記号に与える影響を見ていきましょう:
982
983 @lilypond[quote,ragged-right,verbatim]
984 \relative c'{
985   % Default behavior or behavior after \oneVoice
986   c d8 ~ d e4 ( f g a ) b-> c
987 }
988 @end lilypond
989
990 @lilypond[quote,ragged-right,verbatim]
991 \relative c'{
992   \voiceOne
993   c d8 ~ d e4 ( f g a ) b-> c
994   \oneVoice
995   c, d8 ~ d e4 ( f g a ) b-> c
996 }
997 @end lilypond
998
999 @lilypond[quote,ragged-right,verbatim]
1000 \relative c'{
1001   \voiceTwo
1002   c d8 ~ d e4 ( f g a ) b-> c
1003   \oneVoice
1004   c, d8 ~ d e4 ( f g a ) b-> c
1005 }
1006 @end lilypond
1007
1008 今度は、前のセクションの例を使って同じ多声部音楽のパッセージを 3 つの異なる方@c
1009 法で表記する例を見ていきます。それぞれ異なる状況で利点があります。
1010
1011 1 つはメイン ボイスに属する @code{<< >>} の内部に直接表記を記述する方法です 
1012 (しかしながら、音符は @code{<< \\ >>} 構造の中に置かれては@strong{いません})。@c
1013 これはメイン ボイスの途中で追加のボイスが現れる場合に有用です。ここでは例にさ@c
1014 らに調整を加えます。赤のダイアモンド形の音符はメイン メロディが単一のボイス 
1015 コンテキストになっていて、その上にフレージング スラーを描くことができるという@c
1016 ことを示しています。
1017
1018 @lilypond[quote,ragged-right,verbatim]
1019 \new Staff \relative c' {
1020   \voiceOneStyle
1021   % The following notes are monophonic
1022   c16^( d e f
1023   % Start simultaneous section of three voices
1024   <<
1025     % Continue the main voice in parallel
1026     { g4 f e | d2 e2) }
1027     % Initiate second voice
1028     \new Voice {
1029       % Set stems, etc, down
1030       \voiceTwo
1031       r8 e4 d c8 ~ | c8 b16 a b8 g ~ g2
1032     }
1033     % Initiate third voice
1034     \new Voice {
1035       % Set stems, etc, up
1036       \voiceThree
1037       s2. | s4 b4 c2
1038     }
1039   >>
1040 }
1041 @end lilypond
1042
1043 @cindex nesting music expressions
1044 @cindex nesting simultaneous constructs
1045 @cindex nesting voices
1046 @cindex voices, temporary
1047 @cindex voices, nesting
1048
1049 多声部構造をより深くネストさせることが可能であり、追加のボイスが短時間のもので@c
1050 あるならば、こちらの方がより自然な音楽表記方法であるかもしれません:
1051
1052 @lilypond[quote,ragged-right,verbatim]
1053 \new Staff \relative c' {
1054   c16^( d e f
1055   <<
1056     { g4 f e | d2 e2) }
1057     \new Voice {
1058       \voiceTwo
1059       r8 e4 d c8 ~ |
1060       <<
1061         {c8 b16 a b8 g ~ g2}
1062         \new Voice {
1063           \voiceThree
1064           s4 b4 c2
1065         }
1066       >>
1067     }
1068   >>
1069 }
1070 @end lilypond
1071
1072 @cindex spacing notes
1073
1074 新しいボイスを一時的にネストさせる手法は音楽のほんの一部だけが多声である場合に@c
1075 有用です。しかしながら、楽譜全体が多声である場合、一貫して複数のボイスを使用し@c
1076 た方がわかりやすくなります。ボイスが無音の場所を飛ばすには以下のように空白音符@c
1077 を使用します:
1078
1079 @lilypond[quote,ragged-right,verbatim]
1080 \new Staff \relative c' <<
1081   % Initiate first voice
1082   \new Voice {
1083     \voiceOne
1084     c16^( d e f g4 f e | d2 e2) |
1085   }
1086   % Initiate second voice
1087   \new Voice {
1088     % Set stems, etc, down
1089     \voiceTwo
1090     s4 r8 e4 d c8 ~ | c8 b16 a b8 g ~ g2 |
1091   }
1092   % Initiate third voice
1093   \new Voice {
1094     % Set stems, etc, up
1095     \voiceThree
1096     s1 | s4 b4 c2 |
1097   }
1098 >>
1099 @end lilypond
1100
1101
1102 @subsubheading Note columns
1103 @c 音符列
1104
1105 @cindex note column
1106 @cindex note collisions
1107 @cindex collisions, notes
1108 @cindex shift commands
1109 @funindex \shiftOff
1110 @funindex shiftOff
1111 @funindex \shiftOn
1112 @funindex shiftOn
1113 @funindex \shiftOnn
1114 @funindex shiftOnn
1115 @funindex \shiftOnnn
1116 @funindex shiftOnnn
1117
1118 和音の中で小さな間隔で置かれる音符、あるいは異なるボイスで同時に発生する音符@c
1119 は、音符の玉が重なるのを避けるために 2 列、時にはそれ以上の列に割り振られま@c
1120 す。これらの列は音符列と呼ばれます。それぞれのボイスに対して別々の列が存在し、@c
1121 音符の玉の衝突が起こる場合はボイスごとのシフトが適用されます。これは上の例でも@c
1122 見ることができます。2 小節目でボイス 2 の C はボイス 1 の D との関係で右にシフ@c
1123 トされていて、最後の和音でボイス 3 の C も他の音符との関係で右にシフトされてい@c
1124 ます。
1125
1126 @code{\shiftOn}, @code{\shiftOnn}, @code{\shiftOnnn}, それに @code{\shiftOff} 
1127 コマンドは、衝突が起こる場合に音符や和音をシフトさせる度合いを指定します。デ@c
1128 フォルトでは、外側のボイス (通常はボイス 1 と 2) には @code{\shiftOff} が指定@c
1129 されていて、内側のボイス (ボイス 3 と 4) には @code{\shiftOn} が指定されていま@c
1130 す。シフトが適用される場合、ボイス 1 と 3 は右にシフトされ、ボイス 2 と 4は左@c
1131 にシフトされます。
1132
1133 @code{\shiftOnn} と @code{\shiftOnnn} はさらなるシフト レベルを定義するもので@c
1134 あり、複雑な状況での衝突を解決するために一時的に指定されるかもしれません -- 
1135 @ref{Real music example} を参照してください。
1136 @c 実際の音楽の例
1137
1138 ある音符列は上向きのステムを持つボイスからの音符 (あるいは和音) を 1 つだけ、@c
1139 下向きのステムを持つボイスからの音符 (あるいは和音) を 1 つだけ保持することが@c
1140 できます。同じ向きのステムを持つ 2 つのボイスからの音符が同じ位置に置かれ、両@c
1141 方のボイスにシフトが指定されていない、あるいは同じシフトが指定されている場合、@c
1142 エラー メッセージ @qq{Too many clashing note columns} (音符が多すぎて音符列で@c
1143 衝突が起こっています) が生成されます。
1144
1145
1146 @seealso
1147 表記リファレンス: @ruser{Multiple voices}
1148 @c 複数のボイス?
1149
1150
1151 @node Voices and vocals
1152 @subsection Voices and vocals
1153 @c ボイスとボーカル
1154
1155 声楽には特別な困難があります: 2 つの表記 -- 音符と歌詞 -- を組み合わせる必要が@c
1156 あります。
1157
1158 @funindex \new Lyrics
1159 @funindex \lyricsto
1160 @funindex lyricsto
1161 @funindex Lyrics
1162 @cindex Lyrics context, creating
1163 @cindex lyrics, linking to voice
1164
1165 すでに @code{\addlyrics@{@}} コマンドを見てきました。これは簡単な楽譜であれば@c
1166 うまく処理できます。しかしながら、この方法では限界があります。より複雑な音楽で@c
1167 は、@code{\new Lyrics} を使って歌詞を @code{Lyrics} コンテキストに取り込み、ボ@c
1168 イスに割り当ている名前を使って @code{\lyricsto@{@}} でその歌詞を明示的に音符に@c
1169 リンクさせます。
1170
1171 @lilypond[quote,verbatim,fragment]
1172 <<
1173   \new Voice = "one" \relative c'' {
1174     \autoBeamOff
1175     \time 2/4
1176     c4 b8. a16 g4. f8 e4 d c2
1177   }
1178   \new Lyrics \lyricsto "one" {
1179     No more let sins and sor -- rows grow.
1180   }
1181 >>
1182 @end lilypond
1183
1184 歌詞は @code{Staff} コンテキスト@emph{ではなく} @code{Voice} コンテキストに@c
1185 リンクさせなければならないということに注意してください。このため、@code{Staff} 
1186 コンテキストと @code{Voice} コンテキストを明示的に作成する必要があります。
1187
1188 @cindex lyrics and beaming
1189 @cindex beaming and lyrics
1190 @funindex \autoBeamOff
1191 @funindex autoBeamOff
1192
1193 LilyPond がデフォルトで使用する自動ビームは楽器だけの音楽ではうまく機能します@c
1194 が、歌詞を持つ音楽ではそれほどうまく機能しません。そこではビームはまったく必要@c
1195 ないか、歌詞のメリスマ (訳者注: 歌詞の 1 音節に対して複数の音符を割り当てること) 
1196 を示すために使用されるかのどちらかです。上の例では、自動ビームを Off にするた@c
1197 めにコマンド @code{\autoBeamOff} を使用しています。
1198
1199 @funindex \new ChoirStaff
1200 @funindex ChoirStaff
1201 @funindex \lyricmode
1202 @funindex lyricmode
1203 @cindex vocal score structure
1204 @cindex choir staff
1205
1206 以前使用した Judas Maccabæus からの例を再度使用して、より自由度の高い方法を示@c
1207 します。まず、楽譜の内容を変数に振り直し、音楽と歌詞を譜表構造から分離させま@c
1208 す。さらに @code{ChoirStaff} ブラケットを導入します。歌詞自体は、音楽ではなく@c
1209 歌詞として解釈されることを保証するために、@code{\lyricsmode} で導入されなけれ@c
1210 ばなりません。
1211
1212 @lilypond[quote,verbatim]
1213 global = { \time 6/8 \partial 8 \key f \major}
1214 SopOneMusic = \relative c'' {
1215   c8 | c([ bes)] a a([ g)] f | f'4. b, | c4.~ c4 }
1216 SopTwoMusic = \relative c' {
1217   r8 | r4. r4 c8 | a'([ g)] f f([ e)] d | e([ d)] c bes' }
1218 SopOneLyrics = \lyricmode {
1219   Let | flee -- cy flocks the | hills a -- dorn, __ }
1220 SopTwoLyrics = \lyricmode {
1221   Let | flee -- cy flocks the | hills a -- dorn, }
1222
1223 \score {
1224   \new ChoirStaff <<
1225     \new Staff <<
1226       \new Voice = "SopOne" {
1227         \global
1228         \SopOneMusic
1229       }
1230       \new Lyrics \lyricsto "SopOne" {
1231         \SopOneLyrics
1232       }
1233     >>
1234     \new Staff <<
1235       \new Voice = "SopTwo" {
1236         \global
1237         \SopTwoMusic
1238       }
1239       \new Lyrics \lyricsto "SopTwo" {
1240         \SopTwoLyrics
1241       }
1242     >>
1243   >>
1244 }
1245 @end lilypond
1246
1247 これはすべての声楽譜の基本的な構造です。必要に応じてさらに多くの譜が追加される@c
1248 かもしれませんし、さらに多くのボイスが譜に追加されるかもしれませんし、さらに多@c
1249 くの歌詞 (原文: verse、各ボイスに対する歌詞、あるいは、歌詞の 1 番、2 番のこと@c
1250 を指すと思われる) が歌詞に追加されるかもしれません。音楽部分が長くなりすぎた場@c
1251 合は、音楽を保持している変数を容易に別のファイルに置くことができます。
1252
1253 @cindex hymn structure
1254 @cindex SATB structure
1255 @cindex vocal scores with multiple verses
1256 @cindex multiple vocal verses
1257 @cindex verses, multiple vocal
1258
1259 ここで、例として 4 つの歌詞 -- それぞれが SATB (ソプラノ、アルト、テナー、バス) 
1260 に対してセットされている -- を持つ賛美歌の最初の 1 行目を取り上げます。この歌@c
1261 の場合、4 つのパートに対する歌詞の言葉は同じです。変数を使用して音楽表記と歌詞@c
1262 の言葉を譜表構造から分離させている手法に注意してください。さらに、 @q{TimeKey} 
1263 と呼ぶことにした変数が、2 つの譜で使用されるいくつかのコマンドを保持するため@c
1264 に、使用されていることにも注意してください。他の例では、この変数はしばしば 
1265 @q{global} と呼ばれます。
1266
1267 @lilypond[quote,verbatim]
1268 TimeKey = { \time 4/4 \partial 4 \key c \major}
1269 SopMusic   = \relative c' { c4 | e4. e8 g4  g  | a a g }
1270 AltoMusic  = \relative c' { c4 | c4. c8 e4  e  | f f e }
1271 TenorMusic = \relative c  { e4 | g4. g8 c4. b8 | a8 b c d e4 }
1272 BassMusic  = \relative c  { c4 | c4. c8 c4  c  | f8 g a b c4 }
1273 VerseOne   = \lyricmode {
1274   E -- | ter -- nal fa -- ther, | strong to save, }
1275 VerseTwo   = \lyricmode {
1276   O | Christ, whose voice the | wa -- ters heard, }
1277 VerseThree = \lyricmode {
1278   O | Ho -- ly Spi -- rit, | who didst brood }
1279 VerseFour  = \lyricmode {
1280   O | Tri -- ni -- ty of | love and pow'r }
1281
1282 \score {
1283   \new ChoirStaff <<
1284     \new Staff <<
1285       \clef "treble"
1286       \new Voice = "Sop"  { \voiceOne \TimeKey \SopMusic }
1287       \new Voice = "Alto" { \voiceTwo \AltoMusic }
1288       \new Lyrics \lyricsto "Sop" { \VerseOne   }
1289       \new Lyrics \lyricsto "Sop" { \VerseTwo   }
1290       \new Lyrics \lyricsto "Sop" { \VerseThree }
1291       \new Lyrics \lyricsto "Sop" { \VerseFour  }
1292     >>
1293     \new Staff <<
1294       \clef "bass"
1295       \new Voice = "Tenor" { \voiceOne \TimeKey \TenorMusic }
1296       \new Voice = "Bass"  { \voiceTwo \BassMusic  }
1297     >>
1298   >>
1299 }
1300 @end lilypond
1301
1302 @cindex verse and refrain
1303
1304 最後に、2 つの譜の 2 パートのリフレイン (繰り返し) につながる単一の歌詞の節を@c
1305 コードする方法を示す例を挙げます。これを 1 つの楽譜で達成するためのシークエン@c
1306 シャル部分と同時進行部分の配置の仕方は非常にトリッキーです。そのため、説明を注@c
1307 意深く読んでください!
1308
1309 コーラスの開始点でブレースを表示させたいので、@code{ChoirStaff} を保持する score 
1310 ブロックで始めます。通常、すべての譜を並列にするために @code{\new ChoirStaff} 
1311 の後に角括弧を置く必要があります。角括弧を使用しても害はありませんが、ここでは@c
1312 コーラスまで並列化を先延ばししたいのでブレースを使用します。@code{ChoirStaff} 
1313 の中で、まず最初に歌詞を保持する譜表を置く必要があります。音符と歌詞を並列に並@c
1314 べなければならないので、@code{\new Voice} と @code{\new Lyrics} を同時に開始さ@c
1315 せるために角括弧で囲む必要があります:
1316
1317 @lilypond[quote,verbatim,ragged-right]
1318 versenotes = \relative c'' {
1319   \clef "treble"
1320   \key g \major
1321   \time 3/4 g g g b b b
1322 }
1323 versewords = \lyricmode {
1324   One two three four five six
1325 }
1326 \score {
1327   \new ChoirStaff {
1328     \new Staff <<
1329       \new Voice = "verse" {
1330         \versenotes \break
1331       }
1332       \new Lyrics \lyricsto verse {
1333         \versewords
1334       }
1335     >>
1336   }
1337 }
1338 @end lilypond
1339
1340 これで歌詞の行が与えられました。
1341
1342 今度は、refainA を同じ譜表で続けて、それと並列に refrainB のためにもう 1 つ譜@c
1343 表を導入する必要があります。そのため、この並列部分は verse Voice の中の 
1344 @code{\break} の直後に置かれなければなりません。そうです、verse Voice の@c
1345 @emph{中に}です!ここで並列部分を示します。同じ要領でここにもっと多くの譜を導@c
1346 入することもできます。
1347
1348 @example
1349 <<
1350   \refrainnotesA
1351   \new Lyrics \lyricsto verse @{
1352     \refrainwordsA
1353   @}
1354   \new Staff <<
1355     \new Voice = "refrainB" @{
1356       \refrainnotesB
1357     @}
1358     \new Lyrics \lyricsto "refrainB" @{
1359       \refrainwordsB
1360     @}
1361   >>
1362 >>
1363 @end example
1364
1365 ここで最終結果を示します。これはコーラスになっている 2 つの譜を持ち、並列部分@c
1366 がどのように verse Voice の中に置かれるかを示しています:
1367
1368 @lilypond[quote,verbatim, ragged-right]
1369 versenotes = \relative c'' {
1370   \clef "treble"
1371   \key g \major
1372   \time 3/4 g g g b b b
1373 }
1374 refrainnotesA = \relative c'' {
1375   \time 2/4
1376   c c g g \bar "|."
1377 }
1378 refrainnotesB = \relative c {
1379   \clef "bass"
1380   \key g \major
1381   c e d d
1382 }
1383 versewords = \lyricmode {
1384   One two three four five six
1385 }
1386 refrainwordsA = \lyricmode {
1387   la la la la
1388 }
1389 refrainwordsB = \lyricmode {
1390   dum dum dum dum
1391 }
1392 \score {
1393   \new ChoirStaff {
1394     \new Staff <<
1395       \new Voice = "verse" {
1396         \versenotes \break
1397         <<
1398           \refrainnotesA
1399           \new Lyrics \lyricsto "verse" {
1400             \refrainwordsA
1401           }
1402           \new Staff <<
1403             \new Voice = "refrainB" {
1404               \refrainnotesB
1405             }
1406             \new Lyrics \lyricsto "refrainB" {
1407               \refrainwordsB
1408             }
1409           >>
1410         >>
1411       }
1412       \new Lyrics \lyricsto "verse" {
1413         \versewords
1414       }
1415     >>
1416   }
1417 }
1418 @end lilypond
1419
1420 @cindex book, example of using
1421 @funindex \book
1422 @funindex book
1423
1424 これはシークエンシャル ブロックと同時進行ブロックがどのように機能するかを理解@c
1425 するための手助けとしては興味深く有用です。しかしながら、実際にこれをコードする@c
1426 場合は、恐らく以下のように暗黙の @code{\book} ブロック内部に 2 つの 
1427 @code{\score} ブロックを置くようにするでしょう:
1428
1429 @lilypond[quote,verbatim,ragged-right]
1430 versenotes = \relative c'' {
1431   \clef "treble"
1432   \key g \major
1433   \time 3/4 g g g b b b
1434 }
1435 refrainnotesA = \relative c'' {
1436   \time 2/4
1437   c c g g \bar "|."
1438 }
1439 refrainnotesB = \relative c {
1440   \clef "bass"
1441   \key g \major
1442   c e d d
1443 }
1444 versewords = \lyricmode {
1445   One two three four five six
1446 }
1447 refrainwordsA = \lyricmode {
1448   la la la la
1449 }
1450 refrainwordsB = \lyricmode {
1451   dum dum dum dum
1452 }
1453 \score {
1454   \new Staff <<
1455     \new Voice = "verse" {
1456       \versenotes
1457     }
1458     \new Lyrics \lyricsto "verse" {
1459       \versewords
1460     }
1461   >>
1462 }
1463
1464 \score {
1465   \new ChoirStaff <<
1466     \new Staff <<
1467       \new Voice = "refrainA" {
1468         \refrainnotesA
1469       }
1470       \new Lyrics \lyricsto "refrainA" {
1471         \refrainwordsA
1472       }
1473     >>
1474     \new Staff <<
1475       \new Voice = "refrainB" {
1476         \refrainnotesB
1477       }
1478       \new Lyrics \lyricsto "refrainB" {
1479         \refrainwordsB
1480       }
1481     >>
1482   >>
1483 }
1484 @end lilypond
1485
1486
1487 @seealso
1488 表記リファレンス: @ruser{Vocal music}
1489 @c 声楽
1490
1491
1492 @node Contexts and engravers
1493 @section Contexts and engravers
1494 @c コンテキストとエングラーバ
1495
1496 これまでに、コンテキストとエングラーバについて簡単に言及してきました。ここで@c
1497 は、これらのコンセプトをより詳細に見ていくことにします。なぜなら、これらは 
1498 LilyPond 出力をうまく調節するのに重要だからです。
1499
1500
1501 @menu
1502 * Contexts explained::
1503 * Creating contexts::
1504 * Engravers explained::
1505 * Modifying context properties::
1506 * Adding and removing engravers::
1507 @end menu
1508
1509
1510 @node Contexts explained
1511 @subsection Contexts explained
1512 @c コンテキストの説明
1513
1514 @cindex contexts explained
1515
1516 音楽が譜刻されるとき、入力ファイルでははっきりとは現れてこない多くの表記要素を@c
1517 出力に追加しなければなりません。例えば、以下の例で入力と出力を比較してください:
1518
1519 @lilypond[quote,verbatim,relative=2,fragment]
1520 cis4 cis2. g4
1521 @end lilypond
1522
1523 この入力は内容がやや乏しいですが、出力では小節線、臨時記号、音部記号、拍子記号@c
1524 が追加されています。LilyPond が入力を@emph{解釈}するとき、音楽情報は時系列に調@c
1525 べられます。これは楽譜を左から右へ読むのと似ています。入力を読み込んでいる間、@c
1526 プログラムは小節の境目となる場所と明示的な臨時記号を必要とする音高を覚えていま@c
1527 す。この情報はいくつかのレベルで持続されなければなりません。例えば、臨時記号の@c
1528 効果は単一の譜表に制限されますが、小節線は楽譜全体に亘って同調されなければなり@c
1529 ません。
1530
1531 LilyPond 内部では、これらの規則と情報ビットは@emph{コンテキスト}にグループ化さ@c
1532 れます。すでに @code{Voice} コンテキストを見てきました。他にも、@code{Staff} 
1533 コンテキストと @code{Score} コンテキストがあります。コンテキストは、楽譜の階層@c
1534 構造を反映するために、階層構造になっています。例えば: @code{Staff} コンテキス@c
1535 トは多くの @code{Voice} コンテキストを保持することができ、@code{Score} コンテ@c
1536 キストは多くの @code{Staff} コンテキストを保持することができます。
1537
1538 @quotation
1539 @sourceimage{context-example,5cm,,}
1540 @end quotation
1541
1542 各コンテキストは、いくつかの表記オブジェクトを作成し、関連プロパティを維持しな@c
1543 がら、いくつかの表記規則を施行する責任があります。例えば、@code{Voice} コンテ@c
1544 キストは臨時記号を作り出すかもしれず、そうした場合 @code{Staff} コンテキストは@c
1545 その小節の残りの部分で臨時記号を表示したり隠したりするための規則を維持します。
1546
1547 他の例としては、小節線の同調はデフォルトでは @code{Score} コンテキストが扱いま@c
1548 す。しかしながら、いくつかの音楽では小節線を同調させたくない場合もあります -- 
1549 4/4 拍子と 3/4 拍子の多声の楽譜といった場合です。そのようなケースでは、@c
1550 @code{Score} と @code{Staff} コンテキストのデフォルト設定を変更しなければなり@c
1551 ません。
1552
1553 非常にシンプルな楽譜では、コンテキストは暗黙的に作成され、あなたはそれらに気づ@c
1554 く必要もありません。複数の譜表を持つようなより大きな楽曲では、あなたが必要とし@c
1555 ているだけの譜を手に入れられるよう、さらに、それらの譜が正しい順序で並ぶことを@c
1556 保証するために、コンテキストを明示的に作成する必要があります。特殊な表記を持つ@c
1557 楽曲を譜刻するには、通常は既存のコンテキストを変更します。あるいは完全に新しい@c
1558 コンテキストを定義することさえあります。
1559
1560 @code{Score}, @code{Staff}, @code{Voice} コンテキストに加えて、@code{PianoStaff} 
1561 や @code{ChoirStaff} コンテキストといった譜表グループを制御するための、楽譜レ@c
1562 ベルと譜表レベルの間にあるコンテキストがあります。さらに、代替の譜表コンテキス@c
1563 トとボイスコンテキストがあり、歌詞、打楽器、フレットボード (訳者: 弦楽器の一@c
1564 種。フレットでウィキぺディアを参照)、通奏低音 (数字付き低音、原文: figured bass) 
1565 などのためのコンテキストがあります。
1566
1567 すべてのコンテキスト タイプの名前は 1 つ、あるいは複数の単語からなります。各単@c
1568 語の最初の文字は大文字であり、前の単語のすぐあとに次の単語が続きます。ハイフン@c
1569 やアンダスコアは使いません。つまり @code{GregorianTranscriptionStaff} といった@c
1570 具合です。
1571
1572
1573 @seealso
1574 表記リファレンス: @ruser{Contexts explained}
1575 @c コンテキストの説明
1576
1577
1578 @node Creating contexts
1579 @subsection Creating contexts
1580 @c コンテキストを作成する
1581
1582 @funindex \new
1583 @funindex new
1584 @cindex new contexts
1585 @cindex creating contexts
1586 @cindex contexts, creating
1587
1588 最上位にあるコンテキストは 1 つだけです: @code{Score} コンテキストです。これは 
1589 @code{\score} コマンドによって作成されます。また、簡単な楽譜では、これは自動的@c
1590 に作成されます。
1591
1592 1 つだけのボイスと 1 つだけの譜表を持つ楽譜では、@code{Voice} と @code{Staff} 
1593 コンテキストは自動的に作成されるために放っておかれるかもしれません。しかしなが@c
1594 ら、より複雑な楽譜では、これらを手ずから作成する必要があります。これらを作成す@c
1595 る最も簡単なコマンドは @code{\new} です。これは音楽表記の前に置きます。例を挙@c
1596 げます:
1597
1598 @example
1599 \new @var{type} @var{music-expression}
1600 @end example
1601
1602 @noindent
1603
1604 ここで、@var{type} はコンテキスト名です (@code{Staff} や @code{Voice} など)。@c
1605 このコマンドは新しいコンテキストを作成し、そのコンテキストの中にある 
1606 @var{music-expression} の解釈を開始します。
1607
1608 @code{\new Score} というコマンドは無いということに注意してください。単一の最上位 
1609 @code{Score} コンテキストは @code{\score} で作成されます。
1610
1611 これまでに、新たに @code{Staff} と @code{Voice} コンテキストを作成する多くの実@c
1612 際的な例を見てきましたが、これらのコマンドが実際にどのように使用されるのかを覚@c
1613 えてもらうために、実際の音楽に注釈を付けた例を挙げます:
1614
1615 @lilypond[quote,verbatim,ragged-right]
1616 \score {  % start of single compound music expression
1617   <<  % start of simultaneous staves section
1618     \time 2/4
1619     \new Staff {  % create RH staff
1620       \key g \minor
1621       \clef "treble"
1622       \new Voice {  % create voice for RH notes
1623         \relative c'' {  % start of RH notes
1624           d4 ees16 c8. |
1625           d4 ees16 c8. |
1626         }  % end of RH notes
1627       }  % end of RH voice
1628     }  % end of RH staff
1629     \new Staff <<  % create LH staff; needs two simultaneous voices
1630       \key g \minor
1631       \clef "bass"
1632       \new Voice {  % create LH voice one
1633         \voiceOne
1634         \relative g {  % start of LH voice one notes
1635           g8 <bes d> ees, <g c> |
1636           g8 <bes d> ees, <g c> |
1637         }  % end of LH voice one notes
1638       }  % end of LH voice one
1639       \new Voice {  % create LH voice two
1640         \voiceTwo
1641         \relative g {  % start of LH voice two notes
1642           g4 ees |
1643           g4 ees |
1644         }  % end of LH voice two notes
1645       }  % end of LH voice two
1646     >>  % end of LH staff
1647   >>  % end of simultaneous staves section
1648 }  % end of single compound music expression
1649 @end lilypond
1650
1651 (中括弧 @code{@{} や 2 重角括弧 @code{<<} の中でブロックになっているすべての記@c
1652 述には括弧よりもスペースが 2 つ多いインデントを付けられていて、閉じ括弧には括@c
1653 弧の開始行と同じインデントを付けられているということに注意してください。これは@c
1654 必須ではありませんが、こうしておくと @q{unmatched backet} (「括弧が一致しない」) 
1655 エラーを大幅に減らすことができますので、強く推奨します。これにより、音楽の構造@c
1656 を簡単に見て取ることができ、一致していない括弧が明瞭になります。さらに、RH 譜@c
1657 表はボイスを 1 つだけしか必要としないために中括弧によって囲まれた単一の音楽表@c
1658 記として作成されているのに対して、LH 譜表は 2 つのボイスを必要とするために 2 
1659 重角括弧を使って作成されていることに注意してください。)
1660
1661 @cindex contexts, naming
1662 @cindex naming contexts
1663
1664 また、@code{\new} コマンドはコンテキストに識別名を与えて、そのコンテキストを同@c
1665 じタイプの他のコンテキストと区別することを可能にするかもしれません:
1666
1667 @example
1668 \new @var{type} = @var{id} @var{music-expression}
1669 @end example
1670
1671 @code{Staff}, @code{Voice} などといったコンテキスト タイプの名前とそのような@c
1672 コンテキスト タイプのインスタンスの名前 --これはユーザによって提供され、どのよ@c
1673 うな文字の連なりにもなり得ます -- の違いに注意してください。数字とスペースも識@c
1674 別名に使用することができますが、その場合クォートで囲まなければなりません -- つ@c
1675 まり、@code{\new Staff = "MyStaff 1" @var{music-expression}} のようになりま@c
1676 す。識別名はコンテキストのあるインスタンスを参照するために使用されます。このこ@c
1677 とを歌詞についてのセクションで見てきました。@ref{Voices and vocals} を参照して@c
1678 ください。
1679 @c ボイスとボーカル
1680
1681
1682 @seealso
1683 表記リファレンス: @ruser{Creating contexts}
1684 @c コンテキストを作成する
1685
1686
1687 @node Engravers explained
1688 @subsection Engravers explained
1689 @c エングラーバの説明
1690
1691 @cindex engravers
1692
1693 LilyPond によって作成された楽譜上にあるすべての記号は @code{Engraver} によって@c
1694 作り出されます。つまり、譜を譜刻するエングラーバがあり、音符玉を譜刻するエング@c
1695 ラーバ、ステムを譜刻するエングラーバ、ビームを譜刻するエングラーバなどなどで@c
1696 す。そのようなエングラーバは 120 以上あります!幸いなことに、たいていの楽譜で@c
1697 は数個のエングラーバについて知っていれば良く、簡単な楽譜ではまったく知らなくて@c
1698 も大丈夫です。
1699
1700 エングラーバはコンテキストの中に存在し、そこで活動します。@c
1701 @code{Metronome_mark_engraver} などといった楽譜全体に影響を与えるエングラーバ@c
1702 は最上位のコンテキスト -- @code{Score} コンテキスト -- で活動します。
1703
1704 @code{Clef_engraver} と @code{Key_engraver} は各 @code{Staff} コンテキストの中@c
1705 で見つかります -- 譜が異なれば音部記号や調号も異なるかもしれないからです。
1706
1707 @code{Note_heads_engraver} と @code{Stem_engraver} は各 @code{Voice} コンテキ@c
1708 スト -- 最下位のコンテキスト -- の中にあります。
1709
1710 各エングラーバはそれの機能に関連付けされているある特定のオブジェクトを処理し、@c
1711 機能に関連するプロパティを維持します。コンテキストに関連付けされているプロパ@c
1712 ティなどのようにこれらのプロパティは、エングラーバの処理を変更するためや、譜刻@c
1713 される楽譜の中にある要素の見た目を変更するために、変更されるかもしれません。
1714
1715 エングラーバはすべてそれらの機能を記述する単語から形成された複合名を持ちます。@c
1716 最初の単語の最初の文字は大文字であり、その後に続く単語はアンダスコアで連結され@c
1717 ます。ですから、@code{Staff_symbol_engraver} には譜表の線を作成する責任があ@c
1718 り、@code{Clef_engraver} は音部記号を描くことによって音高の参照ポイントを決@c
1719 定、セットします。
1720
1721
1722 ここに、最も一般的なエングラーバをいくつかそれらの機能とともに挙げます。たいて@c
1723 いの場合、名前から簡単に機能を推測でき、その逆も成り立つことがわかるでしょう。
1724
1725 @multitable @columnfractions .3 .7
1726 @headitem エングラーバ
1727   @tab 機能
1728 @item Accidental_engraver
1729   @tab 臨時記号 (警告的臨時記号とアドバイス的な臨時記号を含む) を作成します。
1730 @item Beam_engraver
1731   @tab ビームを譜刻します。
1732 @item Clef_engraver
1733   @tab 音部記号を譜刻します。
1734 @item Completion_heads_engraver
1735   @tab 小節線をまたがる音符を分割します。
1736 @c The old Dynamic_engraver is deprecated. -jm
1737 @item New_dynamic_engraver
1738   @tab 強弱記号 (クレッシェンド、デクレッシェンド) と強弱テキスト (p や f など) 
1739 を作成します。
1740 @item Forbid_line_break_engraver
1741   @tab 音楽要素がアクティブなままである場合に改行されることを防ぎます。(訳者: 
1742 いわゆる禁則処理)
1743 @item Key_engraver
1744   @tab 調号を作成します。
1745 @item Metronome_mark_engraver
1746   @tab メトロノーム記号を譜刻します。
1747 @item Note_heads_engraver
1748   @tab 音符の玉を譜刻します。
1749 @item Rest_engraver
1750   @tab 休符を譜刻します。
1751 @item Staff_symbol_engraver
1752   @tab (デフォルトで) 五線の譜表を譜刻します。
1753 @item Stem_engraver
1754   @tab ステムと単一ステムのトレモロを作成します。
1755 @item Time_signature_engraver
1756   @tab 拍子記号を作成します。
1757 @end multitable
1758
1759 @smallspace
1760
1761 後ほど、エングラーバのアクションを変更することによって LilyPond の出力がどのよ@c
1762 うに変わるのかを見ていきます。
1763
1764
1765 @seealso
1766 内部リファレンス: @rinternals{Engravers and Performers}
1767 @c エングラーバとパフォーマー
1768
1769
1770 @node Modifying context properties
1771 @subsection Modifying context properties
1772 @c コンテキスト プロパティを変更する
1773
1774 @cindex context properties
1775 @cindex context properties, modifying
1776 @cindex modifying context properties
1777 @funindex \set
1778 @funindex set
1779 @funindex \unset
1780 @funindex unset
1781
1782 コンテキストにはいくつかのコンテキスト プロパティを保持する責任があります。そ@c
1783 れらプロパティの多くは変更可能であり、変更することで入力の構文解釈に影響を与え@c
1784 て出力の見た目を変化させます。それらプロパティは \set コマンドによって変更され@c
1785 ます。これは以下のような形で行います:
1786
1787 @example
1788 \set @emph{ContextName}.@emph{propertyName} = #@emph{value}
1789 @end example
1790
1791 @emph{ontextName} には通常、@code{Score}, @code{Staff} or @code{Voice} が入り@c
1792 ます。これを省略する場合もあり、そのような場合は @code{Voice} であると見なされ
1793 ます。
1794
1795 コンテキスト プロパティの名前はハイフンやアンダスコアを使わずに連結された単語@c
1796 によって形成され、最初の単語を除いて単語の最初の文字は大文字になります。ここ@c
1797 で、一般的に使用されるコンテキスト プロパティの例をいくつか挙げます。実際に@c
1798 は、コンテキスト プロパティはもっとたくさんあります。
1799
1800 @c attempt to force this onto a new page
1801 @need 50
1802 @multitable @columnfractions .25 .15 .45 .15
1803 @headitem プロパティ名
1804   @tab タイプ
1805   @tab 機能
1806   @tab 実際の値の例
1807 @item extraNatural
1808   @tab ブール値
1809   @tab 真の場合、追加のナチュラル記号を臨時記号の前にセットします
1810   @tab @code{#t}, @code{#f}
1811 @item currentBarNumber
1812   @tab 整数
1813   @tab 小節番号をセットします
1814   @tab @code{50}
1815 @item doubleSlurs
1816   @tab ブール値
1817   @tab 真の場合、音符の上と下の両方にスラーを譜刻します
1818   @tab @code{#t}, @code{#f}
1819 @item instrumentName
1820   @tab テキスト
1821   @tab 譜表の先頭に表示される名前をセットします
1822   @tab @code{"Cello I"}
1823 @item fontSize
1824   @tab 実数
1825   @tab フォント サイズを増減させます
1826   @tab @code{2.4}
1827 @item stanza
1828   @tab テキスト
1829   @tab 歌詞の先頭に譜刻されるテキストをセットします
1830   @tab @code{"2"}
1831 @end multitable
1832
1833 @noindent
1834 ここでのブール値とは真 (@code{@hash{}t}) または偽 (@code{@hash{}f}) のどちらか@c
1835 であり、整数とは正の整数であり、実数とは正または負の小数点付きの数であり、テキ@c
1836 ストはダブル アポストロフィで囲まれます。ハッシュ記号 (@code{@hash{}}) が 2 つ@c
1837 の異なる箇所で出現することに注意してください -- ブール値での @code{t} や 
1838 @code{f} の前と、@code{@bs{}set} での@emph{値}の前です。そのため、@c
1839 @code{@bs{}set} の値にブール値を挿入する場合、ハッシュ記号が 2 つ必要になります 
1840 -- つまり @code{@hash{}@hash{}t} です。
1841
1842 @cindex properties operating in contexts
1843 @cindex setting properties within contexts
1844
1845 これらのプロパティのいずれかをセットする前に、それらが操作するコンテキストはど@c
1846 れなのかを知る必要があります。これは明らかな場合もありますが、ややこしい場合も@c
1847 あります。間違ったコンテキストが指定された場合、エラー メッセージは表示されま@c
1848 せんが、予期したアクションが起こりません。例えば、@code{instrumentName} は間違@c
1849 いなく @code{Staff} コンテキストの中にきます。なぜなら、このプロパティが名前を@c
1850 付けるのは譜表だからです。以下の例では、最初の譜表には名前が付けられています@c
1851 が、2 番目の譜表には付けられていません。なぜなら、コンテキスト名を省略している@c
1852 からです。
1853
1854 @lilypond[quote,verbatim,ragged-right]
1855 <<
1856   \new Staff \relative c'' {
1857     \set Staff.instrumentName = #"Soprano"
1858     c4 c
1859  }
1860   \new Staff \relative c' {
1861   \set instrumentName = #"Alto"  % Wrong!
1862   d4 d
1863  }
1864 >>
1865 @end lilypond
1866
1867 デフォルトのコンテキスト名は @code{Voice} であることを思い出してください。この@c
1868 ため、2 番目の @code{@bs{}set} コマンドは @code{Voice} コンテキストのプロパティ 
1869 @code{instrumentName} を @qq{Alto} にセットしています。しかしながら、@c
1870 LilyPond は @code{Voice} コンテキストでそのようなプロパティを見つけ出さないた@c
1871 め、何のアクションも起こしません。これはエラーではなく、ログ ファイルにエラー 
1872 メッセージは残りません。
1873
1874 同様に、プロパティ名の綴りを間違えた場合もエラー メッセージは表示されず、予期@c
1875 したアクションが起こりません。実際のところ、@code{@bs{}set} コマンドを使って、@c
1876 存在するいかなるコンテキストにでも、いかなる (架空の) @q{プロパティ} をセット@c
1877 することができます。しかしながら、そのプロパティ名を LilyPond が知らない場合、@c
1878 何のアクションも起こしません。LilyPond 入力ファイルに対する特別なサポートを持@c
1879 ついくつかのテキスト エディタは、あなたがプロパティ名の上にマウスを持ってくる@c
1880 とバレット (テキストの先頭に付く小丸) 付きのプロパティ名を表示してそのプロパ@c
1881 ティの裏づけを行い (LilyPondTool を持つ JEdit)、あるいは未知のプロパティ名をハ@c
1882 イライトします (ConTEXT)。そのような機能を持つエディタを使用していないのなら、@c
1883 内部リファレンスでプロパティ名をチェックすることを推奨します: 
1884 @rinternals{Tunable context properties} や @rinternals{Contexts} を参照してく@c
1885 ださい。
1886 @c 調節可能なコンテキスト プロパティ, コンテキスト
1887
1888 @code{instrumentName} プロパティは @code{Staff} コンテキストの中にセットされた@c
1889 場合にのみ効果を持ちますが、いくつかのプロパティは複数のコンテキストの中にセッ@c
1890 トすることができます。例えば、プロパティ @code{extraNatural} はすべての譜に対@c
1891 してデフォルトで @code{@hash{}@hash{}t} (真) にセットされています。ある特定@c
1892 の @code{Staff} コンテキストでこれを @code{@hash{}@hash{}f} (偽) にセットし@c
1893 た場合、その譜表の臨時記号にのみ適用されます。これを @code{Score} コンテキスト@c
1894 にセットした場合、すべての譜に適用されます。
1895
1896 それでは、ある譜表の追加ナチュラル記号を消してみます:
1897
1898 @lilypond[quote,verbatim,ragged-right]
1899 <<
1900   \new Staff \relative c'' {
1901     ais4 aes
1902  }
1903   \new Staff \relative c'' {
1904     \set Staff.extraNatural = ##f
1905     ais4 aes
1906  }
1907 >>
1908 @end lilypond
1909
1910 @noindent
1911 さらに、すべての譜の追加ナチュラル記号を消します:
1912
1913 @lilypond[quote,verbatim,ragged-right]
1914 <<
1915   \new Staff \relative c'' {
1916     ais4 aes
1917  }
1918   \new Staff \relative c'' {
1919     \set Score.extraNatural = ##f
1920     ais4 aes
1921  }
1922 >>
1923 @end lilypond
1924
1925 他の例としては、@code{clefOctavation} が @code{Score} コンテキストにセットされ@c
1926 た場合、直ちにすべての譜でのオクターブの値を変更し、すべての譜に適用される新し@c
1927 いデフォルト値をセットします。
1928
1929 逆のことを行うコマンド @code{@bs{}unset} はコンテキストからプロパティを削除@c
1930 し、それによりたいていのプロパティはデフォルト値に戻ります。通常、望みのことを@c
1931 達成するために新たな @code{@bs{}set} コマンドを用いる場合、@code{@bs{}unset} 
1932 は必要ありません。
1933
1934 @code{@bs{}set} と @code{@bs{}unset} コマンドは入力ファイルのどこにでも現れる@c
1935 可能性があり、そのコマンドが出現した時点から、楽譜の終わりまたはそのプロパティ@c
1936 が再度 @code{@bs{}set} や @code{@bs{}unset} されるまで効果を持ちます。フォント 
1937 サイズを変更してみましょう。それにより (他のものに加えて) 音符玉のサイズが何段@c
1938 階か変更されます。変更は直前にセットされた値から行われるのではなく、デフォルト@c
1939 値から行われます。
1940
1941 @lilypond[quote,verbatim,ragged-right,relative=1,fragment]
1942 c4
1943 % make note heads smaller
1944 \set fontSize = #-4
1945 d e
1946 % make note heads larger
1947 \set fontSize = #2.5
1948 f g
1949 % return to default size
1950 \unset fontSize
1951 a b
1952 @end lilypond
1953
1954 これまでにいくつかのタイプのプロパティ値をセットする方法を見てきました。整数と@c
1955 番号の前には常にハッシュ記号 @code{@hash{}} が付き、真と偽の値は 2 つのハッ@c
1956 シュ記号を付けて @code{@hash{}@hash{}t} と @code{@hash{}@hash{}f} によって指定@c
1957 されてるということに注意してください。テキスト プロパティは上で示したようにダ@c
1958 ブル クォーテーションによって囲まれます。しかしながら、後ほど、テキストは実際@c
1959 には非常に強力な @code{markup} コマンドを用いたもっと一般的な方法で指定できる@c
1960 ということを見ていきます。
1961
1962
1963 @subsubheading Setting context properties with @code{\with}
1964 @c \with を使ったコンテキスト プロパティの設定
1965
1966 @funindex \with
1967 @funindex with
1968 @cindex context properties, setting with \with
1969
1970 コンテキスト プロパティはコンテキストが作成されるときにセットされることもある@c
1971 かもしれません。この設定がコンテキスト全体で保持される場合、この方法でプロパ@c
1972 ティ値を指定すると明瞭になります。コンテキストが @code{@bs{}new} コマンドで作@c
1973 成されるとき、その直後に @code{@bs{}with @{ .. @}} ブロックが続き、その中でプ@c
1974 ロパティ値がセットされるかもしれません。例えば、ある譜表全体で追加のナチュラル@c
1975 の表示を抑制しようとする場合、以下のように書きます:
1976
1977 @example
1978 \new Staff \with @{ extraNatural = ##f @}
1979 @end example
1980
1981 @noindent
1982 そして、以下のように使用します:
1983
1984 @lilypond[quote,verbatim,ragged-right]
1985 <<
1986   \new Staff
1987   \relative c'' {
1988     gis ges aes ais
1989   }
1990   \new Staff \with { extraNatural = ##f }
1991   \relative c'' {
1992     gis ges aes ais
1993   }
1994 >>
1995 @end lilypond
1996
1997 この方法でプロパティをセットした場合でも、@code{@bs{}set} を使って動的に変更さ@c
1998 れたり、@code{@bs{}unset} を使ってデフォルト値に戻されたりするかもしれません。
1999
2000 @cindex fontSize, default and setting
2001
2002 @code{fontSize} プロパティの扱いは異なります。これが @code{@bs{}with} の中で@c
2003 セットされた場合、フォント サイズのデフォルト値をセットし直します。そのあとで@c
2004 フォント サイズが @code{@bs{}set} によって変更された場合、@code{@bs{}with} で@c
2005 セットされた新しいデフォルト値は @code{@bs{}unset fontSize} コマンドによって元@c
2006 に戻されるかもしれません。
2007
2008
2009 @subsubheading Setting context properties with @code{\context}
2010 @c \context を使ったコンテキスト プロパティの設定
2011
2012 @cindex context properties, setting with \context
2013 @funindex \context
2014 @funindex context
2015
2016 コンテキスト プロパティの値は単一のコマンドによってある特定のタイプのコンテキ@c
2017 スト@emph{すべて} -- すべての @code{Staff} コンテキストなどのように -- にセッ@c
2018 トされるかもしれません。プロパティをセットするコンテキストのタイプは、@c
2019 @code{Staff} のようなそのコンテキストのタイプ名に接頭辞としてバック スラッシュ@c
2020 を付けたもの -- @code{@bs{}Staff} のように -- によって指定されます。プロパティ@c
2021 値をセットするための記述は上で紹介した @code{@bs{}with} ブロックの中の記述と同@c
2022 じです。この記述は @code{@bs{}layout} ブロック内部の @code{@bs{}context} ブ@c
2023 ロックの中に置かれます。各 @code{@bs{}context} ブロックは、その 
2024 @code{@bs{}layout} ブロックが置かれている @code{@bs{}score} または 
2025 @code{@bs{}book} ブロック全体を通じて、指定されたタイプのコンテキストすべてに@c
2026 対して効果を持ちます。ここで、記述方法を示すための例を挙げます:
2027
2028 @lilypond[verbatim,quote]
2029 \score {
2030   \new Staff {
2031     \relative c'' {
2032       cis4 e d ces
2033     }
2034   }
2035   \layout {
2036     \context {
2037       \Staff
2038       extraNatural = ##t
2039     }
2040   }
2041 }
2042 @end lilypond
2043
2044 @noindent
2045 この方法でセットされたコンテキスト プロパティは、@code{@bs{}with} ブロックの中@c
2046 の記述によって、さらには、音楽表記の中に埋め込まれた @code{@bs{}set} コマンド@c
2047 によって、ある特定のコンテキスト インスタンスでは上書きされるかもしれません。
2048
2049
2050 @seealso
2051 表記リファレンス: @ruser{Changing context default settings}
2052 @c コンテキストのデフォルト設定の変更
2053 @c FIXME
2054 @c uncomment when backslash-node-name issue is resolved -pm
2055 @c <at>ruser{The set command}.
2056
2057 内部リファレンス: @rinternals{Contexts},
2058 @rinternals{Tunable context properties}
2059 @c コンテキスト, 調整可能なコンテキスト プロパティ
2060
2061
2062 @node Adding and removing engravers
2063 @subsection Adding and removing engravers
2064 @c エングラーバの追加と削除
2065
2066 @cindex engravers, adding
2067 @cindex adding engravers
2068 @cindex engravers, removing
2069 @cindex removing engravers
2070
2071 @funindex \consists
2072 @funindex consists
2073 @funindex \remove
2074 @funindex remove
2075
2076 これまでに、コンテキストはそれぞれにいくつかのエングラーバを保持し、それぞれの@c
2077 エングラーバは出力のある特定部分 -- 小節線、譜、音符玉、ステムなど -- の譜刻に@c
2078 責任を持つということを見てきました。あるエングラーバがコンテキストから削除され@c
2079 ると、それはもはや出力を行いません。これは出力を変更するための荒っぽい方法です@c
2080 が、役に立つ場合もあります。
2081
2082 @subsubheading Changing a single context
2083 @c 単一のコンテキストの変更
2084
2085 あるコンテキストからあるエングラーバを削除するには、前のセクションで見てたきた@c
2086 のと同様に、コンテキスト作成コマンドの直後に置く @code{@bs{}with} コマンドを使@c
2087 用します。
2088
2089 例として、前のセクションで使用した例から譜表線を取り除いてみましょう。譜表線は 
2090 @code{Staff_symbol_engraver} によって作り出されるということを思い出してくださ@c
2091 い。
2092
2093 @lilypond[quote,verbatim,ragged-right]
2094 \new Staff \with {
2095   \remove Staff_symbol_engraver
2096 }
2097 \relative c' {
2098   c4
2099   \set fontSize = #-4  % make note heads smaller
2100   d e
2101   \set fontSize = #2.5  % make note heads larger
2102   f g
2103   \unset fontSize  % return to default size
2104   a b
2105 }
2106 @end lilypond
2107
2108 @cindex ambitus engraver
2109
2110 さらに、エングラーバは個々のコンテキストに追加されることもあります。エングラー@c
2111 バを追加するコマンドは以下のようなものです:
2112
2113 @code{\consists @var{Engraver_name}},
2114
2115 @noindent
2116 これを @code{@bs{}with} ブロックの中に置きます。いくつかのボーカル譜は、その譜@c
2117 表の中にある音符の範囲を示すために、譜表の開始点に音域 (ambitus) を置きます -- 
2118 @rglos{ambitus} を参照してください。音域は @code{Ambitus_engraver} によって作@c
2119 成され、普通は、これはどのコンテキストにも含まれません。これを @code{Voice} 
2120 コンテキストに追加した場合、それはそのボイスのみから音域を計算します:
2121 @c 音域 (ambitus)
2122
2123 @lilypond[quote,verbatim,ragged-right]
2124 \new Staff <<
2125   \new Voice \with {
2126     \consists Ambitus_engraver
2127   }
2128   \relative c'' {
2129     \voiceOne
2130     c a b g
2131   }
2132   \new Voice
2133   \relative c' {
2134     \voiceTwo
2135     c e d f
2136   }
2137 >>
2138 @end lilypond
2139
2140 @noindent
2141 しかし、音域エングラーバを @code{Staff} コンテキストに追加した場合、そのエング@c
2142 ラーバはその譜表上にあるすべてのボイスの中の音符から音域を計算します:
2143
2144 @lilypond[quote,verbatim,ragged-right]
2145 \new Staff \with {
2146     \consists Ambitus_engraver
2147   }
2148   <<
2149   \new Voice
2150   \relative c'' {
2151     \voiceOne
2152     c a b g
2153   }
2154   \new Voice
2155   \relative c' {
2156     \voiceTwo
2157     c e d f
2158   }
2159 >>
2160 @end lilypond
2161
2162 @subsubheading Changing all contexts of the same type
2163 @c 同じタイプのコンテキストをすべて変更する
2164
2165 @funindex \layout
2166 @funindex layout
2167
2168 上の例では、個々のコンテキストにエングラーバを追加あるいは削除する方法を示しま@c
2169 した。さらに、そのコマンドを @code{@bs{}layout} ブロックの中の適当なコンテキス@c
2170 トの中に置くことによって、ある特定のタイプのコンテキストすべてにエングラーバを@c
2171 追加あるいは削除することもできます。例えば、4 つの譜表を持つ楽譜ですべての譜表@c
2172 に音域を表示する場合、以下のように記述します:
2173
2174 @lilypond[quote,verbatim,ragged-right]
2175 \score {
2176   <<
2177     \new Staff <<
2178       \relative c'' { c a b g }
2179     >>
2180     \new Staff <<
2181       \relative c' { c a b g }
2182     >>
2183     \new Staff <<
2184       \clef "G_8"
2185       \relative c' { c a b g }
2186     >>
2187     \new Staff <<
2188       \clef "bass"
2189       \relative c { c a b g }
2190     >>
2191   >>
2192   \layout {
2193     \context {
2194       \Staff
2195       \consists Ambitus_engraver
2196     }
2197   }
2198 }
2199 @end lilypond
2200
2201 @noindent
2202 また、コンテキスト プロパティの値も、上記と同様に @code{@bs{}context} ブロック@c
2203 の中に @code{@bs{}set} を含ませることによって、ある特定のタイプのコンテキスト@c
2204 すべてに対してセットすることができます。
2205
2206
2207 @seealso
2208 表記リファレンス: @ruser{Modifying context plug-ins},
2209 @ruser{Changing context default settings}
2210 @c コンテキスト プラグインの変更, コンテキストのデフォルト設定の変更
2211
2212
2213 @node Extending the templates
2214 @section Extending the templates
2215 @c テンプレートの拡張
2216
2217 あなたはチュートリアルを読み終えました。あなたはどのように音楽を書くかを知って@c
2218 いて、基礎となるコンセプトを理解しています。しかし、どうやったらあなたはあなた@c
2219 が望む譜表を手に入れられるでしょうか?あなたにとって良いスタート地点となるかも@c
2220 しれない多くのテンプレートがあります (@ref{Templates} を参照してください)。し@c
2221 かしながら、あなたの望むものがそこでカバーされていなかったらどうしましょう?続@c
2222 きを読んでください。
2223 @c テンプレート
2224
2225 @menu
2226 * Soprano and cello::
2227 * Four-part SATB vocal score::
2228 * Building a score from scratch::
2229 @end menu
2230
2231 @node Soprano and cello
2232 @subsection Soprano and cello
2233 @c ソプラノとチェロ
2234
2235 @cindex template, modifying
2236 @cindex modifying templates
2237
2238 あなたが最終的に望むものに最も近いテンプレートから始めてください。ソプラノと@c
2239 チェロのための楽譜を書きたいということにしましょう。ここでは、@q{音符と歌詞} 
2240 (ソプラノ パート用) から始めることにします。
2241
2242 @example
2243 \version @w{"@version{}"}
2244 melody = \relative c' @{
2245   \clef treble
2246   \key c \major
2247   \time 4/4
2248   a4 b c d
2249 @}
2250
2251 text = \lyricmode @{
2252   Aaa Bee Cee Dee
2253 @}
2254
2255 \score @{
2256   <<
2257     \new Voice = "one" @{
2258       \autoBeamOff
2259       \melody
2260     @}
2261     \new Lyrics \lyricsto "one" \text
2262   >>
2263   \layout @{ @}
2264   \midi @{ @}
2265 @}
2266 @end example
2267
2268 これにチェロ パートを追加していきます。@q{音符のみ} のテンプレートを見てみま@c
2269 しょう:
2270
2271 @example
2272 \version @w{"@version{}"}
2273 melody = \relative c' @{
2274   \clef treble
2275   \key c \major
2276   \time 4/4
2277   a4 b c d
2278 @}
2279
2280 \score @{
2281   \new Staff \melody
2282   \layout @{ @}
2283   \midi @{ @}
2284 @}
2285 @end example
2286
2287 @code{\version} コマンドは 2 つも必要ありません。@code{melody} セクションは必@c
2288 要です。@code{\score} セクションは 2 つも必要ありません -- @code{\score} が 2 
2289 つあると、2 つのパートがばらばらになります。2 つのパートをデュオのように一緒に@c
2290 したいのです。@code{\score} セクションの中に @code{\layout} や @code{\midi} は 2 
2291 つも必要ありません。
2292
2293 単に @code{melody} セクションをカット&コピーした場合、@code{melody} 定義が 2 
2294 つになります。これはエラーにはなりませんが、2 番目の定義が両方の旋律で使われる@c
2295 ことになります。そのため、2 つの旋律を区別するためにリネームします。ソプラノ用@c
2296 のセクションを @code{sopranoMusic} と呼び、チェロ用のセクションを 
2297 @code{celloMusic} と呼ぶことにします。リネームするときに、@code{text} を 
2298 @code{sopranoLyrics} とりネームしましょう。これらのインスタンスをリネームする@c
2299 ことも忘れないでください −- 初期定義 (@code{melody = \relative c' @{ } 部分) 
2300 とその名前が使われているところ (@code{\score セクションの中}) の両方です。
2301
2302 リネームする際に、チェロ パートの譜表も変更しましょう −- 通常、チェロは低音部@c
2303 を使用します。さらに、チェロの音符を変えてみます。
2304
2305 @example
2306 \version @w{"@version{}"}
2307 sopranoMusic = \relative c' @{
2308   \clef treble
2309   \key c \major
2310   \time 4/4
2311   a4 b c d
2312 @}
2313
2314 sopranoLyrics = \lyricmode @{
2315   Aaa Bee Cee Dee
2316 @}
2317
2318 celloMusic = \relative c @{
2319   \clef bass
2320   \key c \major
2321   \time 4/4
2322   d4 g fis8 e d4
2323 @}
2324
2325 \score @{
2326   <<
2327     \new Voice = "one" @{
2328       \autoBeamOff
2329       \sopranoMusic
2330     @}
2331     \new Lyrics \lyricsto "one" \sopranoLyrics
2332   >>
2333   \layout @{ @}
2334   \midi @{ @}
2335 @}
2336 @end example
2337
2338 これでうまくいくように見えますが、チェロ パートが楽譜に表示されません −- チェロ 
2339 パートを @code{\score} セクションの中で使っていないからです。チェロ パートをソ@c
2340 プラノ パートの下に表示させたいのなら、以下をソプラノの譜の下に追加する必要が@c
2341 あります:
2342
2343 @example
2344 \new Staff \celloMusic
2345 @end example
2346
2347 @noindent
2348 さらに、音楽を @code{<<} と @code{>>} で囲む必要もあります −- これは LilyPond 
2349 に複数のもの (この場合は 2 つの @code{Stave}) が同時に起こるということを知らせ@c
2350 ます。@code{\score} は以下のようになります:
2351
2352 @c Indentation in this example is deliberately poor
2353 @example
2354 \score @{
2355   <<
2356   <<
2357     \new Voice = "one" @{
2358       \autoBeamOff
2359       \sopranoMusic
2360     @}
2361     \new Lyrics \lyricsto "one" \sopranoLyrics
2362   >>
2363   \new Staff \celloMusic
2364   >>
2365   \layout @{ @}
2366   \midi @{ @}
2367 @}
2368 @end example
2369
2370 @noindent
2371 これは少し見にくいです。インデントがきちんと入っていません。これは簡単に修正で@c
2372 きます。ここで、完成したソプラノとチェロ用のテンプレートを挙げます。
2373
2374 @lilypond[quote,verbatim,ragged-right,addversion]
2375 sopranoMusic = \relative c' {
2376   \clef treble
2377   \key c \major
2378   \time 4/4
2379   a4 b c d
2380 }
2381
2382 sopranoLyrics = \lyricmode {
2383   Aaa Bee Cee Dee
2384 }
2385
2386 celloMusic = \relative c {
2387   \clef bass
2388   \key c \major
2389   \time 4/4
2390   d4 g fis8 e d4
2391 }
2392
2393 \score {
2394   <<
2395     <<
2396       \new Voice = "one" {
2397         \autoBeamOff
2398         \sopranoMusic
2399       }
2400       \new Lyrics \lyricsto "one" \sopranoLyrics
2401     >>
2402     \new Staff \celloMusic
2403   >>
2404   \layout { }
2405   \midi { }
2406 }
2407 @end lilypond
2408
2409
2410 @seealso
2411 開始点となるテンプレートは付録 @q{テンプレート} で見つけることができます。@c
2412 @ref{Single staff} を参照してください。
2413 @c 単一の譜
2414
2415
2416 @node Four-part SATB vocal score
2417 @subsection Four-part SATB vocal score
2418 @c 4 パート SATB ボーカル譜
2419
2420 @cindex template, SATB
2421 @cindex SATB template
2422
2423 Mendelssohn の Elijah や Handel の Messiah などのオーケストラ伴奏付きの 4 パー@c
2424 ト聖歌隊のために書かれたボーカル譜の多くは 4 つの譜上に音符と歌詞を持ち、それ@c
2425 ぞれの譜は SATB (ソプラノ、アルト、テナー、バス) のうちの 1 つであり、その下に@c
2426 オーケストラ伴奏のピアノ譜が付きます。ここで、Handel の Messiah から例を挙げま@c
2427 す:
2428
2429 @c The following should appear as music without code
2430 @lilypond[quote,ragged-right]
2431 global = { \key d \major \time 4/4 }
2432 sopranoMusic = \relative c'' {
2433   \clef "treble"
2434   r4 d2 a4 | d4. d8 a2 | cis4 d cis2 |
2435 }
2436 sopranoWords = \lyricmode {
2437   Wor -- thy is the lamb that was slain
2438 }
2439 altoMusic = \relative a' {
2440   \clef "treble"
2441   r4 a2 a4 | fis4. fis8 a2 | g4 fis e2 |
2442 }
2443 altoWords = \sopranoWords
2444 tenorMusic = \relative c' {
2445   \clef "G_8"
2446   r4 fis2 e4 | d4. d8 d2 | e4 a, cis2 |
2447 }
2448 tenorWords = \sopranoWords
2449 bassMusic = \relative c' {
2450   \clef "bass"
2451   r4 d2 cis4 | b4. b8 fis2 | e4 d a'2 |
2452 }
2453 bassWords = \sopranoWords
2454 upper = \relative a' {
2455   \clef "treble"
2456   \global
2457   r4 <a d fis>2 <a e' a>4 |
2458   <d fis d'>4. <d fis d'>8 <a d a'>2 |
2459   <g cis g'>4 <a d fis> <a cis e>2 |
2460 }
2461 lower = \relative c, {
2462   \clef "bass"
2463   \global
2464   <d d'>4 <d d'>2 <cis cis'>4 |
2465   <b b'>4. <b' b'>8 <fis fis'>2 |
2466   <e e'>4 <d d'> <a' a'>2 |
2467 }
2468
2469 \score {
2470   <<  % combine ChoirStaff and PianoStaff in parallel
2471     \new ChoirStaff <<
2472       \new Staff = "sopranos" <<
2473         \set Staff.instrumentName = #"Soprano"
2474         \new Voice = "sopranos" { \global \sopranoMusic }
2475       >>
2476       \new Lyrics \lyricsto "sopranos" { \sopranoWords }
2477       \new Staff = "altos" <<
2478         \set Staff.instrumentName = #"Alto"
2479         \new Voice = "altos" { \global \altoMusic }
2480       >>
2481       \new Lyrics \lyricsto "altos" { \altoWords }
2482       \new Staff = "tenors" <<
2483         \set Staff.instrumentName = #"Tenor"
2484         \new Voice = "tenors" { \global \tenorMusic }
2485       >>
2486       \new Lyrics \lyricsto "tenors" { \tenorWords }
2487       \new Staff = "basses" <<
2488         \set Staff.instrumentName = #"Bass"
2489         \new Voice = "basses" { \global \bassMusic }
2490       >>
2491       \new Lyrics \lyricsto "basses" { \bassWords }
2492     >>  % end ChoirStaff
2493
2494     \new PianoStaff <<
2495       \set PianoStaff.instrumentName = #"Piano"
2496       \new Staff = "upper" \upper
2497       \new Staff = "lower" \lower
2498     >>
2499   >>
2500 }
2501 @end lilypond
2502
2503 このレイアウトをそのまま提供するテンプレートはありません。最も近いのは @q{SATB 
2504 ボーカル譜と自動ピアノ伴奏譜} -- @ref{Vocal ensembles} を参照してください -- 
2505 ですが、レイアウトを変更して、ボーカル パートから自動的に生成されたものではな@c
2506 いピアノ伴奏譜を付け加える必要があります。ボーカル パートのための音楽と歌詞を@c
2507 保持している変数はそのまま使えますが、ピアノ伴奏譜のための変数を付け加える必要@c
2508 があります。
2509 @c ボーカル アンサンブル
2510
2511 テンプレートの @code{ChoirStaff} の中でコンテキストが出現する順序は上で示した@c
2512 ボーカル譜の順序と一致していません。そのため、コンテキストを再配置して、それぞ@c
2513 れの歌詞が対応する譜表のすぐ下にくるようにします。すべてのボイスは 
2514 @code{\voiceOne} -- これがデフォルトです -- になるべきなので、@code{\voiceXXX} 
2515 コマンドは削除すべきです。さらに、テノールに対してハ音記号 (中音部記号) を指定@c
2516 する必要があります。テンプレートの中で歌詞を指定する方法はまだ説明していません@c
2517 ので、馴染みのある方法を使用する必要があります。さらに、それぞれの譜に名前を追@c
2518 加すべきです。
2519
2520 以上のことを @code{ChoirStaff} に対して行います:
2521
2522 @example
2523     \new ChoirStaff <<
2524       \new Staff = "sopranos" <<
2525         \set Staff.instrumentName = #"Soprano"
2526         \new Voice = "sopranos" @{ \global \sopranoMusic @}
2527       >>
2528       \new Lyrics \lyricsto "sopranos" @{ \sopranoWords @}
2529       \new Staff = "altos" <<
2530         \set Staff.instrumentName = #"Alto"
2531         \new Voice = "altos" @{ \global \altoMusic @}
2532       >>
2533       \new Lyrics \lyricsto "altos" @{ \altoWords @}
2534       \new Staff = "tenors" <<
2535         \set Staff.instrumentName = #"Tenor"
2536         \new Voice = "tenors" @{ \global \tenorMusic @}
2537       >>
2538       \new Lyrics \lyricsto "tenors" @{ \tenorWords @}
2539       \new Staff = "basses" <<
2540         \set Staff.instrumentName = #"Bass"
2541         \new Voice = "basses" @{ \global \bassMusic @}
2542       >>
2543       \new Lyrics \lyricsto "basses" @{ \bassWords @}
2544     >>  % end ChoirStaff
2545 @end example
2546
2547 次にピアノ パートに取り掛からなければなりません。これは簡単です -- @q{ソロ ピ@c
2548 アノ} テンプレートからピアノ パートを引き抜いてくるだけです:
2549
2550 @example
2551 \new PianoStaff <<
2552   \set PianoStaff.instrumentName = #"Piano  "
2553   \new Staff = "upper" \upper
2554   \new Staff = "lower" \lower
2555 >>
2556 @end example
2557
2558 そして、@code{upper} と @code{lower} に変数定義を付け加えます。
2559
2560 @code{ChoirStaff} を @code{PianoStaff} の上に置きたいので、それらを角括弧を@c
2561 使って組み合わせなければなりません:
2562
2563 @example
2564 <<  % combine ChoirStaff and PianoStaff one above the other
2565   \new ChoirStaff <<
2566     \new Staff = "sopranos" <<
2567       \new Voice = "sopranos" @{ \global \sopranoMusic @}
2568     >>
2569     \new Lyrics \lyricsto "sopranos" @{ \sopranoWords @}
2570     \new Staff = "altos" <<
2571       \new Voice = "altos" @{ \global \altoMusic @}
2572     >>
2573     \new Lyrics \lyricsto "altos" @{ \altoWords @}
2574     \new Staff = "tenors" <<
2575       \clef "G_8"  % tenor clef
2576       \new Voice = "tenors" @{ \global \tenorMusic @}
2577     >>
2578     \new Lyrics \lyricsto "tenors" @{ \tenorWords @}
2579     \new Staff = "basses" <<
2580       \clef "bass"
2581       \new Voice = "basses" @{ \global \bassMusic @}
2582     >>
2583     \new Lyrics \lyricsto "basses" @{ \bassWords @}
2584   >>  % end ChoirStaff
2585
2586   \new PianoStaff <<
2587     \set PianoStaff.instrumentName = #"Piano"
2588     \new Staff = "upper" \upper
2589     \new Staff = "lower" \lower
2590   >>
2591 >>
2592 @end example
2593
2594 これらすべてを組み合わせて、上の例の 3 小節分の音楽を付け加えます:
2595
2596 @lilypond[quote,verbatim,ragged-right,addversion]
2597 global = { \key d \major \time 4/4 }
2598 sopranoMusic = \relative c'' {
2599   \clef "treble"
2600   r4 d2 a4 | d4. d8 a2 | cis4 d cis2 |
2601 }
2602 sopranoWords = \lyricmode {
2603   Wor -- thy is the lamb that was slain
2604 }
2605 altoMusic = \relative a' {
2606   \clef "treble"
2607   r4 a2 a4 | fis4. fis8 a2 | g4 fis fis2 |
2608 }
2609 altoWords = \sopranoWords
2610 tenorMusic = \relative c' {
2611   \clef "G_8"
2612   r4 fis2 e4 | d4. d8 d2 | e4 a, cis2 |
2613 }
2614 tenorWords = \sopranoWords
2615 bassMusic = \relative c' {
2616   \clef "bass"
2617   r4 d2 cis4 | b4. b8 fis2 | e4 d a'2 |
2618 }
2619 bassWords = \sopranoWords
2620 upper = \relative a' {
2621   \clef "treble"
2622   \global
2623   r4 <a d fis>2 <a e' a>4 |
2624   <d fis d'>4. <d fis d'>8 <a d a'>2 |
2625   <g cis g'>4 <a d fis> <a cis e>2 |
2626 }
2627 lower = \relative c, {
2628   \clef "bass"
2629   \global
2630   <d d'>4 <d d'>2 <cis cis'>4 |
2631   <b b'>4. <b' b'>8 <fis fis'>2 |
2632   <e e'>4 <d d'> <a' a'>2 |
2633 }
2634
2635 \score {
2636   <<  % combine ChoirStaff and PianoStaff in parallel
2637     \new ChoirStaff <<
2638       \new Staff = "sopranos" <<
2639         \set Staff.instrumentName = #"Soprano"
2640         \new Voice = "sopranos" { \global \sopranoMusic }
2641       >>
2642       \new Lyrics \lyricsto "sopranos" { \sopranoWords }
2643       \new Staff = "altos" <<
2644         \set Staff.instrumentName = #"Alto"
2645         \new Voice = "altos" { \global \altoMusic }
2646       >>
2647       \new Lyrics \lyricsto "altos" { \altoWords }
2648       \new Staff = "tenors" <<
2649         \set Staff.instrumentName = #"Tenor"
2650         \new Voice = "tenors" { \global \tenorMusic }
2651       >>
2652       \new Lyrics \lyricsto "tenors" { \tenorWords }
2653       \new Staff = "basses" <<
2654         \set Staff.instrumentName = #"Bass"
2655         \new Voice = "basses" { \global \bassMusic }
2656       >>
2657       \new Lyrics \lyricsto "basses" { \bassWords }
2658     >>  % end ChoirStaff
2659
2660     \new PianoStaff <<
2661       \set PianoStaff.instrumentName = #"Piano  "
2662       \new Staff = "upper" \upper
2663       \new Staff = "lower" \lower
2664     >>
2665   >>
2666 }
2667 @end lilypond
2668
2669
2670 @node Building a score from scratch
2671 @subsection Building a score from scratch
2672 @c ゼロから楽譜を構築する
2673
2674 @cindex template, writing your own
2675 @cindex example of writing a score
2676 @cindex writing a score, example
2677 @cindex score, example of writing
2678
2679 LilyPond コードを書くことにある程度熟練した後、あなたはテンプレートの 1 つを変@c
2680 更するよりもゼロから楽譜を構築するほうがより容易であることに気づくかもしれませ@c
2681 ん。さらに、あなたはこの方法であなたの好みのタイプの音楽に適したあなた自身のス@c
2682 タイルを開発することもできます。例として、オルガン前奏曲のための楽譜を作成する@c
2683 手順を見てみましょう。
2684
2685 ヘッダ セクションから始めます。そこでタイトル、作曲者の名前などを記述し、それ@c
2686 から任意の変数を定義し、最後にスコア ブロックに取り掛かります。以上のことを概@c
2687 要から始めて、その後に詳細を詰めていきます。
2688
2689 @emph{Jesu, meine Freude} -- これは 2 つの鍵盤とペダルを持つオルガンのために書@c
2690 かれたものです -- をベースとする Bach の前奏曲の最初の 2 小節を使います。この@c
2691 セクションの最後でこの音楽の最初の 2 小節を見ることができます。上段鍵盤パートは 
2692 2 つのボイスを持ち、下段鍵盤とペダルはそれぞれ 1 つのボイスを持ちます。そのた@c
2693 め、4 つの音楽定義と、拍子記号と調号を定義するための 1 つの音楽定義が必要とな@c
2694 ります:
2695
2696 @example
2697 \version @w{"@version{}"}
2698 \header @{
2699   title = "Jesu, meine Freude"
2700   composer = "J S Bach"
2701 @}
2702 TimeKey = @{ \time 4/4 \key c \minor @}
2703 ManualOneVoiceOneMusic = @{s1@}
2704 ManualOneVoiceTwoMusic = @{s1@}
2705 ManualTwoMusic = @{s1@}
2706 PedalOrganMusic = @{s1@}
2707
2708 \score @{
2709 @}
2710 @end example
2711
2712 ここでは、実際の音楽の代わりにスペーサ音符 @code{s1} を使用しました。実際の音@c
2713 楽は後で付け加えます。
2714
2715 次に、スコア ブロックで何をすべきなのかを見ていきましょう。単純に望む譜表構造@c
2716 を反映させます。通常、オルガン音楽は 3 つの譜で書かれます -- 2 つの鍵盤とペダ@c
2717 ルのための譜です。鍵盤の譜はブレース (譜表の左端の中括弧) でまとめられているべ@c
2718 きなので、それらに対して @code{PianoStaff} を使用する必要があります。1 番目の@c
2719 鍵盤パートは 2 つのボイスを必要とし、2 番目の鍵盤パートは 1 つだけボイスを必要@c
2720 とします。
2721
2722 @example
2723   \new PianoStaff <<
2724     \new Staff = "ManualOne" <<
2725       \new Voice @{ \ManualOneVoiceOneMusic @}
2726       \new Voice @{ \ManualOneVoiceTwoMusic @}
2727     >>  % end ManualOne Staff context
2728     \new Staff = "ManualTwo" <<
2729       \new Voice @{ \ManualTwoMusic @}
2730     >>  % end ManualTwo Staff context
2731   >>  % end PianoStaff context
2732 @end example
2733
2734 次にペダル オルガンのための譜表を付け加える必要があります。これは 
2735 @code{PianoStaff} の下にきますが、@code{PianoStaff} と同時進行でなければなりま@c
2736 せんので、ペダル オルガンのための譜表と @code{PianoStaff} を角括弧で囲む必要が@c
2737 あります。これを忘れるとエラーがログ ファイルに生成されます。このエラーはあな@c
2738 たが早かれ遅かれ遭遇する一般的なミスです!生成されるエラーを確認するために、こ@c
2739 のセクションの最後にある例をコピーし、この角括弧を削除し、コンパイルしてみてく@c
2740 ださい。
2741
2742 @example
2743 <<  % PianoStaff and Pedal Staff must be simultaneous
2744   \new PianoStaff <<
2745     \new Staff = "ManualOne" <<
2746       \new Voice @{ \ManualOneVoiceOneMusic @}
2747       \new Voice @{ \ManualOneVoiceTwoMusic @}
2748     >>  % end ManualOne Staff context
2749     \new Staff = "ManualTwo" <<
2750       \new Voice @{ \ManualTwoMusic @}
2751     >>  % end ManualTwo Staff context
2752   >>  % end PianoStaff context
2753   \new Staff = "PedalOrgan" <<
2754     \new Voice @{ \PedalOrganMusic @}
2755   >>
2756 >>
2757 @end example
2758
2759 2 番目の鍵盤パートとペダル オルガンの譜表は 1 つだけしか音楽表記を保持しないた@c
2760 め、それらに対して同時進行構造 @code{<< .. >>} を使う必要は必ずしもありませ@c
2761 ん。しかしながら、そうしても害はありませんし、@code{\new Staff} の後に常に角括@c
2762 弧を置くというのは複数のボイスがある場合では推奨される良い習慣です。Voice はこ@c
2763 れとは対照的に、あなたの音楽を連続して演奏すべきいくつかの変数に分けてコード化@c
2764 する場合に Voice の後に中括弧 @code{@{ .. @}} を常に置くべきです。
2765
2766 この構造をスコア ブロックに付け加えて、インデントを調整しましょう。さらに、適@c
2767 切な音部記号を付け加え、@code{\voiceOne} と @code{\voiceTwo} を使って上部譜の@c
2768 各ボイスでステム、タイ、スラーの向きが正しくなるようにし、あらかじめ定義してお@c
2769 いた変数 @code{\TimeKey} を使って拍子記号と調号を各譜に挿入します。
2770
2771 @example
2772 \score @{
2773   <<  % PianoStaff and Pedal Staff must be simultaneous
2774     \new PianoStaff <<
2775       \new Staff = "ManualOne" <<
2776         \TimeKey  % set time signature and key
2777         \clef "treble"
2778         \new Voice @{ \voiceOne \ManualOneVoiceOneMusic @}
2779         \new Voice @{ \voiceTwo \ManualOneVoiceTwoMusic @}
2780       >>  % end ManualOne Staff context
2781       \new Staff = "ManualTwo" <<
2782         \TimeKey
2783         \clef "bass"
2784         \new Voice @{ \ManualTwoMusic @}
2785       >>  % end ManualTwo Staff context
2786     >>  % end PianoStaff context
2787     \new Staff = "PedalOrgan" <<
2788       \TimeKey
2789       \clef "bass"
2790       \new Voice @{ \PedalOrganMusic @}
2791     >>  % end PedalOrgan Staff
2792   >>
2793 @}  % end Score context
2794 @end example
2795
2796 これでこの構造は完成です。3 つの譜表を持つオルガン音楽はいずれも同様の構造を持@c
2797 ちますが、ボイスの数はさまざまになるかもしれません。この後に行うべきことは、音@c
2798 楽を付け加え、各パートを一緒にすることです。
2799
2800 @lilypond[quote,verbatim,ragged-right,addversion]
2801 \header {
2802   title = "Jesu, meine Freude"
2803   composer = "J S Bach"
2804 }
2805 TimeKey = { \time 4/4 \key c \minor }
2806 ManualOneVoiceOneMusic = \relative g' {
2807   g4 g f ees | d2 c2 |
2808 }
2809 ManualOneVoiceTwoMusic = \relative c' {
2810   ees16 d ees8~ ees16 f ees d c8 d~ d c~ |
2811   c c4 b8 c8. g16 c b c d |
2812 }
2813 ManualTwoMusic = \relative c' {
2814   c16 b c8~ c16 b c g a8 g~ g16 g aes ees |
2815   f ees f d g aes g f ees d e8~ ees16 f ees d |
2816 }
2817 PedalOrganMusic = \relative c {
2818   r8 c16 d ees d ees8~ ees16 a, b g c b c8 |
2819   r16 g ees f g f g8 c,2 |
2820   }
2821
2822 \score {
2823   <<  % PianoStaff and Pedal Staff must be simultaneous
2824     \new PianoStaff <<
2825       \new Staff = "ManualOne" <<
2826         \TimeKey  % set time signature and key
2827         \clef "treble"
2828         \new Voice { \voiceOne \ManualOneVoiceOneMusic }
2829         \new Voice { \voiceTwo \ManualOneVoiceTwoMusic }
2830       >>  % end ManualOne Staff context
2831       \new Staff = "ManualTwo" <<
2832         \TimeKey
2833         \clef "bass"
2834         \new Voice { \ManualTwoMusic }
2835       >>  % end ManualTwo Staff context
2836     >>  % end PianoStaff context
2837     \new Staff = "PedalOrgan" <<
2838       \TimeKey
2839       \clef "bass"
2840       \new Voice { \PedalOrganMusic }
2841     >>  % end PedalOrgan Staff context
2842   >>
2843 }  % end Score context
2844 @end lilypond
2845