[ << lilypond を実行する ] | [Top][Contents][Index] | [ convert-ly を使ってファイルを更新する >> ] |
[ < lilypond を呼び出す ] | [ Up: コマンド ラインの使用方法 ] | [ LilyPond の高度なコマンド ライン オプション > ] |
LilyPond の基本的なコマンド ライン オプション
以下のオプションがサポートされます。
-d,--define-default=var[=val]LilyPond の高度なコマンド ライン オプション を参照してください。
-e,--evaluate=expr.ly ファイルを解析する前に Scheme expr を評価します。複数の
-eオプションが与えられた場合、それらは順番に評価されます。Scheme 表記は
guile-userモジュールの中で評価されます。そのため、expr の中で(define-public a 42)のような定義を使いたいのならば、コマンド ラインで以下を使用して、lilypond -e '(define-public a 42)'
.ly ファイルの先頭に以下を含めます.
#(use-modules (guile-user))
Note: Windows ユーザはシングル クォートではなく、ダブル クォートを使う必要があります。
-E,--epsEPS ファイルを生成します。
このオプションは LilyPond のコマンドラインオプションに
--ps, と-dlilypond-book-output, を指定するのと同じです。-f,--format=format(主な)出力ファイルのフォーマットを指定します。
formatの選択肢はps,pdf, またはpngです。例:
lilypond -fpng foo.lysvgフォーマットやepsフォーマットを出力するには-dbackendオプションを用います。 LilyPond の高度なコマンド ライン オプション を参照してください。-h,--help使用方法の要約を表示します。
-H,--header=fieldヘッダ フィールドをファイル BASENAME.field に吐き出します。
例えば、 foo.ly という入力ファイルが以下の内容を含んでいる場合、
\header { title = "bar" } \score { c1 }コマンド
lilypond -H title foo.ly
を実行すると、文字列
barを含んだプレーンテキストファイル foo.title が作られます。-i,--init=fileinit ファイルとして file をセットします (デフォルト: init.ly)。
-I,--include=directorydirectory を入力ファイルのサーチ パスに相対パスとして追加します。デフォルトではカレントディレクトリのみが検索されます。
複数の -I オプションを与えることができます。検索はカレントディレクトリから開始され、入力ファイルが見つからない場合は、最初の -I で指定されたディレクトリ、そして二番目の -I で指定されたディレクトリ、というように検索します。
Note: チルド記号 (
~) を -I と共に使用すると、シェルによっては予期しない結果をもたらす場合があります。Windows ユーザは、ディレクトリのパスの最後にスラッシュを含める必要があります。
-j,--jail=user,group,jail,dir[このオプションは OS が
chroot機能をサポートする場合のみ有効です。特に、 Windows はサポートしていません。]lilypondを chroot jail 環境で実行します。(訳者: chroot jail 環境とはセキュリティのためにカレント プロセスに対してルート ディレクトリの位置を変更すること。)--jail オプションは、Web サーバ経由で LilyPond 譜刻を提供する時や LilyPond が外部ソースから送られてきたコマンドを実行する時に、
--dsafeよりも自由度の高い代替手段を提供します。 (LilyPond の高度なコマンド ライン オプション を参照してください。)--jailオプションはコンパイル プロセスの開始直前にlilypondのルート ディレクトリを jail に変更します。それから、ユーザとグループを user と group に変更して、カレント ディレクトリを dir に変更します。これにより、jail (牢獄) から抜け出せないことを (少なくとも理論上は) 保証します。--jailを指定したlilypondの実行は root (ユーザ名) として行う必要があります。通常、これはsudoを用いた安全な方法で行います。jail のセットアップは比較的複雑な問題です。LilyPond がソースをコンパイルするのに必要とされるものすべてを jail の内部 で見つけられるということを保証しなければならないからです。一般的なセットアップには以下の項目が含まれます:
- 専用のファイルシステムをセットアップする
noexec,nodev,nosuidなどのセーフ オプションでマウントするための専用ファイルシステムを作成すべきです。こうすることで、LilyPond から実行可能形式ファイルを実行したり、デバイスに直接書き込むことは不可能になります。専用のパーティションを作成することを望まないのなら、適当なサイズのファイルを作成し、それを使用してループ デバイス (ループバック デバイス) をマウントしてください。専用ファイルシステムはさらに、LilyPond が許可されたディスク容量以上には書き込めないということを保証します。- 専用のユーザをセットアップする
jail 内部で LilyPond を実行する際、低い権限を持つ専用のユーザとグループ (仮に
lily/lilyとします) で行うべきです。このユーザが書き込み可能なディレクトリが 1 つだけ存在すべきであり、それを dir に渡します。- jail の準備をする
LilyPond は実行中にいくつかのファイルを読み込む必要があります。それらのファイルをすべて jail にコピーしておきます。それらのファイルが本当のルート ファイル システムで存在しているパスと同じパスにコピーします。LilyPond インストールの内容すべて (例えば、/usr/share/lilypond) をコピーすべきです。
問題が発生した場合、その原因を突き止める最も簡単な方法は
straceを使って LilyPond を実行することです。これによりどのファイルが見当たらないのかがわかります。- LilyPond を実行する
noexecでマウントされた jail の中では、外部プログラムを実行することは一切できません。そのため、外部プログラムを必要としないバックエンドで LilyPond を実行しなければなりません。すでに述べたように、jail モードでの LilyPond の実行はスーパーユーザ権限で行われなければならず (もちろん、その権限はすぐに外されます)、たぶんsudoを使います。LilyPond が使用可能な CPU 時間を数秒に制限する (例えば、ulimit -tを使って) というのも良い方法です。さらに、OS がサポートしているのなら、割り当て可能なメモリ容量を制限するというのも良い方法です。chroot jail 環境で LilyPond を実行する も参照してください。
-l,--loglevel=levelコンソール出力の饒舌さを level にセットします。取り得る値は以下の通りです:
NONE何も出力しません。エラー メッセージさえも出力しません。
ERRORエラー メッセージだけを出力します。警告や進捗メッセージは出力しません。
WARN警告とエラー メッセージを出力し、進捗メッセージは出力しません。
BASIC基本的な進捗メッセージ (成功メッセージ)、警告、それにエラー メッセージを出力します。
PROGRESSすべての進捗メッセージ、警告とエラー メッセージを出力します。
INFO進捗メッセージ、警告、エラーそれに追加の実行情報を出力します。 これがデフォルトです。
DEBUG饒舌なデバッグ出力を含む、出力可能なメッセージをすべて出力します。
-o,--output=file-o,--output=folderデフォルトの出力ファイルとして file をセットします。セットした名前のフォルダが存在する場合、 folder に入力ファイルから取ったファイル名で出力されます。どちらの場合にも適切な接尾辞が追加されます (つまり、PDF ならば拡張子 .pdf が追加されます)。
-O,--pspdfopt=key ¶-
key へ PS/PDF 最適化を設定します。選択肢は:
size非常に小さい PS/EPS/PDF ドキュメントを生成します。 これがデフォルトです。
LilyPond の Scheme コマンドラインオプション
-dmusic-font-encodings='#f'と-dgs-never-embed-fonts='#f'を指定した場合と同じです。TeXpdfTeX, LuaTeX, XeTeX ドキュメントにインクルードされるのに最適化されたファイルを生成します。
LilyPond の Scheme コマンドラインオプション
-dmusic-font-encodings='#t'と-dgs-never-embed-fonts='#f'を指定した場合と同じです。TeX-GSLilyPond によって生成された PDF を TeX ドキュメントに複数インクルードしたい場合は、このオプションを使い、TeX によって生成された PDF を Ghostscript で後処理してください。
LilyPond の Scheme コマンドラインオプション
-dmusic-font-encodings='#t'と-dgs-never-embed-fonts='#t'を指定した場合と同じです。
--psPostScript を生成します。このオプションは
-fpsと同じです。--png各ページの図を PNG フォーマットで生成します。このオプションは
-fpngと同じです。画像の解像度を N DPI に設定するには以下のようにします。
-dresolution=N
--pdfPDF を生成します。これがデフォルトで、
-fpdfと同じです。-s,--silent進行状況を表示せず、エラーメッセージのみ表示します。これは
-lERRORと同じです。-v,--versionバージョン情報を表示します。
-V,--verbose冗長表示モードにします: 読み込むすべてのファイルのフル パスを表示して、時間情報などを表示します。これは
-lDEBUGと同じです。-w,--warrantyGNU LilyPond の保証責任を表示します。(GNU LilyPond には保証責任はありません!)
[ << lilypond を実行する ] | [Top][Contents][Index] | [ convert-ly を使ってファイルを更新する >> ] |
[ < lilypond を呼び出す ] | [ Up: コマンド ラインの使用方法 ] | [ LilyPond の高度なコマンド ライン オプション > ] |