lilypond-user
[Top][All Lists]
Advanced

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

Re: automatic beaming of tuplets only - is this possible ?


From: Eby Mani
Subject: Re: automatic beaming of tuplets only - is this possible ?
Date: Tue, 21 Nov 2017 14:33:52 +0000 (UTC)

Hi Ben, is there a similar snippet available for ly 2.16. ?. Thanks.
--------------------------------------------
On Tue, 21/11/17, Ben <address@hidden> wrote:

 Subject: Re: automatic beaming of tuplets only - is this possible ?
 To: address@hidden
 Date: Tuesday, 21 November, 2017, 11:36 AM
 
 
     On 11/21/2017 1:14 AM, Eby Mani wrote:
 
     
       Hi All, I couldn't find how achieve the
 following, i tried fiddling with \set Timing and
 \overrideTimeSignatureSettings related commands for
 beaming.
 
 1, Automatically replace tuplet bracket with a slur.
 
     
     
 
     Eby,
 
     
 
     Does this help you? This code makes the bracket in
 tuplets into a
     curved slur.
 
     
 
 http://lilypond.1069038.n5.nabble.com/Tuplets-curved-brackets-td207326.html
 
     
 
     (image)
 
     http://lilypond.1069038.n5.nabble.com/attachment/207328/0/curved.png
 
     
 
     %%%%%%%%
 
      tupletBracketToSlur
       = {
 
        % Use slur-stencil
 
        \override TupletBracket.stencil
       = #ly:slur::print
 
        %% Use 'thickness from Slur
 
        \override TupletBracket.thickness
       = #1.2
 
        %% 'control-points need to be
 set
 
        \override TupletBracket.control-points
       =
 
          #(lambda (grob)
 
            (let* ((x-pos (ly:grob-property grob
 'X-positions))
 
                   (pos (ly:grob-property
 grob 'positions))
 
                   (x-ln (interval-length
 x-pos))
 
                   (dir (ly:grob-property
 grob 'direction))
 
                   ;; read out the height
 of the TupletBracket, may
 be
 
                   ;; negative!
 
                   (height (- (cdr pos)
 (car pos)))
 
                   ;; height-corr is
 introduced because sometimes
       the shape
 
                   ;; of the slur needs to
 be adjusted.
 
                   ;; It is used in the
 2nd/3rd control-point.
 
                   ;; The value of 0.3 is
 found by trial and error
 
                   (height-corr (* 0.3 dir
 height))
 
                   (edge-height
 (ly:grob-property grob 'edge-height
 
     
                           
 '(0.7 . 0.7)))
 
                   (pad 1.0))
 
              (list
 
                ;; first cp
 
                (cons
 
                  (+ (car x-pos)
 0.5)
 
                  (- (+ (* dir pad) (+ (car
 pos) (* -1 dir
 
                           (car
 edge-height))))
 
                    (if (= dir
 -1)
 
                        (if (>
 height 3)
 
                          (/ dir
 2.0)
 
                         
 0.0)
 
                        (if (<
 height -3)
 
                          (/ dir
 2.0)
 
                         
 0.0))))
 
                ;; second cp
 
                (cons
 
                  (+ (car x-pos) (* x-ln
 1/4))
 
                  (+ (* dir pad) (+ (car
 pos) (* dir (+ 0.5
       height-corr)))))
 
                ;; third cp
 
                (cons
 
                  (+ (car x-pos) (* x-ln
 3/4))
 
                  (+ (* dir pad) (+ (cdr
 pos) (* dir (- 0.5
       height-corr)))))
 
                ;; fourth address@hidden,
 
                (cons
 
                  (- (cdr x-pos)
 0.5)
 
                  (+ (* dir pad) (+ (cdr
 pos) (* -1 dir (cdr
       edge-height)))))
 
              )))
 
        \override TupletBracket.staff-padding
       = #'()
 
        #(define (invert-direction x) (if (eq?
 UP
 
      (ly:tuplet-bracket::calc-direction
       x)) DOWN UP))
 
      \override TupletBracket.direction
       = #invert-direction
 
      }
 
      
 
      
 
      \layout { \tupletBracketToSlur
       }
 
      
 
      { a a \tuplet
       3/2 { a8 a a }  a4 } 
 
     
 
     
 
  
 _______________________________________________
 lilypond-user mailing list
 address@hidden
 https://lists.gnu.org/mailman/listinfo/lilypond-user
 
 -----Inline Attachment Follows-----
 
 


reply via email to

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