On 6/16/11 2:57 PM, "Janek Warchoł" <lemniskata.bernoull...@gmail.com>
wrote:
> 2011/6/14 Marc Hohl <m...@hohlart.de>:
>> Am 13.06.2011 22:16, schrieb Janek Warchoł:
>>>
>>> 2011/6/13 Janek Warchoł<lemniskata.bernoull...@gmail.com>:
>>>>
>>>> Bad news: it doesn't work (the flags are squashed)
>>>
>>> An idea came to my mind - maybe we can use our *.table files in
>>> feta-flags?
>>> Is it possible to tell our build system to compile feta-noteheads
>>> first and feta-flags (which would contain a reference to
>>> feta-noteheads.otf-gtable) second? Is this viable?
>>
>> I don't know. I searched through the source files,
>> and IIUC black_notehead_width depends on the function draw_outside_ellipse
>> (defined in feta-noteheads.mf) and the puff_up_factor (defined in
>> feta-params.mf).
>>
>> So while you are restructuring the metafont files anyway (well, kind of),
>> would it make sense to collect the drawing functions like
>> draw_outside_ellipse
>> in another file, perhaps feta-routines.mf?
>>
>> Then you could include that file in both feta-noteheads.mf and feta-flags.mf
>> and call draw_outside_ellipse to compute the value of black_notehead_width.
>>
>> I think this is easier to maintain than forcing an order in which the files
>> are handled during the build process, and it makes testing more easy,
>> because
>> the files are handled independently.
>>
>> But this looks like a whole lot of work ... :-(
>
> I don't think it would be too much work, but we will still have a problem:
> if we move draw_outside_ellipse to feta-routines.mf and included that file
> in both feta-flags and feta-noteheads, how will we ensure that
> it will be called with the same parameters every time? (i.e. if someone
> decides to change black notehead by tweaking the parameters of
> draw_outside_ellipse in feta-noteheads, he may forget to change
> its parameters in feta-flags. And even if he won't forget, it's still a non
> elegant solution) We can solve this by moving these parameters
> to feta-routines too, but then we will have noteheads' parameters
> in two different places.
I agree with Janek's concern. I think that black-notehead-width is properly
set in feta-noteheads. And the proper solution is to make that value
global.
I'll spend some time on the airplane this week (I'm going to a conference in
Hawaii -- poor me ;) ) to see if I can figure out how to get
black-notehead-width global.
Thanks,
Carl
_______________________________________________
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel