[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Some engraver brainstorming
From: |
David Kastrup |
Subject: |
Re: Some engraver brainstorming |
Date: |
Mon, 10 May 2010 19:02:43 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/24.0.50 (gnu/linux) |
Carl Sorensen <address@hidden> writes:
> On 5/10/10 9:07 AM, "David Kastrup" <address@hidden> wrote:
>
>> David Kastrup <address@hidden> writes:
>>
>>> Reinhold Kainhofer <address@hidden> writes:
>>>
>>>> Am Samstag, 8. Mai 2010, um 14:28:18 schrieb Werner LEMBERG:
>>>>>> So how about the ultimate tweak: using a separate engraver? We
>>>>>> can't have overlapping slurs with a single engraver, for example.
>>>>
>>>> Actually, by extending the engraver a little bit it should be
>>>> possible. I have had that on my list for quite some time...
>>>
>>> That's the same for glissandi. But there is not much of a point
>>> extending every engraver a bit and making its code more complex if the
>>> same can be done with a more or less universally working approach for
>>> all spanning engravers.
>>
>> There are two different issues here to address/kill.
>>
>> Issue 1 is making spanning engravers (or engravers that can do just one
>> job between the start and the end of the moment) work for multiple
>> parallel tasks.
Within one voice, that is. Most of the infrastructure is already there
because engravers already have to work in parallel in different voices
already.
>> Issue 2 is being able to deal with those parallel life times
>> properly: letting programmed tasks and user tasks make sure that the
>> intended instance of an engraver is addressed for a specific task.
[...]
> My initial thought was that, instead of creating a separate engraver
> instance, we add an array capability to the engraver. That way, the
> engraver is aware of all the spanners that are being created, and can
> properly handle such things as collision avoidance.
That's more or less what I was going to with my original implementation
idea: have a EngraverFactory template type that was just delegating
everything to its subordinates.
> For example, in a chord glissando with "crossed" notes, we don't want
> to try to avoid collisions.
But in a two-voice glissando, we also don't want to try avoiding
collisions. So while I agree with your point in principle (namely that
in some cases a boiler-plate EngraverFactory might not lead to the best
possible results), I should think that in many cases, the boiler-plate
will work out just fine since most of the multi-engraver problems are
already existent as multi-voice problems.
To be honest, a chord glissando with crossed notes _is_ a multi-voice
problem. So it is actually a shortcoming of Lilypond that we can't
single-stem multiple voices. This should likely be addressed
separately.
Maybe all of the problems for which @x would be nice to have should be
addressed as a shortcoming with dealing with multiple voices. But how
to start a slur in one voice and end in another?
> For another example, in figured bass, I think we need to be aware of
> all the existing bass figures with continuation lines in order to
> properly align the figures.
No idea here.
> But I have not tried to implement this, so my comments are not based
> on experience, but on general expectations.
Nothing implemented yet here. Still storming.
--
David Kastrup
- Re: Some engraver brainstorming, (continued)
- Re: Some engraver brainstorming, David Kastrup, 2010/05/09
- Re: Some engraver brainstorming, David Kastrup, 2010/05/08
- Re: Some engraver brainstorming, Francisco Vila, 2010/05/08
- Re: Some engraver brainstorming, Reinhold Kainhofer, 2010/05/08
- Re: Some engraver brainstorming, Carl Sorensen, 2010/05/08
- Re: Some engraver brainstorming, David Kastrup, 2010/05/09
- Re: Some engraver brainstorming, David Kastrup, 2010/05/10
- Re: Some engraver brainstorming, Carl Sorensen, 2010/05/10
- Re: Some engraver brainstorming,
David Kastrup <=
- Re: Following voices in chords?, Graham Percival, 2010/05/07
- Re: Following voices in chords?, Carl Sorensen, 2010/05/07
- Re: Following voices in chords?, David Kastrup, 2010/05/07
Re: Following voices in chords?, Kieren MacMillan, 2010/05/07