lilypond-user
[Top][All Lists]
Advanced

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

Re: Guidance on the repeated slur in \volta 2


From: Jean Abou Samra
Subject: Re: Guidance on the repeated slur in \volta 2
Date: Thu, 27 Oct 2022 23:19:57 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.3.1



Le 27/10/2022 à 23:06, Volodymyr Prokopyuk a écrit :
Hello,

When working with the manually shaped slurs using the \tweak control-points approach, I've got the right output, but with the following programming error: bounds of this piece aren't breakable that always happens when the shaped slur is attached to the last note in a measure.

*Minimal failing example*

\version "2.23.14"

\relative {
  \repeat volta 2 {
    g'1( |
    \alternative {
      \volta 1 { g2 g) | }
      \volta 2 {
        g2 g
        \tweak control-points
          #'((-5.5 . -3.0) (-3.5 . -3.0) (-1.5 . -3.0) (-0.3 . -2.0)) ( <>)
        \bar "|."
      }
    }
  }
}


The output is rendered, but with the below programming error

GNU LilyPond 2.23.14 (running Guile 2.2)
Processing `shaped-slur.ly <http://shaped-slur.ly>'
Parsing...
Interpreting music...
Preprocessing graphical objects...
Finding the ideal number of pages..
Fitting music on 1 page...
Drawing systems...
shaped-slur.ly:10:9: programming error: bounds of this piece aren't breakable.

        \tweak control-points
shaped-slur.ly:10:9: continuing, cross fingers
Converting to `shaped-slur.pdf'...
Success: compilation successfully completed

*Minimal working example*
*
*
However,/if there is a rest/ after the note with the attached shaped slur, there is no programming error

\version "2.23.14"

\relative {
  \repeat volta 2 {
    g'1( |
    \alternative {
      \volta 1 { g2 g) | }
      \volta 2 {
        g2 g4
        \tweak control-points
          #'((-5.5 . -3.0) (-3.5 . -3.0) (-1.5 . -3.0) (-0.3 . -2.0)) ( <>) r
        \bar "|."
      }
    }
  }
}

What is the reason for the programming error in the failing example? Is there a way to get the output from the failing example, but without the programming error?




This sounds like this issue in the LilyPond bug tracker:

https://gitlab.com/lilypond/lilypond/-/issues/6232

When you do

\version "2.23.80"

{ c'( <>) c' }

this is equivalent to

\version "2.23.80"

{ c'( c') }


In other words, using the empty chord <> attaches the event at
the same moment as the notes that follow this empty chord. Now,
in

{ c'( <>) }

you are conceptually attaching the end of the slur to some
non-existent note after the end of the piece. I understand
the request that it should work, but I think it's not very
surprising that it doesn't work.

If I were you, I would just use \repeatTie and \shape.
You are already using \shape, so the default layout
of \repeatTie that looks like a tie and not like a slur
is not so problematic.

Best,
Jean




reply via email to

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