2.7.2 和音を表示する

譜に音符を表示させるという標準の表示に加えて、コード ネームを表示させることができます。


コード ネームを譜刻する

コード ネームは ChordNames コンテキストに譜刻されます:

\new ChordNames {
  \chordmode {
    c2 f4. g8
  }
}

[image of music]

和音は同時進行する音符としてか、和音モードを使用することで入力することができます。転回や低音の追加が無い限り入力モードに関係なく、和音と同じコード ネームが表示されます:

chordmusic = \relative {
  <c' e g>2 <f bes c>
  <f c' e g>1
  \chordmode {
    c2 f:sus4 c1:/f
  }
}
<<
  \new ChordNames {
    \chordmusic
  }
  {
    \chordmusic
  }
>>

[image of music]

ChordNames コンテキストに休符が渡されると、noChordSymbol マークアップが表示されます。

<<
  \new ChordNames \chordmode {
    c1
    r1
    g1
    c1
  }
  \chordmode {
    c1
    r1
    g1
    c1
  }
>>

[image of music]

\chords { … }\new ChordNames \chordmode { … } の短縮形です。

\chords {
  c2 f4.:m g8:maj7
}

[image of music]

\new ChordNames {
  \chordmode {
    c2 f4.:m g8:maj7
  }
}

[image of music]

Selected Snippets

コード ネームを変更時のみ表示する

デフォルトでは、入力されたすべてのコードが出力されます。この動作を変更して、コード ネームが行頭とコード変更時にのみ表示されるようにすることができます。

harmonies = \chordmode {
  c1:m c:m \break c:m c:m d
}

<<
  \new ChordNames {
    \set chordChanges = ##t
    \harmonies
  }
  \new Staff {
    \relative c' { \harmonies }
  }
>>

[image of music]

シンプル リード シート

コード ネーム、メロディ、歌詞をまとめるとリード シートとなります:

<<
  \chords { c2 g:sus4 f e }
  \new Staff \relative c'' {
    a4 e c8 e r4
    b2 c4( d)
  }
  \addlyrics { One day this shall be free __ }
>>

[image of music]

参照

音楽用語集: chord

記譜法リファレンス: 音楽を並列に記述する

コード断片集: Chords

内部リファレンス: ChordNames, ChordName, Chord_name_engraver, Volta_engraver, Bar_engraver

既知の問題と警告

同時進行する音として和音を入力している場合、転回や低音の追加を含む和音のコード ネームは正しく表示されません。


コード ネームをカスタマイズする

和音の命名規則は 1 つではありません。流儀が異なれば、同じ和音に対して異なるコード ネームを使います。コード ネームで表示される記号にも違いがあります。コード ネームで表示される名前と記号をカスタマイズすることができます。

基本となるコード ネーム命名規則はジャズ音楽用のものです。これは Klaus Ignatzek によって提唱されたものです ( Literature list を参照してください)。(他のコード ネーム命名規則は Scheme 関数で実装することができます。 コード断片集の Chords にある “Chord names alternative” に例があります。) 一般的なジャズ音楽用のコード表記のリストは、コード ネーム表 にあります。

デフォルトの命名規則は、いくつかの方法によって容易に変更することができます。まず、根音に対して異なる言語を使用するために、 \germanChords, \semiGermanChords, \italianChords, \frenchChords の定義済みコマンドを使用できます:

[image of music]

ドイツ歌集では短和音を接尾辞 m を伴わない小文字で記述する場合があります。これは chordNameLowercaseMinor プロパティを設定することで実現できます:

\chords {
  \set chordNameLowercaseMinor = ##t
  c2 d:m e:m f
}

[image of music]

コード ネームの表示を以下のプロパティを通じて調整することもできます。

chordRootNamer

通常、コード ネームは根音の文字にオプションの変化を付けて表示されます。この関数がピッチから文字に変換します。新しい関数をこのプロパティにセットすることで特殊な音符名 (例えば、B コードを表すドイツ語の ‘H’) を作り出すことができます。

majorSevenSymbol

このプロパティは chordRootNamer の出力に続けて長七和音を示すために使用されるマークアップ オブジェクトを保持します。あらかじめ定義されている選択肢は whiteTriangleMarkupblackTriangleMarkup です。

additionalPitchPrefix

コード ネームが追加のピッチを保持している場合、追加ピッチの前にテキストを付けることができます。見た目が雑然となることを避けるため、デフォルトでは追加ピッチの前にテキストは付きません。しかしながら、追加ピッチが少数の場合はテキストを付けると効果的です。

\new ChordNames {
  <c e g d'>    % add9
  \set additionalPitchPrefix = "add"
  <c e g d'>    % add9
}

[image of music]

chordNoteNamer

コード ネームが根音以外の追加ピッチを保持している場合 (例えば追加の低音)、この関数が追加ピッチを譜刻するのにを用いられます。デフォルトでは、ピッチは chordRootNamer を用いて譜刻されます。chordNoteNamer にカスタマイズした関数をセットすることで、この振る舞いを変えることができます。例えば、低音を小文字で譜刻させることができます。

chordNameSeparator

