Hi David,
2011/10/30 David Nalesnik <[email protected]>
> 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
[email protected]
https://lists.gnu.org/mailman/listinfo/lilypond-user