lilypond-user
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Understanding marks in 2.24


From: Saul Tobin
Subject: Understanding marks in 2.24
Date: Tue, 31 Jan 2023 13:07:37 -0800

Hi all,

I'm in the process of updating my scores from 2.18 to 2.24 (yes I skipped a bunch of versions), and I'm trying to understand the intended use of the new types of marks.

Take the following small example:

\version "2.24.0"
\language "english"

markGroup = \with {
  \consists Mark_engraver
  \consists Staff_collecting_engraver
  \consists Metronome_mark_engraver
  \consists Text_mark_engraver
}

music = \relative c'' {
  \mark \default
  \tempo "foo"
  bf a c b
  \mark \default
  \tempo "foo"
  bf a c b
  \mark \default
  \tempo "foo"
  bf'' a,, c b
  \textMark "foo"
  bf a c b
}

\score {
  <<
    \new StaffGroup \with {
      \markGroup
    } <<
      \new Staff \music
      \new Staff \music
    >>
    \new StaffGroup \with {
      \markGroup
    }
      <<
      \new Staff \music
      \new StaffGroup <<
        \new Staff \music
        \new Staff \music
      >>
    >>
  >>
  \layout {
    \context {
      \Score
      \remove Mark_engraver
      \remove Staff_collecting_engraver
      \remove Metronome_mark_engraver
      \remove Text_mark_engraver
     
    }
  }
}

I have a few questions:
1. How to achieve horizontal alignment and avoid vertical overlap of RehearsalMarks and MetronomeMarks at the beginning of a system, or when musical objects push them away from the staff as in measure 3? I have to say I think the default output could be improved.
2. How to prevent TextMarks from printing many identical marks at the same point in time? The docs suggest that \textMark should be used as a drop-in replacement for \mark \markup... but the behavior seems incompatible. The examples given are for instructions specific to a single player. Is it feasible to use \textMark for ensemble-wide instructions without relying on tags to prevent duplicates in the full score?
3. I formerly used a custom MarkLine context to align all marks on the same horizontal baseline. I see that LSR lists the snippet as deprecated since a bug was fixed that allowed mark engravers to be moved to StaffGroups (though it is still referenced in the 2.24 docs here: https://lilypond.org/doc/v2.24/Documentation/snippets/contexts-and-engravers#contexts-and-engravers-using-marklines-in-a-frenched-score). Is there another preferred method to baseline-align all marks in a system?
4. What is the difference between an AdHocMark and a RehearsalMark? I find some references to AdHocMark in the Internals docs but I'm unclear how to actually use them.

Thanks!

Saul

reply via email to

[Prev in Thread] Current Thread [Next in Thread]