[ << lilypond を実行する ] | [トップ][目次][インデックス][ ? ] | [ convert-ly を使ってファイルを更新する >> ] | ||
[ < エラー メッセージ ] | [ 上へ : lilypond を実行する ] | [ 楽譜がページからはみ出る > ] |
1.4 一般的なエラー
以下で説明するエラーがしばしば発生しますが、その原因は明白でなかったり、見つけにくかったりします。目を通しておくと、それらのエラーに対処しやすくなります。
楽譜がページからはみ出る | ||
余計な譜が表示される | ||
エラー メッセージ Unbound variable % | ||
エラー メッセージ FT_Get_Glyph_Name | ||
警告 – Warning staff affinities should only decrease | ||
Error message unexpected \new | ||
Warning this voice needs a \voiceXx |
[ << lilypond を実行する ] | [トップ][目次][インデックス][ ? ] | [ convert-ly を使ってファイルを更新する >> ] | ||
[ < 一般的なエラー ] | [ 上へ : 一般的なエラー ] | [ 余計な譜が表示される > ] |
楽譜がページからはみ出る
楽譜がページの右マージンを越えてはみ出る、あるいは過度に密集するのは、ほぼ間違いなく音符の演奏時間に誤りがあり、小節の最後の音符が小節線を越えてしまうためです。ある小節の最後の音符が自動的に挿入される小節線の所で終わらなくても無効ではありません。なぜなら、その音符は次の小節に持ち越されるためです。しかしながら、そのような持ち越しが発生する小節が長く続くと、楽譜は密集して表示されたり、ページからはみ出たりします。ページからはみ出るのは、自動改行を挿入できるのは正しく終了する小節 (その小節のすべての音符が小節の中で終了しています) の後ろだけだからです。
Note: 誤った演奏時間は改行を抑制し、結果として楽譜が過度に密集したり、c ページからはみ出たりする可能性が生じます。
小節チェックを使用していれば、誤った演奏時間を簡単に見つけることができます。 小節と小節番号のチェック を参照してください。
あなたがそのような音符が持ち越される小節を続けることを意図しているのであれば、改行させたい場所に不可視の小節線を挿入する必要があります。詳細は 小節線 を参照してください。
[ << lilypond を実行する ] | [トップ][目次][インデックス][ ? ] | [ convert-ly を使ってファイルを更新する >> ] | ||
[ < 楽譜がページからはみ出る ] | [ 上へ : 一般的なエラー ] | [ エラー メッセージ Unbound variable % > ] |
余計な譜が表示される
コンテキストが \new
や \context
で明示的に作成されていない場合、既存のコンテキストには適用できないコマンドに遭遇した時点で暗黙的に作成されます。単純な楽譜では、コンテキストの自動作成は有用であり、LilyPond マニュアルのほとんどの例はこの手法を用いています。しかしながら、コンテキストの暗黙的な作成はしばしば予期しない譜や楽譜を発生させてしまいます。例えば、以下のコードは後に続く譜の中にあるすべての符頭を赤にすることを意図していますが、結果は 2 つの譜が表示され、下の譜の符頭の色はデフォルトの黒のままとなります。
\override Staff.NoteHead.color = #red \new Staff { a' }
これは、(符頭色の) オーバライドが処理される時に
Staff
コンテキストが存在していないため、Staff
コンテキストが暗黙的に作成され、そのコンテキストにオーバライドが適用されるからです。その後に \new Staff
コマンドによりもう 1 つ別の Staff
コンテキストが作成され、そこに音符が配置されます。すべての符頭を赤にする正しいコードは以下のようになります:
\new Staff { \override Staff.NoteHead.color = #red a' }
[ << lilypond を実行する ] | [トップ][目次][インデックス][ ? ] | [ convert-ly を使ってファイルを更新する >> ] | ||
[ < 余計な譜が表示される ] | [ 上へ : 一般的なエラー ] | [ エラー メッセージ FT_Get_Glyph_Name > ] |
エラー メッセージ Unbound variable %
このエラー メッセージは、Scheme 形式ではなく LilyPond 形式のコメントを含む Scheme ルーチンが呼び出されるたびに、コンソール出力またはログ ファイルの最後に表示されます。
LilyPond 形式のコメントはパーセント記号 (%
) で始まり、Scheme ルーチンの中で使うことはできません。Scheme 形式のコメントはセミコロン (;
) で始まります。
[ << lilypond を実行する ] | [トップ][目次][インデックス][ ? ] | [ convert-ly を使ってファイルを更新する >> ] | ||
[ < エラー メッセージ Unbound variable % ] | [ 上へ : 一般的なエラー ] | [ 警告 -- Warning staff affinities should only decrease > ] |
エラー メッセージ FT_Get_Glyph_Name
入力ファイルが非 ASCII キャラクタを保持していて、UTF-8 エンコードで保存されていない場合、このエラー メッセージがコンソール出力やログ ファイルに表示されます。詳細は、 Text encoding を参照してください。
[ << lilypond を実行する ] | [トップ][目次][インデックス][ ? ] | [ convert-ly を使ってファイルを更新する >> ] | ||
[ < エラー メッセージ FT_Get_Glyph_Name ] | [ 上へ : 一般的なエラー ] | [ Error message unexpected new > ] |
警告 – Warning staff affinities should only decrease
この警告は、譜刻された出力の中に譜が無い場合に表示されます。例えば、リード譜に ChordName
コンテキストと Lyrics
コンテキストしか無い場合です。この警告は、入力の始めに以下を挿入することで譜として振舞うコンテキストを作ることで回避できます:
\override VerticalAxisGroup.staff-affinity = ##f
詳細は システム内部の可変な垂直方向のスペース の “譜ではない行のスペース” を参照してください。
Error message unexpected \new
A \score
block must contain a single music expression.
If instead it contains several \new Staff
,
\new StaffGroup
or similar contexts introduced with \new
without them being enclosed in either curly brackets,
{ … }
, or double angle brackets, << … >>
,
like this:
\score { % Invalid! Generates error: syntax error, unexpected \new \new Staff { … } \new Staff { … } }
the error message will be produced.
To avoid the error, enclose all the \new
statements in
curly or double angle brackets.
Using curly brackets will introduce the \new
statements
sequentially:
\score { { \new Staff { a' a' a' a' } \new Staff { g' g' g' g' } } }
but more likely you should be using double angle brackets so the new staves are introduced in parallel, i.e. simultaneously:
\score { << \new Staff { a' a' a' a' } \new Staff { g' g' g' g' } >> }
[ << lilypond を実行する ] | [トップ][目次][インデックス][ ? ] | [ convert-ly を使ってファイルを更新する >> ] | ||
[ < Error message unexpected new ] | [ 上へ : 一般的なエラー ] | [ convert-ly を使ってファイルを更新する > ] |
Warning this voice needs a \voiceXx
or \shiftXx
setting
If notes from two different voices with stems in the same direction occur at the same musical moment, but the voices have no voice-specific shifts specified, the warning message ‘warning: this voice needs a \voiceXx or \shiftXx setting’ will appear when compiling the LilyPond file. This warning will appear even when the notes have no visible stems, e.g. whole notes, if the stems for shorter notes at the same pitch would be in the same direction.
Remember that the stem direction depends on the position of the
note on the staff unless the stem direction is specified, for example
by using \voiceOne
, etc. In this case the warning will appear
only when the stems happen to be in the same direction, i.e. when the
notes are in the same half of the staff.
By placing the notes in voices with stem directions and shifts
specified, for example by using \voiceOne
, etc., these warnings
may be avoided.
Notes in higher numbered voices, \voiceThree
etc., are
automatically shifted to avoid clashing note columns. This causes a
visible shift for notes with stems, but whole notes are not visibly
shifted unless an actual clash of the note heads occurs, or when the
voices cross over from their natural order (when \voiceThree
is higher than \voiceOne
, etc.)
参照
Explicitly instantiating voices, Real music example, Single-staff polyphony, Collision resolution.
[ << lilypond を実行する ] | [トップ][目次][インデックス][ ? ] | [ convert-ly を使ってファイルを更新する >> ] | ||
[ < Error message unexpected new ] | [ 上へ : 一般的なエラー ] | [ convert-ly を使ってファイルを更新する > ] |
他の言語: English, català, deutsch, español, français, magyar, italiano
About automatic language selection.