1.6.2 個々の譜を変更する

このセクションでは、1 つの譜の属性を変更する方法について説明します: 例えば、譜線の本数や譜サイズを変更します。譜を開始/終了する方法とオッシア セクションをセットする方法についても記述します。


譜シンボル

譜の線は StaffSymbol グラフィカル オブジェクトに属します。StaffSymbol プロパティを変更して、譜の見た目を変えることができます。しかしながら、変更は譜を作成する前に行う必要があります。

譜線の本数を変えることもできます。音部記号の位置とミドル C の位置を、新しい譜にフィットさせるために、変更する必要があるかもしれません。具体例は、音部記号 にあるコード断片集セクションを参照してください。

\new Staff \with {
  \override StaffSymbol #'line-count = #3
}
{ d4 d d d }

[image of music]

譜線の太さを変えることができます。加線 (訳者注: ledger line, 譜の上下に突き出た符頭と符幹に付けられる短い譜線) と符幹の太さも影響を受けます。なぜなら、それらの太さは譜線の太さに基づいているからです。

\new Staff \with {
  \override StaffSymbol #'thickness = #3
}
{ e4 d c b }

[image of music]

Lidger line の太さを譜線の太さから独立して設定することができます。以下の例では、2 つの数が因子となり、それぞれの単位は譜線の太さと譜線の間隔です。2 つの因子は足しあわされて加線の太さになります。

\new Staff \with {
  \override StaffSymbol #'ledger-line-thickness = #'(1 . 0.2)
}
{ e4 d c b }

[image of music]

譜線の間隔を変えることができます。この設定は加線の間隔にも影響を与えます。

\new Staff \with {
  \override StaffSymbol #'staff-space = #1.5
}
{ a4 b c d }

[image of music]

StaffSymbol のプロパティについて更に詳細な説明が staff-symbol-interface に記述されています。

楽譜の途中で譜プロパティに変更を加えるには、\stopStaff\startStaff の間で行います。

c2 c
\stopStaff
\override Staff.StaffSymbol #'line-count = #2
\startStaff
b2 b
\stopStaff
\revert Staff.StaffSymbol #'line-count
\startStaff
a2 a

[image of music]

一般的に言って、\stopStaff\startStaff を用いることで、楽譜の途中で譜の描画を停止あるいは再開することができます。

c4 b a2
\stopStaff
b4 c d2
\startStaff
e4 d c2

[image of music]

定義済みコマンド

\startStaff, \stopStaff

Selected Snippets

譜線のうちの何本かを他の譜線より太くする

教育目的で、ある譜線だけを太くすることがあります (例えば、真ん中の譜線を太くしたり、ト音記号の線を強調したりします)。これは、StaffSymbol オブジェクトの line-positions プロパティを用いて、強調する線のすぐそばに追加の線を付け加えることによって達成できます。

{
  \override Staff.StaffSymbol #'line-positions = #'(-4 -2 -0.2 0 0.2 2 4)
  d'4 e' f' g'
}

[image of music]

参照

音楽用語集: line, ledger line, staff

記譜法リファレンス: 音部記号

コード断片集: Staff notation

内部リファレンス: StaffSymbol, staff-symbol-interface

既知の問題と警告

譜線の垂直方向の位置を手動で設定している場合、小節線は常に (垂直方向で) 0 の位置に中央揃えされます。そのため、 When setting vertical staff line positions manually, bar lines are always centered on position 0, so the maximum distance between the outermost bar lines in either direction must be equal.


オッシア譜

オッシア 譜は、適切な位置で新しく同時進行の譜を作成することによって、セットすることができます:

\new Staff \relative c'' {
  c4 b d c
  <<
    { c4 b d c }
    \new Staff { e4 d f e }
  >>
  c4 b c2
}

[image of music]

しかしながら、上の例は通常は望ましいものではありません。オリジナルの譜の上にあり、拍子記号や音部記号を持たず、小さなサイズのフォントを使用するオッシア譜を作成するには、調整が必要です。学習マニュアルの 音楽表記をネストする に望ましいオッシア譜を作成するための方法が記述されています。

