[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: tablature.ly
From: |
Neil Puttock |
Subject: |
Re: tablature.ly |
Date: |
Thu, 30 Apr 2009 19:51:16 +0100 |
2009/4/30 Carl D. Sorensen <address@hidden>:
>
> On 4/30/09 1:36 AM, "Marc Hohl" <address@hidden> wrote:
>
>> I tried to cons these values, and I succeded (or at least it seemed to
>> me) for the
>> supported-clefs list, but not with the c0-pitch-alist
>> (see attached files and lilypond's error messages).
>> Is this list only locally defined, or am I missing something?
>
> You are correct. c0-pitch-alist is not public. So it's currently not
> possible to cons a value in with the tablature.ly file.
Oops. :)
Sorry Marc, I didn't notice that. I ran a quick test by amending
parser-clef.scm, so I hadn't actually tried consing values.
> My recommendation is that you pursue option c. The disadvantage of pursuing
> option c is that it won't be available to others until a new release of
> LilyPond is issued.
I agree, that seems the best option for the moment.
At a later date, we might consider moving the clef callbacks in
clef.cc to scheme completely, so you'd be able to incorporate the
conditional code for modern tabs directly into the clef::print
callback.
> Define a new Scheme function to be used as the Clef 'stencil property
>
> (define (newClefPrint grob) ....)
I suggest something like `clef::print-modern-tab-if-set' to follow
LilyPond coding style.
> It should check for the 'glyph property of the grob, and if it's
> markup.moderntab, it will call the new tab markup function. Otherwise, it
> will call (ly:clef::print grob).
Two further points:
Just to be on the safe side, when retrieving 'staff-space, a default
value should be given, since it's not normally set:
(ly:grob-property grob 'staff-space 1)
As I mentioned previously, unless you want to code a smaller clef for
changes, you'll want to set 'full-size-change = ##t. This will shut
up any complaints about missing a glyph for "markup.moderntab_change".
You can set it within the new stencil callback using
ly:grob-set-property!:
(ly:grob-set-property! grob 'full-size-change #t)
Regards,
Neil
- Re: tablature.ly, (continued)
Re: tablature.ly, Marc Hohl, 2009/04/27
Re: tablature.ly, Neil Puttock, 2009/04/28
Re: tablature.ly, Neil Puttock, 2009/04/28
Re: tablature.ly, Marc Hohl, 2009/04/29