lilypond-user
[Top][All Lists]
Advanced

[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



reply via email to

[Prev in Thread] Current Thread [Next in Thread]