> Although you have a working solution, there's something strange.
> Consider:
>
> \version "2.27.2"
>
> myExceptionMusic = {
> <c e gis>-\markup \super { "5<" }
> }
>
> myException =
> #(append
> (sequential-music-to-chord-exceptions myExceptionMusic #t)
> ignatzekExceptions)
>
> \score {
> \new ChordGrid \chordmode { c1:1.3.5+ }
> \layout {
> \context {
> \Score
> chordNameExceptions = \myException
> }
> }
> }
>
> \score {
> \new ChordGrid \chordmode {
> \set Score.chordNameExceptions = \myException
> c1:1.3.5+
> }
> \layout { }
> }
>
> I've no clue why the outcome is different. (Image attached)
My guess on the difference would be: ChordGridScore for the new ChordGrid gets
initialized from (a clone of) the Score context upon processing \new ChordGrid
and processing of the \layout adapting the Score context happens-before the
processing of \new ChordGrid so that the override of chordNameExceptions in the
Score context gets propagated to the ChordGridScore context. Not deep enough
into all of the lilypond internals to know for sure, but that would be my
technicions guess on why the override in the Score context in a layout block
works, but you need to explicitly override it in de ChordGridScore once you’re
within a \new ChordGrid block