LilyPond Layout

レイアウトの変更

楽譜のレイアウト(フォーマット)を変えるには \layout ブロックを作り,その中に種々の設定項目を入力します。\layout ブロックは \score の内側でも外側でも構いませんが,ここでは \score 内に置いてその楽譜のレイアウトを変えるようにします。

スタイルの変化が分かるように少し長めの楽譜を例に使います。次の旋律を \score の中で呼び出しています。

soprano = {
\clef treble
\time 2/4
\key g \major

\relative c' {
d8. d16 g8 r16 g16 a16[ g fis e] d4
b16[ d g a] b8 d8 a4. r8
}
\relative c' {
d8. d16 g8 r16 g16 a16[ g e fis] d4
a'8. a16 a8 b8 g4. r8
}
\relative c'' {
d8. d16 d8 r16 b16 c8. c16 c8 r16 a16
b4 e,8 a8 d,4. r8
}
\relative c' {
d8. d16 g8 g8 a16[ g fis e] d4
a'8 a16.[ b32] c8 a8 g4. r8
}
\bar "|."
}

\score {
\new Staff \soprano
}

インデントを変更する

デフォルトでは楽譜がインデントされるので,\score ブロックに \layoutを追加し,indent にゼロを入れるとインデントがなくなります。

\score {
\new Staff \soprano
\layout {
indent = #0
}
}

任意のインデントの深さを設定するには,indent = 5\cm のように書きます。

楽譜のサイズを変える

譜の大きさは20ポイントがデフォルトです。これを変えるにはlayout-set-staff-size を使います。書式が少し変わっていますが,次のように \layout ブロックへ追加します。

\score {
\new Staff \soprano
\layout {
indent = 0
#(layout-set-staff-size 10)
}
}

楽譜の横幅を変える

譜面は紙の横幅から左右のマージンを引いたサイズになります。強制的に横幅を変えるには \layout ブロックの中で line-width を指定します。

  \layout {
indent = 0
line-width = 100\mm
}

楽譜を改行する

楽譜を任意の箇所で改行するには \break を挿入します。その位置までの楽譜が横幅に調整されます。上の例で最初の4小節と8小節後に \break を入れると次のような楽譜になります。

楽譜の一番最後の行は右端に揃うように音符間が調整されます。上のような短い譜例だと逆に不自然になることが多いので,最後に空白を入れることもできます。\layout ブロックの変数 ragged-last を真 (##f) にセットします。

  \layout {
...
ragged-last = ##t
}

同じようなパラメータに ragged-right があります。これを真にすると全ての行で右揃えがなくなります。