lilypond-devel
[Top][All Lists]
Advanced

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

Re: change `event-chord-wrap!' ?


From: David Kastrup
Subject: Re: change `event-chord-wrap!' ?
Date: Fri, 22 Apr 2016 11:26:07 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/25.1.50 (gnu/linux)

Thomas Morley <address@hidden> writes:

> 2016-04-22 8:12 GMT+02:00 David Kastrup <address@hidden>:
>>
>> If you want to mimic this exactly, you need to retain all articulations
>> for which there are no listeners (that's what the
>> Rhythmic_music_iterator does), but the presence of listeners is not
>> established at the point of time where event-chord-wrap! runs.
>>
>> Anything wrong with actually making the function you need able to deal
>> with non-wrapped events?
>>
>> event-chord-wrap! does lose information.  It's a band-aid.
>>
>> --
>> David Kastrup
>
> Let me reword it and give a little more background.
>
> I want that fingerings in single NoteEvent are affected by
> *Orientations-settings as well as NoteEvents in EventChords.
> (Currently this works only for StringNumber, although I've no clue
> why.)

Because there is no listener for string numbers, so
Rhythmic_music_iterator retains them as articulations in the music.

> I thought wrapping single notes into an event-chord while nicely
> sorting their 'articulations and 'elements would be the way to go,
> thus my polite-event-chord-wrap!-coding.

Looks like what you actually want is removing the Fingering_engraver so
that Rhythmic_music_iterator retains the fingerings for the sake of the
New_fingering_engraver.

Of course, that means that <c e f>-1-2-3 is going to stop working.  But
it does not sound like you want it anyway.

I do hope that the Fingering_engraver is responsible just for
fingerings.  I distinctly remember the New_fingering_engraver doing
quite a bit more.

> Here an example to play with:
>
> \version "2.19.36"
>
> \layout {
>   \context {
>     \Voice
>     fingeringOrientations = #'(left)
>     strokeFingerOrientations = #'(up)
>     stringNumberOrientations = #'(right)
>   }
> }
>
> {
>   c'2-3\5 -\rightHandFinger #1
>   <
>    c'-3\5 -\rightHandFinger #1
>    e'-2\4 -\rightHandFinger #2
>   >
> }

And removing the Fingering_engraver indeed does what you want.  And it
does not appear to be listening to anything but fingering events,
either.

-- 
David Kastrup



reply via email to

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