[ << lilypond-book を実行する ] | [Top][Contents][Index] | [ 外部プログラム >> ] |
[ < HTML ] | [ Up : 楽譜とテキストを統合する ] | [ 楽譜断片オプション > ] |
3.2.4 DocBook
LilyPond 断片を組み込む場合、DocBook ドキュメントとの適合を保つべきです。そうすることで、DocBook のエディタや検証機能等を使うことができます。そのため、カスタム タグは使わず、標準 DocBook 要素に基づく約束ごとだけを使います。
Common conventions
楽譜断片をインラインあるいはインラインではなく挿入するために、mediaobject
要素と inlinemediaobject
要素を使います。楽譜断片フォーマット オプションは常に最も内側の要素の role
プロパティの中に配置します (次のセクションを参照してください)。タグは DocBook エディタがコンテンツをきれいにフォーマットすることを可能にします。lilypond-book
で処理する DocBook ファイルの拡張子は
.lyxml にするべきです。
LilyPond ファイルを組み込む
これが最も簡単な方法です。組み込むファイルの拡張子は .ly にして、それを以下に示す構造で標準の imageobject
として挿入する必要があります:
<mediaobject> <imageobject> <imagedata fileref="music1.ly" role="printfilename" /> </imageobject> </mediaobject>
必要に応じて、最も外側の要素に mediaobject
または
inlinemediaobject
を使うことができるということに注意してください。
LilyPond コードを組み込む
programlisting
を用いることで、LilyPond コードを組み込むことができます。以下の構造を用いて、programlisting
の言語には lilypond
をセットします:
<inlinemediaobject> <textobject> <programlisting language="lilypond" role="fragment verbatim staffsize=16 ragged-right relative=2"> \context Staff \with { \remove Time_signature_engraver \remove Clef_engraver} { c4( fis) } </programlisting> </textobject> </inlinemediaobject>
最も外側の要素は mediaobject
または inlinemediaobject
であり、その中に programlisting
を保持する textobject
がありことが見て取れます。
DocBook ドキュメントを処理する
.lyxml ファイルに対して lilypond-book
を実行すると、拡張子が .xml の有効な DocBook ドキュメントが作成され、それを更に処理にかけることがでいます。dblatex を使うと、このドキュメントから自動的に PDF ファイルを作成することがでいます。公式 DocBook スタイルシートを用いることで HTML (HTML ヘルプ、JavaHelp 等)
を生成することが可能ですが、カスタマイズが必要かもしれません。