通常、コード ネームはパート毎に小さなスペースで区切られます。chordNameSeparator を設定することにより、区切りをお望みのマークアップに変更することができます。これはコード ネームと低音名の間の区切りには影響を与えません – この区切りをカスタマイズする場合は、slashChordSeparator を設定します。

\chords {
  c4:7.9- c:7.9-/g
  \set chordNameSeparator = \markup { "/" }
  \break
  c4:7.9- c:7.9-/g
}

[image of music]

slashChordSeparator

和音に通常の根音とは異なる低音を持たせることができます。これは “転回” と呼ばれ、デフォルトの記譜法では主和音と低音符の間をシュラッシュで区切るためスラッシュ “スラッシュ コード” とも呼ばれます。slashChordSeparator のデフォルト値はスラッシュですが、お望みのマークアップに変更することができます。

\chords {
  c4:7.9- c:7.9-/g
  \set slashChordSeparator = \markup { " over " }
  \break
  c4:7.9- c:7.9-/g
}

[image of music]

chordNameExceptions

このプロパティはペアのリストです。各ペアの最初の要素は和音の中に存在する音を指定するピッチのセットです。次の要素は、最初の要素で指定された和音のコード ネームを作り出すために、chordRootNamer の出力の後に記譜されるマークアップです。

minorChordModifier

短和音は和音の根音の右側に接尾辞 ‘m’ を配置することによって記述されることが多いです。しかしながら、マイナス記号等の他の接尾辞を使う場合もあります。

\chords {
  c4:min f:min7
  \set minorChordModifier = \markup { "-" }
  \break
  c4:min f:min7
}

[image of music]

chordPrefixSpacer

通常、minorChordModifier で指定される短和音の修飾子は和音の根音のすぐ右に譜刻されます。chordPrefixSpacer を設定することにより、根音と修飾子の間にスペースを置くことができます。根音が変化した場合、このスペースは配置されません。

定義済みコマンド

\whiteTriangleMarkup, \blackTriangleMarkup, \germanChords, \semiGermanChords, \italianChords, \frenchChords

Selected Snippets

コード ネームの例外

特殊なコードに対して専用の表記をするためのリストを保持するのが chordNameExceptions プロパティです。

% modify maj9 and 6(add9)
% Exception music is chords with markups
chExceptionMusic = {
  <c e g b d'>1-\markup { \super "maj9" }
  <c e g a d'>1-\markup { \super "6(add9)" }
}

% Convert music to list and prepend to existing exceptions.
chExceptions = #(append
  (sequential-music-to-chord-exceptions chExceptionMusic #t)
  ignatzekExceptions)

theMusic = \chordmode {
  g1:maj9 g1:6.9
  \set chordNameExceptions = #chExceptions
  g1:maj9 g1:6.9
}

\layout {
  ragged-right = ##t
}

<<
   \new ChordNames \theMusic
   \new Voice \theMusic
>>

[image of music]

メジャー セブンスのコード ネーム

メジャー セブンスのレイアウトは majorSevenSymbol で調整することができます。

\chords {
  c:7+
  \set majorSevenSymbol = \markup { j7 }
  c:7+
}

[image of music]

ChordNames コンテキストに小節線を追加する

ChordNames コンテキストに小節線を追加するには、Bar_engraver を追加します。

\new ChordNames \with {
  \override BarLine.bar-extent = #'(-2 . 2)
  \consists "Bar_engraver"
}

\chordmode {
  f1:maj7 f:7 bes:7
}

[image of music]

繰り返し括弧をコード ネームの下に表示する

Volta_engraver を対応する譜に付け加えることで、繰り返し括弧をコード ネームの下に表示できます。

\score {
  <<
    \chords {
      c1
      c1
    }
    \new Staff \with {
      \consists "Volta_engraver"
    }
    {
      \repeat volta 2 { c'1 }
      \alternative { c' }
    }
  >>
  \layout {
    \context {
      \Score
      \remove "Volta_engraver"
    }
  }
}

[image of music]

コード ネームの区切り記号を変更する

コード ネームの異なる部分を区切る記号は、任意のマークアップに設定することができます。

\chords {
  c:7sus4
  \set chordNameSeparator
    = \markup { \typewriter | }
  c:7sus4
}

[image of music]

参照

記譜法リファレンス: コード ネーム表, 一般的な和音修飾子

楽譜譜刻の自動化についてのエッセー: Literature list

インストールされているファイル: ‘scm/chords-ignatzek-names.scm’, ‘scm/chord-entry.scm’, ‘ly/chord-modifiers-init.ly

コード断片集: Chords

既知の問題と警告

コード ネームは、和音に含まれるピッチと \chordmode で入力される和音構造についての情報の両方から決定されます。和音の入力手段として同時進行するピッチを用いた場合、転回や低音により予期しないコード ネームとなります。

myChords = \relative c' {
  \chordmode { c1 c/g c/f }
  <c e g>1 <g c e> <f c' e g>
}
<<
  \new ChordNames { \myChords }
  \new Staff { \myChords }
>>

[image of music]


LilyPond — 記譜法リファレンス v2.23.82 (開発版).