[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Changing Laissez Vibrer ties for chords
From: |
Thomas Morley |
Subject: |
Re: Changing Laissez Vibrer ties for chords |
Date: |
Sun, 27 Mar 2016 21:50:11 +0200 |
2016-03-27 21:05 GMT+02:00 Simon Albrecht <address@hidden>:
> On 27.03.2016 06:09, dtsmarin wrote:
>>
>> Please I need some help..this code doesn't work for me. Version 2.19.38
>
>
>> --
>> View this message in context:
>> http://lilypond.1069038.n5.nabble.com/Changing-Laissez-Vibrer-ties-for-chords-tp170717p189016.html
>> Sent from the User mailing list archive at Nabble.com.
>
>
> Dimitris,
>
> many people, like I, don’t use the Nabble interface, and for them this
> e-mail will not make any sense without it’s context.
Up to now I didn't receive the quoted mail, neither a look at
http://lilypond.1069038.n5.nabble.com/
nor
http://lists.gnu.org/archive/html/lilypond-user/2016-03/index.html
is successful.
> You’re much likely to
> get help if you start a new thread, include an actual code example
> (referring where you got it from, and what it should do), and tell us what
> exactly happens that it fails to meet expectations.
+1
> I’ve done that for you:
Thanks.
> The following code
>
> %%%%%%%%%%%%%%%%
>
> \version "2.19.25"
>
> shapeLVTieColumn =
> #(define-music-function (parser location all-offsets) (list?)
> #{
> \override LaissezVibrerTieColumn.before-line-breaking =
> #(lambda (grob)
> (let ((ties (ly:grob-array->list (ly:grob-object grob 'ties))))
> (for-each
> (lambda (tie offsets)
> (set! (ly:grob-property tie 'control-points)
> (map
> (lambda (x y) (coord-translate x y))
> (ly:tie::calc-control-points tie)
> offsets)))
> ties all-offsets)))
> #})
>
>
> \relative c, {
> \time 3/4
> \key a \major
> \clef bass
> \shapeLVTieColumn #' (
> ((1 . 0) (2 . 0) (3 . 0) (17 . 0))
> ((1 . 0) (2 . 0) (3 . 0) (4 . 0))
> )
> <a a'>2. \laissezVibrer |
> }
> %%%%%%%%%%%%%%%%%%%%
>
> works fine with v2.19.16, but with 2.19.25 I get an error:
>
> document.ly:14:21: In procedure ly:calc-control-points in expression
> (ly:tie::calc-control-points tie):
> document.ly:14:21: Wrong type argument in position 1 (expecting Wrong kind
> of Grob): #<Grob LaissezVibrerTie >
>
> And now someone who knows how the behaviour of ly:tie::calc-control-points
> has changed can chime in and give a solution.
>
> Best, Simon
\version "2.19.36"
shapeLVTieColumn =
#(define-music-function (parser location all-offsets) (list?)
#{
\override LaissezVibrerTieColumn.before-line-breaking =
#(lambda (grob)
(let ((ties (ly:grob-array->list (ly:grob-object grob 'ties))))
(for-each
(lambda (tie offsets)
(set! (ly:grob-property tie 'control-points)
(map
(lambda (x y) (coord-translate x y))
(ly:semi-tie::calc-control-points tie)
;(ly:tie::calc-control-points tie)
offsets)))
ties all-offsets)))
#})
\relative c, {
\time 3/4
\key a \major
\clef bass
\shapeLVTieColumn #' (
((1 . 0) (2 . 0) (3 . 0) (17 . 0))
((1 . 0) (2 . 0) (3 . 0) (4 . 0))
)
<a a'>2. \laissezVibrer |
}
2.18. worked with both, newer devel-version are a bit more "picky",
insisting on absolutely correct settings/syntax.
Cheers,
Harm