Hi David, 2011/10/30 David Nalesnik <david.nales...@gmail.com>
> Hi Harm, > > I added (if (ly:stencil? (ly:stem::print grob)) ... to the function (and >> some construction-helpers, maybe deleted). Now it works with \change Staff, >> too. "2.15.13" or higher is still needed. >> > > All you need here is a call to ly:stem::print first; there's no need to > integrate it into the logic of the function. > > This is enough: > > #(define ((stem-length y) grob) > (ly:stem::print grob) ; this line must be present > (ly:grob-set-property! grob 'length y) > (ly:stem::print grob)) > > This doesn't work, though: > > #(define ((stem-length y) grob) > (let ((stencil (ly:stem::print grob))) > (ly:grob-set-property! grob 'length y) > stencil)) > Thanks to clearify this. > > Why is this? If you or anyone reading this can explain, I'd love to hear > the answer. > I've not a clue about it. > > >> Any idea how to change to make it work with "2.14.2"? >> > > I wasn't able to figure out how to use 'length on a single beamed stem > with 2.14.2. However, you can use the 'stem-end-position property here. > (It seems that this property is no longer available in 2.15.13.) So, in > 2.14.2, this line will get you what you want: > > \once \override Stem #'stem-end-position = #-8 > Works fine with "2.14.2" and \change Staff. But there is no effect in the following example. \version "2.14.2" { a'8 [ \once \override Score.Stem #'stem-end-position = #-80 a'] } Again, thanks a lot for all the work you've invested in my problems. Harm
_______________________________________________ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user