I think I found a good solution. This needs some more testing, but here
goes (see below). This with the overridden auto-knee-gap and damping
settings allows some dampening but will always clear one of the beam
sides out of the staff. So looks like all is accomplished: generally
getting the beams out of the staff, always keeping rests in the staff,
and some basic dampening!
Again... Many thanks... More soon if I run into snags.
#(define my-positions
(lambda (grob)
(let* ((default-pos (beam::place-broken-parts-individually grob))
(left-pos (car default-pos))
(right-pos (cdr default-pos))
(stems (ly:grob-object grob 'stems))
(first-stem (ly:grob-array-ref stems 0))
(dir (ly:grob-property first-stem 'direction))
(max-pos
(if (eq? dir UP)
(max left-pos right-pos)
(min left-pos right-pos)))
(pos-translate
(if (> (abs max-pos) 3.5)
0
(- 3.5 (abs max-pos)))))
(if (eq? dir UP)
(cons (+ left-pos pos-translate) (+ right-pos pos-translate))
(cons (- left-pos pos-translate) (- right-pos pos-translate))))))
\layout {
\context {
\Staff
\override Beam.auto-knee-gap = #10
\override Beam.damping = #3
\override Beam.positions = #my-positions
}
}
On 09/08/2016 11:13 AM, David Nalesnik wrote:
> On Thu, Sep 8, 2016 at 1:08 PM, David Nalesnik <[email protected]>
> wrote:
>
>> So, to get the positions of the note-heads under a Beam, you could
>> write something like:
> Appended as a file because of awkward line-breaks when inlining....
>
> David
_______________________________________________
lilypond-user mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/lilypond-user