[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Various clean-ups in stems and beams. (issue 6584045)
From: |
address@hidden |
Subject: |
Re: Various clean-ups in stems and beams. (issue 6584045) |
Date: |
Tue, 2 Oct 2012 10:07:02 +0200 |
On 2 oct. 2012, at 05:02, address@hidden wrote:
> On 2012/10/01 23:34:39, MikeSol wrote:
>> I think a user should be able to use Kievan notation and normal
>> stems/flags/beams if she so chooses. I'll define something like
>
>> [snip]
>
>> and then use it in the documentation.
>
> I still see some issues with this. As written now in stem.cc, when the
> style property of NoteHead is set to kievan, the stems are not "normal".
> In this case, it is not clear what Kievan notation with "normal
> stems/flags/beams" would look like. At best, there would be no stems and
> beams flat across the center of the staff. Or, something like
>
> \relative c' {
> \override NoteHead #'style = #'kievan
> a'8[ bes]
> }
>
> gives the warning "weird stem size, check for narrow beams".
>
> Also, because the calculation of the duration log moves to
> note-head::calc-kievan-duration-log, something like
>
> \relative c' {
> \override NoteHead #'style = #'kievan
> a'8
> }
>
> produces the wrong NoteHead stencil (a quarter note instead of an eighth
> note).
>
> If we implement the patch as written, Kievan note heads outside of the
> KievanVoice context wouldn't make sense. I'm not altogether opposed to
> that (I see no real reason to not use KievanVoice), but it seems like a
> "policy" issue, as it would make Kievan notation different from how
> other ancient notations are handled.
Hey Aleksandr,
All good points. The convention in LilyPond is that grob properties of grob X
are used downstream to calculate other properties of grob X (and not of grob
Y). This is why, for example, both the stem and rhythmic-head interface have
duration-log. There are, of course, exceptions, but these could have almost
always been written another way. For example, Stem::offset_callback should
likely be rewritten such that the early music stuff is a different function
implemented in Scheme.
The goal should be to get all references to non-common-practice-era notation
out of the main interface files and into either separate C++ files or
output-lib.scm.
The issue here is that the set_property calls for stem-begin-position and
length, which I've always run up against, pose new challenges for Kievan beams.
I'll try to work on eliminating these calls, as they are opaque and make
modular add-ons difficult.
Cheers,
MS
- Various clean-ups in stems and beams. (issue 6584045), aleksandr . andreev, 2012/10/01
- Re: Various clean-ups in stems and beams. (issue 6584045), mtsolo, 2012/10/01
- Re: Various clean-ups in stems and beams. (issue 6584045), aleksandr . andreev, 2012/10/01
- Re: Various clean-ups in stems and beams. (issue 6584045),
address@hidden <=
- Re: Various clean-ups in stems and beams. (issue 6584045), pkx166h, 2012/10/02
- Re: Various clean-ups in stems and beams. (issue 6584045), aleksandr . andreev, 2012/10/02
- Re: Various clean-ups in stems and beams. (issue 6584045), aleksandr . andreev, 2012/10/02