\version "2.19.83"
{\parenthesize <g' c'' e''>8}
Ich finde es sieht etwas doof aus, wenn jede Note eingeklammert ist. Kann man den Akkord mit einer Klammer einklammern?
Hallo,
ich kenne keine gute Methode Akkorde einzuklammern.
Du könntest nur eine Note einklammern und dann das ParenthesesItem tweaken, bis es den ganzen Akkord umspannt.
Ist lästig...
Auch lästig und ebenfalls mit Nachteilen behaftet ist folgendes (aber zumindest ein klein wenig komfortabler):
foo =
#(define-music-function (y-pos-add style x-off)((pair? '(0 . 0))(symbol? 'slur)
number?)
#{
\once \override Arpeggio.stencil =
#(lambda (grob)
(ly:grob-set-property! grob 'positions
(let* ((y-pos (ly:grob-property grob 'positions)))
(cons
(+ (car y-pos) (car y-pos-add))
(+ (cdr y-pos) (cdr y-pos-add)))))
(case style
((slur) (ly:grob-set-property! grob 'X-extent '()))
((bracket) (ly:grob-set-property! grob 'X-extent '()))
(else '()))
(let* ((stil
(case style
((slur) (ly:arpeggio::brew-chord-slur grob))
((bracket) (ly:arpeggio::brew-chord-bracket grob))
(else (ly:arpeggio::print grob)))))
(ly:stencil-add
stil
(ly:make-stencil
(ly:stencil-expr
(ly:stencil-translate-axis
(ly:stencil-rotate stil 180 0 0)
x-off
X))
'(0 . 0)
'(0 . 0)))))
<>\arpeggio
#})
chrdI = <g' c'' e''>8
chrdII = <gis' cis'' eis''>8
chrdIII = <gis' cis'' eis''>8..
{
\autoBeamOff
\foo #2.8 \chrdI
s
\foo #'(-1 . 1) #3 \chrdI
s
\override Arpeggio.padding = 1
\foo #'(-1 . 0.5) bracket #2.5 \chrdI
}
{
\autoBeamOff
\accidentalStyle forget
\once \override Arpeggio.padding = 4
\foo #6.3 \chrdII
s4
\once \override Arpeggio.padding = 3.5
\foo #'(-1 . 1) #5.8 \chrdII
s4
\once \override Arpeggio.padding = 4
\foo #'(-1 . 0.5) bracket #5.6 \chrdII
}
{
\autoBeamOff
\accidentalStyle forget
\once \override Arpeggio.padding = 4
\foo #8 \chrdIII
s2
\once \override Arpeggio.padding = 3.5
\foo #'(-1 . 1) #7.3 \chrdIII
s2
\once \override Arpeggio.padding = 4
\foo #'(-1 . 0.5) bracket #7.3 \chrdIII
}
Gruß,
Harm