and this at least removes the fragility around decrementing the bar number:

%%%  SNIPPET BEGINS
\version "2.25.25"

\layout {
  system-count = 3
}

increaseBarNumber =
#(define-music-function (par loc addm) (integer?)
   (make-apply-context
    (lambda (context)
      (let* ((where (ly:context-property-where-defined context
'currentBarNumber))
             (cbn (ly:context-property where 'currentBarNumber)))
        (ly:context-set-property! where 'currentBarNumber (+ addm cbn))))))

altBNs = {
  \set Score.alternativeNumberingStyle = #'numbers-with-letters
  \set Score.startRepeatBarType = "|"
  \set Score.endRepeatBarType = "|"
  \omit Score.VoltaBracket
}
regBNs = {
  \unset Score.alternativeNumberingStyle
  \undo \omit Score.VoltaBracket
  \set Score.startRepeatBarType = ".|:"
  \set Score.endRepeatBarType = ":|."
}

music = \relative c' {
  \override Score.BarNumber.break-visibility = ##(#f #t #t)
  \set Score.currentBarNumber = #46
  c4 d e f
  c4 d e f |
  \altBNs
  \repeat volta 5 {
    { c4 d e f }
    \increaseBarNumber #-1
    \alternative {
      { c4 d e f }
      { c4 d e f }
      { c4 d e f }
      { c4 d e f }
      { c4 d e f }
    }
  }
  \regBNs
  c1
  \repeat volta 2 {
    c1
    \alternative {
      { c1 }
      { c1 }
    }
  }
  c1 \bar "|."
}

{ \music }
%%%  SNIPPET ENDS

__________________________________________________

My work day may look different than your work day. Please do not feel obligated 
to read or respond to this email outside of your normal working hours.


Reply via email to