Robin Bannister wrote:

One explanation is that
    - concat wants to be given (markup-list?)
    - general-align wants to be given (markup?)
So the two should be swapped:
      #(markup #:general-align Y UP #:concat ("16" #:teeny "ma"))


This of course implies that your #{ #} version shouldn't work either.
But there is maybe some automagic at work here ?
   - like the automatic application of \line when omitted before { }

Oh dear, that was half-baked thinking.
Markup lists have tripped me up yet again.

It is normal 'automagic' for
   \box { "X" "Y" "Z"}
to be mapped into
   { \box "X" \box "Y" \box "Z" }
giving you 3 boxes in a markup list
to which \concat can be applied.

So that mapping mechanism will do the same for
   \general-align Y UP
as it does for \box.



The non-mapping cases
   \markup \box \concat { "X" "Y" "Z" }
and
   #(markup #:box #:concat ("X" "Y" "Z"))
give one box without complaints


The mapping case
   \markup \concat \box { "X" "Y" "Z" }
gives 3 boxes without complaint, but
   #(markup #:concat #:box ("X" "Y" "Z"))
is errored.

Reformulating it as
   #(markup (make-concat-markup (make-box-markup ("X" "Y" "Z"))))
is also errored.

And here I get stuck, just like the markup-list does.


Cheers,
Robin

_______________________________________________
lilypond-user mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/lilypond-user

Reply via email to