以下の例は、オッシア譜をオリジナルの譜の上に配置するために alignAboveContext プロパティを用いています。この手法は、2, 3 のオッシア譜が必要とされているだけである場合であれば、最も適切な方法です。

\new Staff = main \relative c'' {
  c4 b d c
  <<
    { c4 b d c }

    \new Staff \with {
      \remove "Time_signature_engraver"
      alignAboveContext = #"main"
      fontSize = #-3
      \override StaffSymbol #'staff-space = #(magstep -3)
      \override StaffSymbol #'thickness = #(magstep -3)
      firstClef = ##f
    }
    { e4 d f e }
  >>
  c4 b c2
}

[image of music]

多くの別個のオッシア譜が必要である場合、ある特有の コンテキスト ID を持つ空の Staff コンテキストを作成する方が適切かもしれません: 空の Staff コンテキストを作成してからそのコンテキストを 呼び出し て、オッシア譜が必要とされる場所で \startStaff\stopStaff を用いてオッシア譜を作成します。この手法の利点は、以下の例よりも長い楽曲であれば、明らかです。

<<
  \new Staff = ossia \with {
    \remove "Time_signature_engraver"
    \override Clef #'transparent = ##t
    fontSize = #-3
    \override StaffSymbol #'staff-space = #(magstep -3)
    \override StaffSymbol #'thickness = #(magstep -3)
  }
  { \stopStaff s1*6 }

  \new Staff \relative c' {
    c4 b c2
    <<
      { e4 f e2 }
      \context Staff = ossia {
        \startStaff e4 g8 f e2 \stopStaff
      }
    >>
    g4 a g2 \break
    c4 b c2
    <<
      { g4 a g2 }
      \context Staff = ossia {
        \startStaff g4 e8 f g2 \stopStaff
      }
    >>
    e4 d c2
  }
>>

[image of music]

オッシア譜を作成するための代替手段として、\RemoveEmptyStaffContext コマンドが用いられるかもしれません。この手法は、オッシア譜が改行の直後に発生する場合、最も便利な手法です。そのようなケースでは、空白休符を使用する必要はまったくありません: \startStaff\stopStaff が必要であるだけです。\RemoveEmptyStaffContext についての更なる情報は、譜を隠す を参照してください。

<<
  \new Staff = ossia \with {
    \remove "Time_signature_engraver"
    \override Clef #'transparent = ##t
    fontSize = #-3
    \override StaffSymbol #'staff-space = #(magstep -3)
    \override StaffSymbol #'thickness = #(magstep -3)
  }
  \new Staff \relative c' {
    c4 b c2
    e4 f e2
    g4 a g2 \break
    <<
      { c4 b c2 }
      \context Staff = ossia {
        c4 e8 d c2 \stopStaff
      }
    >>
    g4 a g2
    e4 d c2
  }
>>

\layout {
  \context {
    \RemoveEmptyStaffContext
    \override VerticalAxisGroup #'remove-first = ##t
  }
}

[image of music]

Selected Snippets

オッシアと歌詞を縦に並べる

この断片はコンテキスト プロパティ alignBelowContextalignAboveContext を用いて歌詞とオッシアの位置を制御する様子を示しています。

\paper {
  ragged-right = ##t
}

\relative c' <<
  \new Staff = "1" { c4 c s2 }
  \new Staff = "2" { c4 c s2 }
  \new Staff = "3" { c4 c s2 }
  { \skip 2
    <<
      \lyrics {
        \set alignBelowContext = #"1"
        lyrics4 below
      }
      \new Staff \with {
        alignAboveContext = #"3"
        fontSize = #-2
        \override StaffSymbol #'staff-space = #(magstep -2)
        \remove "Time_signature_engraver"
      } {
        \times 4/6 {
          \override TextScript #'padding = #3
          c8[^"ossia above" d e d e f]
        }
      }
    >>
  }
>>

[image of music]

参照

