[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: TimeSignature with note in denominator
From: |
Aaron Hill |
Subject: |
Re: TimeSignature with note in denominator |
Date: |
Sat, 13 Nov 2021 07:12:07 -0800 |
User-agent: |
Roundcube Webmail/1.4.9 |
On 2021-11-13 6:14 am, Kieren MacMillan wrote:
Functions can accept ly:music? and you can drill down to determine if
it contains TimeSignatureMusic and modify its properties. The only
issue is that currently \time (and TimeSignatureMusic) require the
denominator to be a number. You can convert 2/4. to its logical
equivalent of 6/8 but key information is lost. \note-denom cannot
magically recover the original intention to be able to render the
signature as the user wanted.
If 2/4. is the value entered, do we have access to the num (2) after
the conversion to 6/8 has happened? If so, I could “reverse engineer”
the 2/4. from (num . denom) = (6 . 8).
Only if the music function that accepts the input is able to store that
information somewhere that can be referenced at the time the
TimeSignature grob gets *stencilized*. (Is that a word?)
I took a quick look at the source, so let me try to summarize the flow
of information as I see it:
1. User provides a \time command as input.
There are two arguments for this command, beat-structure and
fraction. beat-structure is optional, defaulting to a null list,
but otherwise it expects a number-list. fraction is, well, a
fraction (index-pair) that must be specified. The \time command
then constructs TimeSignatureMusic with the specified numerator,
denominator, and beat-structure as music properties.
2. make-time-signature-set is the callback for TimeSignatureMusic.
This callback processes the information from TimeSignatureMusic and
sets various timing-related context properties. Additionally, a
time-signature-event is broadcast, although nothing currently
listens for this event. For reference, here are all the context
properties that are written to:
- timeSignatureFraction
- baseMoment
- beatStructure
- beamExceptions
- measureLength
3. Time_signature_engraver watches for changes to timeSignatureFraction.
When appropriate, TimeSignature grobs are created using only the
information within timeSignatureFraction. The fraction is stored
within the appropriately-named "fraction" grob property.
4. ly:time-signature::print is run.
Properties of fraction and style are consulted here and a suitable
time-signature-style-markup-procedure is invoked.
While not insurmountable, there are hoops to jump through to preserve
the original rhythmic denominator for the stencil procedure to do useful
work.
-- Aaron Hill
- Re: TimeSignature with note in denominator, (continued)
- Re: TimeSignature with note in denominator, Kieren MacMillan, 2021/11/12
- Re: TimeSignature with note in denominator, Kieren MacMillan, 2021/11/12
- Re: TimeSignature with note in denominator, Aaron Hill, 2021/11/12
- Re: TimeSignature with note in denominator, David Kastrup, 2021/11/12
- Re: TimeSignature with note in denominator, Aaron Hill, 2021/11/12
- Re: TimeSignature with note in denominator, Kieren MacMillan, 2021/11/12
- Re: TimeSignature with note in denominator, Aaron Hill, 2021/11/12
- Re: TimeSignature with note in denominator, Kieren MacMillan, 2021/11/12
- Re: TimeSignature with note in denominator, Aaron Hill, 2021/11/13
- Re: TimeSignature with note in denominator, Kieren MacMillan, 2021/11/13
- Re: TimeSignature with note in denominator,
Aaron Hill <=
- Re: TimeSignature with note in denominator, David Kastrup, 2021/11/13
- Re: TimeSignature with note in denominator, Aaron Hill, 2021/11/13
- Re: TimeSignature with note in denominator, Kieren MacMillan, 2021/11/13
- Re: TimeSignature with note in denominator, David Kastrup, 2021/11/13
- Re: TimeSignature with note in denominator, Lukas-Fabian Moser, 2021/11/13
- Re: TimeSignature with note in denominator, Kieren MacMillan, 2021/11/13
- Re: TimeSignature with note in denominator, Lukas-Fabian Moser, 2021/11/13
- Re: TimeSignature with note in denominator, Kieren MacMillan, 2021/11/13
- Re: TimeSignature with note in denominator, Lukas-Fabian Moser, 2021/11/13
- Re: TimeSignature with note in denominator, Kieren MacMillan, 2021/11/13