1

こちらのスニペットのドキュメントにあるように、ギターのスライドの音符とコードにグリッス ラインを追加するプロセスを自動化したいと考えています( でマークされたものを参照してください\afterGrace)。

そこにあるので、目に見えない装飾音符のためのスペースを保持しますが、そこにある必要はありません。以下は、これまでに思いついた機能です。

fall = #(define-music-function (inputA) (ly:music?)
    (define gliss (ly:music-deep-copy inputA))
    (define grace (ly:music-deep-copy inputA))
        (set! (ly:music-property gliss 'articulations)
          (cons (make-music (quote GlissandoEvent))
                (ly:music-property gliss 'articulations)))
    #{
        \afterGrace $gliss
        \transpose c g, {
            \once \omit Stem
            \once \omit Flag
            \once \omit Accidental
            \once \hideNotes
            $grace
        }
    #})

変数に を追加すると機能しないため、scheme を使用してグリスを手動で追加\glissandoします。

目に見えない恵みによって生じたスペースを取り除くにはどうすればよいですか?

4

1 に答える 1

2

ややハックな感じがしますが、なんとか解決策を見つけることができました:

    #{
        \afterGrace 16/16
        ...

16/16まず、装飾音符をできるだけ右に移動するを追加しました。

        \transpose c g, {
            ...
            \once \override NoteHead.font-size = #-50
            $grace
        }
    #})

次に、符頭のフォント サイズを極小値にオーバーライドして、それを非表示にしました。

于 2019-02-01T10:27:41.427 に答える