コード譜の書き方

SessionSync のコード譜は、歌詞とコードをテキストで書く「ChordPro」という形式を使っています。このページでは、コード譜の書き方の基本を説明します。

書き方サンプル.txt をダウンロード

1. 概要

コードは [C] のように角括弧で、セクション名やキーなどは { } の波括弧で書きます。コード譜の編集画面では、コード(角括弧)とディレクティブ(波括弧)が色分けして表示されます。ディレクティブは、セクション用({start_of_〇〇}{end_of_〇〇})と単体({key: C}{bpm: 120} など)で別の色になります。また、対応する {start_of_〇〇}{end_of_〇〇} のあいだの行には、範囲がわかりやすいよう薄い背景色が付きます。編集画面では左に行番号が表示されます。

曲名・アーティスト名は「曲の情報」の欄で入力するため、コード譜の本文には書きません。コード譜には、Aメロ・サビなどの区切り、コード、歌詞、キーだけを書きます。

  • コード、歌詞、セクションのどれかが最低1つ必要です
  • 長さの制限があります(非常に長い譜面は登録できません)

編集画面ではTabで字下げ、Shift+Tabで字上げができます。セクションディレクティブ内をインデントして見やすくする用途で使えます。複数行を選択してから Tab / Shift+Tab すると、選択範囲の行をまとめて字下げ・字上げできます。行頭のスペース(インデント)は譜面のレンダリングには影響しません。表示時には行ごとにトリムされるため、インデントは編集用の見やすさのためだけに使われます。補完ウィンドウが開いているときは Tab が補完の選択に使われるため、字下げは補完を閉じてから行ってください。

ディレクティブの補完: 波括弧 { を入力したあと、名前の頭文字を入力すると補完候補が表示されます。候補にはセクションstart_of_〇〇end_of_〇〇 のブロック)と単体ディレクティブkeybpmtime_signatureccicb など)の両方が含まれ、アイコンで区別されます。Tabまたは矢印キーで候補を切り替えると、選択中の候補の使い方(説明)が補完リストの横に表示されます。Enterで確定します。セクションを選ぶと {start_of_〇〇}・空行・{end_of_〇〇} の3行が挿入され、単体を選ぶと {名前: 値} が挿入され、値の部分を編集できます。候補はクリックでも選択できます。Escで補完を閉じます。(編集エディタは CodeMirror 6 を使用しており、補完はそのオートコンプリート機能で提供されています。)

