lilypond-user
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Editorial ties in scheme


From: Mike
Subject: Editorial ties in scheme
Date: Sat, 2 Jun 2012 11:10:58 +0100
User-agent: Mutt/1.5.18 (2008-05-17)

This is my first attempt at scheme hacking and I would appreciate a little
help.

What I am trying to do is implement editorial ties ( a small vertical line mid
tie).  I can find the X mid point easily enough, but cannot work out how to
find the Y position (relative to currentpoint). I've tried looking at Y-extent
but that gives a 'still calculating' error.

The second question is how best to integrate this into the user language?  The
score I am working on has many, many ties, about a quarter of which are
editorial, so it would be nice to be able to switch between them easily.

{
   \override Tie #'stencil = #(lambda(grob)
                (let* (
                       (tie-stencil (ly:tie::print grob))
                       (cpoints (ly:grob-property grob 'control-points))
                       ; (Xpoint3-Xpoint0) / 2 + Xpoint0
                       (mid-tie 
                        (+(car(list-ref cpoints 0))
                                ( / (- (car(list-ref cpoints 3)) 
                                (car( list-ref cpoints 0))) 2)))
                       (ps (format #f "gsave
                            currentpoint translate
                            newpath
                            0.2 setlinewidth
                            ~s -2.3 moveto
                            0 0.5 rlineto
                            stroke
                            grestore" mid-tie))

                       (tick-stencil(ly:make-stencil(list 'embedded-ps ps )
                                     (cons 0 1)(cons -1 -1)))
                      )

                      (ly:stencil-add tie-stencil tick-stencil)
                      )
                      )


                              g'1~g'
}


Thanks,
        Mike

PS: list server *seems* to be swallowing posts: apologies if this appears
several times. Or maybe I am too impatient.



reply via email to

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