[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: converting `\markuplist` to `\markup`
From: |
Valentin Petzel |
Subject: |
Re: converting `\markuplist` to `\markup` |
Date: |
Fri, 14 Apr 2023 09:12:18 +0200 |
Hello Werner,
how should \column not be the "right" way? A markup list is a list of markups,
but does not contain any information about how these should be positioned. The
default behaviour Lilypond does when encountering a toplevel markuplist or
when having a markuplist in a score is to stack them vertically by baseline.
The default behaviour when encountering a markuplist in a markup is to stack
them horizontally with some separating space. But generally a markuplist needs
to be interpreted in some way. In a markup context this is done using
functions like \column (place them vertically), \line (place horizontally with
space), \concat (place horizonatally without space), \fill-line (place
horizontally aligned to equally spaced points along the whole line width),
\word-wrap (place horizontally but wrap at end of line), ...
So using \column is actually a good way to do it, as you clearly tell Lilypond
what interpretation you want.
Cheers,
Valentin
Am Mittwoch, 12. April 2023, 12:34:52 CEST schrieb Werner LEMBERG:
> > What do you mean by “convert”?
>
>
> Probably bad wording: I mean to wrap a markup list into a markup.
>
>
> > I don’t know what it means to convert a markup list to a markup,
> > since there are many ways in which you can combine the stencils:
> > \column, \center-column, \line, \concat, \fill-line, etc.
>
>
> I want to combine the stencils without changing the horizontal or
> vertical spacing.
>
>
> > What is insufficient with \column for your use case? Are you trying
> > to keep flexible vertical spacing between the table lines?
>
>
> `\column` works just fine. I was only wondering whether it is the
> 'right' way.
>
> Here is an example. If you process file `a.lytexi`
>
> ```
> \input texinfo
>
> @lilypond[verbatim]
> \markuplist {
> \override #'(baseline-skip . 0)
> \table #'(-1) { foo bar } }
> @end lilypond
>
> @lilypond[verbatim]
> \markup \column {
> \override #'(baseline-skip . 0)
> \table #'(-1) { foo bar } }
> @end lilypond
>
> @bye
> ```
>
> with
>
> ```
> lilypond-book --format=texi --pdf --output=a a.lytexi
> ```
>
> followed by `texi2pdf a/a.texi` you get the attached result. As can
> be seen, `lilypond-book` enlarges the vertical spacing for the
> `\markuplist` because it gets converted to two `@image` commands, and
> `texinfo.tex` inserts some additional space between them.
>
>
> Werner
signature.asc
Description: This is a digitally signed message part.