メインコンテンツまでスキップ

機能的な奏法

マップ機能

マップ機能の基本

:map()を使用すると、1つまたは複数のnoteに対してループ処理を指示することができます。

@@ {
|||2||:map(*4) // 4回リピート
|||2||:map(0..3) // 音階を変更しつつ4回リピート(マイナス指定も可能)
}

上記の「音階を変更しつつ4回リピート」の場合、スケールに準じて音階が移動します。
単音を指定した場合、弦移動しつつ音階を移動します。
ひとつのnoteに複数音指定した場合や、コードを指定した場合は、弦移動せずに音階を移動します。

map機能によってフレットの末端まで到達した場合

mapで指定したリピート回数を消化するまで折り返して引き続き音階を辿ります。

スケール指定方法は後述します。

音階移動間隔を指定する

スケール内で音階を指定値分飛ばしながら移動します。

:map(開始点 step 移動量 * リピート回数で指定します。

@@ 1/4 120 {
|||5:map(0 step 2 * 4)
|||5:map(0 step -2 * 4)
}

弦移動の制御

ssオプションを付与することで、単音noteの弦移動をしないように制御できます。

@@ 1/16 160 {
||2:map(0..11) // 弦移動する
||2:map(0..11 ss) // 弦移動しない
}

解放弦の固定

sosオプションを付与することで、解放弦のみ音階移動しないように制御できます。

@@ 1/4 120 {
0|2:map(0..7) // 解放弦も移動する
0|2:map(0..7 sos) // 解放弦を移動しない
}

複数音の一括指定

複数音に対してまとめてブロックに指定することもできます。

@@ {
{
|||2||2
0|
}:1/16:map(0..11)
}

:::top スケールに存在しない音を基音として指定した場合 スケールに指定音を加えた新しいスケールとして解釈し移動します。 :::

スケール

mapでループ展開するためにはスケールの指定が重要です。
スケール指定がされていない場合はC major スケールとして扱われます。

スケールの指定方法

:scale(キー スケール名)によって指定します。

@@ 1/8 120 {
|3||:map(0..7):scale(C minor) // Cマイナー
|3||:map(0..7):scale(C major) // Cメジャー
'''C7~~~
}

使用できるスケール

major
minor
dorian
diminish
halfDiminish
pentatonic
harmonicMinor
melodicMinor
chromatic

カスタムスケール

使用できるスケール一覧に使いたいスケールがない場合
以下のようなカスタムスケールを作成し適用することができます。

カスタムスケールは、音のある1と、音のない0の12桁の数値で指定します。
以下の例では、どちらもCメジャーのスケールとなります。

@@ 1/8 120 {
|3||||:scale(C 101011010101):map(0..7)
|3||||:scale(C major):map(0..7)
}

ステップ機能

アルペジオを簡単に表現する機能です。
使い方次第ではアルペジオ以外でもエコ機能として使用できます。

ステップ機能の基本

noteに対して:step()で指定して括弧の中にどの弦を弾くかを記載します。

()内に指定するのは弦です
@@ 1/4 120 {
0|2|2|0|0|0:step((61)5432) // 複数弦を同時に弾く場合はさらに()で囲みます
0|2|2|0|0|0:step((61.)5432) // `.`で特定音長を伸ばせます
0|2|2|0|0|0:step((61.)5^4~32) // 接尾辞の音長調整も使えます
0|2|2|0|0|0:step((61.)5m4m3m2m) // ミュート音を指定できます
0|2|2|0|0|0:step(DuduDudu) // ブラッシング音を指定した場合、指定済み全弦が対象です
}

パート毎に音を残したくない場合Nを使用します

@@ {
0|2|2|0|0|0:step(5N4N3N2N)
0|2|2|0|0|0:step(5N432N):m // 前提としてミュート音にした上で`N`の使用もできます
}

stepの便利な使い方

同じ音を繰り返すようなフレーズにstepを使用するのに便利です

@@ 1/8 {
0|5|7:step(6m6m(54~)):map(*4)
}

弾丸記法

弦指定/{ハイフン区切りのフレット指定}のように簡素に記載可能です。

@@ 1/16 160 {
6/0m-0m-5-0-0m-0m-7-0
}
弾丸記法はstep機能と併用できません

スタッカート

:staccatoでnoteを歯切れ良く区切ることができます。
括弧には、音を切る位置を指定します。

@@ 1/4 120 {
C D E
}:staccato(3/4)

ディレイ

:delayで音を遅らせることができます。
括弧には、音を開始する位置を指定します。

@@ 1/4 120 {
C D E
}:delay(1/4)