My apologies to all!!
I had looked at 2.5.3 Alternative bar numbering too quickly.
What I need has nothing to do with alternative endings.
I need a sequence of bars with numbers with letters like sequential bars
numbered, for example:
A, B, C. 1, 2, 3, 4, 4A, 4B, 4C, 4D, 5, 6, 7, etc. that increments the
right-most character until the feature is turned off. The next bar might
need to be specified with Score.currentBarNumber.
Here is an MWE done one bar at a time.:
\version "2.25.80"
bnLet =
#(define-music-function
(parser location aLetter)
(string?)
#{
\once \override Score.BarNumber.stencil =
#(lambda (grob)
(let ((text (ly:grob-property grob 'text)))
(grob-interpret-markup grob
#{ \markup \sans $aLetter #})))
#})
setA = { \bnLet #"A" }
setB = { \bnLet #"B" }
setC = { \bnLet #"C" }
addA = {
\temporary \override Score.BarNumber.stencil =
#(lambda (grob)
(let ((text (ly:grob-property grob 'text)))
(grob-interpret-markup grob
#{ \markup \concat { #text "A" } #})))
}
addB = {
\temporary \override Score.BarNumber.stencil =
#(lambda (grob)
(let ((text (ly:grob-property grob 'text)))
(grob-interpret-markup grob
#{ \markup \concat { #text "B" } #})))
}
addC = {
\temporary \override Score.BarNumber.stencil =
#(lambda (grob)
(let ((text (ly:grob-property grob 'text)))
(grob-interpret-markup grob
#{ \markup \concat { #text "C" } #})))
}
addStop = \revert Score.BarNumber.stencil
ma = \fixed c'' {
\override Score.BarNumber.break-visibility = #end-of-line-invisible
\set Score.barNumberVisibility = #all-bar-numbers-visible
\setA b,1
\setB c
\set Score.currentBarNumber = 1
d e d
\set Score.currentBarNumber = 4
c
\set Score.currentBarNumber = 4
\addA
d \addStop
\set Score.currentBarNumber = 4
\addB
b, \addStop
\set Score.currentBarNumber = 4
\addC
a,
\addStop
\set Score.currentBarNumber = 5
b,
}
At least next would be a function similar to \bnLet which would take the
alphabet character and produce \addA, \addB,etc.
Thank you,
Paul