Daniel Rosen | 28 Oct 07:28 2012
Picon

Modified laissez vibrer ties

Is there a way to extend laissez vibrer ties so that they stop just short of the barline, as in the attached
example? I can't seem to find a way that doesn't involve manually adjusting control points.

DR

_______________________________________________
lilypond-user mailing list
lilypond-user <at> gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user
Janek Warchoł | 28 Oct 08:31 2012
Picon

Re: Modified laissez vibrer ties

On Sun, Oct 28, 2012 at 7:28 AM, Daniel Rosen <drosen27 <at> gmail.com> wrote:
> Is there a way to extend laissez vibrer ties so that they stop just short of the barline,
> as in the attached example? I can't seem to find a way that doesn't involve manually adjusting control points.

You may consider using a trick: create ties attached to hidden notes.
See http://lilypond.org/doc/v2.14/Documentation/notation/inside-the-staff#hidden-notes

hth,
Janek
Daniel Rosen | 28 Oct 08:44 2012
Picon

RE: Modified laissez vibrer ties

I did consider that; the problem is those ties go _over_ the barline instead of stopping just short, so
they'd still need to be adjusted manually.

DR


-----Original Message-----
From: Janek Warchoł [mailto:janek.lilypond <at> gmail.com] 
Sent: Sunday, October 28, 2012 3:31 AM
To: Daniel Rosen
Cc: lilypond-user <at> gnu.org
Subject: Re: Modified laissez vibrer ties

On Sun, Oct 28, 2012 at 7:28 AM, Daniel Rosen <drosen27 <at> gmail.com> wrote:
> Is there a way to extend laissez vibrer ties so that they stop just 
> short of the barline, as in the attached example? I can't seem to find a way that doesn't involve manually
adjusting control points.

You may consider using a trick: create ties attached to hidden notes.
See http://lilypond.org/doc/v2.14/Documentation/notation/inside-the-staff#hidden-notes


hth,
Janek
_______________________________________________
lilypond-user mailing list
lilypond-user <at> gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user
Janek Warchoł | 28 Oct 08:50 2012
Picon

Re: Modified laissez vibrer ties

On Sun, Oct 28, 2012 at 8:44 AM, Daniel Rosen <drosen27 <at> gmail.com> wrote:
> I did consider that; the problem is those ties go _over_ the barline instead of stopping just short, so
they'd still need to be adjusted manually.

Not if you scale the durations:
{ r2 <b' d'' g''>2*7/8 ~ \hideNotes q2*1/8 \unHideNotes R1 }
but i admit that it doesn't look perfect.

Janek
David Kastrup | 28 Oct 11:07 2012
X-Face
Picon
Picon

Re: Modified laissez vibrer ties

Daniel Rosen <drosen27 <at> gmail.com> writes:

> I did consider that; the problem is those ties go _over_ the barline
> instead of stopping just short, so they'd still need to be adjusted
> manually.

I tried using normal ties to invisible notes after the barline and
tweaking to-barline in order to have them stop short.  I have not been
able to make to-barline have any effect, though.

Huh.

--

-- 
David Kastrup
Trevor Daniels | 28 Oct 17:46 2012
Picon

Re: Modified laissez vibrer ties


David Kastrup wrote Sunday, October 28, 2012 10:07 AM

> Daniel Rosen <drosen27 <at> gmail.com> writes:
> 
>> I did consider that; the problem is those ties go _over_ the barline
>> instead of stopping just short, so they'd still need to be adjusted
>> manually.
> 
> I tried using normal ties to invisible notes after the barline and
> tweaking to-barline in order to have them stop short.  I have not been
> able to make to-barline have any effect, though.

Not very elegant, but this might be a possibility:

\relative c'' {
  \override Slur #'to-barline = ##t
  a1*3/4( \once \hideNotes a4) a1
}

or, if you prefer,

\relative c'' {
  a1*3/4 -\tweak #'to-barline ##t ( \once \hideNotes a4) a1
}

Unlike hairpins, 'to-barline for Slurs seems to extend the slur to the 
_next_ bar line rather than stopping it short at the previous one.
And the hidden note seems to require a non-zero duration too.

(Continue reading)

Daniel Rosen | 29 Oct 15:55 2012
Picon

RE: Modified laissez vibrer ties

Never mind--I found the solution: http://lsr.dsi.unimi.it/LSR/Item?id=794

I only just discovered the LSR, so I completely forgot to check there before bothering everyone here. Oops. :-P

DR

-----Original Message-----
From: Trevor Daniels [mailto:t.daniels <at> treda.co.uk] 
Sent: Sunday, October 28, 2012 12:46 PM
To: lilypond-user <at> gnu.org; David Kastrup; Daniel Rosen
Subject: Re: Modified laissez vibrer ties

David Kastrup wrote Sunday, October 28, 2012 10:07 AM

> Daniel Rosen <drosen27 <at> gmail.com> writes:
> 
>> I did consider that; the problem is those ties go _over_ the barline 
>> instead of stopping just short, so they'd still need to be adjusted 
>> manually.
> 
> I tried using normal ties to invisible notes after the barline and 
> tweaking to-barline in order to have them stop short.  I have not been 
> able to make to-barline have any effect, though.

Not very elegant, but this might be a possibility:

\relative c'' {
  \override Slur #'to-barline = ##t
  a1*3/4( \once \hideNotes a4) a1
}
(Continue reading)

Nick Payne | 28 Oct 09:45 2012
Picon

Re: Modified laissez vibrer ties

On 28/10/12 17:28, Daniel Rosen wrote:
> Is there a way to extend laissez vibrer ties so that they stop just short of the barline, as in the attached
example? I can't seem to find a way that doesn't involve manually adjusting control points.

You can change the default length of LV ties to make them longer, though
they won't adjust their length to scale to the next barline:

\version "2.16.0"

#(define ((alter-lv-tie-curve offsets) grob)
    (let ((coords (ly:semi-tie::calc-control-points grob)))
        (define (add-offsets coords offsets)
            (if (null? coords)
            '()
            (cons
                (cons (+ (caar coords) (car offsets))
                    (+ (cdar coords) (cadr offsets)))
                (add-offsets (cdr coords) (cddr offsets)))))
        (add-offsets coords offsets)))

xlv = \override LaissezVibrerTie #'before-line-breaking = #(lambda (grob)
        (set! (ly:grob-property grob 'control-points)
        (if (= UP (ly:grob-property grob 'direction))
            ((alter-lv-tie-curve '(0 0 0.75 0.7 2.25 0.7 3 0)) grob)
            ((alter-lv-tie-curve '(0 0 0.75 -0.7 2.25 -0.7 3 0)) grob))))

\relative c' {
  \xlv
  c1 <c d>\laissezVibrer c
}
(Continue reading)


Gmane