[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: cadenza followed by a MMR is buggy
From: |
Thomas Morley |
Subject: |
Re: cadenza followed by a MMR is buggy |
Date: |
Sat, 16 Jan 2021 00:58:19 +0100 |
Am Fr., 15. Jan. 2021 um 02:36 Uhr schrieb Dan Eble <dan@faithful.be>:
>
> On Jan 14, 2021, at 19:13, Dan Eble <dan@faithful.be> wrote:
> >
> > On Jan 14, 2021, at 18:33, Dan Eble <dan@faithful.be> wrote:
> >>
> >> Alas, all is not well with earlier versions. Consider the confusing bar
> >> numbers in the following elaboration of your example. How would you
> >> resolve it?
> >
> > My thoughts:
> >
> > Measure 1 is complete, so the first "2" is not incorrect, though it might
> > not be what a user expects.
> >
> > No measure can start twice.
> >
> > The second "2" should either be "(2)", or it should be "3" and the "3"
> > should be "4".
>
> Add issue #3640 to this discussion. Accidentals, bar numbers, and (now)
> multi-measure rests are all impacted by the fact that \bar "|" does not
> create a new measure.
>
> \new Score \with {
> barNumberVisibility = #(every-nth-bar-number-visible 1)
> \override BarNumber.break-visibility = #all-visible
> } {
> f'1
> \cadenzaOn
> bes2
> \cadenzaOff
> %\partial 1024 s1024 %<<< try this
> \bar "|"
> << R1 bes1 >>
> }
>
> I don't think that merely restoring the previous behavior of
> Multi_measure_rest_engraver would be the right thing to do, because acting as
> if a measure begins at \bar "|" is inconsistent with other engravers.
> —
> Dan
>
For now I'll ignore #3640, especially the accidentals...
Though, I think
(1) a manual \bar "whatever" should just print the specified bar-line,
but not start or end a measure.
(2) if the BarNumber of the starting cadenza is x, the following newly
started measure should have BarNumber (1+ x) and a BarLine should be
printed at the end of the cadenza.
(3) if the cadenza has inner bar-lines, we should provide a simple
method to increase BarNumbers. Not sure, if we could implement this as
an automtism...
(4) obviously a MMR after a cadenza should be spanned between
appropriate BarLines, at least as default.
Thus, why not implement some new commands at the lines of:
increaseBarNumber =
\context Timing
\applyContext
#(lambda (ctx)
(ly:context-set-property! ctx 'currentBarNumber
(1+ (ly:context-property ctx 'currentBarNumber))))
endCadenza = {
\set Timing.timing = ##t
\context Timing
\applyContext
#(lambda (ctx)
(ly:context-set-property! ctx 'measureStartNow #t)
(ly:context-set-property! ctx 'currentBarNumber
(1+ (ly:context-property ctx 'currentBarNumber))))
\bar "|"
}
\new Score
\with { \override BarNumber #'break-visibility = ##(#t #t #t) }
{
R1
\cadenzaOn
\set fontSize = #-3
b4b b
\increaseBarNumber
\bar "|"
b b b
\unset fontSize
\endCadenza
\bar "||" %% BarLine of endCadenza can be tweaked
R1
}
Cheers,
Harm
- Re: cadenza followed by a MMR is buggy, (continued)
- Re: cadenza followed by a MMR is buggy, Dan Eble, 2021/01/14
- Re: cadenza followed by a MMR is buggy, Dan Eble, 2021/01/14
- Re: cadenza followed by a MMR is buggy, Dan Eble, 2021/01/14
- Re: cadenza followed by a MMR is buggy, Werner LEMBERG, 2021/01/15
- Re: cadenza followed by a MMR is buggy, David Kastrup, 2021/01/15
- Re: cadenza followed by a MMR is buggy, Dan Eble, 2021/01/15
- Re: cadenza followed by a MMR is buggy, David Kastrup, 2021/01/15
- Re: cadenza followed by a MMR is buggy, Dan Eble, 2021/01/15
- Re: cadenza followed by a MMR is buggy, Werner LEMBERG, 2021/01/15
- Re: cadenza followed by a MMR is buggy, Dan Eble, 2021/01/17
- Re: cadenza followed by a MMR is buggy,
Thomas Morley <=
- Re: cadenza followed by a MMR is buggy, Dan Eble, 2021/01/15