3.3.1 LilyPond ファイルをインクルードする

大きなプロジェクトは別々のファイルに分割することができます。他のファイルを参照するには、以下のようにします:

\include "otherfile.ly"

\include "otherfile.ly" という行は、‘otherfile.ly’ の内容をカレント ファイルの \include がある場所に貼り付けるとの等価です。例えば大きなプロジェクトでは、個々の楽器パートを別々のファイルで記述し、個々の楽器ファイルをまとめる “総譜” ファイルを作成することができます。通常、インクルードされるファイルはいくつかの変数を定義し、それらの変数は総譜ファイルの中で使用されます。タグ付きセクションをインクルードされるファイルの中でタグ付きのセクションを作成して、それらのセクションを楽譜の複数の場所で使用可能にすることができます – 1 つのソースから異なる版を生成する を参照してください。

カレントのワーキング ディレクトリの中にあるファイルは \include コマンドに後にファイル名を指定するだけで参照することができます。他の場所にあるファイルはフル パス参照か相対パス参照 (ディレクトリ区切りとして、UNIX ではスラッシュ / を使用しますが、DOS/Windows ではバックスラッシュ \ を使用します) によって参照することができます。例えば、‘stuff.ly’ がカレントのワーキング ディレクトリよりも 1 つ上のディレクトリの中にある場合、以下のようにインクルードします:

\include "../stuff.ly"

あるいは、インクルードされるオーケストラのパート ファイルがすべてカレント ディレクトリ内部の ‘parts’ というサブディレクトリの中に配置されている場合、以下のようにインクルードします:

\include "parts/VI.ly"
\include "parts/VII.ly"
... etc

インクルードされるファイルも \include 文を持つことができます。それら第 2 レベルの \include 文はそのファイルがメイン ファイルに組み込まれるまで解釈されません。そのため、第 2 レベルの \include 文で指定するファイル名はすべてメイン ファイルを保持しているディレクトリからの相対参照で指定しなければなりません – インクルード ファイルを保持しているディレクトリからではありません。しかしながら、この振る舞いは、オプション -drelative-includes をコマンド ラインで渡すことによって (あるいは、メイン入力ファイルの先頭に #(ly:set-option 'relative-includes #t) を付け加えることによって) 変更することができます。relative-includes をセットすることで、各 \include コマンドのパスはそのコマンドを保持しているファイルからの相対参照になります。この振る舞いを使用することが推奨されていて、lilypond の将来のバージョンではこの振る舞いがデフォルトになります。

コマンド ラインから LilyPond を呼び出すときにオプションとして指定したサーチ パスに含まれるディレクトリからファイルをインクルードすることもできます。サーチ パスを指定した場合、インクルードされるファイルはファイル名だけで指定されます。例えば、サーチ パスで ‘parts’ というサブディレクトリの中にあるファイルをインクルードする ‘main.ly’ をコンパイルするには、‘main.ly’ を保持しているディレクトリに cd して、以下を入力します:

lilypond --include=parts main.ly

main.ly’ の中には以下を記述しておきます:

\include "VI.ly"
\include "VII.ly"
... etc

いくつもの楽譜でインクルードされるファイルは LilyPond ディレクトリ ‘../ly’ の中に置くことになるかもしれません (このディレクトリが存在する場所はインストールの仕方に依存します – その他の情報源 を参照してください)。このディレクトリの中にあるファイルは \include 文でファイル名を指定するだけでインクルードすることができます。この方法で ‘english.ly’ のような言語依存のファイルをインクルードしています。

LilyPond は、実行開始時に、デフォルトでいくつかのファイルをインクルードします。このインクルードはユーザには明らかにされませんが、コマンド ラインから lilypond --verbose を実行することによってインクルードされるファイルを明らかにすることができます。--verbose オプションは、他の多くの情報とともに、LilyPond が使用するパスとファイルのリストを表示します。また、デフォルトでインクルードされるファイルのうちより重要なファイルについて その他の情報源 で議論されています。これらのファイルは編集されるかもしれませんが、これらのファイルに加えられた変更は新しいバージョンの LilyPond をインストールすると失われます。

\include を使用している簡単な例がいくつか 楽譜とパート で示されています。

参照

学習マニュアル: その他の情報源, 楽譜とパート

既知の問題と警告

インクルードされるファイルに LilyPond のインストール ファイルと同じ名前が与えられている場合、LilyPond のインストール ファイルが優先されます。


他の言語: English, deutsch, español, français

LilyPond — 記譜法リファレンス

inserted by FC2 system