1 @c -*- coding: utf-8; mode: texinfo; documentlanguage: ja -*-
2 @c This file is part of lilypond-learning.tely
4 Translation of GIT committish: 499a511d4166feaada31114e097f86b5e0c56421
6 When revising a translation, copy the HEAD committish of the
7 version that you are working on. See TRANSLATION for details.
12 @c Translators: Yoshiki Sawada
13 @c Translation status: post-GDP
18 この章では読者に LilyPond とこのドキュメントについての紹介を行います。
22 * About the documentation::
29 この節は LilyPond の最終目的とアーキテクチャについてカバーします。
33 * Automated engraving::
34 * What symbols to engrave?::
35 * Music representation::
36 * Example applications::
41 @unnumberedsubsec Engraving
44 @cindex typography, music
45 @cindex music typography
46 @cindex plate engraving
47 @cindex music engraving
49 楽譜印刷の技術は@emph{(プレート) 譜刻} (原文: engraving、版画などの印刷のこと@c
50 ) と呼ばれています。この用語は伝統的な楽譜印刷のプロセスに由来します。ほんの@c
51 数十年前まで、楽譜は音楽記号を亜鉛やしろめ (錫と鉛の合金) の版に反転した@c
52 イメージで彫り込んだり、刻印することによって作られていました。版にはインクが@c
53 塗られ、彫り込んだり刻印してくぼんだ部分にはインクが溜まります。版のイメージ@c
54 はその版に紙が押し付けられることによって形になります。刻印と彫刻は完全に手作@c
55 業で行われていました。校正は可能だとしても厄介でした。なぜなら一から刻印と彫@c
56 刻のやり直しだったからです。譜刻は高度に専門的な技術でした。職人はマスター @c
57 エングラーバ (譜刻を行う人) の称号を得るまで 5 年の修行を修めなければなら@c
58 ず、本当に技術を習得するまでにはさらにもう 5 年の経験が必要だったのです。
60 今日では、コンピュータによってまったく新しい楽譜が出版されています。これには@c
61 明らかな利点があります。印刷は安く済み、編集したものを email で配ることが可@c
62 能です。不幸なことに、コンピュータが広く使われるようになって楽譜のグラフィカ@c
63 ルな品質は低下しています。コンピュータによって出版された楽譜は味気無く、機械@c
64 的な見た目をしているため、その楽譜で演奏することに喜びを感じられません。
66 @c introduce illustrating aspects of engraving, font...
67 以下の図は伝統的な譜刻とコンピュータ出版の違いを描いたものであり、3 番目の図は
68 LilyPond がどれくらい伝統的な見た目を模倣しているのかを示しています。左端の@c
69 スキャンした図はコンピュータ出版の典型的な決定を示しています。縦棒は細く、フ@c
70 ラット記号の太さは細線と一致していて、曲線はまっすぐなレイアウトになっていま@c
71 す。対照的に、ベーレンライター (Barenreiter: ドイツの出版社) のフラットは太@c
72 く、曲線は官能的です。我々のフラットは 2 つのもののうち後者を元にデザインさ@c
73 れています。丸みを帯びていて、太さは縦棒の太さと調和していて、コンピュータに@c
76 @multitable @columnfractions .125 .25 .25 .25 .125
80 @image{henle-flat-gray,,4cm}
83 @image{henle-flat-gray,,,png}
88 @image{baer-flat-gray,,4cm}
91 @image{baer-flat-gray,,,png}
96 @image{lily-flat-bw,,4cm}
99 @image{lily-flat-bw,,,png}
103 @image{lilypond/henle-flat-bw,,,png} @image{lilypond/baer-flat-bw,,,png}
104 @image{lilypond/lily-flat-bw,,,png}
112 LilyPond Feta font (2003)
117 @cindex musical symbols
122 @c introduce illustrating aspects of engraving, spacing...
123 スペースの点では、スペースの配分は音符と音符の間の音の間隔を反映します。しか@c
124 しながら、現代楽譜の多くは数学的な正確さを持った間隔に固執しています。このこ@c
125 とはおもしろくない結果を生み出します。次の例では、2 度楽譜をプリントしていま@c
126 す: 1 度目は正確に数学的なスペースを用いて、2 度目はそれに校正を加えていま@c
129 @cindex optical spacing
130 @c file spacing-optical.
131 @c need to include it here, because we want two images.
152 \override NoteSpacing #'stem-spacing-correction = #0.6
177 \override NoteSpacing #'stem-spacing-correction = #0.0
178 \override NoteSpacing #'same-direction-correction = #0.0
179 \override StaffSpacing #'stem-spacing-correction = #0.0
185 @cindex regular rhythms
186 @cindex regular spacing
187 @cindex spacing, regular
189 各小節には一定のリズムで演奏される音符だけがあります。スペースもそれを反映していま@c
190 す。不幸なことに、我々の目は我々を少し惑わせます。音符の「玉」 (ノート ヘッド) の間@c
191 隔だけでなく、連続した棒 (ステム、音符から突き出る棒) の間隔も考慮します。結果とし@c
192 て、アップ ステム/@/ダウン ステム (玉の上に突き出た棒/@/玉の下に突き出た棒) の組み@c
193 合わせは離すべきであり、ダウン ステム/アップステムの組み合わせは近づけるべきです、す@c
194 べては音符の垂直方向の位置の組み合わせに次第です。上の 2 小節は音符のダウン
195 ステム/@/アップ ステムの組み合わせを近づけるよう校正を加えたものであり、下の 2 小節@c
199 通常、奏者は楽譜の見え方を勉強するよりも演奏をするほうに夢中ですので、印刷上@c
200 の詳細にこだわることは形式尊重のように思えるかもしれません。しかしそうではあ@c
201 りません。単調なリズムがずっと続くような場合、スペースの校正を行うことで各行@c
202 のレイアウトに微妙な変化が加わり、それぞれが異なる視覚的特徴を持つようになり@c
203 ます。この特徴が無ければすべての行は同じに見え、迷路のようになってしまいま@c
204 す。奏者がちょっと目を逸らしたり、集中力を欠くと、それまで見ていた行はページ@c
207 同様に、太い譜線 (音の高さを表す線。五線譜では 5 本) に描かれた太い記号は見@c
208 た目が強く、楽譜から奏者が離れている場合 -- 例えば、楽譜が譜面台にある場合 --
209 に良く目立ちます。空白を注意深く配置することで、楽譜は記号が乱雑になることな@c
210 く締まります。結果としてページをめくる回数は最小となり、これは大きな利点にな@c
213 これは印刷において共通して言えることですが、レイアウトはこざっぱりとしている@c
214 べきです。これは印刷自体のためであるだけでなく、特にその印刷物を読んでいる読@c
215 み手の助けにもなるからです。楽譜のような演奏用の道具では、このことは 2 重に@c
216 重要性を持ちます: 奏者の注意力には限界があり、奏者が楽譜を読むことに払う注意@c
217 力が少なくて済めば済むほど、その奏者は演奏に集中することができます。言い換え@c
218 ると、良い印刷は良い演奏につながるのです。
220 以上で挙げたことは、楽譜の印刷は微妙で複雑な技術であり、楽譜を印刷するには非@c
221 常な熟練 -- これは通常、奏者が持っているものではありません -- が必要であると@c
222 いうことを示しています。LilyPond は、手作業で譜刻された楽譜のすばらしさをコ@c
223 ンピュータ世代に提供しよう、すばらしい楽譜を普通の音楽家にも利用可能にしよう@c
224 という我々の努力なのです。我々は、良く見てみたくなり、演奏したくなるような古@c
225 い楽譜のクオリティに匹敵する楽譜を提供するために、アルゴリズム、フォント デ@c
226 ザイン、プログラム設定を調整してきました。
229 @node Automated engraving
230 @unnumberedsubsec Automated engraving
232 @cindex engraving, automated
233 @cindex automated engraving
235 我々はどのように譜刻を実現していくのでしょうか?職人が本当のマスターになるのに
236 10 年以上かかるのなら、単なるハッカーである我々がどうやったら職人の仕事を越@c
239 その答えは、我々には「できない」です。譜刻は人間的な状況判断に頼っているた@c
240 め、判断を行う人間を完全にコンピュータに置き換えることはできません。しかしな@c
241 がら、退屈な作業の多くを自動化することはできます。もし LilyPond が一般的な@c
242 ケースの大半に対処できるなら、それは既存のソフトウェアよりも大きく前進するこ@c
243 とになります。残りのケースは手作業で調整することができます。年数が経つにつれ@c
244 て、このソフトウェアはより多くのことを自動的に行えるよう洗練されていき、手作@c
245 業による手直しはどんどん必要なくなっていくことでしょう。
247 我々が LilyPond の開発を始めたとき、我々は LilyPond プログラム全体を C++ プ@c
248 ログラミング言語で書いていました。プログラムの機能は開発者によってかっちりと@c
249 決められていました。これはいくつかの理由で不満足なものであることがわかりました:
252 @item LilyPond が失敗を犯したとき、ユーザはフォーマット判断 (どのような@c
253 フォーマットにするかの判断) を上書きする必要があります。そのため、ユーザは@c
254 フォーマット エンジンにアクセスしなければなりません。そのため、コンパイル時@c
255 に我々 (開発者) によって規則と設定を固定することは無理があり、実行時 (LilyPond
256 によって楽譜を作り出すとき) にユーザが規則と設定にアクセスできなければなりま@c
259 @item 譜刻は視覚的判断の問題であり、そのために好みがあります。我々には知識が@c
260 ありますが、ユーザは我々の個人的な判断に異を唱える可能性もあります。そのた@c
261 め、譜刻様式の定義もまたユーザがアクセスできるものでなければなりません。
263 @item 最後に、我々は継続的にフォーマット アルゴリズムを改良させていくので、@c
264 我々には規則に対する自由度の高いアプローチが必要です。C++ 言語は音楽表記の作@c
265 業とはうまくマッチしない規則分類法を押し付けてきます。
269 @cindex Scheme programming language
271 これらの問題に対して、Scheme プログラミング言語のインタプリタを統合し、@c
272 LilyPond の各部分を Scheme で書き直すという処置がとられてきました。現在の@c
273 フォーマット アーキテクチャはグラフィカル オブジェクトという概念で構築されて@c
274 いて、Scheme 変数と関数によって記述されています。このアーキテクチャは、@c
275 フォーマット規則、譜刻スタイル、個々のフォーマットに関する判断を包含していま@c
276 す。ユーザはこれらの制御の大半に直接アクセスする術を持ちます。
278 Scheme 変数はレイアウトに関する判断を制御します。例えば、多くのグラフィカル
279 オブジェクトは上か下か (あるいは左か右か) の選択を決定する方向 (に関する) 変@c
280 数を持ちます。ここで、アクセントとアルペジオを持つ 2 つの和音を見てみます。@c
281 最初の和音では、すべてのグラフィカル オブジェクトは下向き (あるいは左向き)
282 の方向を持っています。2 番目の和音では、すべてが上向き (あるいは右向き) の方@c
285 @lilypond[quote,ragged-right]
287 \override SpacingSpanner #'spacing-increment = #3
288 \override TimeSignature #'transparent = ##t
290 \stemDown <e g b>4_>-\arpeggio
291 \override Arpeggio #'direction = #RIGHT
292 \stemUp <e g b>4^>-\arpeggio
296 @cindex score formatting
297 @cindex formatting a score
298 @cindex formatting rules
301 楽譜を形作るプロセスはグラフィカルオブジェクトの変数を読み込んだり、書き込ん@c
302 だりすることからなります。いくつかの変数はプリセット値を持ちます。例えば、多@c
303 くの線の太さ -- 印刷スタイルの特性 -- はプリセット値を持つ変数です。あなたは@c
304 自由にこの値を変更することができ、それによってあなたの楽譜は異なる印象を持つ@c
307 @lilypond[quote,ragged-right]
310 c'4-~ c'16 as g f e16 g bes c' des'4
315 \override Beam #'thickness = #0.3
316 \override Stem #'thickness = #0.5
317 \override Bar #'thickness = #3.6
318 \override Tie #'thickness = #2.2
319 \override StaffSymbol #'thickness = #3.0
320 \override Tie #'extra-offset = #'(0 . 0.3)
326 さらにフォーマット規則もプリセット変数です: 各オブジェクトはプロシージャを保@c
327 持している変数を持ちます。これらのプロシージャが実際のフォーマットを実行し、@c
328 異なるプロシージャを使用することによってオブジェクトの見た目を変えることがで@c
329 きます。以下の例では、音符の玉 (ノート ヘッド) シンボルを印刷するのにどの音@c
330 符の玉オブジェクトを使用するかを決定する規則を楽譜の途中で変更しています。
332 @lilypond[quote,ragged-right]
333 #(set-global-staff-size 30)
335 #(define (mc-squared grob orig current)
336 (let* ((interfaces (ly:grob-interfaces grob))
337 (pos (ly:grob-property grob 'staff-position)))
338 (if (memq 'note-head-interface interfaces)
340 (ly:grob-set-property! grob 'stencil
341 (grob-interpret-markup grob
342 (make-lower-markup 0.5
346 ((-2) (make-smaller-markup (make-bold-markup "2")))
349 \new Voice \relative c' {
351 \set autoBeaming = ##f
354 \once \override NoteHead #'stencil = #ly:note-head::brew-ez-stencil
355 \once \override NoteHead #'font-size = #-7
356 \once \override NoteHead #'font-family = #'sans
357 \once \override NoteHead #'font-series = #'bold
359 \once \override NoteHead #'style = #'cross
361 \applyOutput #'Voice #mc-squared
364 { d8[ es-( fis^^ g] fis2-) }
365 \repeat unfold 5 { \applyOutput #'Voice #mc-squared s8 }
371 @node What symbols to engrave?
372 @unnumberedsubsec What symbols to engrave?
380 フォーマット プロセスはシンボルを置く場所を決定します。しかしながら、@c
381 @emph{どの}シンボルを譜刻すべきかを決定する -- 言い換えると、使用する表記を@c
382 決定する -- と、シンボルを置く場所も決まります。
384 一般の音楽表記は音楽を記録するシステムであり、これは過去 1000 年以上にもわ@c
385 たって進化してきました。現在の一般的な形式はルネッサンス前期にまでさかのぼり@c
386 ます。基本的な形式 (すなわち、音符の玉が 5 本線の譜表上にあるというもの) は@c
387 変更されていませんが、細かな点は現代の表記の改革を表現するためにいまだに発展@c
388 が続けられています。したがって、一般的な音楽表記はおよそ500年間の音楽を扱い@c
389 ます。応用範囲は単旋律から大規模なオーケストラのための途方もない対位法にまで@c
392 どうやったら我々はそのような多頭の獣を統率し、制限のあるコンピュータ プログ@c
393 ラムに押し込めることができるでしょうか?我々の解決策は表記の問題 (譜刻とは対@c
394 照的にある、すなわち、活字学) を消化の良いプログラム可能な小さな塊に分解して@c
395 いくことです: それぞれのシンボルのタイプは個々のモジュール -- いわゆるプラグ@c
396 イン -- によって処理されます。各プラグインは完全にモジュール化されて独立して@c
397 いて、それによりそれぞれを別個に開発、改良することができます。そのようなプラ@c
398 グインは音楽的概念をグラフィック シンボルに変換する職人に例えて @code{engraver}
401 以下の例では、我々が音符の玉のためのプラグイン @code{Note_heads_engraver} か@c
404 @lilypond[quote,ragged-right]
405 \include "engraver-example.ily"
412 \remove "Stem_engraver"
413 \remove "Phrasing_slur_engraver"
414 \remove "Slur_engraver"
415 \remove "Script_engraver"
416 \remove "Beam_engraver"
417 \remove "Auto_beam_engraver"
421 \remove "Accidental_engraver"
422 \remove "Key_engraver"
423 \remove "Clef_engraver"
424 \remove "Bar_engraver"
425 \remove "Time_signature_engraver"
426 \remove "Staff_symbol_engraver"
427 \consists "Pitch_squash_engraver"
434 それから、@code{Staff_symbol_engraver} が譜表を加え
436 @lilypond[quote,ragged-right]
437 \include "engraver-example.ily"
444 \remove "Stem_engraver"
445 \remove "Phrasing_slur_engraver"
446 \remove "Slur_engraver"
447 \remove "Script_engraver"
448 \remove "Beam_engraver"
449 \remove "Auto_beam_engraver"
453 \remove "Accidental_engraver"
454 \remove "Key_engraver"
455 \remove "Clef_engraver"
456 \remove "Bar_engraver"
457 \consists "Pitch_squash_engraver"
458 \remove "Time_signature_engraver"
465 @code{Clef_engraver} が譜表の参照位置を定義し
467 @lilypond[quote,ragged-right]
468 \include "engraver-example.ily"
475 \remove "Stem_engraver"
476 \remove "Phrasing_slur_engraver"
477 \remove "Slur_engraver"
478 \remove "Script_engraver"
479 \remove "Beam_engraver"
480 \remove "Auto_beam_engraver"
484 \remove "Accidental_engraver"
485 \remove "Key_engraver"
486 \remove "Bar_engraver"
487 \remove "Time_signature_engraver"
494 @code{Stem_engraver} が棒 (ステム) を付け加えます。
496 @lilypond[quote,ragged-right]
497 \include "engraver-example.ily"
504 \remove "Phrasing_slur_engraver"
505 \remove "Slur_engraver"
506 \remove "Script_engraver"
507 \remove "Beam_engraver"
508 \remove "Auto_beam_engraver"
512 \remove "Accidental_engraver"
513 \remove "Key_engraver"
514 \remove "Bar_engraver"
515 \remove "Time_signature_engraver"
522 @code{Stem_engraver} はやって来るすべての音符の玉 (ノート ヘッド) について知@c
523 らされます。1 つの音符の玉 (あるいは和音の場合は複数の音符の玉) が現れるたび@c
524 に、ステム オブジェクトが作成され、音符の玉に接続されます。さらにビーム (ス@c
525 テムとステムをつなぐ横棒)、スラー、アクセント、臨時記号、小節線 (小節と小節@c
526 を区切る縦線)、拍子記号、調号のためのエングラーバを付け加えるによって、我々@c
529 @lilypond[quote,ragged-right]
530 \include "engraver-example.ily"
535 @cindex engraving multiple voices
538 このシステムは単旋律の音楽に対してはうまく機能しますが、多声部音楽に対しては@c
539 どうでしょうか?多声部表記では、多くの声部 (ボイス) が 1 つの譜表を共有します。
541 @lilypond[quote,ragged-right]
542 \include "engraver-example.ily"
543 \new Staff << \topVoice \\ \botVoice >>
546 このような場合、臨時記号と譜表は共有されますが、ステム、スラー、ビームなどは@c
547 各声部が単独で持ちます。そのため、エングラーバはグループ化されるべきです。音@c
548 符の玉、ステム、スラーなどのためのエングラーバは @q{Voice context} (ボイス
549 コンテキスト) と呼ばれるグループに入れられ、一方の調子、臨時記号、小節線など@c
550 のためのエングラーバは @q{Staff context} (譜表コンテキスト) とグループに入れ@c
551 られます。多声部音楽の場合、単一の譜表コンテキストには複数のボイス コンテキ@c
552 ストが含まれます。同様に、複数の譜表コンテキストは単一の楽譜 (Score) コンテ@c
553 キストになり得ます。楽譜コンテキストは最上位の表記コンテキストです。
557 内部リファレンス: @rinternals{Contexts}.
560 @lilypond[quote,ragged-right]
561 \include "engraver-example.ily"
564 \new Staff << \topVoice \\ \botVoice >>
565 \new Staff << \pah \\ \hoom >>
571 @node Music representation
572 @unnumberedsubsec Music representation
575 @cindex recursive structures
577 概念上、高レベル フォーマット システムのための入力フォーマットは内容を抽象的@c
578 に記述するものになります。このケースでは、内容は音楽自体になります。これは手@c
579 に負えない問題に見えます: どうやったら我々は音楽の本質を定義できるでしょう@c
580 か?その答えを見つけようとする代わりに、我々はその問題を逆転させました。我々@c
581 は楽譜を譜刻する能力を持つプログラムを書き、そのフォーマットができる限りすっ@c
582 きりしたものになるよう調整します。これ以上フォーマットを減らすことができない@c
583 という状態になったとき、当然のことながら我々に残されているのは内容自体になり@c
584 ます。我々のプログラムは音楽ドキュメントの形式定義として機能します。
586 さらに、構文が LilyPond のユーザ インタフェイスになっているため、
594 とタイプだけで、4 分音符の C1 (ミドル C (=ド)) と 8 分音符の D1 (ミドル C の@c
603 @warning{訳者: C = ド, D = レ, E = ミ, F = ファ, G = ソ, A = ラ, B = シ で@c
604 す。LilyPond では音符を「ドレミ〜」ではなく "CDE~" として捉えることが必須なの@c
605 で、今後は音符をアルファべット表記にします。}
607 小さなスケールでは、そのような構文は簡単に使用できます。大きなスケールでは、@c
608 構文はさらに構造を持つ必要があります。そうしなければ、どうやったらあなたはシ@c
609 ンフォニーやオペラのような複雑な楽譜に取り組めるでしょうか?構造は音楽表現法@c
610 というコンセプトによって形成されます: 小さな音楽の断片を組み合わせて大きな音@c
611 楽にすることによって、より複雑な音楽を表すことができるようになります。例を挙@c
614 @lilypond[quote,verbatim,fragment,relative=1]
619 同時進行の音符はそれらを @code{<<} と @code{>>} で囲むことによって構築できます:
626 @lilypond[quote,fragment,relative=1]
627 \new Voice { <<c4 d4 e>> }
631 この音楽表現を中括弧 @code{@{@tie{}@dots{}@tie{}@}} で囲むことによってシークエ@c
635 @{ f4 <<c4 d4 e4>> @}
638 @lilypond[quote,relative=1,fragment]
643 上記もまた音楽表現の 1 つなので、@code{<<}, @code{@bs{}@bs{}}, and @code{>>}
644 を使ってそれを再び他の同時進行の音楽表現 (2 分音符) と組み合わせることもでき@c
648 @code{<< g2 \\ @{ f4 <<c4 d4 e4>> @} >>}
652 @lilypond[quote,fragment,relative=2]
653 \new Voice { << g2 \\ { f4 <<c d e>> } >> }
656 このような再帰的な構造はさっぱりと、かつ、しっかりした形式でコンテキスト フ@c
657 リー文法で記すことができます。コード解析もまたこの文法から生成されます。言い換@c
658 えると、LilyPond の構文ははっきりと明快に定義されます。
660 ユーザが LilyPond に取り組むときに、ユーザがその時間の大半で見て、扱うものは@c
661 ユーザ インタフェイスと構文です。それらのある部分は好みの問題であり、多くの議@c
662 論の対象にもなるものです。好みについて議論することは有意義なことですが、それほ@c
663 ど生産的なことではありません。LilyPond という大きな世界の中で、入力構文の重要@c
664 性は小さいのです: さっぱりとした構文をでっちあげることは簡単ですが、見苦しくな@c
665 いフォーマット コードを作成することはとても難しいのです。このことは、それぞれ@c
666 のコンポーネントの行数をカウントすることによっても実証されます: 解析と表記のた@c
667 めのコンポーネントはソース コード全体の 10 % にも達しません。
670 @node Example applications
671 @unnumberedsubsec Example applications
673 @cindex simple examples
674 @cindex examples, simple
676 我々はどのように譜刻の技術をコンピュータ プログラムの中に凝縮するかという実験@c
677 として LilyPond を開発してきました。重労働のおかげで、今やこのプログラムは有用@c
678 な働きを行うのに使用できるようになりました。非常に簡単な利用例は音符を譜刻する@c
681 @lilypond[quote,relative=1]
689 コード ネームと歌詞を加えることによって、我々はリード譜を得ます。
691 @lilypond[quote,ragged-right]
693 \chords { c2 c f2 c }
699 \addlyrics { twin -- kle twin -- kle lit -- tle star }
703 さらに、多声部表記とピアノ譜を譜刻することもできます。以下の例はいくつかのより@c
708 title = "Screech and boink"
709 subtitle = "Random complex notation"
710 composer = "Han-Wen Nienhuys"
714 \context PianoStaff <<
719 \revert Stem #'direction
721 \set subdivideBeams = ##t
733 \set followVoice = ##t
734 c'''32([ b''16 a''16 gis''16 g''32)]
736 s4 \times 2/3 { d'16[ f' g'] } as'32[ b''32 e'' d'']
738 s4 \autoBeamOff d''8.. f''32
744 \new Staff = "down" {
747 \set subdivideBeams = ##f
748 \override Stem #'french-beaming = ##t
749 \override Beam #'thickness = #0.3
750 \override Stem #'thickness = #4.0
757 \override Staff.Arpeggio #'arpeggio-direction =#down
758 <cis, e, gis, b, cis>4\arpeggio
765 tempoWholesPerMinute = #(ly:make-moment 60 8)
771 \consists Horizontal_bracket_engraver
777 上で示した楽譜の断片はすべて手作業で作成されていました。しかしながら、必ずしも@c
778 手作業で行う必要はありません。フォーマット エンジンの大部分は自動化されている@c
779 ため、その出力を音楽を操作する他のプログラムに供することができます。例えば、音@c
780 楽の断片のデータベースをウェブサイトやマルチメディア プレゼンテーションで使用@c
781 する画像に変換するために使用することもできます。
783 このマニュアルも利用例です: 入力フォーマットはテキストなので、容易に他のテキスト
784 ベースのフォーマット -- 例えば、@LaTeX{}, HTML, このマニュアルの場合は
785 Texinfo -- に埋め込むことができます。ある特別なプログラムによって入力断片を音@c
786 楽イメージに置き換えることができ、それによって PDF や HTML の出力ファイルとい@c
787 う結果を得ることができます。これはドキュメントの中で音楽とテキストを混在させる@c
792 @node About the documentation
793 @section About the documentation
795 この節では、このドキュメントの各部分について説明します。
797 @cindex Learning Manual
798 @cindex Music Glossary
799 @cindex Notation Reference
800 @cindex Application Usage
802 @cindex Internals Reference
804 @c leave these lines wrapping around. It's some texinfo 4.12 thing. -gp
805 @c This is actually a limitation of texi2html. -jm
807 * About the Learning Manual:: このマニュアルは表記を作成する方法について丁寧@c
808 な説明をしながら LilyPond についての紹介を行います。
809 * About the Music Glossary:: このマニュアルは音楽用語についての説明を行い、そ@c
810 れらの用語の他の言語への訳語を提供します。
811 * About the Notation Reference:: このマニュアルはこのドキュメントの主要部分で@c
812 す。表記を作成する方法についての詳細な情報を提供します。このマニュアルは読者が@c
813 学習マニュアルでカバーされている基本的な内容を知っていて、音楽用語集に書かれて@c
814 いる英語の音楽用語に馴染んでいるものと仮定しています。
815 * About the Application Usage:: ここでは実際のプログラムとオペレーティング シ@c
817 * About the Snippet List:: これは短い LilyPond の例のコレクションです。
818 * About the Internals Reference:: このドキュメントは LilyPond の内部構造体に@c
819 ついての参照情報を提供します。調整を行うのに LilyPond の内部構造体についての知@c
821 * Other documentation:: ここにはこのドキュメントの他の部分 -- ニュースやメール
822 アーカイブなど -- がいくつかあります。
826 @node About the Learning Manual
827 @unnumberedsubsec About the Learning Manual
829 @cindex Learning Manual
831 本書は LilyPond の学習の始め方を説明し、同時にいくつかの鍵となるコンセプトを簡@c
832 単な用語で説明します。あなたは本書を一読すべきです。
834 各セクションの最後には@strong{参照}というパラグラフがあり、そこには他のセクシ@c
835 ョンへの参照があります: 初めて本書を読むときはこれらの参照を追うべきではありま@c
836 せん。あなたが学習マニュアルをすべて読み終えたとき、いくつかのセクションを読み@c
837 返し、さらに参照を追おうと思うかもしれません。
843 @ref{Introduction}: LilyPond のバックグランドと最終目標について説明します。
847 @ref{Tutorial}: 音楽を譜刻するためのやさしい入門を提供します。初めて LilyPond
852 @ref{Fundamental concepts}: LilyPond ファイル フォーマットについてのいくつかの@c
853 一般的なコンセプトを説明します。あるコマンドを置くべき場所がわからない場合は、@c
858 @ref{Tweaking output}: LilyPond が作り出すデフォルトの譜刻を変更する方法を示し@c
863 @ref{Working on LilyPond projects}: LilyPond の実際的な使用といくつかの一般的@c
864 な問題を回避するための方法について議論します。大きなプロジェクトに取り組む前に@c
869 さらに、学習マニュアルは付録 -- 一読するのを推奨しない部分 -- も保持していま@c
870 す。それらは後で読み直すときに有用になるかもしれません:
876 @ref{Templates}: コンパイルの準備が整っている LilyPond 入力を示します。ある@c
877 テンプレートをファイルにカット&ペーストし、表記を追加するだけで完了です!
881 @ref{Scheme tutorial}: Scheme の簡単な紹介を提供します。Scheme は音楽関数が使@c
882 用するプログラミング言語です。この付録は高度な調整を行うための資料です。多くの@c
883 ユーザは Scheme に触れる必要はまったくありません。
887 @node About the Music Glossary
888 @unnumberedsubsec About the Music Glossary
890 @cindex Music Glossary
894 @cindex foreign languages
897 @rglosnamed{Top,Music glossary}
898 は音楽用語についての説明を行い、それらの用語のさまざまな言語への訳語を提供しま@c
899 す。あなたが音楽表記や音楽用語に馴れていないのなら (特にあなたが英語圏の人でな@c
900 いのなら)、用語集を引くことはとても役に立ちます。
903 @node About the Notation Reference
904 @unnumberedsubsec About the Notation Reference
906 @cindex Notation Reference
908 @cindex reference charts
909 @cindex charts, reference
911 本書は表記を作り出すすべての LilyPond コマンドについての説明を行います。本書@c
912 は、読者が学習マニュアルを読み終えて、LilyPond のコンセプトに馴染みを持ってい@c
919 @ruser{Musical notation}:
920 は表記概念ごとにグループ化されたテーマについて議論します。このセクションでは、@c
921 ほとんどすべての表記プロジェクトで有用な基本的な表記についての詳細を提供します。
925 @ruser{Specialist notation}:
926 は表記概念ごとにグループ化されたテーマについて議論します。このセクションでは、@c
927 ある特定の楽器 (またはボーカル) グループにとってのみ有用な特別な表記についての@c
932 @ruser{General input and output}:
933 は LilyPond 入力ファイルと出力の制御についての一般的な情報について議論します。
937 @ruser{Spacing issues}:
938 は出力全般に影響を与える事柄 -- 用紙サイズの選択や改ページの指定など -- につ@c
943 @ruser{Changing defaults}:
944 LilyPond があなたの望む表記を作り出すように調整する方法について説明します。
948 @ruser{Interfaces for programmers}:
949 Scheme を用いて音楽関数を作成する方法について説明します。
953 表記リファレンスには有用な参照表を持つ付録もあります。
959 @ruser{Literature list}:
960 には、表記や譜刻についてもっと知りたい人たち向けのリファレンス ブックのセット@c
965 @ruser{Notation manual tables}:
966 は、コード名、MIDI 命令、カラー名のリスト、Feta フォントについての表のセットで@c
972 は最も一般的な LilyPond コマンドの簡易リファレンスです。
976 @ruser{LilyPond command index}:
977 すべての LilyPond @code{@bs{}command} のインデックスです。
981 @ruser{LilyPond index}:
987 @node About the Application Usage
988 @unnumberedsubsec About the Application Usage
990 @cindex Application Usage
991 @cindex integrating LilyPond with other programs
993 本書はプログラムを実行する方法、LilyPond 表記を他のプログラムに統合する方法に@c
1001 LilyPond をインストールする方法について、もし望むのならばコンパイルの仕方も含@c
1007 あなたのコンピュータを LilyPond の使用に合わせて最適にコンフィグレーションする
1008 -- ある特定のテキスト エディタによって提供される特別な環境を使用するなど -- 方@c
1013 @rprogram{Running LilyPond}:
1014 LilyPond とその援助プログラムを実行する方法を示します。さらに、このセクション@c
1015 は入力ファイルを LilyPond の以前のバージョンからアップグレードする方法について@c
1020 @rprogram{LilyPond-book}:
1021 このマニュアルのような内部に音楽の例を持つドキュメントを作成する方法についての@c
1023 @c explains the details behind creating documents with in-line music
1024 @c examples, like this manual.
1028 @rprogram{Converting from other formats}:
1029 変換プログラムを実行する方法について説明します。それらのプログラムは LilyPond
1030 パッケージで提供され、さまざまな音楽フォーマットを @code{.ly} フォーマットに変@c
1036 @node About the Snippet List
1037 @unnumberedsubsec About the Snippet List
1041 @cindex Snippet List
1042 @cindex LilyPond Snippet Repository
1044 @rlsrnamed{Top,LilyPond Snippet List}: これは
1045 @uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}
1046 (LSR) から選んだ LilyPond 断片のセットです。すべての断片はパブリック ドメイン@c
1049 このドキュメントは LSR のサブセットそのものではないことに注意してください。LSR
1050 は安定板の LilyPond バージョンを使用するため、開発中の新しい機能を実演する断片は
1051 LSR とは別に追加されなければなりません。それらは LilyPond ソース ツリーの中の
1052 @file{input/new/} の中に保存されます。
1054 表記リファレンスの各サブセクションのための断片のリストは @strong{参照}部分から@c
1058 @node About the Internals Reference
1059 @unnumberedsubsec About the Internals Reference
1061 @cindex Internals Reference
1063 @rinternalsnamed{Top,Internals Reference}: これは幾重にもリンクし合った HTML
1064 ページのセットです。本書はすべての LilyPond クラス、オブジェクト、関数について@c
1065 の具体的な詳細をドキュメント化しています。本書はソース コードの中にあるフォー@c
1068 内部的に使用されるフォーマット機能はほとんどすべてユーザが直接利用できます。例@c
1069 えば、太さや距離などを制御するたいていの変数は入力ファイルの中で変更することが@c
1070 できます。膨大な数のフォーマット オプションがあり、それらすべてがこのドキュメ@c
1071 ントの中で記述されています。表記リファレンスの各セクションには@b{参照}サブ セ@c
1072 クションがあり、本書を参照しています。HTML ドキュメントでは、@b{参照}サブ セク@c
1073 ションの中にクリック可能なリンクがあります。
1076 @node Other documentation
1077 @unnumberedsubsec Other documentation
1079 とても有益であるかもしれない他の情報源がいくつかあります。
1087 @uref{../topdocs/NEWS.html,News}:
1090 @uref{../../topdocs/NEWS.html,News}:
1096 これは前のバージョンの LilyPond から後に付け加えられた重要な変更と新しい機能に@c
1101 @uref{http://lists.gnu.org/archive/html/lilypond-user/,
1102 lilypond-user メーリングリスト アーカイブ}: これはこれまでにユーザ リストに送@c
1103 られてきた email のコレクションです。多くの質問が何度も繰り返されています。疑@c
1104 問を持った場合、その答えはこのアーカイブの中で見つかるかもしれません。
1108 @uref{http://lists.gnu.org/archive/html/lilypond-devel/,
1109 lilypond-devel メーリングリスト アーカイブ}: これはこれまでに開発者のリストに@c
1110 送られてきた email のコレクションです。ここでの議論はより専門的です。lilypond
1111 内部についての高度な疑問を持った場合、その答えはこのアーカイブの中で見つかるか@c
1116 埋め込まれている楽譜の断片: 楽譜の断片を埋め込まれたすべての HTML ドキュメント@c
1117 では、楽譜の画像をクリックすることによって、その画像を作り出すのに使用された
1118 LilyPond 入力を閲覧することができます。
1122 初期化ファイル: ここで言及しているドキュメント ファイルの置き場所はシステムに@c
1123 よってさまざまです。しばしばこのマニュアルは初期化ファイルと例のファイルを参照@c
1124 します。このマニュアルを通じて、ソース アーカイブのトップ ディレクトリ下にある@c
1126 @c Throughout this manual, we refer to input files relative to the top-directory
1127 @c of the source archive.@c
1128 例えば、@file{input/@/lsr/@/dirname/@/bla@/.ly} はファイル
1129 @file{lilypond@/2.x.y/@/input/@/lsr/@/dirname/@/bla@/.ly} を参照するかもしれま@c
1131 UNIX プラットフォーム向けのバイナリ パッケージでは、通常、このドキュメントと例は
1132 @file{/usr/@/share/@/doc/@/lilypond/} 下のどこかで見つかります。初期化ファイル
1133 -- 例えば、@file{scm/@/lily@/.scm} や @file{ly/@/engraver@/-init@/.ly} -- は、@c
1134 通常、ディレクトリ @file{/usr/@/share/@/lilypond/} の中で見つかります。詳細は
1135 @ref{Other sources of information} を参照してください。