Christopher Smith <chry...@gmail.com> writes: >> Assign the result to a variable xxx and use \xxx. > > The assignment works, but then Lilypond 2.16.0 throws "error: unknown > escaped string `\xxx'" and finally fails, expecting '='. I think it > may be having trouble figuring out what to do with the resulting > value, which is (currently) a score.
Score variables can be used only as a score body, like \score { \xxx \layout { } } or similar. > (I'm happy to change that if something else will work better; I'm just > trying to write a function that takes individual part excerpts and > lays them out in a complex but stereotyped way.) > >> Oh, and what should also work is writing >> $#{ \schemefunctioncall ... #} > > This produces "error: syntax error, unexpected SCORE_IDENTIFIER <the > entire text of the function call, including the leading $ and trailing > }>". Again, score identifiers can't be used at top level, but have to be placed _inside_ of a \score again. This is similar to book variables (which also need to get placed inside of \book). I actually just found out that obliterating the assignment for score identifiers is dead easy, so it will likely be unnecessary in about a week. However, you will still have to heed writing \score { ... } around any scheme function call even then. > (Additionally, is there a convenient way to find the width of some > grob that I could use to feed to the layout indent? I'm not a Scheme > programmer and am having trouble wrapping my head around the uasge of > X-extent and ly:grob-extent.) That's a question for the backend specialists. -- David Kastrup _______________________________________________ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user