Re: [frogs] Re: Lilypond's internal pitch representation and microtonal notation

[ Thread Index | Date Index | More lilynet.net/frogs Archives ]


 On 21/09/10 23:31, Carl Sorensen wrote:
>
>
> On 9/21/10 11:50 AM, "Wols Lists" <antlists@xxxxxxxxxxxxxxx> wrote:
>
>>  On 21/09/10 14:22, Carl Sorensen wrote:
>>> I think you can get the output you want without an engraver (I know, we've
>>> had this conversation before).  I'd recommend that you update your
>>> modifications to the chord_name_engraver to be based on either two pitches
>>> or a transposition pitch and get all of that working properly.
>> Okay, that'll teach me a bit more. So rather than capoFret, I'll have
>> capoKey, and just set that to a pitch. I'll then learn how to extract
>> the key from the key-signature, and calculate the difference. The latter
>> I think will be easy, the former a bit more tricky :-)
> It might be easier to start with capoPitch (the interval you want to
> transpose by) and thus avoid all the difficulties of calculating capoPitch.
Hmmm. That would be easiest programming wise, of course. But how do I do
that? I guess it would be (for capo 3, say) "set capoPitch = (0, 2, 0)"
to say transpose down a third. But that makes it nasty for the poor user.

Much simpler (from the user's point of view) to say "set capoKey = a",
and if the key signature has already been declared as C (major/minor is
obviously irrelevant :-) I simply subtract c from a (or the other way
round, I'll have to think it through :-) and it all comes neatly together.
> Then, if you're interested, you can set capoKey later on.
>
> But whatever you want to do, of course...
>
>
Now I've got the changes to chord-engraver done, that's the crucial bit.
As you say, the rest could be done with markup. But I'm looking at
making it easy from the user's point of view (plus the learning exercise
for me :-) so the plan was that by creating the capo-indicator-engraver,
it would take care of everything.

So if the capo-indicator-engraver was attached by default (not sure how
you do that :-) all the user need do is say "key = x, capo = y" and
everything just works. Of course, things are rarely that simple :-)

Cheers,
Wol

---
----
Join the Frogs!


Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/