lilypond-devel
[Top][All Lists]
Advanced

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

Re: TimeSignature with note in denominator


From: Kieren MacMillan
Subject: Re: TimeSignature with note in denominator
Date: Sat, 13 Nov 2021 23:11:47 -0500

Hi David,

> No.  You propose replacing (cons 3 4) as a time signature designation
> with (cons 3 (ly:make-duration 2)).  You have failed to give any
> indication of what you want to see (cons 8 20) replaced with.

Well at least now you’ve asked the question you clearly meant to ask earlier, 
in a way that someone other than you can figure out how to answer in the way 
you’re expecting.  =)

> It will likely end up as (ly:make-duration 4 0 4/5)

That seems fine to me.

> but that has no unique printed representation different from 
> (ly:make-duration 4)

Correction: Lilypond doesn’t, by default, give a “unique printed 
representation” to (ly:make-duration 4 0 4/5) as compared with 
(ly:make-duration 4). On the other hand, I am fully capable of making Lilypond 
do so, i.e., formatting the denominator as a sixteenth note *with a '5' 
[possibly in a bracket] below it*, which absolutely *is* a “unique printed 
representation”, and will convey to the performer exactly the desired meaning.

> (ly:make-duration 4 0 4/5) and (ly:make-duration 4 0 8/10)
> are absolutely indistinguishable.

I can do the math to back-calc either of those into a note duration in order to 
determine. So I guess here’s my [final] answer to your question: I’d like to 
see (cons 8 20) replaced with whatever is easiest for the lexer / parser to 
convert to and from and/or pass through to the time function(s) without losing 
any critical information about the denominator duration.

Feel free to ask me for yet another answer to this question… but be warned that 
I don’t know enough about the lexer or parser or Lilypond’s internal 
representation of durations to give a more specific or nuanced or helpful 
answer than that.  ;)

Cheers,
Kieren.


reply via email to

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