[Sending this e-mail again to the 'lilypond-user' list, which we
forgot to include in our conversation.]

>> Maybe you are mixing up the the `\score` *markup* command (to be
>> used within `\markup` or `\markuplist`) with the 'normal',
>> top-level `\score` command?
> 
> My initial reaction to that question was: There's a difference? (I've
> been using Lilypond for eight years now, and I've never encountered
> this information.)

Yes, there is one.  Consider the following example.

```
music = {
  c1 \pageBreak
  d1 \pageBreak
  e1
}

\markup {
  foo
  \score {
    \music
    \layout {}
    \midi {}
  }
  bar
}

\score {
  \music
  \layout {}
  \midi {}
}

\paper {
  line-width = 100\mm
}
```

If you compile that you can see that the `\score` markup command
suppresses page turns because they don't make sense in markup.

> My next reaction was: Why is the command the same, when the behavior
> is different?

For convenience.  Why should it be called differently?  I dare to say
that in the great majority of all use cases it doesn't make a
difference.  Your report is the first one ever related to MIDI and
markup, as far as I remember.

> Why doesn't the \markup version of \score call the "normal" version
> of \score, with all its features?

Because some features don't make sense in markup, as mentioned above.
Note also that the creation of MIDI files is done by `lilypond` in a
separate pass that completely ignores markup.

> If you don't want to change \markup's version of \score to do
> exactly what the top level \score does, then section 3.2.1
> (Structure of a score) and 3.6.3 (The MIDI block) are logical places
> to put a warning.  Right after the "Note: There must be only one
> outer music expression ..." the following should be added: "Note
> also that if a \score is inside of a \markup or \markuplist block,
> no MIDI will be created, even with a \midi block."

Thanks.  I've solved it a bit differently, please check

  https://gitlab.com/lilypond/lilypond/-/merge_requests/2495

again.


    Werner

Reply via email to