summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/fonts/source/jknappen/ec/exilwest.mf
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/fonts/source/jknappen/ec/exilwest.mf')
-rw-r--r--Master/texmf-dist/fonts/source/jknappen/ec/exilwest.mf761
1 files changed, 761 insertions, 0 deletions
diff --git a/Master/texmf-dist/fonts/source/jknappen/ec/exilwest.mf b/Master/texmf-dist/fonts/source/jknappen/ec/exilwest.mf
new file mode 100644
index 00000000000..1aa3f556f6c
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/jknappen/ec/exilwest.mf
@@ -0,0 +1,761 @@
+% exilwest.mf
+%
+% (c) Copyright 1995, 1996, 1997 J"org Knappen
+% (c) Copyright 1990, 1992 Norbert Schwarz
+%
+% This file is part of ecfonts version 1.0
+%
+% Please read the files 00readme.txt, 00inst.txt, 00error.txt, and
+% copyrite.txt for further information
+%
+% You find some documentation in ecdoc.tex (needs LaTeX2e)
+%
+% Content:
+%
+% italic lowercase accented letters ("western part")
+%
+% oct"340" .. oct"377"
+%
+% oct"340" .. oct"377"
+%
+% oct"340" a with gravis
+% oct"341" a with acute
+% oct"342" a with circumflex
+% oct"343" a with tilde
+% oct"344" a with umlaut
+% oct"345" a with ring
+% oct"346" ae
+% oct"347" c with cedilla
+%
+% oct"350" e with gravis
+% oct"351" e with acute
+% oct"352" e with circumflex
+% oct"353" e with umlaut
+% oct"354" i with gravis
+% oct"355" i with acute
+% oct"356" i with circumflex
+% oct"357" i with umlaut
+%
+% oct"360" edh (icelandic)
+% oct"361" n with tilde
+% oct"362" o with gravis
+% oct"363" o with acute
+% oct"364" o with circumflex
+% oct"365" o with tilde
+% oct"366" o with umlaut
+% oct"367" oe
+%
+% oct"370" o with /
+% oct"371" u with gravis
+% oct"372" u with acute
+% oct"373" u with circumflex
+% oct"374" u with umlaut
+% oct"375" y with acute
+% oct"376" thorn
+% oct"377" sharp s
+
+version_check(1,0); % |version_check| was introduced in dc1.3
+
+ecchar "Italic letter a with gravis";
+beginchar_twice(oct"340",9u#,x_height#+acc_height#,0);
+italcorr 1/3x_height#*slant+.5hair#+.5u#;
+adjust_fit(0,0); pickup fine.nib;
+pos0(hair,0); pos1(vair,90); pos2(curve,180); pos3(vair,270);
+pos4(stem,0); x4=x0; y4+.5stem=vround .98x_height;
+x1=x3=.5[x0,x2]; lft x2r=hround(1.5u-.5curve);
+rt x4r=hround(w-2.5u+.5stem);
+top y1r=x_height+oo; bot y3r=-oo; y0=y2=.5[y1,y3];
+filldraw stroke super_arc.e(0,1) & pulled_arc.e(1,2)
+ & pulled_arc.e(2,3) & super_arc.e(3,0); % bowl
+x5=x4; x7=w; hook_out(5,6,7); % closing hook
+filldraw circ_stroke z4e--z5e; % stem
+math_fit(-.3x_height#*slant+.5curve#-u#,ic#);
+put_gravis;
+repeat_once;
+penlabels(0,1,2,3,4,5,6,7); endchar;
+
+ecchar "Italic letter a with acute";
+beginchar_twice(oct"341",9u#,x_height#+acc_height#,0);
+italcorr 1/3x_height#*slant+.5hair#+.5u#;
+adjust_fit(0,0); pickup fine.nib;
+pos0(hair,0); pos1(vair,90); pos2(curve,180); pos3(vair,270);
+pos4(stem,0); x4=x0; y4+.5stem=vround .98x_height;
+x1=x3=.5[x0,x2]; lft x2r=hround(1.5u-.5curve);
+rt x4r=hround(w-2.5u+.5stem);
+top y1r=x_height+oo; bot y3r=-oo; y0=y2=.5[y1,y3];
+filldraw stroke super_arc.e(0,1) & pulled_arc.e(1,2)
+ & pulled_arc.e(2,3) & super_arc.e(3,0); % bowl
+x5=x4; x7=w; hook_out(5,6,7); % closing hook
+filldraw circ_stroke z4e--z5e; % stem
+math_fit(-.3x_height#*slant+.5curve#-u#,ic#);
+put_accent;
+repeat_once;
+penlabels(0,1,2,3,4,5,6,7); endchar;
+
+
+ecchar "Italic letter circumflex a";
+beginchar(oct"342",9u#,x_height#+acc_height#,0);
+italcorr 1/3x_height#*slant+.5hair#+.5u#;
+adjust_fit(0,0); pickup fine.nib;
+pos0(hair,0); pos1(vair,90); pos2(curve,180); pos3(vair,270);
+pos4(stem,0); x4=x0; y4+.5stem=vround .98x_height;
+x1=x3=.5[x0,x2]; lft x2r=hround(1.5u-.5curve);
+rt x4r=hround(w-2.5u+.5stem);
+top y1r=x_height+oo; bot y3r=-oo; y0=y2=.5[y1,y3];
+filldraw stroke super_arc.e(0,1) & pulled_arc.e(1,2)
+ & pulled_arc.e(2,3) & super_arc.e(3,0); % bowl
+x5=x4; x7=w; hook_out(5,6,7); % closing hook
+filldraw circ_stroke z4e--z5e; % stem
+math_fit(-.3x_height#*slant+.5curve#-u#,ic#);
+% the accent
+lowercase_hat(.5w,0,8,9,10,11,12);
+penlabels(0,1,2,3,4,5,6,7,8,9,10,11,12); endchar;
+
+ecchar "Italic letter a with tilde";
+beginchar(oct"343",9u#,x_height#+acc_height#,0);
+italcorr 1/3x_height#*slant+.5hair#+.5u#;
+adjust_fit(0,0); pickup fine.nib;
+pos0(hair,0); pos1(vair,90); pos2(curve,180); pos3(vair,270);
+pos4(stem,0); x4=x0; y4+.5stem=vround .98x_height;
+x1=x3=.5[x0,x2]; lft x2r=hround(1.5u-.5curve);
+rt x4r=hround(w-2.5u+.5stem);
+top y1r=x_height+oo; bot y3r=-oo; y0=y2=.5[y1,y3];
+filldraw stroke super_arc.e(0,1) & pulled_arc.e(1,2)
+ & pulled_arc.e(2,3) & super_arc.e(3,0); % bowl
+x5=x4; x7=w; hook_out(5,6,7); % closing hook
+filldraw circ_stroke z4e--z5e; % stem
+math_fit(-.3x_height#*slant+.5curve#-u#,ic#);
+% the accent
+lowercase_tilde(-.5u,-1/6acc_height,8,9,10,11,12);
+penlabels(0,1,2,3,4,5,6,7,8,9,10,11,12); endchar;
+
+
+ecchar "Italic letter a with umlaut";
+beginchar(oct"344",9u#,x_height#+acc_height#,0);
+italcorr 1/3x_height#*slant+.5hair#+.5u#;
+adjust_fit(0,0); pickup fine.nib;
+pos0(hair,0); pos1(vair,90); pos2(curve,180); pos3(vair,270);
+pos4(stem,0); x4=x0; y4+.5stem=vround .98x_height;
+x1=x3=.5[x0,x2]; lft x2r=hround(1.5u-.5curve);
+rt x4r=hround(w-2.5u+.5stem);
+top y1r=x_height+oo; bot y3r=-oo; y0=y2=.5[y1,y3];
+filldraw stroke super_arc.e(0,1) & pulled_arc.e(1,2)
+ & pulled_arc.e(2,3) & super_arc.e(3,0); % bowl
+x5=x4; x7=w; hook_out(5,6,7); % closing hook
+filldraw circ_stroke z4e--z5e; % stem
+math_fit(-.3x_height#*slant+.5curve#-u#,ic#);
+% the accent
+lowercase_umlaut(0,0,8,9,10,11);
+penlabels(0,1,2,3,4,5,6,7,8,9,10,11); endchar;
+
+ecchar "Italic letter a with ring";
+beginchar(oct"345",9u#,x_height#+acc_height#,0);
+italcorr 1/3x_height#*slant+.5hair#+.5u#;
+adjust_fit(0,0); pickup fine.nib;
+pos0(hair,0); pos1(vair,90); pos2(curve,180); pos3(vair,270);
+pos4(stem,0); x4=x0; y4+.5stem=vround .98x_height;
+x1=x3=.5[x0,x2]; lft x2r=hround(1.5u-.5curve);
+rt x4r=hround(w-2.5u+.5stem);
+top y1r=x_height+oo; bot y3r=-oo; y0=y2=.5[y1,y3];
+filldraw stroke super_arc.e(0,1) & pulled_arc.e(1,2)
+ & pulled_arc.e(2,3) & super_arc.e(3,0); % bowl
+x5=x4; x7=w; hook_out(5,6,7); % closing hook
+filldraw circ_stroke z4e--z5e; % stem
+math_fit(-.3x_height#*slant+.5curve#-u#,ic#);
+% the accent
+lowercase_circle(x1,(1/3[x_height,h]+apex_o),8,9,10,11);
+penlabels(0,1,2,3,4,5,6,7,8,9,10,11); endchar;
+
+iff knuthian_ae:
+ecchar "Italic ligature ae";
+beginchar(oct"346",13u#,x_height#,0);
+italcorr max(1/3x_height#*slant,x_height#*slant+.5(.2[hair#,stem#])-u#);
+adjust_fit(if monospace:-u#,-u# else: 0,0 fi); pickup fine.nib;
+forsuffixes $=hair,stem: shaved$:=mfudged$; save $; $=shaved$; endfor
+numeric light_stem; light_stem=hround .75[hair,stem];
+pos0(vair,-90); pos1(heavy_hair,0); pos2(vair,90);
+pos3(light_stem,180); pos4(vair,270); pos5(hair,320);
+x0=rt x3l; rt x1r=hround(w-1.5u+.5heavy_hair); x2=x4=.5(w+6u);
+lft x3r=hround(.5w-.5light_stem); x5r=good.x(w-.5u); x6=x5;
+y0=y3=y6=bar_height; y1=.5[y0,y2]; top y2r=h+oo; bot y4r=-oo;
+top y5l=vround(.5bar_height+.5); path p; p=z4{right}..z5..z6;
+filldraw stroke z0e{right}...z1e{up}...pulled_arc.e(2,3)
+ & pulled_arc.e(3,4)...{direction 1 of p}z5e; % arc of e
+pos7(light_stem,0); pos8(light_stem,0);
+x7=x8=x3; y7+.5light_stem=h+oo; y8-.5light_stem=-oo;
+pos7'(vair,-225); pos11(curve,-180); z7'=z7;
+pos12(vair,-90); pos3'(hair,0); z3'=z3;
+lft x11r=hround(1.5u-.5curve); x12=.5[x11,x3];
+y11=.3[y12,y7]; bot y12r=-oo;
+filldraw stroke z7'e{3(x11-x7),y11-y7}...pulled_arc.e(11,12)
+ & pulled_arc.e(12,3'); % bowl of a
+filldraw z7l---z8l..z8r---z7r..cycle; % stem
+penlabels(0,1,2,3,4,5,6,7,8,11,12); endchar;
+
+iff not knuthian_ae:
+ecchar "Italic ligature ae";
+beginchar(oct"346",13u#,x_height#,0);
+italcorr max(1/3x_height#*slant,x_height#*slant+.5(.2[hair#,stem#])-u#);
+adjust_fit(if monospace:-u#,-u# else: 0,0 fi); pickup fine.nib;
+forsuffixes $=hair,stem: shaved$:=mfudged$; save $; $=shaved$; endfor
+numeric light_stem; light_stem=hround .75[hair,stem];
+pos0(vair,-90); pos1(heavy_hair,0); pos2(vair,90);
+pos3(light_stem,180); pos4(vair,270); pos5(hair,320);
+x0=rt x3l; rt x1r=hround(w-1.5u+.5heavy_hair); x2=x4=.5(w+6u);
+lft x3r=hround(.5w-.5light_stem); x5r=good.x(w-.5u); x6=x5;
+y0=y3=y6=bar_height; y1=.5[y0,y2]; top y2r=h+oo; bot y4r=-oo;
+top y5l=vround(.5bar_height+.5); path p; p=z4{right}..z5..z6;
+filldraw stroke z0e{right}...z1e{up}...pulled_arc.e(2,3)
+ & pulled_arc.e(3,4)...{direction 1 of p}z5e; % arc of e
+pos7(light_stem,0);
+x7=x3; y7+.5light_stem=h+oo;
+pos7'(vair,-225); pos10(vair,-270);
+pos11(curve,-180); z7'=z7;
+pos12(vair,-90); pos3'(hair,0); z3'=z3;
+lft x11r=hround(1.5u-.5curve); x10=x12=.5[x11,x3];
+top y10r=h+oo; y11=.52h; bot y12r=-oo;
+filldraw stroke pulled_arc.e(3',10) & pulled_arc.e(10,11)
+ & pulled_arc.e(11,12) & pulled_arc.e(12,3'); % bowl of a
+filldraw z7l---z3r..z3l---z7r..cycle; % stem
+penlabels(0,1,2,3,4,5,6,7,10,11,12); endchar;
+
+
+ecchar "Italic letter cedilla c";
+beginchar(oct"347",8u#,x_height#,0.875desc_depth#);
+italcorr if math_fitting:1/3x_height#*slant else:x_height#*slant-u# fi;
+adjust_fit(0,0); pickup fine.nib;
+pos0(flare,0); pos1(hair,0); pos2(vair,90);
+pos3(curve,180); pos4(vair,270); pos5(hair,320);
+x2=x4=.5(w+u); rt x1r=max(rt x2,hround(w-u))+eps;
+lft x3r=hround(1.5u-.5curve); x5r=good.x(w-eps); x6=x5;
+y1=.5[bar_height,h]; top y2r=h+oo; bulb(2,1,0); % bulb
+bot y4r=-oo; y3=.5[y2,y4]; top y5l=vround .5bar_height; y6=bar_height;
+path p; p=z4{right}..z5..z6;
+filldraw stroke pulled_arc.e(2,3)
+ & pulled_arc.e(3,4)...{direction 1 of p}z5e; % arc
+math_fit(-.3x_height#*slant+.5curve#-u#,ic#);
+% the accent
+lowercase_cedilla(x4,0,7,8,9,10,11);
+penlabels(0,1,2,3,4,5,6,7,8,9,10,11); endchar;
+
+ecchar "Italic letter e with gravis";
+beginchar_twice(oct"350",8u#,x_height#+acc_height#,0);
+italcorr max(1/3x_height#*slant,x_height#*slant+.5(.2[hair#,stem#])-u#);
+adjust_fit(0,0); pickup fine.nib;
+pos0(vair,-90); pos1(heavy_hair,0); pos2(vair,90);
+pos3(curve,180); pos4(vair,270); pos5(hair,320);
+x0=rt x3l; rt x1r=hround(w-1.5u+.5heavy_hair); x2=x4=.5(w+u);
+lft x3r=hround(1.5u-.5curve); x5r=good.x(w-eps); x6=x5;
+y0=y3=y6=bar_height; y1=.5[y0,y2]; top y2r=x_height+oo; bot y4r=-oo;
+top y5l=vround .5bar_height; path p; p=z4{right}..z5..z6;
+filldraw stroke z0e{right}...z1e{up}...pulled_arc.e(2,3)
+ & pulled_arc.e(3,4)...{direction 1 of p}z5e; % arc
+math_fit(-.3x_height#*slant+.5curve#-u#,ic#);
+put_gravis;
+repeat_once;
+penlabels(0,1,2,3,4,5,6); endchar;
+
+ecchar "Italic letter e with acute";
+beginchar_twice(oct"351",8u#,x_height#+acc_height#,0);
+italcorr max(1/3x_height#*slant,x_height#*slant+.5(.2[hair#,stem#])-u#);
+adjust_fit(0,0); pickup fine.nib;
+pos0(vair,-90); pos1(heavy_hair,0); pos2(vair,90);
+pos3(curve,180); pos4(vair,270); pos5(hair,320);
+x0=rt x3l; rt x1r=hround(w-1.5u+.5heavy_hair); x2=x4=.5(w+u);
+lft x3r=hround(1.5u-.5curve); x5r=good.x(w-eps); x6=x5;
+y0=y3=y6=bar_height; y1=.5[y0,y2]; top y2r=x_height+oo; bot y4r=-oo;
+top y5l=vround .5bar_height; path p; p=z4{right}..z5..z6;
+filldraw stroke z0e{right}...z1e{up}...pulled_arc.e(2,3)
+ & pulled_arc.e(3,4)...{direction 1 of p}z5e; % arc
+put_accent;
+repeat_once;
+math_fit(-.3x_height#*slant+.5curve#-u#,ic#);
+penlabels(0,1,2,3,4,5,6); endchar;
+
+ecchar "Italic letter circumflex e";
+beginchar(oct"352",8u#,x_height#+acc_height#,0);
+italcorr max(1/3x_height#*slant,x_height#*slant+.5(.2[hair#,stem#])-u#);
+adjust_fit(0,0); pickup fine.nib;
+pos0(vair,-90); pos1(heavy_hair,0); pos2(vair,90);
+pos3(curve,180); pos4(vair,270); pos5(hair,320);
+x0=rt x3l; rt x1r=hround(w-1.5u+.5heavy_hair); x2=x4=.5(w+u);
+lft x3r=hround(1.5u-.5curve); x5r=good.x(w-eps); x6=x5;
+y0=y3=y6=bar_height; y1=.5[y0,y2]; top y2r=x_height+oo; bot y4r=-oo;
+top y5l=vround .5bar_height; path p; p=z4{right}..z5..z6;
+filldraw stroke z0e{right}...z1e{up}...pulled_arc.e(2,3)
+ & pulled_arc.e(3,4)...{direction 1 of p}z5e; % arc
+%the accent
+lowercase_hat(.5w,0,7,8,9,10,11);
+math_fit(-.3x_height#*slant+.5curve#-u#,ic#);
+penlabels(0,1,2,3,4,5,6,7,8,9,10,11); endchar;
+
+ecchar "Italic letter umlaut e";
+beginchar(oct"353",8u#,x_height#+acc_height#,0);
+italcorr max(1/3x_height#*slant,x_height#*slant+.5(.2[hair#,stem#])-u#);
+adjust_fit(0,0); pickup fine.nib;
+pos0(vair,-90); pos1(heavy_hair,0); pos2(vair,90);
+pos3(curve,180); pos4(vair,270); pos5(hair,320);
+x0=rt x3l; rt x1r=hround(w-1.5u+.5heavy_hair); x2=x4=.5(w+u);
+lft x3r=hround(1.5u-.5curve); x5r=good.x(w-eps); x6=x5;
+y0=y3=y6=bar_height; y1=.5[y0,y2]; top y2r=x_height+oo; bot y4r=-oo;
+top y5l=vround .5bar_height; path p; p=z4{right}..z5..z6;
+filldraw stroke z0e{right}...z1e{up}...pulled_arc.e(2,3)
+ & pulled_arc.e(3,4)...{direction 1 of p}z5e; % arc
+%the accent
+lowercase_umlaut(0,0,7,8,9,10);
+math_fit(-.3x_height#*slant+.5curve#-u#,ic#);
+penlabels(0,1,2,3,4,5,6,7,8,9,10); endchar;
+
+ecchar "Italic letter i with gravis";
+beginchar_twice(oct"354",5u#,x_height#+acc_height#,0);
+italcorr 1/3x_height#*slant+.5hair#+.5u#;
+adjust_fit(if monospace:u#,u# else: 0,0 fi); pickup fine.nib;
+x0=0; x5=w; x2=.5w+.25u; x3=.5w-.25u;
+if classic_serif:
+ hook_out(3,4,5)(skewed); % hooks
+ top y2=x_height;
+ pos2(stem,0);
+ sloped_serif.l(2,3,a,1/3,jut,serif_drop);
+else:
+ hook_in(0,1,2)(skewed);
+ hook_out(3,4,5)(skewed); % hooks
+fi
+filldraw stroke z2e--z3e; % stem
+put_gravis;
+repeat_once;
+penlabels(0,1,2,3,4,5,6,7); endchar;
+
+ecchar "Italic letter i with acute";
+beginchar_twice(oct"355",5u#,x_height#+acc_height#,0);
+italcorr 1/3x_height#*slant+.5hair#+.5u#;
+adjust_fit(if monospace:u#,u# else: 0,0 fi); pickup fine.nib;
+x0=0; x5=w; x2=.5w+.25u; x3=.5w-.25u;
+if classic_serif:
+ hook_out(3,4,5)(skewed); % hooks
+ top y2=x_height;
+ pos2(stem,0);
+ sloped_serif.l(2,3,a,1/3,jut,serif_drop);
+else:
+ hook_in(0,1,2)(skewed);
+ hook_out(3,4,5)(skewed); % hooks
+fi
+filldraw stroke z2e--z3e; % stem
+put_accent;
+repeat_once;
+penlabels(0,1,2,3,4,5); endchar;
+
+ecchar "Italic letter circumflex i";
+beginchar(oct"356",5u#,x_height#+acc_height#,0);
+italcorr 1/3x_height#*slant+.5hair#+.5u#;
+adjust_fit(if monospace:u#,u# else: 0,0 fi); pickup fine.nib;
+x0=0; x5=w; x2=.5w+.25u; x3=.5w-.25u;
+if classic_serif:
+ hook_out(3,4,5)(skewed); % hooks
+ top y2=x_height;
+ pos2(stem,0);
+ sloped_serif.l(2,3,a,1/3,jut,serif_drop);
+else:
+ hook_in(0,1,2)(skewed);
+ hook_out(3,4,5)(skewed); % hooks
+fi
+filldraw stroke z2e--z3e; % stem
+% the accent
+if classic_serif: lowercase_hat(.5w,0,6,7,8,9,10);
+else: lowercase_hat(.5[.x1r,x2l],0,6,7,8,9,10); fi
+penlabels(0,1,2,3,4,5,6,7,8,9,19); endchar;
+
+
+
+
+ecchar "Italic letter umlaut i";
+beginchar(oct"357",5u#,x_height#+acc_height#,0);
+italcorr 1/3x_height#*slant+.5hair#+.5u#;
+adjust_fit(if monospace:u#,u# else: 0,0 fi); pickup fine.nib;
+x0=0; x5=w; x2=.5w+.25u; x3=.5w-.25u;
+if classic_serif:
+ hook_out(3,4,5)(skewed); % hooks
+ top y2=x_height;
+ pos2(stem,0);
+ sloped_serif.l(2,3,a,1/3,jut,serif_drop);
+else:
+ hook_in(0,1,2)(skewed);
+ hook_out(3,4,5)(skewed); % hooks
+fi
+filldraw stroke z2e--z3e; % stem
+% the accent
+lowercase_umlaut(0,0,6,7,8,9);
+penlabels(0,1,2,3,4,5,6,7,8,9); endchar;
+
+ecchar "Italic letter edh";
+beginchar(oct"360",9u#,asc_height#,0);
+italcorr .x_height#*slant;
+adjust_fit(if monospace: .5u#,.5u# else: 0,0 fi);
+oh := vround x_height ;
+penpos1(vair,90); penpos3(vair',-90);
+penpos2(curve,180); penpos4(curve,0); penpos4'(hair,0) ;
+x2r=hround max(.5u,1.25u-.5curve);
+x4r=w-x2r; x1=x3=.5w; y1r=oh + vround 1.5oo; y3r=-oo;
+y2=y4=.5oh-vair_corr; y2l:=y4l:=.52oh;
+x4'l = x4l; y4 = y4';
+penstroke pulled_arc.e(1,2) & pulled_arc.e(2,3)
+ & pulled_arc.e(3,4) -- pulled_arc.e(4',1) & cycle; % bowl
+fill z4l .. {right}z4 -- z4r -- cycle ; % fill in a little gap!
+penpos5(.5[vair,hair],40) ;
+x5l = x2 ; top y5r = h ;
+x7r = x4r;
+y7 = .95[x4,x1];
+penpos7(curve,0);
+penstroke z5e .. tension 1.1 and 0.9 .. z7e{down} .. z4e ;
+path p ;
+p = z5 .. tension 1.1 and 0.9 .. z7{down} ;
+z6 = ((0,.7[x_height,asc_height]) -- (w,.6[x_height,asc_height]))
+ intersectionpoint p ;
+penpos6'(.5[vair,hair],-60) ; penpos 6''(.5[vair,hair],-60) ;
+top y6''l = h ; z6'' = z6 + whatever*dir30;
+z6 = .5[z6',z6''] ; filldraw stroke z6'e -- z6''e ;
+penlabels(1,2,3,4,5,6,6',6''); endchar;
+
+ecchar "Italic letter n with tilde";
+beginchar(oct"361",10u#,x_height#+acc_height#,0);
+italcorr 1/3x_height#*slant+.5hair#+.5u#;
+adjust_fit(0,0); pickup fine.nib;
+x0=0; x1=x2; pos2(stem,0); lft x2l=hround(2.5u-.5stem); y2-.5stem=-oo;
+if classic_serif:
+ top y1=x_height; pos1(stem,0);
+ sloped_serif.l(1,2,a,1/3,jut,serif_drop);
+else:
+ hook_in(0,a,1); % opening hook
+fi
+filldraw circ_stroke z2e--z1e; % left stem
+x4+.5stem=hround(w-2.5u+.5stem); x5=x4-.25u; ital_arch(2,3,4); % arch
+x7=w; hook_out(5,6,7)(skewed); % closing hook
+filldraw stroke z4e{down}..{-u,-x_height}z5e; % right stem
+lowercase_tilde(0,-1/6acc_height,8,9,10,11,12);
+math_fit(-2/3x_height#*slant+.5hair#+.5u#,ic#);
+penlabels(0,a,1,2,3,4,5,6,7,8,9,10,11,12); endchar;
+
+ecchar "Italic letter o with gravis";
+beginchar_twice(oct"362",9u#,x_height#+acc_height#,0);
+italcorr .7x_height#*slant+.5curve#-u# if math_fitting:-.5u# fi;
+adjust_fit(0,0); pickup fine.nib;
+pos1(vair,90); pos2(curve,180); pos3(vair,270); pos4(curve,360);
+x1=x3=.5w; lft x2r=hround(1.5u-.5curve); x4=w-x2;
+top y1r=x_height+oo; y2=y4=.5[y1,y3]; bot y3r=-oo;
+filldraw stroke pulled_arc.e(1,2) & pulled_arc.e(2,3)
+ & pulled_arc.e(3,4) & pulled_arc.e(4,1); % bowl
+math_fit(-.3x_height#*slant+.5curve#-u#,ic#); penlabels(1,2,3,4);
+put_gravis;
+repeat_once;
+endchar;
+
+ecchar "Italic letter o with acute"; % use accent from plfonts
+beginchar_twice(oct"363",9u#,x_height#+acc_height#,0);
+italcorr .7x_height#*slant+.5curve#-u# if math_fitting:-.5u# fi;
+adjust_fit(0,0); pickup fine.nib;
+pos1(vair,90); pos2(curve,180); pos3(vair,270); pos4(curve,360);
+x1=x3=.5w; lft x2r=hround(1.5u-.5curve); x4=w-x2;
+top y1r=x_height+oo; y2=y4=.5[y1,y3]; bot y3r=-oo;
+filldraw stroke pulled_arc.e(1,2) & pulled_arc.e(2,3)
+ & pulled_arc.e(3,4) & pulled_arc.e(4,1); % bowl
+put_accent;
+repeat_once;
+math_fit(-.3x_height#*slant+.5curve#-u#,ic#); penlabels(1,2,3,4); endchar;
+
+ecchar "Italic letter o with circumflex";
+beginchar(oct"364",9u#,x_height#+acc_height#,0);
+italcorr .7x_height#*slant+.5curve#-u# if math_fitting:-.5u# fi;
+adjust_fit(0,0); pickup fine.nib;
+pos1(vair,90); pos2(curve,180); pos3(vair,270); pos4(curve,360);
+x1=x3=.5w; lft x2r=hround(1.5u-.5curve); x4=w-x2;
+top y1r=x_height+oo; y2=y4=.5[y1,y3]; bot y3r=-oo;
+filldraw stroke pulled_arc.e(1,2) & pulled_arc.e(2,3)
+ & pulled_arc.e(3,4) & pulled_arc.e(4,1); % bowl
+%the accent
+lowercase_hat(x1,0,5,6,7,8,9);
+math_fit(-.3x_height#*slant+.5curve#-u#,ic#);
+penlabels(1,2,3,4,7,8,9); endchar;
+
+
+ecchar "Italic letter o with tilde";
+beginchar(oct"365",9u#,x_height#+acc_height#,0);
+italcorr .7x_height#*slant+.5curve#-u# if math_fitting:-.5u# fi;
+adjust_fit(0,0); pickup fine.nib;
+pos1(vair,90); pos2(curve,180); pos3(vair,270); pos4(curve,360);
+x1=x3=.5w; lft x2r=hround(1.5u-.5curve); x4=w-x2;
+top y1r=x_height+oo; y2=y4=.5[y1,y3]; bot y3r=-oo;
+filldraw stroke pulled_arc.e(1,2) & pulled_arc.e(2,3)
+ & pulled_arc.e(3,4) & pulled_arc.e(4,1); % bowl
+%the accent
+lowercase_tilde(0,-1/6acc_height,5,6,7,8,9);
+math_fit(-.3x_height#*slant+.5curve#-u#,ic#);
+penlabels(1,2,3,4,7,8,9); endchar;
+
+ecchar "Italic letter o with umlaut";
+beginchar(oct"366",9u#,x_height#+acc_height#,0);
+italcorr .7x_height#*slant+.5curve#-u# if math_fitting:-.5u# fi;
+adjust_fit(0,0); pickup fine.nib;
+pos1(vair,90); pos2(curve,180); pos3(vair,270); pos4(curve,360);
+x1=x3=.5w; lft x2r=hround(1.5u-.5curve); x4=w-x2;
+top y1r=x_height+oo; y2=y4=.5[y1,y3]; bot y3r=-oo;
+filldraw stroke pulled_arc.e(1,2) & pulled_arc.e(2,3)
+ & pulled_arc.e(3,4) & pulled_arc.e(4,1); % bowl
+%the accent
+lowercase_umlaut(0,0,5,6,7,8);
+math_fit(-.3x_height#*slant+.5curve#-u#,ic#);
+penlabels(1,2,3,4,7,8); endchar;
+
+ecchar "Italic ligature oe";
+beginchar(oct"367",13u#,x_height#,0);
+italcorr max(1/3x_height#*slant,x_height#*slant+.5(.2[hair#,stem#])-u#);
+adjust_fit(if monospace:-u#,-u# else: 0,0 fi); pickup fine.nib;
+forsuffixes $=hair,stem: shaved$:=mfudged$; save $; $=shaved$; endfor
+pos0(vair,-90); pos1(heavy_hair,0); pos2(vair,90);
+pos3(stem,180); pos4(vair,270); pos5(hair,320);
+x0=rt x3l; rt x1r=hround(w-1.5u+.5heavy_hair); x2=x4=.5(w+6u);
+lft x3r=hround(.5w-.5stem); x5r=good.x(w-.5u); x6=x5;
+y0=y3=y6=bar_height; y1=.5[y0,y2]; top y2r=h+oo; bot y4r=-oo;
+top y5l=vround(.5bar_height+.5); path p; p=z4{right}..z5..z6;
+filldraw stroke z0e{right}...z1e{up}...pulled_arc.e(2,3)
+ & pulled_arc.e(3,4)...{direction 1 of p}z5e; % arc of e
+pos11(vair,90); pos12(curve,180); pos13(vair,270); pos14(stem,360);
+x11=x13=.5[x12,x14]; lft x12r=hround(1.5u-.5curve); x14=x3;
+top y11=h+oo; y12=y14=.5[y11,y13]; bot y13=-oo;
+filldraw stroke pulled_arc.e(11,12) & pulled_arc.e(12,13)
+ & pulled_arc.e(13,14) & pulled_arc.e(14,11); % bowl
+penlabels(0,1,2,3,4,5,6); endchar;
+
+ecchar "Italic Scandinavian letter o/slash";
+beginchar(oct"370",9u#,x_height#+.5desc_depth#,.5desc_depth#);
+italcorr h#*slant-u#+.5vair#;
+adjust_fit(0,0); pickup fine.nib;
+pos1(vair,90); pos2(fudged.stem,180);
+pos3(vair,270); pos4(fudged.stem,360);
+x1=x3=.5w; lft x2r=hround(1.5u-.5fudged.stem); x4=w-x2;
+top y1=x_height+oo; y2=y4=.5[y1,y3]; bot y3=-oo;
+filldraw stroke pulled_arc.e(1,2) & pulled_arc.e(2,3)
+ & pulled_arc.e(3,4) & pulled_arc.e(4,1); % bowl
+x5=x4; x6=x2; y5=h; y6=-d;
+numeric theta; theta=angle(z5-z6)-90;
+pickup crisp.nib; pos5(vair,theta); pos6(vair,theta);
+filldraw stroke z5e--z6e; % diagonal
+penlabels(1,2,3,4,5,6); endchar;
+
+ecchar "Italic letter u with gravis";
+beginchar_twice(oct"371",9.5u#,x_height#+acc_height#,0);
+italcorr 1/3x_height#*slant+.5hair#+.5u#;
+adjust_fit(0,0); pickup fine.nib; interim superness:=more_super;
+if classic_serif:
+ x0=0; x2=x3; pos3(stem,-180); lft x3r=hround(2.5u-.5stem);
+ pos2(stem,0);
+ top y2=x_height;
+else:
+ x0=0; x2=x3+.25u; pos3(stem,-180); lft x3r=hround(2.5u-.5stem);
+ hook_in(0,1,2)(skewed); % opening hook
+fi
+pos2'(stem,-180); z2'=z2;
+pos4(vair,-90); pos5(hair,0); x4=.5[x3,x5];
+pos6(stem,0); rt x6r=hround(w-2.5u+.5stem);
+x5=x6=x7; x9=w; hook_out(7,8,9); % closing hook
+y3=.7[y4,y5]; bot y4r=-oo; y5=.57x_height; y6+.5stem=x_height;
+if classic_serif:
+ filldraw stroke z2
+ ...super_arc.e(3,4)...{up}z5e; % left stem and arc
+else:
+ filldraw stroke z2'e{-u,-x_height}
+ ...super_arc.e(3,4)...{up}z5e; % left stem and arc
+fi
+filldraw circ_stroke z6e--z7e; % right stem
+if classic_serif: sloped_serif.l(2,3,a,1/3,jut,serif_drop); fi
+math_fit(-2/3x_height#*slant+.5hair#+.5u#,ic#);
+put_gravis;
+repeat_once;
+penlabels(0,1,2,3,4,5,6,7,8,9,10,11); endchar;
+
+ecchar "Italic letter u with acute";
+beginchar_twice(oct"372",9.5u#,x_height#+acc_height#,0);
+italcorr 1/3x_height#*slant+.5hair#+.5u#;
+adjust_fit(0,0); pickup fine.nib; interim superness:=more_super;
+if classic_serif:
+ x0=0; x2=x3; pos3(stem,-180); lft x3r=hround(2.5u-.5stem);
+ pos2(stem,0);
+ top y2=x_height;
+else:
+ x0=0; x2=x3+.25u; pos3(stem,-180); lft x3r=hround(2.5u-.5stem);
+ hook_in(0,1,2)(skewed); % opening hook
+fi
+pos2'(stem,-180); z2'=z2;
+pos4(vair,-90); pos5(hair,0); x4=.5[x3,x5];
+pos6(stem,0); rt x6r=hround(w-2.5u+.5stem);
+x5=x6=x7; x9=w; hook_out(7,8,9); % closing hook
+y3=.7[y4,y5]; bot y4r=-oo; y5=.57x_height; y6+.5stem=x_height;
+if classic_serif:
+ filldraw stroke z2
+ ...super_arc.e(3,4)...{up}z5e; % left stem and arc
+else:
+ filldraw stroke z2'e{-u,-x_height}
+ ...super_arc.e(3,4)...{up}z5e; % left stem and arc
+fi
+filldraw circ_stroke z6e--z7e; % right stem
+if classic_serif: sloped_serif.l(2,3,a,1/3,jut,serif_drop); fi
+math_fit(-2/3x_height#*slant+.5hair#+.5u#,ic#);
+put_accent;
+repeat_once;
+penlabels(0,1,2,3,4,5,6,7,8,9); endchar;
+
+ecchar "Italic letter u with circumflex";
+beginchar(oct"373",9.5u#,x_height#+acc_height#,0);
+italcorr 1/3x_height#*slant+.5hair#+.5u#;
+adjust_fit(0,0); pickup fine.nib; interim superness:=more_super;
+if classic_serif:
+ x0=0; x2=x3; pos3(stem,-180); lft x3r=hround(2.5u-.5stem);
+ pos2(stem,0);
+ top y2=x_height;
+else:
+ x0=0; x2=x3+.25u; pos3(stem,-180); lft x3r=hround(2.5u-.5stem);
+ hook_in(0,1,2)(skewed); % opening hook
+fi
+pos2'(stem,-180); z2'=z2;
+pos4(vair,-90); pos5(hair,0); x4=.5[x3,x5];
+pos6(stem,0); rt x6r=hround(w-2.5u+.5stem);
+x5=x6=x7; x9=w; hook_out(7,8,9); % closing hook
+y3=.7[y4,y5]; bot y4r=-oo; y5=.57x_height; y6+.5stem=x_height;
+if classic_serif:
+ filldraw stroke z2
+ ...super_arc.e(3,4)...{up}z5e; % left stem and arc
+else:
+ filldraw stroke z2'e{-u,-x_height}
+ ...super_arc.e(3,4)...{up}z5e; % left stem and arc
+fi
+filldraw circ_stroke z6e--z7e; % right stem
+if classic_serif: sloped_serif.l(2,3,a,1/3,jut,serif_drop); fi
+math_fit(-2/3x_height#*slant+.5hair#+.5u#,ic#);
+% the accent
+lowercase_hat(.5w,0,10,11,12,13,14);
+penlabels(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14); endchar;
+
+ecchar "Italic letter u with umlaut";
+beginchar(oct"374",9.5u#,x_height#+acc_height#,0);
+italcorr 1/3x_height#*slant+.5hair#+.5u#;
+adjust_fit(0,0); pickup fine.nib; interim superness:=more_super;
+if classic_serif:
+ x0=0; x2=x3; pos3(stem,-180); lft x3r=hround(2.5u-.5stem);
+ pos2(stem,0);
+ top y2=x_height;
+else:
+ x0=0; x2=x3+.25u; pos3(stem,-180); lft x3r=hround(2.5u-.5stem);
+ hook_in(0,1,2)(skewed); % opening hook
+fi
+pos2'(stem,-180); z2'=z2;
+pos4(vair,-90); pos5(hair,0); x4=.5[x3,x5];
+pos6(stem,0); rt x6r=hround(w-2.5u+.5stem);
+x5=x6=x7; x9=w; hook_out(7,8,9); % closing hook
+y3=.7[y4,y5]; bot y4r=-oo; y5=.57x_height; y6+.5stem=x_height;
+if classic_serif:
+ filldraw stroke z2
+ ...super_arc.e(3,4)...{up}z5e; % left stem and arc
+else:
+ filldraw stroke z2'e{-u,-x_height}
+ ...super_arc.e(3,4)...{up}z5e; % left stem and arc
+fi
+filldraw circ_stroke z6e--z7e; % right stem
+if classic_serif: sloped_serif.l(2,3,a,1/3,jut,serif_drop); fi
+math_fit(-2/3x_height#*slant+.5hair#+.5u#,ic#);
+% the accent
+lowercase_umlaut(0,0,10,11,12,13);
+penlabels(0,1,2,3,4,5,6,7,8,9,10,11,12,13); endchar;
+
+ecchar "Italic letter y with acute";
+beginchar_twice(oct"375",8.5u#,x_height#+acc_height#,desc_depth#);
+italcorr x_height#*slant+.5stem#-u#;
+adjust_fit(0,0); pickup fine.nib; interim superness:=more_super;
+x0=0; x2=x3+.25u; pos3(stem,-180); lft x3r=hround(2.5u-.5stem);
+if classic_serif:
+ pos2(stem,0);
+ top y2=x_height;
+else:
+ hook_in(0,1,2)(skewed); % opening hook
+fi
+pos2'(stem,-180); z2'=z2;
+pos4(vair,-90); pos5(hair,0); x4=.5[x3,x5];
+pos6(stem,0); rt x6r=hround(w-1.5u+.5stem);
+pos7(stem,0); pos8(vair,-90);
+y3=.7[y4,y5]; bot y4r=-oo; y5=.57x_height; y6+.5stem=x_height;
+y7=0; bot y8r=-d-oo; x5=x6=x7; x8=.5w;
+pos9(hair,-180); pos10(flare,-180); y9=-.5d;
+lft x9r=hround(2.75u-.5flare); bulb(8,9,10); % bulb
+filldraw stroke z2'e{-u,-x_height}
+ ...super_arc.e(3,4)...{up}z5e; % left stem and arc
+filldraw circ_stroke z6e---z7e...{left}z8e; % right stem and link
+if classic_serif: sloped_serif.l(2,3,a,1/3,jut,serif_drop); fi
+put_accent;
+repeat_once;
+math_fit(-2/3x_height#*slant+.5hair#+.5u#,ic#-1/3x_height#*slant);
+penlabels(0,1,2,3,4,5,6,7,8,9,10); endchar;
+
+ecchar "Italic letter thorn";
+beginchar(oct"376",9u#+serif_fit#,asc_height#,desc_depth#);
+italcorr .7x_height#*slant+.5curve# -u# if math_fitting: -.5u# fi;
+adjust_fit(0,0);
+pickup tiny.nib; pos1(stem',0); pos2(stem,0);
+pos0'(stem',0); pos0(stem,0); z0l=z0'l; x0'=x1; x0=x2;
+lft x1l=hround(2.5u-.5stem'); top y1=h;
+numeric edge; edge=rt x2r;
+pickup fine.nib; pos3(if hefty:thin_join else: hair fi,180);
+pos4(vair,90); pos5(curve,0); pos6(vair,-90); penpos7(x3l-x3r,-180);
+rt x3l=max(rt x3l-(lft x3r-tiny.lft x2l),1/3[rt x2,edge]);
+y3=1/8[bar_height,x_height];
+x4l=w-.5(w-serif_fit)+.5u; top y4r=x_height+oo;
+rt x5r=hround min(w-1.35u+.5curve,w-.6u); y5=.5x_height;
+x6l=x4l-.2u; bot y6r=-oo;
+x7=x3; y7=min(y3,y6+y4-y3+.6vair);
+(x,y4r)=whatever[z3l,z4l]; x4r:=min(x,.5[x4,x5r]);
+(x',y6r)=whatever[z7l,z6l]; x6r:=min(x',.5[x6,x5r]);
+filldraw stroke z3e{up}...pulled_arc.e(4,5)&pulled_arc.e(5,6)...{up}z7e; % bowl
+y0=ypart(((edge,h)--(edge,0))intersectionpoint(z3l{up}...{right}z4l));
+y2=ypart(((edge,h)--(edge,0))intersectionpoint(z6l{left}...{up}z7l));
+pickup tiny.nib; filldraw stroke z1e--z0'e--z0e--z2e; % stem
+pickup crisp.nib; pos8(stem,0); pos7'(stem,0);
+z7'=z2; x8l=x7'l; bot y8=-d;
+filldraw stroke z7'e--z8e; % point
+if serifs: sloped_serif.l(1,0',a,1/3,jut,serif_drop); % upper serif
+ dish_serif(8,1,c,1/3,jut,d,1/3,jut); % lower serif
+ fi % upper serif
+penlabels(0,1,2,3,4,5,6,7,8); endchar;
+
+ecchar "Italic German letter sharp s";
+beginchar(oct"377",4.5u#+max(1.5u#,stem#)+max(3.5u#,2flare#),asc_height#,desc_depth#);
+italcorr .9asc_height#*slant-u#;
+adjust_fit(if monospace: u# else: 0 fi,0); pickup fine.nib;
+z88=(.5w-2.75u,h); z89=(.5w-1.75u,-d);
+numeric theta; theta=angle(z88-z89);
+pos1(stem,0); pos2(vair,90); pos3(.5[hair,stem],180);
+pos4(stem,theta+90); pos5(stem,theta-90); pos6(.5[hair,stem],0);
+pos7(vair,-90); pos8(hair,-180); pos9(flare,-180);
+rt x1r=hround(w-1.5u); lft x8r=hround-.25u; x2=.5[x1,x4]; x7=.5[x8,x5];
+y9-.5flare=vround -.85d; bot y7r=-d-oo; y1=.5[x_height,h]; top y2r=h+oo;
+y4=.25[x_height,h]; y5=.5[-d,y4];
+z4=whatever[z88,z89]; z5=whatever[z88,z89];
+x3=.8[x2+x4-x88,x88]; x6=.8[x7+x5-x89,x89]; y3=.8[y4,y2]; y6=.8[y5,y7];
+bulb(7,8,9); % left bulb
+filldraw stroke z1e{up}...z2e{left}...z3e...{z89-z88}z4e; % upper arc
+filldraw z4r--z5l--z5r--z4l--cycle; % stem
+filldraw stroke z5e{z89-z88}...z6e...{left}z7e; % lower arc
+pos11(.1[hair,curve],-30); x11l=2/3[x12l,x1l]; y11=2/3[y1,y12];
+pos12(.3[hair,curve],0); rt x12r=hround(w-3u); y12=.5h;
+pos13(.8[hair,curve],30); x13=.5[x12,x14]; y13=.5[y12,y14];
+pos14(curve,0); rt x14r=hround(w-.5u); y14=.2h;
+pos15(vair,-90); x15=.5[x14,x16]; bot y15r=-oo;
+pos16(hair,-180); pos17(.6[hair,flare],-180);
+lft x16r=hround(rt x5r+.75u); y17-.5(.6[hair,flare])=.07h;
+filldraw stroke z1e{down}...z11e{1.5(x12e-x11e),y12e-y11e}
+ ...{down}z12e...{2(x13-x12),y13-y12}z13e
+ ...{down}z14e...{left}z15e; % stroke
+bulb(15,16,17); % inner bulb
+pickup crisp.nib; pos20(bar,90); pos21(bar,90);
+top y20r=top y21r=x_height;
+lft x20=lft x4r-.5stem-u; z21=whatever[z4,z5];
+filldraw stroke z20e--z21e; % bar
+penlabels(1,2,3,4,5,6,7,8,9,11,12,13,14,15,16,17,20,21,88,89);
+endchar;
+
+endinput;