lilypond-devel
[Top][All Lists]
Advanced

[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 23:22:27 +0200

On 2 oct. 2012, at 17:38, address@hidden wrote:

> On 2012/10/02 14:56:28, mike7 wrote:
>> On 2 oct. 2012, at 16:42, mailto:address@hidden wrote:
> 
>> > What I mean is that if something like
>> >
>> > {
>> > \override NoteHead #'style = #'kievan
>> > c'8
>> > }
>> >
>> > produces a quarter note in the output, the user is likely to be
>> > thoroughly confused.
> 
>> Is this because of the duration-log override?
> 
> Yes.
> 
>> NoteHead #'duration-log for
>> Kievan notation should be a separate function that is not based on
> style (this
>> is what I propose in my patch).
> 
> 
> Then it has to be set with an override whenever the style is set to
> kievan.
> 
> 
>> Why can't we have commands \startKievan and \stopKievan that do all
> the
>> overrides simultaneously?
> 
> I think that would work.
> 
>> For example, the command \hideNotes groups together several overrides.
> I think
>> it would be a mistake to make \override NoteHead #'transparent also
> control Dots
>> and Stems by default.
> 
> Sure. The trouble is that Stems don't make much sense when NoteHead
> style is set to kievan and warnings are produced with beams. Of course,
> we could rewrite the way that is handled in stem::is_normal_stem, but
> that would take some thought.

I don't think this'd be necessary - you'd just have to override 
quantize-position with a callback that sets stem-begin-position and length.  
The problem is that Stem::internal_stem_begin_position expects that, if there 
is a beam, the value of stem-begin-position will be set by 
Beam::set_stem_lengths and that it can recuperate this value as the result of 
the callback.  So long as the quantize callback does this, there shouldn't be a 
circular dependency.  I can write this on the plane tomorrow.

Cheers,
MS


reply via email to

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