Gianmaria Lari <gianmarial...@gmail.com> writes: > This works perfectly and print ciccio: > > \version "2.19.82" > test = #(define-scheme-function () () #{ \markup "ciccio" #} ) > \test > > > but if i specify two markups instead of one like here.... > > \version "2.19.82" > test = #(define-scheme-function () () #{ \markup "ciccio" \markup "ciccio" > #} ) > \test > > > then it stop to works. > > Why?
What is the type of the Scheme expression #{ \markup "ciccio" \markup "ciccio" #} supposed to be? It cannot be a markup, because there are two. And how should I do if I need to specify two markups? You can create a markup list from two markups. You can also combine two markups in various ways (sometimes by first putting both in a markup list) into a single markup (\combine, \line, \concat, \column and so on). It's your choice. But just waving your hands and telling the computer "well, do _something_" <https://youtu.be/gGg7qF02vHM?t=155> is not likely to make a programming language like Scheme happy. -- David Kastrup _______________________________________________ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user