音楽用語集: ossia, staff, Frenched staff

学習マニュアル: 音楽表記をネストする, オブジェクトのサイズ, オブジェクトの長さと太さ

記譜法リファレンス: 譜を隠す

コード断片集: Staff notation

内部リファレンス: StaffSymbol


譜を隠す

譜線は、Staff コンテキストから Staff_symbol_engraver を削除することによって、隠すことができます。そうする代わりに、\stopStaff を用いることもできます。

\new Staff \with {
  \remove "Staff_symbol_engraver"
}
\relative c''' { a8 f e16 d c b a2 }

[image of music]

空の譜は、\layout ブロックの中で \RemoveEmptyStaffContext コマンドをセットすることによって、隠すことができます。オーケストラ譜では、このようなスタイルの譜は ‘Frenched Score’ として知られています。デフォルトでは、このコマンドは、最初のシステム以外のところで楽譜の中にあるすべての空の譜を隠して、削除します。

Note: 譜は、それが複数小節にわたる休符、スキップ、空白休符、あるいはそれらの要素の組み合わせだけで構成されている場合は、空であると見なされます。

\layout {
  \context {
    \RemoveEmptyStaffContext
  }
}

\relative c' <<
  \new Staff {
    e4 f g a \break
    b1 \break
    a4 b c2
  }
  \new Staff {
    c,4 d e f \break
    R1 \break
    f4 g c,2
  }
>>

[image of music]

譜に対してオッシア セクションを作成するために、\RemoveEmptyStaffContext を用いることもできます。詳細は オッシア譜 を参照してください。

古代音楽コンテキストの中にある空の譜を隠すために、\AncientRemoveEmptyStaffContext が用いられることがあります。同様に、空の RhythmicStaff コンテキストを隠すために、\RemoveEmptyRhythmicStaffContext が用いられることがあります。

定義済みコマンド

\RemoveEmptyStaffContext, \AncientRemoveEmptyStaffContext, \RemoveEmptyRhythmicStaffContext

Selected Snippets

最初の行にある空の譜を削除する

VerticalAxisGroup プロパティを remove-first に設定することによって、 最初の行にある空の譜も楽譜から削除することができます。これを楽譜全体で行うには \layout ブロックの中で行い、ローカルで行うには削除を行うべき譜の中で行います。後者の場合、プロパティの前にコンテキストを指定する必要があります (Staff を指定すると、カレントの譜だけに適用されます)。

2 番目の譜グループの下側の譜は削除されません。なぜなら、削除設定はそれが記述された譜だけに適用されるからです。

\layout {
  \context {
    \Staff \RemoveEmptyStaves
    % To use the setting globally, uncomment the following line:
    % \override VerticalAxisGroup #'remove-first = ##t
  }
}
\new StaffGroup <<
  \new Staff \relative c' {
    e4 f g a \break
    c1
  }
  \new Staff {
    % To use the setting globally, comment this line,
    % uncomment the line in the \layout block above
    \override Staff.VerticalAxisGroup #'remove-first = ##t
    R1 \break
    R
  }
>>
\new StaffGroup <<
  \new Staff \relative c' {
    e4 f g a \break
    c1
  }
  \new Staff {
    R1 \break
    R
  }
>>

[image of music]

参照

音楽用語集: Frenched staff

記譜法リファレンス: 譜シンボル, オッシア譜

コード断片集: Staff notation

内部リファレンス: ChordNames, FiguredBass, Lyrics, Staff, VerticalAxisGroup, Staff_symbol_engraver

既知の問題と警告

Staff_symbol_engraver を削除すると、小節線も隠されます。小節線が強制的に可視になるよう設定されている場合、フォーマット エラーが発生するかもしれません。そのような場合は、エングラーバを削除する代わりに、以下のオーバライドを使用してください:

\override StaffSymbol #'stencil = ##f
\override NoteHead #'no-ledgers = ##t

他の言語: English, deutsch, español, français

LilyPond — 記譜法リファレンス

inserted by FC2 system