コードの補完: 角括弧 [ を入力すると、段階的に候補が表示されます。まずルート(R アイコンで C〜B, N.C. など)を選ぶか入力し、続けて品質(m, dim, aug, sus など)、7/9 系(7, M7, m7, add9, 9 など)、テンション((9), (b9), (#11) など)を補完で追加できます。どの段階でも「閉じる ]」を選ぶか、キーで ] を入力するとコードを確定できます。演奏指示は [* のあとに Coda, Rit. などを補完できます。

セクションの折りたたみ: {start_of_〇〇} から {end_of_〇〇} までをまとめて折りたためます。行番号の右側のガッターに表示される をクリックすると折りたたみ、 をクリックすると展開します。キーボードでは Ctrl+Shift+[(Mac は Cmd+Alt+[)で折りたたみ、Ctrl+Shift+](Mac は Cmd+Alt+])で展開できます。

使える記号とセクションの種類

コード譜では次のような書き方ができます。

  • コード: [C][G/B] のように角括弧で、歌詞の上に表示するコードを指定
  • 波括弧の指示: {start_of_chorus} のように、セクション名・キー・注釈などを指定
  • 演奏指示: [*Coda][*Rit.] で「コーダ」「リタルダンド」などの注釈を記述
  • メモ(非表示): 行の先頭に # を付けると、その行は譜面には出ません(自分用のメモに使えます)

{start_of_〇〇}{end_of_〇〇} でブロックを囲みます。〇〇には好きな名前(verse, chorus, intro など)を書けます。ラベルを付ける場合は : の後に書きます(例: {start_of_verse: A})。

波括弧のルール: キー・BPM・拍子・セクション・コメントなど、{...} の指示で譜面の表示を指定します。

使用できるセクションディレクティブ

{start_of_〇〇} の〇〇に使える名前は次のとおりです。いずれも譜面上でラベルとして表示されます。Tab と Grid は表示形式が異なります(下記「Tab セクションの使い方」「Grid セクションの使い方」を参照)。

セクション名説明
verseVerse(Aメロ等)
chorusChorus(サビ)
introIntro(イントロ)
prechorusPre-Chorus(Bメロ等)
bridgeBridge(ブリッジ)
softchorusSoft Chorus(ソフトコーラス)
partPart(パート)
outroOutro(アウトロ)
tabTab(タブ譜。ASCII タブ譜を記述)
gridGrid(歌詞なし・コードのみの演奏用)

Tab セクションの使い方

{start_of_tab}{end_of_tab} で囲んだ中に、ASCII タブ譜を書きます。1行が1本の弦に対応し、弦名(e, B, G, D, A, E)で始まる行だけがタブとして認識されます。小節線 | で区切ると、桁が揃って表示されます。

{start_of_tab}
e |---0---1---2---|
B |---1---0---0---|
G |---0---0---0---|
D |---2---2---2---|
A |---3---3---0---|
E |---------------|
{end_of_tab}

タブ部分は等幅フォントで表示され、設定の「コード譜エリアのフォント」とは別に固定されます。

Grid セクションの使い方

Grid は、歌詞を書かずコードだけを並べる演奏用のセクションです。Aメロ・サビと同じように [C][G] のようにコードを書きますが、歌詞の行は書きません。コード進行だけをまとめておきたいとき(イントロのコード、ブリッジのコードなど)に使います。

Grid セクションは等幅フォントで固定表示されます。設定の「コード譜エリアのフォント」は適用されず、常に等幅で表示されます。移調は他のコード譜と同様に反映されます。オンコード([C/E] など)やテンションもそのまま書けます。

Grid 内には歌詞(自由な文字)は書けません。コード [C]、コメント {c: }、および -=| や数字のみ使用できます。歌詞を書くと登録時にエラーになります。

小節線 | でコードを区切って | [C] | [D] | [Em] | [Am] | のように書くと、譜面上ではコードと小節線が1行で表示されます(コードの上に歌詞行が別に出ることはありません)。

キー・拍子と注釈(波括弧)

  • キー: {key: C}{key: Am} — 譜面閲覧時の移調に反映されます
  • 拍子: {time_signature: 3/4} — 譜面上でチップ表示。BPM と隣接すると1つにマージされます(詳しくは「キー・BPM・拍子のディレクティブ」を参照)
  • 注釈: {c: テキスト} は太字、{ci: テキスト} はイタリック、{cb: テキスト} はラベル(チップ)で表示されます

その他の {名前: 値} も、1 行のラベルとして表示されます。

コード譜に書けないもの

曲名・アーティスト名・著作権などは「曲の情報」で入力するため、コード譜の本文には次のような指示は書けません。書くと登録時にエラーになります。

書けない指示の名前内容
title, t曲名
artistアーティスト名
sortartist, sorttitle並び替え用の名前
subtitle, stサブタイトル
composer作曲者
lyricist作詞者
arranger編曲者
copyright著作権表記
ccliCCLI 番号
duration再生時間
capoカポ
albumアルバム名
year発売年

2. 曲の情報について

曲名・アーティスト名・著作権などは「曲の情報」の欄で入力してください。コード譜の本文には書けません。

キー {key: C} はコード譜に書け、譜面を閲覧するときの移調に反映されます。コード譜に書けない指示の一覧は、上の「コード譜に書けないもの」の表を参照してください。

キー・BPM・拍子のディレクティブ

{key: 〇〇}{bpm: 数値}{time_signature: 3/4}{c: テキスト} などは、コード譜の上から下への書いた順番どおりに譜面に表示されます。

改行とインライン: 改行で区切って書いた指示は、譜面上でも別の行として表示されます。同じ行に複数書いた指示(例: {key: D}{c: コメント}{key: D})は、その行内で横並びで表示されます。

キー {key: 〇〇}

  • {key: C}{key: Am} のように書きます。new_keynk も使えます。
  • 譜面を閲覧するときの移調設定に合わせて、表示されるキーも変わります。
  • 複数書いた場合は、書いた位置のとおりにそれぞれ表示されます。

BPM {bpm: 数値}

テンポ(1分あたりの拍数)を 1〜999 の数値で指定します。譜面上ではメトロノーム風の表示になり、設定で有効にしているときは LED が BPM(および拍子を書いた場合はその拍の長さ)に合わせて点滅します。

  • 書いた位置で表示: 複数の {bpm: 120} を書くと、それぞれ書いた位置に表示されます。Key やコメントの間に挟んでも、出現順のとおりに表示されます。
  • 拍子とのマージ: BPM と拍子 {time_signature: 3/4} が隣り合って書いてあると、譜面上で1つのチップにまとめて表示されます。表示は「拍子 | BPM数 BPM」の順(例: 3/4 | 120 BPM)になります。書く順は BPM→拍子・拍子→BPM のどちらでも同じようにマージされます。
  • アイコン: 表示順で「1つ前の BPM」より数値が大きければ上矢印、小さければ下矢印のアイコンになります。同じか、最初の BPM のときは脈拍アイコンです。
  • LED のオン/オフ・色: 譜面閲覧画面の「BPM点滅」トグルで、LED の点滅だけをオフにできます(数値表示は残ります)。また、設定 → 表示 → コードライブラリの「BPM LED の色」で、点滅する LED の色(赤・青・緑・オレンジ・紫)を選べます。いずれも設定はブラウザ(localStorage)に保存されます。

例: 曲頭で {bpm: 100}、サビ手前で {bpm: 120}、Aメロ直後に {bpm: 90} と書くと、それぞれの位置に 100 → 120(上矢印)→ 90(下矢印)のように表示されます。

拍子 {time_signature: 〇/〇}

拍子を「分子/分母」の形で指定します。例: {time_signature: 3/4}{time_signature: 6/8}。譜面上ではチップとして表示され、BPM と隣接している場合は上記のとおり1つのチップにマージされます。マージされたときは、点滅間隔が拍子の分母(四分音符・八分音符など)に合わせられます。

3. コードの書き方

コードは角括弧 [ ] で囲みます。歌詞の直前に配置すると、その位置にコードが表示されます。

表記のきまり

コードの種類は次の表のとおりに書いてください。Cmaj7C#ma9 など別の書き方だと登録できません。

種類表記
メジャーMCM7, C#M9
マイナーmAm, F#m7
マイナーメジャーmMCmM7
オーギュメントaugCaug
ディミニッシュdimBdim
ハーフディミニッシュm7-5Gm7-5

書けるコードの例

  • 基本: C, Am, F#m, Bb
  • テンション: Am7, Gm7-5, C7(b9,13), C#M9
  • スラッシュコード: G/B, C/E
  • ノーコード: N.C. または NC

空の [] は使えません。譜面を見るときに、♭ と ♯ の表記は設定で切り替えられます。

4. 演奏指示とメモ(コメント)

演奏指示

[*テキスト] で「コーダ」「リタルダンド」などの演奏上の注釈を入れられます。例: [*Coda], [*Rit.]。譜面上ではコードと区別して、次のように表示されます。

CodaRit.

メモ(譜面に出ない)

行の先頭に # を付けると、その行は譜面には表示されません。自分用のメモに使えます。

5. 記述例

コード譜の書き方の一例です。キー、サビ・Aメロの区切り、コードと歌詞の並べ方を確認できます。

{key: G}
{start_of_chorus}
[D]Hello [G]world, [Em]this is [C]ChordPro
[D]簡単に [G]コード譜を [Em]書けます [C]
{end_of_chorus}

{start_of_verse: A}
[G]歌詞の前に [C]コードを [G]置くと
[D]その位置に [C]表示され [G]ます
{end_of_verse}