[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Patch] font-family
From: |
Han-Wen Nienhuys |
Subject: |
[Patch] font-family |
Date: |
Wed, 14 Aug 2002 18:00:22 +0200 |
address@hidden writes:
> If this is happens in a single instance, I could let it go, but now
> you're putting this all over the code, in vital parts (eg. note
> heads.) I want to suggest the following approach.
>
>
> Foo::brew_molecule
> {
> return single_glyph_from_font
> }
>
>
> single_glyph_from_font (Grob *me)
> {
> SCM proc = me->get_grob_property("find-font-symbol-procedure");
>
>
> }
>
(continuing)
On 2nd thought, I can't easily think of a general way to handle this,
so I propose that the find-symbol-functions are changed to be a
drop-in substitute for brew_molecule() callbacks. They are coded in
Scheme, using tables like the code you submitted, and support for
style properties is removed from the C++ ones.
For some grobs (notehead, rest, mmrest), additional stuff must be
done. A grob property find-grob-symbol-function is used that returns a
molecule with the appropriate symbol in it.
For using these definitions, a macro should be defined, i.e.
ancientNotation = {
\property Current.Clef \override #'molecule-callback
= #get-clef-molecule-with-style
\property Current.NoteHead \override #'find-grob-symbol-function
= #get-note-molecule-with-style
...
}
In practical use, you would do
\notes {
..
\context Staff \ancientNotation
\property Staff.NoteHead \set #'style = #'baroque
..
}
\ancientNotation is only needed once for every staff/score etc using
special styles. Perhaps \ancientNotation is a strange name -- and we
should use \specialSymbolStyles -- I can't tell how this would impact
shaped noteheads (ie. cross/circle/etc)?
--
Han-Wen Nienhuys | address@hidden | http://www.cs.uu.nl/~hanwen/