1 @c -*- coding: utf-8; mode: texinfo; documentlanguage: ja -*-
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
17 @translationof Introduction
19 この章では読者に LilyPond とこのドキュメントについての紹介を行います。
29 @translationof Background
31 この節は LilyPond の最終目的とアーキテクチャについてカバーします。
44 @translationof Engraving
47 @cindex typography, music
48 @cindex music typography
49 @cindex plate engraving
50 @cindex music engraving
52 楽譜印刷の技術は@emph{(プレート) 譜刻} (原文: engraving、版画などの印刷のこと@c
53 ) と呼ばれています。この用語は伝統的な楽譜印刷のプロセスに由来します。ほんの@c
54 数十年前まで、楽譜は音楽記号を亜鉛やしろめ (錫と鉛の合金) の版に反転した@c
55 イメージで彫り込んだり、刻印することによって作られていました。版にはインクが@c
56 塗られ、彫り込んだり刻印してくぼんだ部分にはインクが溜まります。版のイメージ@c
57 はその版に紙が押し付けられることによって形になります。刻印と彫刻は完全に手作@c
58 業で行われていました。校正は可能だとしても厄介でした。なぜなら一から刻印と彫@c
59 刻のやり直しだったからです。譜刻は高度に専門的な技術でした。職人はマスター @c
60 エングラーバ (譜刻を行う人) の称号を得るまで 5 年の修行を修めなければなら@c
61 ず、本当に技術を習得するまでにはさらにもう 5 年の経験が必要だったのです。
63 今日では、コンピュータによってまったく新しい楽譜が出版されています。これには@c
64 明らかな利点があります。印刷は安く済み、編集したものを email で配ることが可@c
65 能です。不幸なことに、コンピュータが広く使われるようになって楽譜のグラフィカ@c
66 ルな品質は低下しています。コンピュータによって出版された楽譜は味気無く、機械@c
67 的な見た目をしているため、その楽譜で演奏することに喜びを感じられません。
69 @c introduce illustrating aspects of engraving, font...
70 以下の図は伝統的な譜刻とコンピュータ出版の違いを描いたものであり、3 番目の図は
71 LilyPond がどれくらい伝統的な見た目を模倣しているのかを示しています。左端の@c
72 スキャンした図はコンピュータ出版の典型的な決定を示しています。縦棒は細く、フ@c
73 ラット記号の太さは細線と一致していて、曲線はまっすぐなレイアウトになっていま@c
74 す。対照的に、ベーレンライター (Barenreiter: ドイツの出版社) のフラットは太@c
75 く、曲線は官能的です。我々のフラットは 2 つのもののうち後者を元にデザインさ@c
76 れています。丸みを帯びていて、太さは縦棒の太さと調和していて、コンピュータに@c
79 @multitable @columnfractions .125 .25 .25 .25 .125
83 @image{henle-flat-gray,,4cm}
86 @image{henle-flat-gray,,,png}
91 @image{baer-flat-gray,,4cm}
94 @image{baer-flat-gray,,,png}
99 @image{lily-flat-bw,,4cm}
102 @image{lily-flat-bw,,,png}
106 @image{lilypond/henle-flat-bw,,,png} @image{lilypond/baer-flat-bw,,,png}
107 @image{lilypond/lily-flat-bw,,,png}
115 LilyPond Feta font (2003)
120 @cindex musical symbols
125 @c introduce illustrating aspects of engraving, spacing...
126 スペースの点では、スペースの配分は音符と音符の間の音の間隔を反映します。しか@c
127 しながら、現代楽譜の多くは数学的な正確さを持った間隔に固執しています。このこ@c
128 とはおもしろくない結果を生み出します。次の例では、2 度楽譜をプリントしていま@c
129 す: 1 度目は正確に数学的なスペースを用いて、2 度目はそれに校正を加えていま@c
132 @cindex optical spacing
133 @c file spacing-optical.
134 @c need to include it here, because we want two images.
155 \override NoteSpacing #'stem-spacing-correction = #0.6
180 \override NoteSpacing #'stem-spacing-correction = #0.0
181 \override NoteSpacing #'same-direction-correction = #0.0
182 \override StaffSpacing #'stem-spacing-correction = #0.0
188 @cindex regular rhythms
189 @cindex regular spacing
190 @cindex spacing, regular
192 各小節には一定のリズムで演奏される音符だけがあります。スペースもそれを反映していま@c
193 す。不幸なことに、我々の目は我々を少し惑わせます。音符の「玉」 (ノート ヘッド) の間@c
194 隔だけでなく、連続した棒 (ステム、音符から突き出る棒) の間隔も考慮します。結果とし@c
195 て、アップ ステム/@/ダウン ステム (玉の上に突き出た棒/@/玉の下に突き出た棒) の組み@c
196 合わせは離すべきであり、ダウン ステム/アップステムの組み合わせは近づけるべきです、す@c
197 べては音符の垂直方向の位置の組み合わせに次第です。上の 2 小節は音符のダウン
198 ステム/@/アップ ステムの組み合わせを近づけるよう校正を加えたものであり、下の 2 小節@c
202 通常、奏者は楽譜の見え方を勉強するよりも演奏をするほうに夢中ですので、印刷上@c
203 の詳細にこだわることは形式尊重のように思えるかもしれません。しかしそうではあ@c
204 りません。単調なリズムがずっと続くような場合、スペースの校正を行うことで各行@c
205 のレイアウトに微妙な変化が加わり、それぞれが異なる視覚的特徴を持つようになり@c
206 ます。この特徴が無ければすべての行は同じに見え、迷路のようになってしまいま@c
207 す。奏者がちょっと目を逸らしたり、集中力を欠くと、それまで見ていた行はページ@c
210 同様に、太い譜線 (音の高さを表す線。五線譜では 5 本) に描かれた太い記号は見@c
211 た目が強く、楽譜から奏者が離れている場合 -- 例えば、楽譜が譜面台にある場合 --
212 に良く目立ちます。空白を注意深く配置することで、楽譜は記号が乱雑になることな@c
213 く締まります。結果としてページをめくる回数は最小となり、これは大きな利点にな@c
216 これは印刷において共通して言えることですが、レイアウトはこざっぱりとしている@c
217 べきです。これは印刷自体のためであるだけでなく、特にその印刷物を読んでいる読@c
218 み手の助けにもなるからです。楽譜のような演奏用の道具では、このことは 2 重に@c
219 重要性を持ちます: 奏者の注意力には限界があり、奏者が楽譜を読むことに払う注意@c
220 力が少なくて済めば済むほど、その奏者は演奏に集中することができます。言い換え@c
221 ると、良い印刷は良い演奏につながるのです。
223 以上で挙げたことは、楽譜の印刷は微妙で複雑な技術であり、楽譜を印刷するには非@c
224 常な熟練 -- これは通常、奏者が持っているものではありません -- が必要であると@c
225 いうことを示しています。LilyPond は、手作業で譜刻された楽譜のすばらしさをコ@c
226 ンピュータ世代に提供しよう、すばらしい楽譜を普通の音楽家にも利用可能にしよう@c
227 という我々の努力なのです。我々は、良く見てみたくなり、演奏したくなるような古@c
228 い楽譜のクオリティに匹敵する楽譜を提供するために、アルゴリズム、フォント デ@c
229 ザイン、プログラム設定を調整してきました。
233 @unnumberedsubsec 自動譜刻
234 @translationof Automated engraving
236 @cindex engraving, automated
237 @cindex automated engraving
239 我々はどのように譜刻を実現していくのでしょうか?職人が本当のマスターになるのに
240 10 年以上かかるのなら、単なるハッカーである我々がどうやったら職人の仕事を越@c
243 その答えは、我々には「できない」です。譜刻は人間的な状況判断に頼っているた@c
244 め、判断を行う人間を完全にコンピュータに置き換えることはできません。しかしな@c
245 がら、退屈な作業の多くを自動化することはできます。もし LilyPond が一般的な@c
246 ケースの大半に対処できるなら、それは既存のソフトウェアよりも大きく前進するこ@c
247 とになります。残りのケースは手作業で調整することができます。年数が経つにつれ@c
248 て、このソフトウェアはより多くのことを自動的に行えるよう洗練されていき、手作@c
249 業による手直しはどんどん必要なくなっていくことでしょう。
251 我々が LilyPond の開発を始めたとき、我々は LilyPond プログラム全体を C++ プ@c
252 ログラミング言語で書いていました。プログラムの機能は開発者によってかっちりと@c
253 決められていました。これはいくつかの理由で不満足なものであることがわかりました:
256 @item LilyPond が失敗を犯したとき、ユーザはフォーマット判断 (どのような@c
257 フォーマットにするかの判断) を上書きする必要があります。そのため、ユーザは@c
258 フォーマット エンジンにアクセスしなければなりません。そのため、コンパイル時@c
259 に我々 (開発者) によって規則と設定を固定することは無理があり、実行時 (LilyPond
260 によって楽譜を作り出すとき) にユーザが規則と設定にアクセスできなければなりま@c
263 @item 譜刻は視覚的判断の問題であり、そのために好みがあります。我々には知識が@c
264 ありますが、ユーザは我々の個人的な判断に異を唱える可能性もあります。そのた@c
265 め、譜刻様式の定義もまたユーザがアクセスできるものでなければなりません。
267 @item 最後に、我々は継続的にフォーマット アルゴリズムを改良させていくので、@c
268 我々には規則に対する自由度の高いアプローチが必要です。C++ 言語は音楽表記の作@c
269 業とはうまくマッチしない規則分類法を押し付けてきます。
273 @cindex Scheme programming language
275 これらの問題に対して、Scheme プログラミング言語のインタプリタを統合し、@c
276 LilyPond の各部分を Scheme で書き直すという処置がとられてきました。現在の@c
277 フォーマット アーキテクチャはグラフィカル オブジェクトという概念で構築されて@c
278 いて、Scheme 変数と関数によって記述されています。このアーキテクチャは、@c
279 フォーマット規則、譜刻スタイル、個々のフォーマットに関する判断を包含していま@c
280 す。ユーザはこれらの制御の大半に直接アクセスする術を持ちます。
282 Scheme 変数はレイアウトに関する判断を制御します。例えば、多くのグラフィカル
283 オブジェクトは上か下か (あるいは左か右か) の選択を決定する方向 (に関する) 変@c
284 数を持ちます。ここで、アクセントとアルペジオを持つ 2 つの和音を見てみます。@c
285 最初の和音では、すべてのグラフィカル オブジェクトは下向き (あるいは左向き)
286 の方向を持っています。2 番目の和音では、すべてが上向き (あるいは右向き) の方@c
289 @lilypond[quote,ragged-right]
291 \override SpacingSpanner #'spacing-increment = #3
292 \override TimeSignature #'transparent = ##t
294 \stemDown <e g b>4_>-\arpeggio
295 \override Arpeggio #'direction = #RIGHT
296 \stemUp <e g b>4^>-\arpeggio
300 @cindex score formatting
301 @cindex formatting a score
302 @cindex formatting rules
305 楽譜を形作るプロセスはグラフィカルオブジェクトの変数を読み込んだり、書き込ん@c
306 だりすることからなります。いくつかの変数はプリセット値を持ちます。例えば、多@c
307 くの線の太さ -- 印刷スタイルの特性 -- はプリセット値を持つ変数です。あなたは@c
308 自由にこの値を変更することができ、それによってあなたの楽譜は異なる印象を持つ@c
311 @lilypond[quote,ragged-right]
314 c'4-~ c'16 as g f e16 g bes c' des'4
319 \override Beam #'beam-thickness = #0.3
320 \override Stem #'thickness = #0.5
321 \override Bar #'thickness = #3.6
322 \override Tie #'thickness = #2.2
323 \override StaffSymbol #'thickness = #3.0
324 \override Tie #'extra-offset = #'(0 . 0.3)
330 さらにフォーマット規則もプリセット変数です: 各オブジェクトはプロシージャを保@c
331 持している変数を持ちます。これらのプロシージャが実際のフォーマットを実行し、@c
332 異なるプロシージャを使用することによってオブジェクトの見た目を変えることがで@c
333 きます。以下の例では、音符の玉 (ノート ヘッド) シンボルを印刷するのにどの音@c
334 符の玉オブジェクトを使用するかを決定する規則を楽譜の途中で変更しています。
336 @lilypond[quote,ragged-right]
337 #(set-global-staff-size 30)
339 #(define (mc-squared grob orig current)
340 (let* ((interfaces (ly:grob-interfaces grob))
341 (pos (ly:grob-property grob 'staff-position)))
342 (if (memq 'note-head-interface interfaces)
344 (ly:grob-set-property! grob 'stencil
345 (grob-interpret-markup grob
346 (make-lower-markup 0.5
350 ((-2) (make-smaller-markup (make-bold-markup "2")))
353 \new Voice \relative c' {
355 \set autoBeaming = ##f
358 \once \override NoteHead #'stencil = #note-head::brew-ez-stencil
359 \once \override NoteHead #'font-size = #-7
360 \once \override NoteHead #'font-family = #'sans
361 \once \override NoteHead #'font-series = #'bold
363 \once \override NoteHead #'style = #'cross
365 \applyOutput #'Voice #mc-squared
368 { d8[ es-( fis^^ g] fis2-) }
369 \repeat unfold 5 { \applyOutput #'Voice #mc-squared s8 }
376 @unnumberedsubsec 譜刻するシンボルは何か?
377 @translationof What symbols to engrave?
385 フォーマット プロセスはシンボルを置く場所を決定します。しかしながら、@c
386 @emph{どの}シンボルを譜刻すべきかを決定する -- 言い換えると、使用する表記を@c
387 決定する -- と、シンボルを置く場所も決まります。
389 一般の音楽表記は音楽を記録するシステムであり、これは過去 1000 年以上にもわ@c
390 たって進化してきました。現在の一般的な形式はルネッサンス前期にまでさかのぼり@c
391 ます。基本的な形式 (すなわち、音符の玉が 5 本線の譜表上にあるというもの) は@c
392 変更されていませんが、細かな点は現代の表記の改革を表現するためにいまだに発展@c
393 が続けられています。したがって、一般的な音楽表記はおよそ500年間の音楽を扱い@c
394 ます。応用範囲は単旋律から大規模なオーケストラのための途方もない対位法にまで@c
397 どうやったら我々はそのような多頭の獣を統率し、制限のあるコンピュータ プログ@c
398 ラムに押し込めることができるでしょうか?我々の解決策は表記の問題 (譜刻とは対@c
399 照的にある、すなわち、活字学) を消化の良いプログラム可能な小さな塊に分解して@c
400 いくことです: それぞれのシンボルのタイプは個々のモジュール -- いわゆるプラグ@c
401 イン -- によって処理されます。各プラグインは完全にモジュール化されて独立して@c
402 いて、それによりそれぞれを別個に開発、改良することができます。そのようなプラ@c
403 グインは音楽的概念をグラフィック シンボルに変換する職人に例えて @code{engraver}
406 以下の例では、我々が音符の玉のためのプラグイン @code{Note_heads_engraver} か@c
409 @lilypond[quote,ragged-right]
410 \include "engraver-example.ily"
417 \remove "Stem_engraver"
418 \remove "Phrasing_slur_engraver"
419 \remove "Slur_engraver"
420 \remove "Script_engraver"
421 \remove "Beam_engraver"
422 \remove "Auto_beam_engraver"
426 \remove "Accidental_engraver"
427 \remove "Key_engraver"
428 \remove "Clef_engraver"
429 \remove "Bar_engraver"
430 \remove "Time_signature_engraver"
431 \remove "Staff_symbol_engraver"
432 \consists "Pitch_squash_engraver"
439 それから、@code{Staff_symbol_engraver} が譜表を加え
441 @lilypond[quote,ragged-right]
442 \include "engraver-example.ily"
449 \remove "Stem_engraver"
450 \remove "Phrasing_slur_engraver"
451 \remove "Slur_engraver"
452 \remove "Script_engraver"
453 \remove "Beam_engraver"
454 \remove "Auto_beam_engraver"
458 \remove "Accidental_engraver"
459 \remove "Key_engraver"
460 \remove "Clef_engraver"
461 \remove "Bar_engraver"
462 \consists "Pitch_squash_engraver"
463 \remove "Time_signature_engraver"
470 @code{Clef_engraver} が譜表の参照位置を定義し
472 @lilypond[quote,ragged-right]
473 \include "engraver-example.ily"
480 \remove "Stem_engraver"
481 \remove "Phrasing_slur_engraver"
482 \remove "Slur_engraver"
483 \remove "Script_engraver"
484 \remove "Beam_engraver"
485 \remove "Auto_beam_engraver"
489 \remove "Accidental_engraver"
490 \remove "Key_engraver"
491 \remove "Bar_engraver"
492 \remove "Time_signature_engraver"
499 @code{Stem_engraver} が棒 (ステム) を付け加えます。
501 @lilypond[quote,ragged-right]
502 \include "engraver-example.ily"
509 \remove "Phrasing_slur_engraver"
510 \remove "Slur_engraver"
511 \remove "Script_engraver"
512 \remove "Beam_engraver"
513 \remove "Auto_beam_engraver"
517 \remove "Accidental_engraver"
518 \remove "Key_engraver"
519 \remove "Bar_engraver"
520 \remove "Time_signature_engraver"
527 @code{Stem_engraver} はやって来るすべての音符の玉 (ノート ヘッド) について知@c
528 らされます。1 つの音符の玉 (あるいは和音の場合は複数の音符の玉) が現れるたび@c
529 に、ステム オブジェクトが作成され、音符の玉に接続されます。さらにビーム (ス@c
530 テムとステムをつなぐ横棒)、スラー、アクセント、臨時記号、小節線 (小節と小節@c
531 を区切る縦線)、拍子記号、調号のためのエングラーバを付け加えるによって、我々@c
534 @lilypond[quote,ragged-right]
535 \include "engraver-example.ily"
540 @cindex engraving multiple voices
543 このシステムは単旋律の音楽に対してはうまく機能しますが、多声部音楽に対しては@c
544 どうでしょうか?多声部表記では、多くの声部 (ボイス) が 1 つの譜表を共有します。
546 @lilypond[quote,ragged-right]
547 \include "engraver-example.ily"
548 \new Staff << \topVoice \\ \botVoice >>
551 このような場合、臨時記号と譜表は共有されますが、ステム、スラー、ビームなどは@c
552 各声部が単独で持ちます。そのため、エングラーバはグループ化されるべきです。音@c
553 符の玉、ステム、スラーなどのためのエングラーバは @q{Voice context} (ボイス
554 コンテキスト) と呼ばれるグループに入れられ、一方の調子、臨時記号、小節線など@c
555 のためのエングラーバは @q{Staff context} (譜表コンテキスト) とグループに入れ@c
556 られます。多声部音楽の場合、単一の譜表コンテキストには複数のボイス コンテキ@c
557 ストが含まれます。同様に、複数の譜表コンテキストは単一の楽譜 (Score) コンテ@c
558 キストになり得ます。楽譜コンテキストは最上位の表記コンテキストです。
562 内部リファレンス: @rinternals{Contexts}.
565 @lilypond[quote,ragged-right]
566 \include "engraver-example.ily"
569 \new Staff << \topVoice \\ \botVoice >>
570 \new Staff << \pah \\ \hoom >>
577 @unnumberedsubsec 音楽表記
578 @translationof Music representation
581 @cindex recursive structures
583 概念上、高レベル フォーマット システムのための入力フォーマットは内容を抽象的@c
584 に記述するものになります。このケースでは、内容は音楽自体になります。これは手@c
585 に負えない問題に見えます: どうやったら我々は音楽の本質を定義できるでしょう@c
586 か?その答えを見つけようとする代わりに、我々はその問題を逆転させました。我々@c
587 は楽譜を譜刻する能力を持つプログラムを書き、そのフォーマットができる限りすっ@c
588 きりしたものになるよう調整します。これ以上フォーマットを減らすことができない@c
589 という状態になったとき、当然のことながら我々に残されているのは内容自体になり@c
590 ます。我々のプログラムは音楽ドキュメントの形式定義として機能します。
592 さらに、構文が LilyPond のユーザ インタフェイスになっているため、
600 とタイプだけで、4 分音符の C1 (ミドル C (=ド)) と 8 分音符の D1 (ミドル C の@c
609 @warning{訳者: C = ド, D = レ, E = ミ, F = ファ, G = ソ, A = ラ, B = シ で@c
610 す。LilyPond では音符を「ドレミ〜」ではなく "CDE~" として捉えることが必須なの@c
611 で、今後は音符をアルファべット表記にします。}
613 小さなスケールでは、そのような構文は簡単に使用できます。大きなスケールでは、@c
614 構文はさらに構造を持つ必要があります。そうしなければ、どうやったらあなたはシ@c
615 ンフォニーやオペラのような複雑な楽譜に取り組めるでしょうか?構造は音楽表現法@c
616 というコンセプトによって形成されます: 小さな音楽の断片を組み合わせて大きな音@c
617 楽にすることによって、より複雑な音楽を表すことができるようになります。例を挙@c
620 @lilypond[quote,verbatim,fragment,relative=1]
625 同時進行の音符はそれらを @code{<<} と @code{>>} で囲むことによって構築できます:
632 @lilypond[quote,fragment,relative=1]
633 \new Voice { <<c4 d4 e>> }
637 この音楽表現を中括弧 @code{@{@tie{}@dots{}@tie{}@}} で囲むことによってシークエ@c
641 @{ f4 <<c4 d4 e4>> @}
644 @lilypond[quote,relative=1,fragment]
649 上記もまた音楽表現の 1 つなので、@code{<<}, @code{@bs{}@bs{}}, and @code{>>}
650 を使ってそれを再び他の同時進行の音楽表現 (2 分音符) と組み合わせることもでき@c
654 @code{<< g2 \\ @{ f4 <<c4 d4 e4>> @} >>}
658 @lilypond[quote,fragment,relative=2]
659 \new Voice { << g2 \\ { f4 <<c d e>> } >> }
662 このような再帰的な構造はさっぱりと、かつ、しっかりした形式でコンテキスト フ@c
663 リー文法で記すことができます。コード解析もまたこの文法から生成されます。言い換@c
664 えると、LilyPond の構文ははっきりと明快に定義されます。
666 ユーザが LilyPond に取り組むときに、ユーザがその時間の大半で見て、扱うものは@c
667 ユーザ インタフェイスと構文です。それらのある部分は好みの問題であり、多くの議@c
668 論の対象にもなるものです。好みについて議論することは有意義なことですが、それほ@c
669 ど生産的なことではありません。LilyPond という大きな世界の中で、入力構文の重要@c
670 性は小さいのです: さっぱりとした構文をでっちあげることは簡単ですが、見苦しくな@c
671 いフォーマット コードを作成することはとても難しいのです。このことは、それぞれ@c
672 のコンポーネントの行数をカウントすることによっても実証されます: 解析と表記のた@c
673 めのコンポーネントはソース コード全体の 10 % にも達しません。
677 @unnumberedsubsec 例用例
678 @translationof Example applications
680 @cindex simple examples
681 @cindex examples, simple
683 我々はどのように譜刻の技術をコンピュータ プログラムの中に凝縮するかという実験@c
684 として LilyPond を開発してきました。重労働のおかげで、今やこのプログラムは有用@c
685 な働きを行うのに使用できるようになりました。非常に簡単な利用例は音符を譜刻する@c
688 @lilypond[quote,relative=1]
696 コード ネームと歌詞を加えることによって、我々はリード譜を得ます。
698 @lilypond[quote,ragged-right]
700 \chords { c2 c f2 c }
706 \addlyrics { twin -- kle twin -- kle lit -- tle star }
710 さらに、多声部表記とピアノ譜を譜刻することもできます。以下の例はいくつかのより@c
715 title = "Screech and boink"
716 subtitle = "Random complex notation"
717 composer = "Han-Wen Nienhuys"
721 \context PianoStaff <<
726 \revert Stem #'direction
728 \set subdivideBeams = ##t
740 \set followVoice = ##t
741 c'''32([ b''16 a''16 gis''16 g''32)]
743 s4 \times 2/3 { d'16[ f' g'] } as'32[ b''32 e'' d'']
745 s4 \autoBeamOff d''8.. f''32
751 \new Staff = "down" {
754 \set subdivideBeams = ##f
755 \override Stem #'french-beaming = ##t
756 \override Beam #'beam-thickness = #0.3
757 \override Stem #'thickness = #4.0
764 \override Staff.Arpeggio #'arpeggio-direction =#down
765 <cis, e, gis, b, cis>4\arpeggio
772 tempoWholesPerMinute = #(ly:make-moment 60 8)
778 \consists Horizontal_bracket_engraver
784 上で示した楽譜の断片はすべて手作業で作成されていました。しかしながら、必ずしも@c
785 手作業で行う必要はありません。フォーマット エンジンの大部分は自動化されている@c
786 ため、その出力を音楽を操作する他のプログラムに供することができます。例えば、音@c
787 楽の断片のデータベースをウェブサイトやマルチメディア プレゼンテーションで使用@c
788 する画像に変換するために使用することもできます。
790 このマニュアルも利用例です: 入力フォーマットはテキストなので、容易に他のテキスト
791 ベースのフォーマット -- 例えば、@LaTeX{}, HTML, このマニュアルの場合は
792 Texinfo -- に埋め込むことができます。ある特別なプログラムによって入力断片を音@c
793 楽イメージに置き換えることができ、それによって PDF や HTML の出力ファイルとい@c
794 う結果を得ることができます。これはドキュメントの中で音楽とテキストを混在させる@c
800 @section このドキュメントについて
801 @translationof About the documentation
803 この節では、このドキュメントの各部分について説明します。
805 @cindex Learning Manual
806 @cindex Music Glossary
807 @cindex Notation Reference
808 @cindex Application Usage
810 @cindex Internals Reference
812 @c leave these lines wrapping around. It's some texinfo 4.12 thing. -gp
813 @c This is actually a limitation of texi2html. -jm
815 * 学習マニュアルについて:: このマニュアルは表記を作成する方法について丁寧@c
816 な説明をしながら LilyPond についての紹介を行います。
817 * 音楽用語集について:: このマニュアルは音楽用語についての説明を行い、そ@c
818 れらの用語の他の言語への訳語を提供します。
819 * 表記リファレンスについて:: このマニュアルはこのドキュメントの主要部分で@c
820 す。表記を作成する方法についての詳細な情報を提供します。このマニュアルは読者が@c
821 学習マニュアルでカバーされている基本的な内容を知っていて、音楽用語集に書かれて@c
822 いる英語の音楽用語に馴染んでいるものと仮定しています。
823 * アプリケーション使用方法について:: ここでは実際のプログラムとオペレーティング シ@c
825 * 断片集について:: これは短い LilyPond の例のコレクションです。
826 * 内部リファレンスについて:: このドキュメントは LilyPond の内部構造体に@c
827 ついての参照情報を提供します。調整を行うのに LilyPond の内部構造体についての知@c
829 * その他のドキュメント:: ここにはこのドキュメントの他の部分 -- ニュースやメール
830 アーカイブなど -- がいくつかあります。
835 @unnumberedsubsec 学習マニュアルについて
836 @translationof About the Learning Manual
838 @cindex Learning Manual
840 本書は LilyPond の学習の始め方を説明し、同時にいくつかの鍵となるコンセプトを簡@c
841 単な用語で説明します。あなたは本書を一読すべきです。
843 各セクションの最後には@strong{参照}というパラグラフがあり、そこには他のセクシ@c
844 ョンへの参照があります: 初めて本書を読むときはこれらの参照を追うべきではありま@c
845 せん。あなたが学習マニュアルをすべて読み終えたとき、いくつかのセクションを読み@c
846 返し、さらに参照を追おうと思うかもしれません。
852 @ref{導入部}: LilyPond のバックグランドと最終目標について説明します。
856 @ref{チュートリアル}: 音楽を譜刻するためのやさしい入門を提供します。初めて LilyPond
861 @ref{基礎となるコンセプト}: LilyPond ファイル フォーマットについてのいくつかの@c
862 一般的なコンセプトを説明します。あるコマンドを置くべき場所がわからない場合は、@c
867 @ref{出力を調整する}: LilyPond が作り出すデフォルトの譜刻を変更する方法を示し@c
872 @ref{LilyPond プロジェクトに取り組む}: LilyPond の実際的な使用といくつかの一般的@c
873 な問題を回避するための方法について議論します。大きなプロジェクトに取り組む前に@c
878 さらに、学習マニュアルは付録 -- 一読するのを推奨しない部分 -- も保持していま@c
879 す。それらは後で読み直すときに有用になるかもしれません:
885 @ref{テンプレート}: コンパイルの準備が整っている LilyPond 入力を示します。ある@c
886 テンプレートをファイルにカット&ペーストし、表記を追加するだけで完了です!
890 @ref{Scheme tutorial}: Scheme の簡単な紹介を提供します。Scheme は音楽関数が使@c
891 用するプログラミング言語です。この付録は高度な調整を行うための資料です。多くの@c
892 ユーザは Scheme に触れる必要はまったくありません。
897 @unnumberedsubsec 音楽用語集について
898 @translationof About the Music Glossary
900 @cindex Music Glossary
904 @cindex foreign languages
907 @rglosnamed{Top,Music glossary}
908 は音楽用語についての説明を行い、それらの用語のさまざまな言語への訳語を提供しま@c
909 す。あなたが音楽表記や音楽用語に馴れていないのなら (特にあなたが英語圏の人でな@c
910 いのなら)、用語集を引くことはとても役に立ちます。
914 @unnumberedsubsec 表記リファレンスについて
915 @translationof About the Notation Reference
917 @cindex Notation Reference
919 @cindex reference charts
920 @cindex charts, reference
922 本書は表記を作り出すすべての LilyPond コマンドについての説明を行います。本書@c
923 は、読者が学習マニュアルを読み終えて、LilyPond のコンセプトに馴染みを持ってい@c
930 @ruser{Musical notation}:
931 は表記概念ごとにグループ化されたテーマについて議論します。このセクションでは、@c
932 ほとんどすべての表記プロジェクトで有用な基本的な表記についての詳細を提供します。
936 @ruser{Specialist notation}:
937 は表記概念ごとにグループ化されたテーマについて議論します。このセクションでは、@c
938 ある特定の楽器 (またはボーカル) グループにとってのみ有用な特別な表記についての@c
943 @ruser{General input and output}:
944 は LilyPond 入力ファイルと出力の制御についての一般的な情報について議論します。
948 @ruser{Spacing issues}:
949 は出力全般に影響を与える事柄 -- 用紙サイズの選択や改ページの指定など -- につ@c
954 @ruser{Changing defaults}:
955 LilyPond があなたの望む表記を作り出すように調整する方法について説明します。
959 @ruser{Interfaces for programmers}:
960 Scheme を用いて音楽関数を作成する方法について説明します。
964 表記リファレンスには有用な参照表を持つ付録もあります。
970 @ruser{Literature list}:
971 には、表記や譜刻についてもっと知りたい人たち向けのリファレンス ブックのセット@c
976 @ruser{Notation manual tables}:
977 は、コード名、MIDI 命令、カラー名のリスト、Feta フォントについての表のセットで@c
983 は最も一般的な LilyPond コマンドの簡易リファレンスです。
987 @ruser{LilyPond command index}:
988 すべての LilyPond @code{@bs{}command} のインデックスです。
992 @ruser{LilyPond インデックス}:
998 @node アプリケーション使用方法について
999 @unnumberedsubsec アプリケーション使用方法について
1000 @translationof About the Application Usage
1002 @cindex Application Usage
1003 @cindex integrating LilyPond with other programs
1005 本書はプログラムを実行する方法、LilyPond 表記を他のプログラムに統合する方法に@c
1013 LilyPond をインストールする方法について、もし望むのならばコンパイルの仕方も含@c
1019 あなたのコンピュータを LilyPond の使用に合わせて最適にコンフィグレーションする
1020 -- ある特定のテキスト エディタによって提供される特別な環境を使用するなど -- 方@c
1025 @rprogram{LilyPond を実行する}:
1026 LilyPond とその援助プログラムを実行する方法を示します。さらに、このセクション@c
1027 は入力ファイルを LilyPond の以前のバージョンからアップグレードする方法について@c
1032 @rprogram{LilyPond-book}:
1033 このマニュアルのような内部に音楽の例を持つドキュメントを作成する方法についての@c
1035 @c explains the details behind creating documents with in-line music
1036 @c examples, like this manual.
1040 @rprogram{Converting from other formats}:
1041 変換プログラムを実行する方法について説明します。それらのプログラムは LilyPond
1042 パッケージで提供され、さまざまな音楽フォーマットを @code{.ly} フォーマットに変@c
1049 @unnumberedsubsec 断片集について
1050 @translationof About the Snippet List
1054 @cindex Snippet List
1055 @cindex LilyPond Snippet Repository
1057 @rlsrnamed{Top,LilyPond Snippet List}: これは
1058 @uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}
1059 (LSR) から選んだ LilyPond 断片のセットです。すべての断片はパブリック ドメイン@c
1062 このドキュメントは LSR のサブセットそのものではないことに注意してください。LSR
1063 は安定板の LilyPond バージョンを使用するため、開発中の新しい機能を実演する断片は
1064 LSR とは別に追加されなければなりません。それらは LilyPond ソース ツリーの中の
1065 @file{input/new/} の中に保存されます。
1067 表記リファレンスの各サブセクションのための断片のリストは @strong{参照}部分から@c
1072 @unnumberedsubsec 内部リファレンスについて
1073 @translationof About the Internals Reference
1075 @cindex Internals Reference
1077 @rinternalsnamed{Top,Internals Reference}: これは幾重にもリンクし合った HTML
1078 ページのセットです。本書はすべての LilyPond クラス、オブジェクト、関数について@c
1079 の具体的な詳細をドキュメント化しています。本書はソース コードの中にあるフォー@c
1082 内部的に使用されるフォーマット機能はほとんどすべてユーザが直接利用できます。例@c
1083 えば、太さや距離などを制御するたいていの変数は入力ファイルの中で変更することが@c
1084 できます。膨大な数のフォーマット オプションがあり、それらすべてがこのドキュメ@c
1085 ントの中で記述されています。表記リファレンスの各セクションには@b{参照}サブ セ@c
1086 クションがあり、本書を参照しています。HTML ドキュメントでは、@b{参照}サブ セク@c
1087 ションの中にクリック可能なリンクがあります。
1091 @unnumberedsubsec その他のドキュメント
1092 @translationof Other documentation
1094 とても有益であるかもしれない他の情報源がいくつかあります。
1102 @uref{../topdocs/NEWS.html,News}:
1105 @uref{../../topdocs/NEWS.html,News}:
1111 これは前のバージョンの LilyPond から後に付け加えられた重要な変更と新しい機能に@c
1116 @uref{http://lists.gnu.org/archive/html/lilypond-user/,
1117 lilypond-user メーリングリスト アーカイブ}: これはこれまでにユーザ リストに送@c
1118 られてきた email のコレクションです。多くの質問が何度も繰り返されています。疑@c
1119 問を持った場合、その答えはこのアーカイブの中で見つかるかもしれません。
1123 @uref{http://lists.gnu.org/archive/html/lilypond-devel/,
1124 lilypond-devel メーリングリスト アーカイブ}: これはこれまでに開発者のリストに@c
1125 送られてきた email のコレクションです。ここでの議論はより専門的です。lilypond
1126 内部についての高度な疑問を持った場合、その答えはこのアーカイブの中で見つかるか@c
1131 埋め込まれている楽譜の断片: 楽譜の断片を埋め込まれたすべての HTML ドキュメント@c
1132 では、楽譜の画像をクリックすることによって、その画像を作り出すのに使用された
1133 LilyPond 入力を閲覧することができます。
1137 初期化ファイル: ここで言及しているドキュメント ファイルの置き場所はシステムに@c
1138 よってさまざまです。しばしばこのマニュアルは初期化ファイルと例のファイルを参照@c
1139 します。このマニュアルを通じて、ソース アーカイブのトップ ディレクトリ下にある@c
1141 @c Throughout this manual, we refer to input files relative to the top-directory
1142 @c of the source archive.@c
1143 例えば、@file{input/@/lsr/@/dirname/@/bla@/.ly} はファイル
1144 @file{lilypond@/2.x.y/@/input/@/lsr/@/dirname/@/bla@/.ly} を参照するかもしれま@c
1146 UNIX プラットフォーム向けのバイナリ パッケージでは、通常、このドキュメントと例は
1147 @file{/usr/@/share/@/doc/@/lilypond/} 下のどこかで見つかります。初期化ファイル
1148 -- 例えば、@file{scm/@/lily@/.scm} や @file{ly/@/engraver@/-init@/.ly} -- は、@c
1149 通常、ディレクトリ @file{/usr/@/share/@/lilypond/} の中で見つかります。詳細は
1150 @ref{その他の情報源} を参照してください。