2

I want to produce a version of a score where a few bars are snipped off, using Score.skipTypesetting as in the following example:

cuts = {
  s1
  \set Score.skipTypesetting = ##t
  s1*2
  \set Score.skipTypesetting = ##f
}
clarinet = \relative {
  c'1 cis d dis e
}
trombone = \relative {
  R1*5
}

\score { \new StaffGroup <<
  \new Staff << \cuts \clarinet >>
  \new Staff << \cuts \trombone >>
>> }

However, this produces an incorrect multi-measure rest in the part which has rests (a 3-bar rest under the 1-bar c', followed by two correct 1-bar rests). I understand that the multi-measure rest is typeset before Lilypond stops typesetting the staff; however, I could not find how to prevent this (I tried e.g. using \Score.skipBars = ##t or slightly displacing the skipTypesetting commands).

Is there a way to “cleanly” remove those measures?

enter image description here

The intended use case is that of a full orchestra score (e.g. full opera-size), where it will not be possible in practice to insert the skipTypesetting properties in each individual part; moreover there will be several such cuts. Also, I need to keep the source for these measures, since this is for a separate, abridged version of the piece. (Besides, removing those individual measures from the source would also be infeasible in practice at this scale).

1 Answer 1

1

You could try to add a skipped grace to allow for typesetting of the bar and to suspend counting of time (to not count skipped measures):

cuts = {
  \omit Score.StaffEllipsis
  s1
  \grace { s1024 }
  \set Score.skipTypesetting = ##t
  \cadenzaOn
  s1*2
  \cadenzaOff
  \set Score.skipTypesetting = ##f
  \grace {}
}
clarinet = \relative {
  c'1 cis d dis e
}
trombone = \relative {
  R1*5
}

\score { \new StaffGroup <<
  \new Devnull \cuts
  \new Staff \clarinet
  \new Staff \trombone
>> }

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.