[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Understanding marks in 2.24
From: |
Jean Abou Samra |
Subject: |
Re: Understanding marks in 2.24 |
Date: |
Tue, 31 Jan 2023 22:33:43 +0100 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.6.0 |
On 31/01/2023 22:32, Jean Abou Samra wrote:
> On 31/01/2023 22:07, Saul Tobin wrote:
>> 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.
>
>
> It's been requested a few times, but there is no easy way to do this
> at the moment (although you can find some hacks in the list archives).
>
>
>
>> 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?
>
>
> Typically, you would have your \textMark's in a separate music
> expression and only include that once in the main score.
>
> It was intentional not to deduplicate for \textMark because
> it's messy in the first place: if you do this, the user will
> expect that
>
> <<
> \new Staff { \textMark $CODE }
> \new Staff { \textMark $CODE }
>>>
>
> yields only one text mark, but this falls apart for things like
>
> $CODE = \markup \table #'(0 0 0) ...
>
> or
>
> $CODE = \markup \on-the-fly #(lambda things ...) ...
>
> because procedures are compared by identity, and whether two
> "equal?" quote expressions are "eq?" is an optimization detail
> not specified by Guile.
Uh, why did I just write this already? The latter wouldn't
be a problem. assign_event_once uses "equal?" The former,
with procedures, is indeed a problem.
Sorry for the noise.
OpenPGP_signature
Description: OpenPGP digital signature