Thanks for this insightful clarification. I'll just take care not to apply
it to the first or last bar on a staff. A minimum of 3 bars per staff
should not be a real limitation.

Regards,
Aberforth D

On Mon, 29 Jun 2020 at 16:46, Lukas-Fabian Moser <l...@gmx.de> wrote:

> Hi,
>
> > No, I was applying it to the 2nd system. If I put the command
> > \showMultiRests before the first bar of any system, it seems to have
> > no effect, but it works fine when I put it before any other bar on the
> > staff. As I rarely have just 1 bar on a staff this should not be a
> > problem in practice.
>
> The reason seem to be that setting keepAliveInterfaces at a line-break
> point affects both systems that participate.
>
> For example:
>
> %%%%
> \version "2.20.0"
> \language "english"
>
> \layout {
>    \context {
>      \Staff
>      \RemoveAllEmptyStaves
>    }
> }
>
> %% => http://lsr.di.unimi.it/LSR/Item?id=312
> showMultiRests = {
>   \set Staff.keepAliveInterfaces = #'(
>      rhythmic-grob-interface
>      multi-measure-rest-interface
>      lyric-interface
>      stanza-number-interface
>      percent-repeat-interface)
> }
> hideMultiRests = \unset Staff.keepAliveInterfaces
>
> fillBar = \relative c' { g'8[ g g g g g] | }
> fillLine = { \fillBar \fillBar \fillBar \fillBar }
>
> partA = {
>    \key d \major \time 6/8 \clef "G"
>    R2.*4 \break
>    R2.*4 \break
>    \showMultiRests R2.*4 \break \hideMultiRests % Affects 3 systems
>    R2.*4 \break
>    R2.*4 \break
>    R2.*4 \break
>    R2.*4 \break
>    R2. \showMultiRests R2.*2 \hideMultiRests R2. \break % Affects only 1
> system
>    R2.*4 \break
> }
>
> partB = {
>    \key d \major \time 6/8 \clef "G"
>    \repeat unfold 9 \fillLine
> }
>
> \score {
>    <<
>    \new Staff \with { shortInstrumentName = "Pt A" } \partA
>    \new Staff \with { shortInstrumentName = "Pt B" } \partB
>    >>
> }
> %%%%
>
> I do not know if there is an elegant way to change this behaviour.
>
> Best
> Lukas
>
>

Reply via email to