LilyPondにおける1カッコ/2カッコによる繰り返し表現は大域的な指定であるため、
Museでのスルー指定に多少のコツが必要ではあるが問題なく実現できる。

以下の楽譜を例にしてその指定方法を示す。
#ref(1-2braket.png)

まず、LilyPondを意識しない段階のMuse側演奏データは以下のとおりである。
#ref(raw.png)
 #A0 m4fsl
 #B0 d4rmf
 %
 $Rep{
 #A0 s4sss llll
 #B0 d2m   f2r
 }
 %
 #A0 s4ls2
 #B0 m4rdm
 %
 ${Rep}
 %
 #A0 c4lsf
 #B0 m4fdr
 %
 #A0 m1
 #B0 d1

ここで、マクロによる繰り返し部分の楽譜を出力しないよう抑止する。
#ref(no-macro.png)
 #A0 m4fsl
 #B0 d4rmf
 %
 $Rep{
 #A0 s4sss llll
 #B0 d2m   f2r
 }
 %
 #A0 s4ls2
 #B0 m4rdm
 %
 *LILY"-($)"	;←マクロ部分の楽譜出力を抑止
 ${Rep}
 %
 *LILY"+($)"	;←再開
 #A0 c4lsf
 #B0 m4fdr
 %
 #A0 m1
 #B0 d1

一方、LilyPondそのもののカッコ付き反復記号の文法は以下のとおりである。
#ref(lily-8e4a0fe3.png)
  	\repeat volta 2 { c4 d e f }
 ◆	\alternative {
 :	  { c2 e }
 ぁ	  { f2 g }
 ァ	}
 Α	c1

Museデータの#A0フィンガーに、スルー指定にて上記LilyPondの文法を挿入していく
上記LilyPondの文法を、スルー指定にてMuseデータの#A0フィンガーに挿入していく
 #A0 m4fsl
 #B0 d4rmf
 %
 #A0 "\repeat volta 2 {"	;←
 $Rep{
 #A0 s4sss llll
 #B0 d2m   f2r
 }
 %
 #A0 "}"			;←
 #A0 "\alternative {"	;←
 #A0 "{"			;←
 #A0 s4ls2
 #A0 "}"			;←
 #B0 m4rdm
 %
 *LILY"-($)"		;←マクロ部分の楽譜出力を抑止
 ${Rep}
 %
 *LILY"+($)"		;←再開
 #A0 "{"			;←
 #A0 c4lsf
 #A0 "}"			;←
 #A0 "}"			;←
 #B0 m4fdr
 %
 #A0 m1
 #B0 d1
これで、カッコ付き反復記号の楽譜をMuseデータからエクスポートできる。
#ref(braket.png)

なお、連続するスルー指定を集約しながら元のフィンガー行にスルー指定を埋め込むことで上記のコーディング量を削減した改良例を以下に示す。(★印が集約行)~
この場合でも、楽譜の出力結果は一致する。
 #A0 m4fsl
 #B0 d4rmf
 %
 #A0 "\repeat volta 2 {"			;←
 $Rep{
 #A0 s4sss llll
 #B0 d2m   f2r
 }
 %
 #A0 "} \alternative { {" s4ls2 "}"	;←´↓★
 #B0 m4rdm
 %
 *LILY"-($)"				;←マクロ部分の楽譜出力を抑止
 ${Rep}
 %
 *LILY"+($)"				;←再開
 #A0 "{" c4lsf "} }"			;←きァ
 #B0 m4fdr
 %
 #A0 m1
 #B0 d1

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Google