% jkbashi.mf by Joerg Knappen, Bitnet: knappen@dmznat51 % Version 14. June 1990 % Bashkirian special letters, lowercase italics % Additional information at the end of this file cmchar "Italic Bashkirian letter ghe-barred"; beginchar(oct"210",7u#,x_height#,0); italcorr max(1/3x_height#*slant+.5hair#+.5u#,h#*slant+.5flare#-2u#); adjust_fit(if monospace:u#,u# else: 0,0 fi); pickup fine.nib; x0=0; x5=w; x2=.5w+1.5u; x3=.5w-1.5u; hook_in(0,1,2)(skewed); hook_out(3,4,5)(skewed); % hooks filldraw stroke z2e{down}...{down}z3e; % stem pickup crisp.nib; top y6r=top y7r=bar_height;lft x6=lft x0;rt x7=rt x5; pos6(bar,90); pos7(bar,90); filldraw stroke z6e--z7e; % bar penlabels(0,1,2,3,4,5,6,7); endchar; cmchar "Italic Bashkirian letter variant ka"; beginchar(oct"211",8u#,x_height#,0); italcorr x_height#*slant-.5u#; adjust_fit(u#,.25u#); pickup tiny.nib; pos1(fudged.stem,0); pos2(fudged.stem,0); lft x1l=lft x2l=hround max(1.3u,2u-.5fudged.stem); top y1=h; bot y2=0; filldraw stroke z1e--z2e; % stem if serifs: dish_serif(1,2,a,1/3,jut,b,1/3,jut); % upper stem serif dish_serif(2,1,c,1/3,jut,d,1/3,jut); % lower stem serif pickup fine.nib; pos3(vair,90); x3=x1; y3=.55h; z3'=z3; pos3'(varwid,90); pos4(varwid,90); x4=w-.75flare-.08u; top y4r=h+oo; %original x4=w-2u x41=x4; y41=y3'; x42=x4-2u; y42=y4; filldraw stroke z3'e..controls z41 and z42..z4e; % upper diagonal pos5(hair,0); pos6(flare,0); rt x5r=hround(w-.08u); y5+.5flare=vround(top y4r-hair)+1;%original bot y4l-.03h top y4'r=top y4r; x4'=x4; pos4'(hair,90); bulb(4',5,6); % bulb pos7(stem,0); pos8(varwid,90); pos9(hair,180); x9+.5hair=hround(w+.5hair-eps); y9=1/3x_height; lft x7l=hround(w-1.8u-.5stem); y7=1/2y3; x8=w-.8u; bot y8l=-oo; filldraw stroke z3e{right}...z7e{down} ...z8e{right}...{up}z9e; % lower diagonal else: numeric right_jut,stem[],alpha[]; right_jut=.4tiny; pickup tiny.nib; stem2=max(tiny.breadth,fudged.stem-3stem_corr); stem1=max(tiny.breadth,fudged.hair if hefty:-3stem_corr fi); top y3=h; rt x3r=hround(r-letter_fit-.67u-right_jut); bot y6=0; rt x6r=hround(r-letter_fit-.5u-right_jut); x4=x1; y4=1/3h; alpha1=diag_ratio(1,.5(stem1-tiny),y3-y4,x3r-x4); penpos3(alpha1*(stem1-tiny),0); penpos4(whatever,-90); alpha2=diag_ratio(1,.5(stem2-tiny),y1-y6,x6r-x1); penpos6(alpha2*(stem2-tiny),0); forsuffixes $=l,r: y3'$=h; y6'$=0; z4$=z3'$+whatever*(z3-z4); z5$=z6'$+whatever*(z1-z6)=whatever[z3,z4]; endfor z5=.5[z5l,z5r]; z3'r=z3r+penoffset z3-z4 of currentpen+whatever*(z3-z4); z6'r=z6r+penoffset z1-z6 of currentpen+whatever*(z1-z6); z6'l=z6l+penoffset z6-z1 of currentpen+whatever*(z1-z6); fill z4r--diag_end(4r,3'r,1,.5,3'l,4l)--z4l--cycle; % upper diagonal fill z5l--diag_end(5l,6'l,.5,1,6'r,5r)--z5r--cycle; % lower diagonal fi pickup crisp.nib; top y55r=h; x55=x1; pos55(slab,90); pos56(hair,180); x56=x1-if serifs: 4 else: 2 fi u; y56=good.y(y55l-beak)-eps; arm(55,56,q,beak_darkness**.8,-.4beak_jut); math_fit(0,.5ic#); penlabels(1,2,3,4,5,6); endchar; cmchar "Italic Bashkirian letter variant en"; beginchar(oct"212",10u#,x_height#,desc_depth#); italcorr 1/3x_height#*slant+.5hair#+.5u#; adjust_fit(0,.25u#); pickup fine.nib; x0=0; x2=x3; pos3(stem,-180); lft x3r=hround(2.5u-.5stem); hook_in(0,1,2); % opening hook y3-.5stem=-oo; z2'=z2; pos2'(stem,-180); filldraw circ_stroke z3e--z2'e; %left stem x10=x3l; y10=y11=.55h; pos10(hair,90); pos11(hair,90); pos6(stem,0); rt x6r=hround(w-2.5u+.5stem); y6+.5stem=h; x7=x6; x9=w; hook_out(7,8,9); %closing hook z7'=z7; pos7'(stem,0); filldraw circ_stroke z6e--z7'e; x11=x6l; % right stem filldraw stroke z10e{1,1}...{1,1}z11e; % bar pickup crisp.nib; y30=0; x30=x8-.1u; y32=-d; x32=x8-.75u; z31=.5[z30,z32]; pos30(hair,90); pos31(1.25stem,135); filldraw stroke z8{down}...z30e...z31e--z32; % descender endchar; cmchar "Italic Bashkirian letter o-umlaut"; beginchar(oct"213",9u#,x_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=h+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 z90=z2l; x91=x4l; y91=y90; pos90(bar,90); pos91(bar,90); if serifs: z92=.5[z90,z91]; pos92(if serifs: 2.5 fi bar,90); filldraw stroke z90e{1,1}..{1,-1}z92e..{1,1}z91e; % tilde-like bar else: filldraw stroke z90e--z91e; fi % bar math_fit(-.3x_height#*slant+.5curve#-u#,ic#); penlabels(1,2,3,4); endchar; cmchar "The italic Bashkirian letter u-umlaut"; % I put the gamma in here beginchar(oct"214",10u#,x_height#,desc_depth#); italcorr x_height#*slant-.5u#; adjust_fit(0,0); pickup fine.nib; pos1(hair,180); pos2(vstem+dw,90); pos4(hair,0); pos5(vair,-90); pos6(hair,-180); pos7(hair,-180); bot y1=.5772156649h; top y2r=h+oo; y4=y6=-.5d; bot y5r=-d-o; top y7=h; lft x1r=hround(.5u-.5hair); x2=3u; rt x4r=hround(w-2u); x5=.5[x4,x6]; rt x4r-lft x6r=hround 1/3[hair,stem]+eps; rt x7l=hround(w-u); if x4l () Backslash, slash, vertical bar: \ / | Punctuation: . ? ! , : ; Underscore, hyphen, equals sign: _ - = Quotes--right left double: ' ` " "at", "number" "dollar", "percent", "and": @ # $ % & "hat", "star", "plus", "tilde": ^ * + ~