Hi guys, As far as I understood, the tie Vicente is talking about is the one attached... Cheers, Pierre
Le mar. 14 mai 2019 à 15:02, Ben <[email protected]> a écrit : > > On 5/14/2019 6:22 AM, Andrew Bernard wrote: > > Hello Vincente, > > You can use LSR 715 by Robin Bannister to extend LV's. > > Thomas Morley wrote the following to help me do more extensive things with LV > ties. If you need help in this or to see some examples, just ask. This may be > more powerful than you require. > > Andrew > > %==== > > % adjust laissezVibrer ties > % From Thomas Morley > > > affect-LaissezVibrerTies = > #(define-music-function (x-start amount) > ((list? (circular-list #f)) number?) > " > Extends @code{LaissezVibrerTie}s by @var{amount}. > Example: > > @verbatim > { > \\affect-LaissezVibrerTies #2 > <fis' cis'' a''>2\\laissezVibrer > } > @end verbatim > > If @var{x-start} is specified, the start of a single @code{LaissezVibrerTie} > may be tweaked. The numeric value of this element of @var{x-start} determines > the amount of the offset. > @code{LaissezVibrerTie}s which should not be tweaked are to be specified with > @code{#f} > Example: > > @verbatim > { > \\affect-LaissezVibrerTies #'(#f 1 #f) #2 > <fis' cis'' a''>2\\laissezVibrer > } > @end verbatim > " > #{ > \once > \override LaissezVibrerTieColumn #'before-line-breaking = > #(lambda (grob) > (let* ((ties (ly:grob-array->list (ly:grob-object grob 'ties))) > (c-ps > (map > (lambda (tie) (ly:grob-property tie 'control-points)) > ties)) > (directions > (map > (lambda (tie) (ly:grob-property tie 'direction)) > ties)) > (first-cps > (map > (lambda (c-p) (first c-p)) > c-ps)) > (second-cps > (map > (lambda (c-p) (second c-p)) > c-ps)) > (third-cps > (map > (lambda (c-p) (third c-p)) > c-ps)) > (fourth-cps > (map > (lambda (c-p) (fourth c-p)) > c-ps)) > (new-first-cps > (for-each > (lambda (first-cp x) > (if (number? x) > (set-car! first-cp (+ (car first-cp) x)))) > first-cps x-start)) > ;; TODO: > ;; Several hardcoded values following here. > ;; Find better dependencies!! > (new-second-cps > (for-each > (lambda (second-cp x dir) > (let ((val (if (number? x) x 0.4))) > (set-car! > second-cp > (+ (car second-cp) (* val 1.2))) > (set-cdr! > second-cp > (+ (cdr second-cp) (min (* dir (/ amount 10)) 0.3))))) > second-cps x-start directions)) > (new-third-cps > (for-each > (lambda (third-cp x dir) > (let ((val (if (number? x) 0.2 0.4))) > (set-car! > third-cp > (+ (car third-cp) (- amount val))) > (set-cdr! > third-cp > (+ (cdr third-cp) (min (* dir (/ amount 10)) 0.3))))) > third-cps x-start directions)) > (new-fourth-cps > (for-each > (lambda (fourth-cp) > (set-car! fourth-cp (+ (car fourth-cp) amount))) > fourth-cps))) > > (for-each > (lambda (tie first-cp second-cp third-cp fourth-cp) > (ly:grob-set-property! tie 'control-points > (list first-cp second-cp third-cp fourth-cp))) > ties first-cps second-cps third-cps fourth-cps))) > #}) > > > > %==== > > > On Tue, 14 May 2019 at 18:23, Vicente Sanches <[email protected]> > wrote: >> >> How can I input that l.v. ("let vibrate") tie used generally with timpani >> and mallets such as vibraphone em marimba? >> >> Tried to use open and closed parentheses without notes inside, but it didn't >> work. >> >> Example in the link bellow just in the 1st seconds of the video, in the 4th >> and 5th measures: >> >> https://www.youtube.com/watch?v=VEMyj-8I3pw >> >> > > I use Harm's function all the time, it works very well. > > Robin's snippet #715 is also handy on-the-fly for sure, but for certain > applications it needs a little more tweaking. > > For example, the l.v. ties are touching noteheads on a lot of chords, so > you'd need to simply adjust the LaissezVibrerTie.details.note-head-gap each > time - which may get to be a hassle if this happens a lot across your score > in different settings. :) > > \version "2.19.83" > > > extendLV = > #(define-music-function (parser location further) (number?) > #{ > \once \override LaissezVibrerTie.X-extent = #'(0 . 0) > \once \override LaissezVibrerTie.details.note-head-gap = #(/ further -2) > \once \override LaissezVibrerTie.extra-offset = #(cons (/ further 2) 0) > #}) > > \relative c' { > \extendLV #2.5 > e8 \laissezVibrer r16 r8 > \extendLV #1 < c e g b >4\laissezVibrer > } > > > %%%%%%% > > % Harm's > > \affect-LaissezVibrerTies #1 < c e g b >4\laissezVibrer > > (see attached) > > HTH > > > _______________________________________________ > lilypond-user mailing list > [email protected] > https://lists.gnu.org/mailman/listinfo/lilypond-user
_______________________________________________ lilypond-user mailing list [email protected] https://lists.gnu.org/mailman/listinfo/lilypond-user
