summaryrefslogtreecommitdiff
path: root/language/mongolian/montex/mfinput/km/cyrmorei.mf
diff options
context:
space:
mode:
Diffstat (limited to 'language/mongolian/montex/mfinput/km/cyrmorei.mf')
-rw-r--r--language/mongolian/montex/mfinput/km/cyrmorei.mf203
1 files changed, 203 insertions, 0 deletions
diff --git a/language/mongolian/montex/mfinput/km/cyrmorei.mf b/language/mongolian/montex/mfinput/km/cyrmorei.mf
new file mode 100644
index 0000000000..dea899d7dc
--- /dev/null
+++ b/language/mongolian/montex/mfinput/km/cyrmorei.mf
@@ -0,0 +1,203 @@
+% File: cyrmorei.mf
+% Based on: jkbashi.mf
+% Modified by: Oliver Corff
+% Date: October 1997, Ulaanbaatar
+%
+ % 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(cyrotld,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;
+
+%
+% Sorry, the gamma is not acceptable in this context! OC, UB 1997
+%
+% cmchar "The italic Bashkirian letter u-umlaut"; % I put the gamma in here
+% beginchar(cyry,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<x6l: x4l:=x6l:=x5; fi
+% pos3(hair,angle(z4-z2)+90); x3=superness[x2,x4]; y3=superness[y4,y2];
+% filldraw stroke z1e{up}...z2e{right}...z3e{z4-z2}
+% ...z4e{down}...{left}z5e; % arc
+% filldraw stroke z5e{left}...z6e{up}..{2(x7-x6),y7-y6}z7e; % stem
+% math_fit(-.5772156649x_height#*slant,ic#-u#);
+% penlabels(1,2,3,4,5,6,7); endchar;
+
+cmchar "The italic Bashkirian letter u-umlaut"; %
+beginchar(cyry,8.5u#,x_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);
+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-1.5u+.5stem);
+pos7(stem,0); pos8(vair,-90);
+y3=.7[y4,y5]; bot y4r=-oo; y5=.37h; y6+.5stem=h;
+bot y7=-d; bot y8r=-d-oo; x5=x6=x7; x8=.5w;
+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 and link
+sloped_serif.r(7,2,a,1/3,jut,serif_drop); % serif
+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;
+
+cmchar "Italic Bashkirian letter ha";
+beginchar(cyrshha,9u#,asc_height#,0);
+italcorr 1/3x_height#*slant+.5hair#+.5u#;
+adjust_fit(1.5u#,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#); penlabels(1,2,3,4,5,6,7); endchar;
+
+%
+% cmchar "Italic Bashkirian letter flipped e";
+% beginchar(oct"216",8u#,x_height#,0);
+% italcorr max(1/3x_height#*slant,x_height#*slant+.5(.2[hair#,stem#])-u#);
+% adjust_fit(0,0); pickup fine.nib;
+% numeric heavy_hair; heavy_hair=hround .2[hair,stem];
+% 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=h+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
+% x10=.5w; y10=.5h; % center point
+% flip(10); % and flip
+% math_fit(-.3x_height#*slant+.5curve#-u#,ic#);
+% penlabels(0,1,2,3,4,5,6); endchar;
+%
+ \endinput
+
+"These letters aren't perfect. Especially, the variant k is not an italic
+but a slanted letter. The variant n's descender is not precisely
+positioned. This should be changed in a later version." JK.
+
+%-------------- end ------------------------------------------------------
+The now famous character code reference:
+
+Upper case letters: ABCDEFGHIJKLMNOPQRSTUVWXYZ
+Lower case letters: abcdefghijklmnopqrstuvwxyz
+Digits: 0123456789
+Square, curly, angle braces, parentheses: [] {} <> ()
+Backslash, slash, vertical bar: \ / |
+Punctuation: . ? ! , : ;
+Underscore, hyphen, equals sign: _ - =
+Quotes--right left double: ' ` "
+"at", "number" "dollar", "percent", "and": @ # $ % &
+"hat", "star", "plus", "tilde": ^ * + ~