{note1 (Accidentals1)(length)(Tai/Slur|,Gatetime)(octave)note2(Accidentals2)}
{note1 (Accidentals1)(octave)note2(Accidentals2)}(length)(Tai/Slur|,Gatetime)
音名以外は省略可能です。
length, Tai/Slur,Gatetimeの記述位置は、開始音程の直後及び、`}'の直後の何れでも可です。
ポルタメントの開始音程です。
ポルタメントの開始音程の臨時記号です(省略可)。
ポルタメント先の音程です。
note1と同様に指定してください。
ポルタメント先の音程の臨時記号です(省略可)。
Accidentals1と同様に指定してください。
ポルタメント先への相対オクターブです(省略可)。
複数指定きます。
音長。
length分音符となります。
.
を付与することで付点の音長を表現可能です。
この.
は複数指定可能です。
付点のみを付けた場合は、lコマンドで指定した数値に付点が付いた音長となります。
数値の頭に%
を記述した場合は、length[Tick]の長さとなります。
また、演算子 +
及び -
を用いて音長の加減算が可能です。
lengthを省略時は、lコマンドで指定した数値が適用されます。
&
を記述する事で、タイ(次の音と繋げる)・スラー(次の音と滑らかに繋げる)を意味します。
音源ドライバー内部では、この音符ではKey-Off処理をせず、次の音符ではKey-On処理をしません。
ゲートタイム(実際に発音する長さ)を指定します。
指定した場合、q, uコマンドのゲートタイムに優先されます。
0はゲートタイム無効で、lengthの長さで発音します。
引数lengthと同様の指定が可能です。
指定の音長でポルタメントをかけます。
MMLコンパイラの疑似命令で、このコマンドはコンパイル時にPコマンドに変換します。
Pコマンドでは、フレーム単位で指定となりますが、本コマンドにおいて音長(tick)単位の記述を可能とするため、
MMLファイルとして以前に記述されたテンポコマンド(他のトラックを含む)の数値から、長さの算出を行います。
『変化量(半音単位)×16』より、『フレーム長』が大きい場合は、Pコマンドのdepthを1か-1に固定し、rateを可変します。
『変化量(半音単位)×16』より、『フレーム長』が小さい場合は、Pコマンドのrateを1に固定し、depthを可変します。
※以下4つのポルタメントは、全て同じ意味です。
{c#2&>c#} c#2 /* Octave Portamento */
{c#2>c#}& c#2 /* Octave Portamento */
{c#&>c#}2 c#2 /* Octave Portamento */
{c#>c#}2& c#2 /* Octave Portamento */