+2005-01-24 Werner Lemberg <wl@gnu.org>
+
+ * mf/feta-autometric.mf (fet_beginfont): Set font_coding_scheme
+ to `asis'.
+ (fet_begingroup): Save group name in string `feta_group'.
+ (fet_endgroup): Updated.
+ (fet_beginchar): Emit `glyph_name' special for mf2pt1.
+
+ * mf/feta-bolletjes.mf: s/p/pat/ for paths.
+
+ * mf/feta-pendaal.mf ("Pedal asterisk"): Add workaround for bug
+ in metapost.
+
2005-01-24 Graham Percival <gperlist@shaw.ca>
* Documentation/user/notation.itely: really minor editing.
def fet_beginfont (expr name, size, encod) =
font_identifier := name & decimal size;
font_size size;
- font_coding_scheme encod;
+ font_coding_scheme "asis";
message "@{font@:GNU@:LilyPond@:" & name
& "@:" & decimal size
& "@:" & encod
% group or table?
def fet_begingroup (expr name) =
- message "@{group@:" & name
+begingroup;
+ save feta_group;
+ string feta_group;
+
+ feta_group := name;
+
+ message "@{group@:" & feta_group
& "@}";
message "";
-begingroup
enddef;
def fet_endgroup (expr name) =
-endgroup;
message "@{puorg@:" & name
& "@}";
message "";
+endgroup;
enddef;
def no_dimen_beginchar (expr c) =
-begingroup
+begingroup;
charcode := if known c: byte c else: 0; fi;
charic := 0;
clearxy;
charnamestr := name;
idstr := id_lit;
+ % addition for mf2pt1
+ if known bp_per_pixel:
+ special "% MF2PT1: glyph_name " & feta_group & "." & idstr;
+ fi;
+
no_dimen_beginchar (incr code) name;
enddef;
chardx := (w + b); % what the heck is chardx
shipit;
-endgroup
+endgroup;
enddef;
def draw_outside_ellipse (expr ellipticity, tilt, superness, slant) =
save attachment_y;
- save p;
- path p;
+ save pat;
+ path pat;
- p := superellipse ((ellipticity, 0), (-slant * ellipticity, 1.0),
- (-ellipticity, 0), (slant * ellipticity, -1.0),
- superness);
- p := p rotated tilt;
+ pat := superellipse ((ellipticity, 0), (-slant * ellipticity, 1.0),
+ (-ellipticity, 0), (slant * ellipticity, -1.0),
+ superness);
+ pat := pat rotated tilt;
save top_point, right_point;
pair top_point, right_point;
- top_point := directionpoint left of p;
- right_point := directionpoint up of p;
+ top_point := directionpoint left of pat;
+ right_point := directionpoint up of pat;
save scaling, width;
charwy := ypart (right_point) * scaling#;
charwx := width#;
- p := p scaled scaling shifted (w / 2, .5 (h - d));
+ pat := pat scaled scaling shifted (w / 2, .5 (h - d));
width := hround width;
if test_outlines = 1:
- draw p;
+ draw pat;
else:
- fill p;
+ fill pat;
fi;
enddef;
def undraw_inside_ellipse (expr ellipticity, tilt, superness, clearance) =
begingroup
- save p;
- path p;
+ save pat;
+ path pat;
- p := superellipse ((ellipticity, 0), (0, 1.0),
- (-ellipticity, 0), (0, -1.0),
- superness);
- p := p rotated tilt;
+ pat := superellipse ((ellipticity, 0), (0, 1.0),
+ (-ellipticity, 0), (0, -1.0),
+ superness);
+ pat := pat rotated tilt;
save top_point, right_point;
pair top_point, right_point;
- top_point := directionpoint left of p;
- right_point := directionpoint up of p;
+ top_point := directionpoint left of pat;
+ right_point := directionpoint up of pat;
save height, scaling;
height# = staff_space# + stafflinethickness# - clearance;
scaling# = height# / (2 ypart (top_point));
define_pixels (scaling);
- p := (p scaled scaling) shifted (w / 2, .5 (h - d));
+ pat := pat scaled scaling shifted (w / 2, .5 (h - d));
if test_outlines = 1:
- draw p;
+ draw pat;
else:
- unfill p;
+ unfill pat;
fi
endgroup;
enddef;