[ << lilypond を実行する ] | [Top][Contents][Index] | [ convert-ly を使ってファイルを更新する >> ] |
[ < LilyPond の基本的なコマンド ライン オプション ] | [ Up : コマンド ラインの使用方法 ] | [ 環境変数 > ] |
LilyPond の高度なコマンド ライン オプション
オプション -d は LilyPond の Scheme 関数 ly:set-option
のコマンドラインインタフェースです。つまり、ここで示しているすべてのオプションは .ly ファイルの中で設定することが可能です。
-d
,--define-default=
option-name[=
value]-d
,--define-default=no-
option-name内部 Scheme シンボル option-name に value を設定するのと同じです。例えば、コマンドラインオプション
-dbackend=svg
は LilyPond 入力ファイルに
#(ly:set-option 'backend 'svg)
を書くことと同じです。
value が指定されない場合、
#t
(真偽値以外を取る場合は、おかしな結果になるかもしれません)が使われます。option-name に接頭辞no-
を付けると、そのオプションは ‘off’ つまり#f
が使われます。例えば、-dpoint-and-click='#f'
は
-dno-point-and-click
と同じです。
[‘#’ 文字は多くのシェルでコメントの開始を意味することに注意してください。そのため、それを含む式は常にクォートすることをお勧めします。]
次の表に、サポートされているすべてのオプション名と値を示します。Scheme コード内では、オプション値は関数 ly:get-option
で読み取ることができます。
anti-alias-factor
num(与えられた因数 num を用いて) 高解像度で描画して、その結果をスケールダウンすることにより、
PNG
画像の輪郭がギザギザになることを防ぎます。デフォルト:1.0
。aux-files
boolbool が
#t
ならば、eps
バックエンドオプションを使っているときに .tex, .texi, と .count ファイルを生成します。デフォルト:#t
。backend
symbolsymbol を LilyPond 出力のバックエンドとして使用します。 選択肢は:
ps
こればデフォルトです。 Postscript ファイルは
TTF
,Type1
, それにOTF
フォントを埋め込みます。フォントのサブセットは作成されません。日本語のような ‘東洋’ の文字セットを用いるとファイルが非常に大きくなる可能性があることに注意してください。PDF 出力には
ps
バックエンドが使われます。出力された PS データは Ghostscript のps2pdf
で後処理され、デフォルトでフォントのサブセットが作成されます。eps
lilypond-book
コマンドのデフォルトです。これは、1 つのファイルにすべてのページとフォントを埋め込んだものと、ページ毎に分離しフォントを埋め込まない eps ファイルの、両方を吐き出します。svg
ページ毎の SVG (Scalable Vector Graphics) ファイルが全ページ分作られます。音楽グリフはベクタ画像に変換されますが、文字フォントは SVG ファイルには埋め込まれません。 そのため、テキストや歌詞の最適な描画を得るためには、SVG ビュアーに関連するテキストフォントが必要となります。SVG ビュアーが対応していないことがあるので、‘フォントリスト’ や ‘フォントエイリアス’ を使用しないことをお勧めします。Web Open Font Format (WOFF) ファイルを使うときには、追加の
-dsvg-woff
スイッチが必要となります。
clip-systems
boolbool が
#t
なら、楽譜から断片を取り出します。これを使用するには、\layout
ブロックにclip-regions
関数が定義されている必要があります。音楽の断片を抽出するを参照してください。 -dno-print-pages と一緒に用いられた場合、断片は全く出力されません。デフォルト:#f
。crop
boolbool が
#t
なら、すべての楽譜とヘッダをマージンなしの ‘単一ページ’ 出力に合わせます。デフォルト:#f
。datadir
データファイル パスの接頭辞です。読み取り専用で、設定しても効果がありません。
debug-skylines
boolbool が
#t
なら、スカイライン (訳注: 行ごとのオブジェクトの最高位置と最低位置を線で表示するもの) を表示します。デフォルト:#f
。delete-intermediate-files
boolbool が
#t
なら、コンパイルの途中で作成される使用しない中間ファイル .ps を削除します。デフォルト:#t
。embed-source-code
boolbool が
#t
なら、出力される PDF ドキュメントに LilyPond ソースファイルを埋め込みます。デフォルト:#f
。eps-box-padding
num出力される EPS の左端に num mm の余白を追加します。デフォルト:
#f
(余白追加しないことを意味します)。font-export-dir
stringPostScript ファイルとしてフォントをエクスポートするディレクトリを string に指定します。デフォルト:
#f
(カレントディレクトリを意味します)。 これは、次に示すように、フォントを埋め込まずに PDF を作成し、後でフォントを Ghostscript で埋め込む場合に便利です。$ lilypond -dfont-export-dir=fontdir -dgs-never-embed-fonts foo.ly $ gs -q -dBATCH -dNOPAUSE -sDEVICE=pdfwrite \ -sOutputFile=foo.embedded.pdf foo.pdf fontdir/*.font.ps
注:
font-ps-resdir
とは異なり、このメソッドは Ghostscript 9.26 以降で CID フォントを埋め込むことはできません。注:
font-ps-resdir
と同様に、 TrueType フォントを埋め込むと文字化けが発生するため、このオプションは TrueType フォントをスキップします。文字化けしないようにするには、gs-never-embed-fonts
を使用します。これは、TrueType フォントをその名前に関係なく埋め込みます。デフォルト:
#f
(エクスポートしないことを意味します)。font-ps-resdir
string(string として) ディレクトリを設定して、後でフォントを埋め込むために使用する PostScript リソース ディレクトリのサブセットをビルドします。これは、次に示すように、フォントを埋め込まずに PDF を作成し、後でフォントを Ghostscript で埋め込む場合に便利です。
$ lilypond -dfont-ps-resdir=resdir -dgs-never-embed-fonts foo.ly $ gs -q -dBATCH -dNOPAUSE -sDEVICE=pdfwrite \ -I resdir -I resdir/Font \ -sOutputFile=foo.embedded.pdf foo.pdf
注: Ghostscript の
-I
オプションで指定した場合、特別な意味があるため、 Resource という名前を含むディレクトリは指定しない方がよいでしょう。注:
font-export-dir
とは異なり、このメソッドは Ghostscript 9.26 以降で CID フォントを埋め込むことができます。注:
font-export-dir
と同様に、 TrueType フォントを埋め込むと文字化けが発生するため、このオプションは TrueType フォントをスキップします。文字化けしないようにするには、gs-never-embed-fonts
を使用します。これは、TrueType フォントをその名前に関係なく埋め込みます。デフォルト:
#f
(ビルドしないことを意味します)。gs-load-fonts
boolbool が
#t
なら、Ghostscript 経由でフォントを読み込みます。LilyPond 出力ファイルのフォントはすべて参照のみが含まれるようになり、 Ghostscript による後処理で実際のフォントに解決する必要があります。デフォルト:#f
。gs-load-lily-fonts
boolbool が
#t
なら、LilyPond のフォントを Ghostscript 経由で読み込みます。LilyPond 出力ファイルの音楽フォントはすべて参照のみが含まれるようになり、 Ghostscript による後処理で実際のフォントに解決する必要があります。他のすべてのフォントは通常通り出力されます。デフォルト:#f
。gs-never-embed-fonts
boolbool が
#t
なら、Ghostscript が TrueType フォントのみを埋め込むようになり、他のフォーマットのフォントは埋め込まれません。デフォルト:#f
。help
boolbool が
#t
なら、このヘルプを表示します。デフォルト:#f
。include-book-title-preview
boolbool が
#t
なら、プレビュー画像にブック タイトルを含めます。デフォルト:#t
。include-eps-fonts
boolbool が
#t
なら、システム毎の EPS ファイルにフォントを含めます。デフォルト:#t
。include-settings
stringグローバル設定のファイルとして string をインクルードします。このファイルは楽譜の処理が開始する前にインクルードされます。デフォルト:
#f
(グローバル設定ファイル無しを意味します)。job-count
numnum ジョブで、並列処理します。デフォルト:
#f
(並列処理無しを意味します)。log-file
string出力をログファイル string.log にリダイレクトします。デフォルト:
#f
(ログファイル無しを意味します)。max-markup-depth
numマークアップ ツリーの階層の最大値を num に設定します。それよりも深い階層を持つマークアップがある場合、そのマークアップは終了していないと見なされて、警告が表示され、null マークアップが返されます。デフォルト:
1024
。midi-extension
stringMIDI 出力ファイルのデフォルトのファイル拡張子を .string に設定します。デフォルト:
"midi"
。music-strings-to-paths
boolbool が
#t
なら、記譜フォントを用いるテキストをパスに変換します。デフォルト:#f
。paper-size
extra-quoted-stringデフォルトの紙面サイズを extra-quoted-string に設定します。文字列をエスケープ記号付の 2 重引用符で囲む必要があることに注意してください。デフォルト:
"\"a4\""
。pixmap-format
symbol画像出力のための GhostScript の出力フォーマットを symbol に設定します。デフォルト:
png16m
。point-and-click
boolbool が
#t
なら、PDF と SVG 出力に ‘ポイント&クリック’ リンクを付け加えます。ポイント&クリック を参照してください。デフォルト:#f
。preview
boolbool が
#t
なら、通常の出力に加えてプレビュー画像を作成します。デフォルト:#f
。このオプションはすべてのバックエンド (
pdf
,png
,ps
,eps
, それにsvg
) でサポートされますが、scm
ではサポートされません。入力ファイル名 file でバックエンド format を使った場合、出力ファイル名は file.preview.
format で、タイトルと楽譜の最初の段を含みます。\book
ブロックや\bookpart
ブロックが使われている場合、\book
,\bookpart
, それに\score
のタイトルが出力に譜刻され、\paper
変数print-all-headers
が#t
にセットされている場合は各\score
ブロックの最初の段も譜刻されます。通常の出力を抑制するには、必要に応じて -dprint-pages オプションまたは -dno-print-pages オプションを使ってください。
print-pages
boolbool が
#t
なら、すべてのページを生成します。デフォルト:#t
。-dpreview や -dcrop を使う場合は -dno-print-pages を組み合わせると有用です。
protected-scheme-parsing
boolbool が
#t
なら、パーサでインライン Scheme のエラーが発生しても処理を続けます。#f
に設定されている場合、エラー終了して、スタック トレースを表示します。デフォルト:#t
。relative-includes
boolbool が
#t
なら、\include
コマンドを処理するとき、インクルードするファイルをカレント ファイルからの相対位置で検索します。#f
なら、ルート ファイルからからの相対位置で検索します。デフォルト:#f
。resolution
num生成する
PNG
画像の解像度を num dpi に設定します。デフォルト:101
。safe
boolbool が
#t
なら、.ly 入力ファイルを信用しません。デフォルト:#f
。Web サーバ経由で LilyPond 譜刻が利用可能な場合、--dsafe オプションか --jail オプションのどちらかを 指定する必要があります。--dsafe オプションはインライン Scheme コードが無茶をする – 例えば、以下のような – ことを防ぎます。
% 正しく書くのはあまりにも危険 #(s ystem "rm -rf /") % 破壊的ではないが悪意がある { c4^$(ly:gulp-file "/etc/passwd") }
-dsafe オプションはインライン Scheme 表記を特別なセーフ モジュールの中で評価します。これは Guile の safe-r5rs モジュールに由来しますが、scm/safe-lily.scm でリスト アップされている LilyPond API 関数のいくつかも追加されています。
さらに、セーフ モードでは
\include
は許可されず、TeX 文字列の中でバックスラッシュを使うこともできません。また、セーフ モードでは LilyPond 変数を Scheme にインポートすることもできません。-dsafe はリソースの過使用を検出 しません ので、このオプションを指定してもプログラムをハングさせられる可能性があります – 例えば、サイクリック (巡回) データ構造をバックエンドに埋め込むことによってです。 そのため、LilyPond を一般公開する Web サーバで使用する場合、プロセスのCPU とメモリ使用を制限すべきです。
セーフ モードは多くの有用な LilyPond 楽譜断片がコンパイルされることを妨げます。
--jail はさらに安全な代替手段ですが、セットアップにかかる手間も増えます。LilyPond の基本的なコマンド ライン オプション を参照してください。
separate-log-files
boolbool が
#t
なら、入力ファイル file1.ly, file2.ly, … に対するログをファイル file1.log, file2.log, … に出力します。デフォルト:#f
。show-available-fonts
boolbool が
#t
なら、使用可能なフォント名をリスト アップします。加えて LilyPond は fontconfig の設定そのものを表示します。デフォルト:#f
。strip-output-dir
boolbool が
#t
なら、出力ファイル名を構築する時に入力ファイルのディレクトリを使用しません。デフォルト:#f
。strokeadjust
boolbool が
#t
なら、PostScript に線幅補正 (stroke adjustment) を強制します。このオプションは普通、PDF ファイルが PostScript 出力から生成されている場合に意味があります (線幅補正は、低解像度のビットマップ デバイスに対して自動的に有効になります)。このオプションを指定しない場合、PDF ビューアは典型的な解像度のスクリーンにおいて、一貫性の無い符幹の幅を出力しようとします。このオプションは印刷結果の品質には目立って影響せず、PDF のファイル サイズを大きく増加させます。デフォルト:#f
。svg-woff
boolこのオプションは
svg
バックエンドで Web Open Format (WOFF) フォントを使うために必要となります。bool が#t
なら、ページ毎の SVG ファイルが全ページ分作られます。LilyPond 自身の音楽グリフを除き、フォントは埋め込まれません。そのため、テキストや歌詞の最適な描画を得るためには、SVG ビュアーにフォントが必要となります。SVG ビュアーが対応していないことがあるので、‘フォントエイリアス’ や ‘フォントリスト’ を使用しないことをお勧めします。デフォルト:#f
。verbose
饒舌レベル。これは読み込み専用のオプションで、設定しても効果はありません。
warning-as-error
boolbool が
#t
なら、すべての警告と ‘プログラミング エラー’ をエラーに変更します。デフォルト:#f
。
[ << lilypond を実行する ] | [Top][Contents][Index] | [ convert-ly を使ってファイルを更新する >> ] |
[ < LilyPond の基本的なコマンド ライン オプション ] | [ Up : コマンド ラインの使用方法 ] | [ 環境変数 > ] |