[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Help with Scheme engraver please
From: |
Trevor Daniels |
Subject: |
Re: Help with Scheme engraver please |
Date: |
Mon, 19 Sep 2016 11:32:38 +0100 |
Trevor Daniels wrote Saturday, September 17, 2016 9:57 PM
> Thomas Morley wrote Friday, September 09, 2016 11:31 PM
>
>> 2016-09-08 0:07 GMT+02:00 Trevor Daniels <address@hidden>:
>>>
>>> But I don't understand why you
>>> used a rather complicated procedure to obtain durations. Could you
>>> not simply extract the durations from note events?
>>
>> In my opinion the historic lute tablatures were written disregarding
>> any polyphony as far as rhythmy are concerned, yes.
>> But this polyphony was always _meant_ and the player should respect it.
>>
>> For our coding this means an example like
>>
>> upper = { d'2 d' }
>> middle = { \override Rest.staff-position = #-1.5 r8 f r8 f r8 f r8 f }
>> lower = { a,4\rest d a,4\rest d }
>>
>> \score {
>> <<
>> \new Staff << \clef "G_8" \upper \\ \lower \\ \middle >>
>>
>> \new TabStaff
>> << \clef "G_8" \upper \\ \lower \\ \middle >>
>> >>
>> \layout {
>> \context {
>> \TabStaff
>> stringTunings = \stringTuning <a, d f a d' f'>
>> }
>> }
>> }
>>
>> should return proper polyphonic in Staff, and in TabStaff only a
>> single 8th indication for the overall rhythm should be printed.
>> This can be achieved with my proposal and would warrant the principle
>> of one source-code for Staff _and_ TabStaff.
>> I didn't found a method to do so with simple durations.
>
> OK, I see now why you need to extract the interval between a note and the
> subsequent note even when they are split between several voices.
> This interval then should be displayed as the "duration" of the first of the
> pair
> (unless it is unchanged from the previous one, of course)
>
> I agree this can't be done by looking solely at the duration of individual
> notes.
>
> However, your code doesn't quite work in all situations. If you replace the
> first f in the middle voice with a rest we should have a duration of 4
> followed
> by one of 8, but the 8 is missing.
>
>> You seems to be of different opinion, for some cases you let
>> explicitely print the warning:
>> "Polyphony is not supported in lute tab"
>
> Well, I meant it wasn't supported in my simple implementation, not
> that it shouldn't be.
>
> I need now to study your approach to polyphony in greater detail to understand
> the logic.
Having thought about polyphony in tab a little more I realise now there is a
fundamental difficulty: it is quite possible to have an interval in time
between two adjacent notes that cannot be represented as a single duration. In
staff representation ties would be used to do this, but I don't think ties were
used in baroque tab, were they? Even if they were, implementing them at this
early stage would be a step too far, at least for me. So I plan to sidestep
polyphony at present and concentrate on implementing lute tab from a single
voice. There's plenty to do yet to achieve that in a form suitable for a LP
patch.
Trevor
- Re: Help with Scheme engraver please, Simon Albrecht, 2016/09/01
- Re: Help with Scheme engraver please, Trevor Daniels, 2016/09/02
- Re: Help with Scheme engraver please, Thomas Morley, 2016/09/02
- Re: Help with Scheme engraver please, Trevor Daniels, 2016/09/02
- Re: Help with Scheme engraver please, Thomas Morley, 2016/09/03
- Re: Help with Scheme engraver please, Thomas Morley, 2016/09/04
- Re: Help with Scheme engraver please, Trevor Daniels, 2016/09/07
- Re: Help with Scheme engraver please, Thomas Morley, 2016/09/09
- Re: Help with Scheme engraver please, Trevor Daniels, 2016/09/17
- Re: Help with Scheme engraver please,
Trevor Daniels <=