Hi Knute,
%%% Start
\version "2.24.4"
staffStaffSpacing =
#(define-music-function (off dist) (number? number?)
#{
\once \override
Score
.NonMusicalPaperColumn
.line-break-system-details
= #'((Y-offset . off)
(alignment-distances . (dist)))
#})
The right hand side of = is "quoted" (in Scheme terms), i.e. prefixed by
'. This means that Y-offset, off, alignment-distances, dist are taken as
symbols, not evaluated.
The way to evaluate _some_ terms in an expression is to use
"quasiquoting" with ` instead of ' and prefixing the words that should
get evaluated by ,. This yields:
staffStaffSpacing =
#(define-music-function (off dist) (number? number?)
#{
\once \override
Score
.NonMusicalPaperColumn
.line-break-system-details
= #`((Y-offset . ,off)
(alignment-distances . (,dist)))
#})
HTH
Lukas