|
DataMuseum.dkPresents historical artifacts from the history of: DKUUG/EUUG Conference tapes |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about DKUUG/EUUG Conference tapes Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - downloadIndex: T t
Length: 11817 (0x2e29) Types: TextFile Names: »tkacil.mf«
└─⟦060c9c824⟧ Bits:30007080 DKUUG TeX 2/12/89 └─⟦this⟧ »./babel/turkish/mf/tkacil.mf« └─⟦52210d11f⟧ Bits:30007239 EUUGD2: TeX 3 1992-12 └─⟦23cd347d5⟧ »unix3.0/babel.tar.Z« └─⟦2fb9f645a⟧ └─⟦this⟧ »babel/turkish/mf/tkacil.mf«
% Accented Turkish based on Computer Modern Italic lower case: % These letters were originally coded by D. E. Knuth in November, 1979, % inspired by the Monotype faces used in {\sl The Art of Computer Programming}. % Sans serif designs by Richard Southall were added in April, 1982. % The programs were revised for the new \MF\ conventions in 1985. % Accents added by P. A. MacKay in December, 1986. % Accents are intended to be exact copies of the accents in the % Computer Modern file accent.mf, with the following exceptions: % 1. Bar accents are adjusted to the width of the associated letter. % 2. The hat accent is pinched in to fit the letter i. % 3. Acute and grave accents are rotated to whatever angle % best suits the letter associated letter. % 4. The under_h accent is based on an inverted tie accent. % No attempt is made to put the accent in the same position % that it would occupy if \TeX\ put it in with the \accent primitive. % Each accent has been adjusted for vertical and horizontal position % position to best fit the associated letter. % Character codes \0033--\0037, \0053, \0074--\0076 and \0176--0177 % are generated. % Character code \0043 (hatted Persian o) is generated |iff not monospace|. % This code position is used for the upright single quote in monospace fonts. if unknown accsub: input accsub fi cmchar "Italic letter hatted a"; beginchar(oct "074",9u#,if .5(asc_height#-x_height#)>1.5stem#: .8[x_height#,asc_height#] else:asc_height# fi,0); italcorr 2/3[x_height#,asc_height#]*slant+.5stem#-serif_fit#-2u#; 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#); numeric hat_shift; if h<asc_height:hat_shift=-.2(asc_height-x_height); else:hat_shift=0; fi hat_accent(1,a,hat_shift); penlabels(0,1,2,3,4,5,6,7); endchar; cmchar "Italic letter chim"; beginchar(oct "033",8u#,x_height#,.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#); cedilla_accent(4,a,o-crisp); penlabels(0,1,2,3,4,5,6); endchar; cmchar "Italic letter dhal"; beginchar(oct "034",9u#,asc_height#,.6desc_depth#); italcorr max(1/3x_height#*slant+.5hair#+.5u#, h#*slant+.5stem#-2u#) if math_fitting:-.5u# fi; adjust_fit(0,0); pickup fine.nib; pos0(hair,0); pos1(vair,90); pos2(curve,180); pos3(vair,270); x0=x4; x1=x3=.5[x0,x2]; lft x2r=hround(1.5u-.5curve); x4+.5stem=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=x0; x7=w; hook_out(5,6,7); % closing hook pickup tiny.nib; pos5'(stem,0); pos4(stem,0); z5'=z5; top y4=h; filldraw stroke z4e--z5'e; % stem sloped_serif.l(4,5',a,1/3,jut,serif_drop); % serif math_fit(-.3x_height#*slant+.5curve#-u#,ic#); bar_accent(2,5,c,-8/9desc_depth); penlabels(0,1,2,3,4,5,6,7); endchar; % cupped g. This is fairly straightforward, except for the % lengthy calculation of cup_shift. To understand that, you must % look at the dimension calculations and use of mid_thickness % in Breve accent in accent.mf. No change to italic correction, % because right horn of cup will always fall to left of hook of g. cmchar "Italic letter cupped g"; beginchar(oct "035",8u#,min(asc_height#,2x_height#),desc_depth#); italcorr x_height#*slant+.5stem#-.5u#; adjust_fit(0,0); pickup fine.nib; pos0(hair,0); pos1(vair,90); pos2(curve,180); pos3(vair,270); x0=x4; x1=x3=.5[x0,x2]; lft x2r=hround(1.5u-.5curve); x4+.5stem=hround(w-1.5u+.5stem); top y1r=x_height+oo; bot y3r=0; 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 pos4(stem,0); y4+.5stem=vround .98x_height; pos5(stem,0); x5=x4; y5=-1/3d; pos6(vair,-90); pos7(hair,-180); pos8(flare,-180); bot y6r=-d-oo; y8-.5flare=vround -.9d; lft x8r=hround(2u-.5flare); x6=x1; bulb(6,7,8); % bulb filldraw circ_stroke z4e---z5e...{left}z6e; % stem and arc math_fit(-min(.3x_height#*slant+.5curve#-u#,1.5u#-desc_depth#*slant), ic#-1/3x_height#*slant); numeric cup_shift; cup_shift= x_height+slab-max(x_height+o+tiny,1/3[x_height,asc_height]+o-vround 1/6[vair,stem]); if cup_shift>0:cup_shift:=0; fi cup_accent(1,c,cup_shift); penlabels(0,1,2,3,4,5,6,7,8); endchar; cmchar "Italic letter kha"; beginchar(oct "036",9u#,asc_height#,.6desc_depth#); italcorr 1/3x_height#*slant+.5hair#+.5u#; adjust_fit(0,0); pickup tiny.nib; pos1(stem,0); pos2(stem,0); x1=x2; lft x1l=hround(1.5u-.5stem); top y1=h; y2-.5stem=-oo; filldraw circ_stroke z2e--z1e; % left stem sloped_serif.l(1,2,a,1/3,jut,serif_drop); % serif pickup fine.nib; 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 math_fit(0,ic#); bar_accent(2,6,k,-8/9desc_depth); penlabels(1,2,3,4,5,6,7); endchar; cmchar "Italic letter hatted i"; beginchar(oct "075",5u#,min(asc_height#,10/7x_height#+.5flare#),0); italcorr max(1/3x_height#*slant+.5hair#+.5u#,h#*slant+.5flare#-2.5u#); adjust_fit(if monospace:u#,u# else: 0,0 fi); pickup fine.nib; x0=0; x5=w; x2=.5w+.25u; x3=.5w-.25u; hook_in(0,1,2)(skewed); hook_out(3,4,5)(skewed); % hooks filldraw stroke z2e--z3e; % stem math_fit(-2/3x_height#*slant+.5hair#+.5u#,ic#); numeric hat_shift; if h<asc_height:hat_shift=-.2(asc_height-x_height); else:hat_shift=0; fi hat_accent(1,d,hat_shift); penlabels(0,1,2,3,4,5); endchar; cmchar "Italic letter gnaf"; beginchar(oct "037",10u#,if .5(asc_height#-x_height#)>1.5stem#: .8[x_height#,asc_height#] else:asc_height# fi,0); italcorr .8[x_height#,asc_height#]*slant-serif_fit#+.5stem#-2u#; adjust_fit(0,0); pickup fine.nib; x0=0; x1=x2; pos2(stem,0); lft x2l=hround(2.5u-.5stem); y2-.5stem=-oo; hook_in(0,a,1); % opening hook 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 math_fit(-2/3x_height#*slant+.5hair#+.5u#,ic#); numeric tilde_shift; if h<asc_height:tilde_shift=-.3(asc_height-x_height); else:tilde_shift=0; fi x8=hround .5w; tilde_accent(8,t,tilde_shift); penlabels(0,a,1,2,3,4,5,6,7,8); endchar; iff not monospace: cmchar "Italic letter hatted o"; beginchar(oct "040",9u#,if .5(asc_height#-x_height#)>1.5stem#: .8[x_height#,asc_height#] else:asc_height# fi,0); italcorr 1/3[x_height#,asc_height#]*slant+.5curve#-1.75u# 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#); numeric hat_shift; if h<asc_height:hat_shift=-.2(asc_height-x_height); else:hat_shift=0; fi hat_accent(1,a,hat_shift); penlabels(1,2,3,4); endchar; cmchar "Italic letter shin"; beginchar(oct "053",5.25u#+max(1.75u#,flare#),x_height#,.875desc_depth#); italcorr x_height#*slant-.5u#; adjust_fit(0,0); pickup fine.nib; numeric theta; theta=90-angle(40u,h); slope:=-h/40u; % angle at middle pos2(vair,-90); pos0(max(fine.breadth,ess),theta); pos7(vair,-90); x2l=x0=x7=.5w; top y2l=h+oo; bot y7r=-oo; y0-.5ess=y7l+.55(y2r-y7l-ess); lft x3l=hround u-eps; rt x6r=hround(w-.5u)+eps; x3r-x3l=x6r-x6l=hround .5[vair,ess]-fine; ellipse_set(2l,3l,4l,0l); ellipse_set(2r,3r,4r,0r); y3=y3r; ellipse_set(7l,6l,5l,0l); ellipse_set(7r,6r,5r,0r); y6=y6r; interim superness:=more_super; filldraw stroke super_arc.e(2,3) & z3e{down} ..z4e---z5e..z6e{down} & super_arc.e(6,7); % main stroke pos1(hair,0); pos10(hround .75[hair,flare],0); pos2'(vair,90); z2'=z2; pos8(hair,-180); pos9(flare,-180); rt x10r=hround(w-u)+2eps; lft x9r=hround .5u-2eps; y10=.78h; y9=.25h; bulb(2',1,10); bulb(7,8,9); % bulbs math_fit(0,ic#); cedilla_accent(7,c,o-crisp); penlabels(0,1,2,3,4,5,6,7,8,9,10); endchar; cmchar "Italic letter tha"; beginchar(oct "0176",5.25u#+max(1.75u#,flare#),x_height#,.6desc_depth#); italcorr x_height#*slant-.5u#; adjust_fit(0,0); pickup fine.nib; numeric theta; theta=90-angle(40u,h); slope:=-h/40u; % angle at middle pos2(vair,-90); pos0(max(fine.breadth,ess),theta); pos7(vair,-90); x2l=x0=x7=.5w; top y2l=h+oo; bot y7r=-oo; y0-.5ess=y7l+.55(y2r-y7l-ess); lft x3l=hround u-eps; rt x6r=hround(w-.5u)+eps; x3r-x3l=x6r-x6l=hround .5[vair,ess]-fine; ellipse_set(2l,3l,4l,0l); ellipse_set(2r,3r,4r,0r); y3=y3r; ellipse_set(7l,6l,5l,0l); ellipse_set(7r,6r,5r,0r); y6=y6r; interim superness:=more_super; filldraw stroke super_arc.e(2,3) & z3e{down} ..z4e---z5e..z6e{down} & super_arc.e(6,7); % main stroke pos1(hair,0); pos10(hround .75[hair,flare],0); pos2'(vair,90); z2'=z2; pos8(hair,-180); pos9(flare,-180); rt x10r=hround(w-u)+2eps; lft x9r=hround .5u-2eps; y10=.78h; y9=.25h; bulb(2',1,10); bulb(7,8,9); % bulbs x11=1.25u; x12=w-x11; math_fit(0,ic#); bar_accent(11,12,a,-8/9desc_depth); penlabels(0,1,2,3,4,5,6,7,8,9,10,11,12); endchar; cmchar "Italic letter hatted u"; beginchar(oct "076",9.5u#,min(asc_height#,10/7x_height#+.5flare#),0); italcorr 1/3x_height#*slant+.5hair#+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); hook_in(0,1,2)(skewed); % opening hook 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; filldraw stroke z2'e{-u,-x_height} ...super_arc.e(3,4)...{up}z5e; % left stem and arc filldraw circ_stroke z6e--z7e; % right stem math_fit(-2/3x_height#*slant+.5hair#+.5u#,ic#); numeric hat_shift; if h<asc_height:hat_shift=-.2(asc_height-x_height); else:hat_shift=0; fi x10=.5w; hat_accent(10,d,hat_shift); penlabels(0,1,2,3,4,5,6,7,8,9); endchar; cmchar "Italic letter zal"; beginchar(oct "0177",5.5u#+max(1.5u#,stem#),x_height#,.6desc_depth#); italcorr x_height#*slant+.5hair#; adjust_fit(if monospace:.5u#,.5u# else: 0,0 fi); pickup fine.nib; pos1(hair,0); pos2(stem,-90); pos3(vair,-90); pos4(hair,0); lft x1l=hround(u-.5hair); x2=2.5u; x3=w-2u; rt x4r=hround(w-.5u); top y1=.78h; top y2l=top y4=h+oo; y3=.825h; pos5(hair,0); pos6(vair,-90); pos7(stem,-90); pos8(hair,0); x5=x1; x6=2.5u; x7=w-2u; x8+.5hair=hround(w+.5hair-eps); bot y5=bot y7r=-oo; y6=.175h; bot y8=.31h; pair p; p=(z4-z5) yscaled 2; filldraw stroke z1e{up}...z2e{right}..z3e{right}...{p}z4e; % upper bar filldraw stroke z5e{p}...z6e{right}..{right}z7e...{up}z8e; % lower bar filldraw stroke z5e{p}..{p}z4e; % diagonal math_fit(0,1/3x_height#*slant+.5hair#+.5u#); x9=x5; x10=.4[x7,x8]; bar_accent(9,10,c,-8/9desc_depth); penlabels(1,2,3,4,5,6,7,8,9,10); endchar;