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.

_______________________________________________
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user

Reply via email to