現在、私は次のようなlilypondコードを書いています。
\version "2.14.2"
P = #parenthesize
\relative c, {
\clef bass
<c \P c'> <e \P e'> <g \P g'>2 <c, \P c'>4 <d \P d'> <e \P e'>2
}
ここで繰り返し言うのは、「この音と 1 オクターブ上の同じ音を括弧で囲んだもの」という意味です。
これを省略して、次のように書けるようにしたいと思います。
\version "2.14.2"
poct = ...
\relative c, {
\clef bass
\poct c \poct e \poct g2 \poct c,4 \poct d \poct e2
}
私の以前の質問に対する有益な回答で示唆されているように、音楽機能を使用しようとしましたが、これを機能させる方法はありません。私が得ることができる最も近いのは
poct = #(define-music-function
(parser location note)
(ly:music?)
#{
<< $note \transpose c c \parenthesize $note >>
#})
しかし、これは<<
..>>
の代わりに<
..を使用します。これ>
は、私が望む方法でレンダリングされず (警告が表示されます)、\transpose c c
実際に何かを転置する理由がわかりません。
最後に、接線関係ですが、音楽関数を試してみると、模倣する音楽関数を作成するだけでは不可能であることがわかりました\repeat unfold 2
。次の例では、3 番目と 4 番目の間で 1 オクターブ下にジャンプしますc
。
\version "2.14.2"
double = #(define-music-function
(parser location note)
(ly:music?)
#{
$note $note
#})
\relative c, {
\clef bass
\double c \double e \double g2 \double c,4 \double d \double e2
}