\
version "2.18.2"
\relative c' {
\override Score.TimeSignature.stencil = #'()
\cadenzaOn
\override MultiMeasureRest.expand-limit = #0
\override MultiMeasureRest.minimum-length = #20
r1*6/4 c4 d c f c c' bes f
\override MultiMeasureRest.expand-limit = #0
\override MultiMeasureRest.minimum-length = #20
r1*7/4 \cadenzaOff
}
Liebe Freunde,
in einer mehrstimmigen Kadenz möchte ich gerne die "Freiräume" mit einem ordentlichen Balken füllen.
Ist das ein erfüllbarer Wunsch?
Ein ungefähres, noch unfertiges Bild hängt an...
Gruß
Christa
Du kannst keine MultiMeasureRest in einer Kadenz verwenden. Eine MehrTaktPause in einem Abschnitt zu verwenden in dem keine Takte da sind ist nicht möglich und wäre auch widersinnig.
Dein Code-Beispiel zeigt auch keine.
LilyPond differenziert zwischen einfachen Pausen, deren Länge frei wählbar ist und MehrTaktPausen, die immer einen Takt lang sind (oder vielfaches von einem Takt)
Falls Du solch einen "Balken" haben willst so mußt Du es faken.
Schnell zusammen gekloppt und auf den TextSpanner geschmissen:
\version "2.18.2"
#(define (my-stil grob)
;; TODO
;; take values from grob-properties, grob-layout etc
;; check calculations
;; support line-break?
(let* ((stil-ext
(interval-widen
(ly:stencil-extent (ly:line-spanner::print grob) X)
(ly:grob-property grob 'bound-padding 0)))
(thick-thick 1)
(hair-thick 0.1)
(staff-space 1)
(line-thick 1) ;; slt 0.1
(width (max 3 (interval-length stil-ext)))
(y-thick (* line-thick staff-space))
(y (* (/ (* 0.75 thick-thick) 2) staff-space))
(x-ext (cons 0 (max 0 (* (- width 2) y-thick))))
(y-ext (cons (- y) y))
(blot 0)
(b (ly:round-filled-box x-ext y-ext blot))
(yb (ly:round-filled-box (cons -0.1 0.1)
(cons (- staff-space) staff-space) blot)))
(ly:stencil-translate-axis
(ly:stencil-aligned-to
(ly:stencil-combine-at-edge
(ly:stencil-combine-at-edge
b X RIGHT yb 0)
X LEFT yb 0)
Y CENTER)
(car stil-ext)
X)))
{
\time 4/4
\cadenzaOn
\override TextSpanner.bound-padding = -1.5
\override TextSpanner.Y-offset = #'()
\override TextSpanner.outside-staff-priority = #'()
\override TextSpanner.stencil = #my-stil
\override TextSpanner.bound-details.left.padding = #3
\override TextSpanner.bound-details.right.padding = #0
\hide Rest
c''1\startTextSpan
r1*8
c''1\stopTextSpan
}
Gruß,
Harm
Hallo Harm,
wunderbar - danke! Ich kann dich und alle anderen Nothelfer nur bewundern.
Gruß
Christa