summaryrefslogtreecommitdiff
path: root/fonts/cherokee
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
committerNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
commite0c6872cf40896c7be36b11dcc744620f10adf1d (patch)
tree60335e10d2f4354b0674ec22d7b53f0f8abee672 /fonts/cherokee
Initial commit
Diffstat (limited to 'fonts/cherokee')
-rw-r--r--fonts/cherokee/README8
-rw-r--r--fonts/cherokee/cherokee.mf639
-rw-r--r--fonts/cherokee/cherokee.sty105
3 files changed, 752 insertions, 0 deletions
diff --git a/fonts/cherokee/README b/fonts/cherokee/README
new file mode 100644
index 0000000000..aa54981ce8
--- /dev/null
+++ b/fonts/cherokee/README
@@ -0,0 +1,8 @@
+The Cherokee script was designed in 1821 by Segwoya.
+
+The alphabet is essentially syllabic, only 6 characters (a e i o s u)
+correspond to Roman letters: the font encodes these to the corresponding
+roman letter. The remaining 79 characters have been arbitrarily encoded
+in the range 38-122; the cherokee package provides commands that map
+each such syllable to the appropriate character; for example, Segwoya
+himself would be represented \Cse\Cgwo\Cya . \ No newline at end of file
diff --git a/fonts/cherokee/cherokee.mf b/fonts/cherokee/cherokee.mf
new file mode 100644
index 0000000000..02bb5ec492
--- /dev/null
+++ b/fonts/cherokee/cherokee.mf
@@ -0,0 +1,639 @@
+% cherokee.mf
+% This font was designed by Alan M Stanier ( alan@essex.ac.uk ),
+% at Essex University Computer Service, Colchester, Essex CO4 3EA. England.
+%
+% Copyright 1994 Alan Stanier.
+% You may freely use, modify, and/or distribute this file, without limitation.
+%
+% If you make significant additions or improvements to the font, I request
+% that you email me an updated version.
+%
+% The cherokee script was designed in 1821 by Segwoya
+%
+% The alphabet is essentially syllabic, only 6 characters (a e i o s u)
+% corresponding to roman letters: these have been encoded to the
+% corresponding roman letter. The remaining 79 characters have been
+% arbitrarily encoded in the range 38 - 122: cherokee.sty provides
+% macros for mapping syllables to the appropriate character.
+% eg \Cse\Cgwo\Cya
+%
+%
+mg:=1.0; % CHANGE THIS TO GET DIFFERENT SIZES OF FONT (font size = 10*mg pt)
+
+mode_setup;
+tracingtitles := 1;
+xpensize#:=mg*0.8pt;
+ypensize#:=mg*0.2pt;
+bigpensize#:=mg*1pt;
+height#:=mg*9.6pt#;
+fullwidth#:=mg*7.5pt#;
+narrowwidth#:=mg*5.5pt#;
+widewidth#:=mg*10pt#;
+define_pixels(height,fullwidth,halfwidth,widewidth);
+def getpen = pickup pencircle xscaled xpensize# yscaled ypensize# rotated 30 enddef;
+def getbigpen = pickup pencircle scaled bigpensize# enddef;
+
+
+beginchar(38,fullwidth#,height#,0); "soo";
+getpen;
+draw flex((mg*25,mg*20),(mg*20,mg*30),(mg*5,mg*20)) .. (mg*5,mg*20) .. (0,mg*25){up} .. (mg*5,mg*30){right}
+ .. (mg*10,mg*10){down} .. (mg*15,0){right} .. (mg*10,mg*10){left};
+endchar;
+
+
+beginchar(39,narrowwidth#,height#,0); "ga";
+getpen;
+draw (mg*10,mg*28) .. (mg*7.5,mg*30){left} .. (mg*2.5,mg*27.5){down} .. (mg*7.5,mg*15)
+ .. (mg*12.5,mg*2.5){down} .. (mg*7.5,0){left} .. (mg*5,mg*2);
+draw (0,mg*15) -- (mg*15,mg*15);
+endchar;
+
+beginchar(40,fullwidth#,height#,0); "ha";
+getpen;
+draw (0,mg*15){down} .. (mg*7.5,0){right} .. (mg*15,mg*15){up} .. (mg*7.5,mg*30){left}
+ .. (0,mg*15){down};
+draw (mg*14,mg*20) -- (mg*25,mg*20) -- (mg*20,mg*12.5) -- (mg*20,mg*30);
+endchar;
+
+beginchar(41,fullwidth#,height#,0); "la";
+getpen;
+draw (0,mg*30) -- (mg,mg*30) -- (mg*6,0) -- (mg*11,mg*30) -- (mg*16,0) -- (mg*21,mg*20) -- (mg*25,mg*30);
+endchar;
+
+beginchar(42,fullwidth#,height#,0); "ma";
+getpen;
+draw (mg*5,mg*30) -- (mg*10,mg*30) -- (mg*10,mg*17.5) -- (mg*2.5,mg*5) &
+ flex((mg*2.5,mg*5),(mg*12.5,mg*2),(mg*8,mg*12)) & flex((mg*8,mg*12),(mg,mg*13),(mg*2.5,mg*5));
+draw flex((mg*10,mg*17.5),(mg*15,mg*15),(mg*20,mg*30)) .. (mg*20,mg*30) -- (mg*25,mg*30)
+ -- (mg*25,mg*25) .. (mg*23,mg*23);
+endchar;
+
+beginchar(43,fullwidth#,height#,0); "na";
+getpen;
+draw (0,mg*15){down} .. (mg*12.5,0){right} .. (mg*25,mg*15){up} ..
+ (mg*12.5,mg*30){left} .. (0,mg*15){down};
+draw (0,mg*15) -- (mg*25,mg*15);
+endchar;
+
+beginchar(44,fullwidth#,height#,0); "gwa";
+getpen;
+draw (0,mg*27.5) -- (mg*2.5,mg*30) -- (mg*22.5,mg*30) -- (mg*25,mg*27.5);
+draw (mg*12.5,mg*30) -- (mg*12.5,0);
+draw (mg*5,0) -- (mg*20,0);
+endchar;
+
+beginchar(45,fullwidth#,height#,0); "sa";
+getpen;
+draw (0,mg*30) -- (mg*5,mg*30);
+draw (mg*20,mg*30) -- (mg*25,mg*30);
+draw (mg*2.5,mg*30) -- (mg*2.5,mg*15){down} & flex((mg*2.5,mg*15),(mg*12.5,0),(mg*22.5,mg*15))
+ .. (mg*22.5,mg*15){up} .. (mg*22.5,mg*30);;
+draw (mg*2.5,mg*20) -- (mg*22.5,mg*20);
+endchar;
+
+beginchar(46,narrowwidth#,height#,0); "da";
+getpen;
+draw (0,mg*30) -- (0,mg*10) & flex((0,mg*10),(mg*7.5,0),(mg*14,mg*8)) .. (mg*14,mg*8)
+ .. (mg*13,mg*15){left} .. (mg*12,mg*12){down} .. (mg*14,mg*8);
+endchar;
+
+beginchar(47,fullwidth#,height#,0); "dla";
+getpen;
+draw (mg*5,mg*10) .. (mg*5,0){left} .. (mg*5,mg*10) .. (mg*12.5,mg*20) .. (mg*12.5,mg*30){left}
+ .. (mg*12.5,mg*20) .. (mg*20,mg*10) .. (mg*20,0){left} .. (mg*20,mg*10);
+endchar;
+
+beginchar(48,fullwidth#,height#,0); "dza";
+getpen;
+draw (mg*20,mg*22) -- (mg*25,mg*20) .. (mg*12.5,mg*30){left} .. (0,mg*15){down} ..
+ (mg*12.5,0){right} .. (mg*22.5,mg*2) .. (mg*25,mg*5){up} .. (mg*22.5,mg*10){left}
+ .. (mg*22.5,mg*2);
+endchar;
+
+beginchar(49,fullwidth#,height#,0); "wa";
+getpen;
+draw (mg*20,mg*22.5) .. (mg*15,mg*30){left} .. (0,mg*15){down} .. (mg*15,0){right}
+ .. (mg*20,mg*10){up} & flex((mg*20,mg*10),(mg*22,mg),(mg*25,mg*5));
+draw (mg*15,mg*10) -- (mg*25,mg*10);
+endchar;
+
+beginchar(50,fullwidth#,height#,0); "ya";
+getpen;
+draw (mg*7.5,mg*30) .. (0,mg*15){down} .. (mg*10,0){right} .. (mg*15,mg*15);
+draw (mg*17.5,mg*30) .. (mg*25,mg*15){down} .. (mg*15,0){left} .. (mg*10,mg*15);
+endchar;
+
+beginchar(51,fullwidth#,height#,0); "woo";
+getpen;
+draw (0,mg*15) .. (mg*12.5,0){right} .. (mg*25,mg*15){up} .. (mg*20,mg*30){left} .. (mg*25,mg*15);
+endchar;
+
+beginchar(52,fullwidth#,height#,0); "ge";
+getpen;
+draw (0,0) -- (mg*5,0);
+draw (mg*2.5,0) -- (mg*2.5,mg*30);
+draw (mg*2.5,mg*15) -- (mg*15,mg*25) & flex((mg*15,mg*25),(mg*20,mg*17),(mg*25,mg*15));
+endchar;
+
+beginchar(53,narrowwidth#,height#,0); "he";
+getpen;
+draw (0,0) -- (mg*10,0);
+draw (mg*5,0) -- (mg*5,mg*10) & flex((mg*5,mg*10),(mg*15,mg*20),(mg*5,mg*30));
+endchar;
+
+beginchar(54,fullwidth#,height#,0); "le";
+getpen;
+draw (mg*13,mg*10) .. (0,mg*5){down} .. (mg*4,0){right} .. (mg*17.5,mg*25)
+ .. (mg*21,mg*30){right} .. (mg*25,mg*27.5){down} .. (mg*17.5,mg*25);
+endchar;
+
+beginchar(55,fullwidth#,height#,0); "me";
+getpen;
+draw (0,mg*15){down} .. (mg*7.5,0){right} .. (mg*15,mg*15){up} .. (mg*7.5,mg*30){left}
+ .. (0,mg*15){down};
+draw (mg*15,mg*15) -- (mg*25,mg*15);
+draw (mg*25,0) -- (mg*25,mg*30);
+endchar;
+
+beginchar(56,fullwidth#,height#,0); "ne";
+getpen;
+draw (mg*20,0) -- (mg*25,0);
+draw (mg*22.5,0) -- (mg*22.5,mg*20) .. (mg*17.5,mg*30){left} .. (mg*5,0){left} .. (0,mg*5);
+endchar;
+
+beginchar(57,fullwidth#,height#,0); "gwe";
+getpen;
+draw (0,mg*10) .. (mg*6.25,0){right} .. (mg*12.5,mg*10){right} .. (mg*18.75,0){right}
+ .. (mg*25,mg*10){up} .. (mg*12.5,mg*30);
+endchar;
+
+beginchar(58,fullwidth#,height#,0); "se";
+getpen;
+draw (mg*17.5,0) -- (mg*22.5,0);
+draw (mg*20,0) -- (mg*20,mg*30) -- (0,mg*10) -- (mg*25,mg*10);
+endchar;
+
+beginchar(59,narrowwidth#,height#,0); "de";
+getpen;
+draw (mg*10,mg*28) .. (mg*7.5,mg*30){left} .. (mg*2.5,mg*27.5){down} .. (mg*7.5,mg*15)
+ .. (mg*12.5,mg*2.5){down} .. (mg*7.5,0){left} .. (mg*5,mg*2);
+draw (mg*7.5,mg*15) -- (mg*15,mg*15);
+draw (mg*7.5,mg*28) -- (mg*12.5,mg*28);
+endchar;
+
+beginchar(60,fullwidth#,height#,0); "dle";
+getpen;
+draw (0,mg*30) -- (mg*2.5,mg*27.5) -- (mg*2.5,mg*2.5) -- (0,0);
+draw (mg*2.5,mg*2.5) -- (mg*25,mg*2.5);
+draw (mg*25,0) -- (mg*25,mg*5);
+endchar;
+
+beginchar(61,fullwidth#,height#,0); "dze";
+getpen;
+draw (0,mg*20) -- (mg*5,mg*20) -- (mg*15,0) -- (mg*25,mg*15) .. (mg*22.5,mg*25) -- (mg*20,mg*30);
+endchar;
+
+beginchar(62,fullwidth#,height#,0); "we";
+getpen;
+draw (0,mg*5) .. (mg*5,0){right} .. (mg*15,mg*20){up} .. (mg*12.5,mg*30){left}
+ .. (mg*10,mg*20){down} .. (mg*20,0){right} .. (mg*25,mg*15){up} ..
+ (mg*22.5,mg*25){left} .. (mg*20,mg*15){down} .. (mg*24,mg*12);
+endchar;
+
+beginchar(63,fullwidth#,height#,0); "ye";
+getpen;
+draw (mg*5,0) -- (mg*5,mg*15) .. (mg*15,mg*30){right} & flex((mg*15,mg*30),(mg*25,mg*25),(mg*15,mg*20))
+ & flex((mg*15,mg*20),(mg*25,mg*15),(mg*15,mg*10)) & flex((mg*15,mg*10),(mg*2.5,mg*5),(mg*2,mg*15));
+endchar;
+
+beginchar(64,fullwidth#,height#,0); "hu";
+getpen;
+draw (0,mg*10) .. (mg*4,0){right} .. (mg*12,mg*20){up} .. (mg*10,mg*30){left}
+ .. (mg*8,mg*20){down} .. (mg*16,0){right} .. (mg*18,mg*15){up} --
+ (mg*25,mg*15);
+endchar;
+
+beginchar(65,fullwidth#,height#,0); "gi";
+getpen;
+draw (0,mg*30) -- (mg*5,mg*30);
+draw (mg*2.5,mg*30) -- (mg*15,mg*10);
+draw (mg*25,mg*30) -- (mg*15,mg*10) .. (mg*5,0){left} .. (0,mg*10){up};
+endchar;
+
+beginchar(66,fullwidth#,height#,0); "hi";
+getpen;
+draw (0,mg*5) .. (mg*5,0){right} .. (mg*12.5,mg*15){up} .. (mg*10,mg*30) &
+ flex((mg*10,mg*30),(mg*20,mg*15),(mg*25,0));
+draw flex((mg*12.5,mg*15),(mg*16,mg*13),(mg*20,mg*15));
+endchar;
+
+beginchar(67,fullwidth#,height#,0); "li";
+getpen;
+draw (0,mg*30) -- (mg*5,mg*25) -- (mg*5,0);
+draw (mg*5,mg*25) .. (mg*15,mg*30){right} .. (mg*25,mg*20){down} .. (mg*15,mg*20);
+endchar;
+
+beginchar(68,fullwidth#,height#,0); "mi";
+getpen;
+draw (0,mg*30) .. (mg*2.5,mg*30){right} & flex((mg*2.5,mg*30),(mg*5,mg*15),(mg*2.5,0))
+ .. (mg*2.5,0){left} .. (0,0);
+draw (mg*25,mg*30) .. (mg*22.5,mg*30){left} & flex((mg*22.5,mg*30),(mg*20,mg*15),(mg*22.5,0))
+ .. (mg*22.5,0){right} .. (mg*25,0);
+draw (mg*5,mg*15) -- (mg*20,mg*15);
+endchar;
+
+beginchar(69,fullwidth#,height#,0); "ni";
+getpen;
+draw (0,0) -- (mg*2.5,0) -- (mg*2.5,mg*25) & flex((mg*2.5,mg*25),(mg*22.5,mg*30),(mg*25,mg*27.5));
+draw (mg*2.5,mg*15) .. (mg*12.5,mg*20) .. (mg*22.5,mg*15) .. (mg*25,0);
+endchar;
+
+beginchar(70,fullwidth#,height#,0); "gwi";
+getpen;
+draw (mg*5,mg*20) .. (0,mg*25){up} .. (mg*5,mg*30){right} .. (mg*20,mg*15){down}
+ .. (mg*12.5,0){left} .. (mg*5,mg*15){up} ..(mg*20,mg*30){right}
+ .. (mg*25,mg*25){down} .. (mg*20,mg*20);
+endchar;
+
+beginchar(71,fullwidth#,height#,0); "si";
+getpen;
+draw (0,mg*30) -- (mg*5,mg*30);
+draw (mg*2.5,mg*30) -- (mg*2.5,0);
+draw flex((mg*2.5,mg*2.5),(mg*25,mg*10),(mg*2.5,mg*15));
+endchar;
+
+beginchar(72,fullwidth#,height#,0); "di";
+getpen;
+draw (mg*20,mg*30) -- (mg*25,mg*30);
+draw (mg*20,0) -- (mg*25,0);
+draw (mg*22.5,0) -- (mg*22.5,mg*30);
+draw (0,mg*5) -- (0,0) -- (mg*22.5,mg*15);
+endchar;
+
+beginchar(73,fullwidth#,height#,0); "dli";
+getpen;
+draw flex((mg*22.5,mg*30),(0,mg*15),(mg*22.5,0)) &
+ flex((mg*22.5,0),(mg*20,mg*5),(mg*25,mg*15),(mg*22.5,mg*20));
+endchar;
+
+beginchar(74,fullwidth#,height#,0); "dzi";
+getpen;
+draw (0,0) -- (mg*5,0);
+draw (mg*2.5,0) -- (mg*2.5,mg*30);
+draw flex((mg*2.5,mg*15),(mg*10,mg*17.5),(mg*17.5,mg*15)) .. (mg*17.5,mg*15) ..
+ (mg*20,0){down};
+draw flex((mg*17.5,mg*15),(mg*20,mg*20),(mg*22.5,mg*15)) .. (mg*22.5,mg*15) ..
+ (mg*25,mg*10){down};
+endchar;
+
+beginchar(75,fullwidth#,height#,0); "wi";
+getpen;
+draw (0,mg*15){down} .. (mg*12.5,0){right} .. (mg*25,mg*15){up} ..
+ (mg*12.5,mg*30){left} .. (0,mg*15){down};
+draw flex((mg*2.5,mg*20),(mg*12.5,mg*20),(mg*17.5,mg*10),(mg*22.5,mg*10));
+endchar;
+
+beginchar(76,fullwidth#,height#,0); "yi";
+getpen;
+draw (0,mg*15) -- (mg*5,mg*10) -- (mg*12.5,mg*25) .. (mg*15,mg*25){up} ..
+ (mg*12.5,mg*30){left} .. (mg*10,mg*25){down} .. (mg*12.5,mg*20) ..
+ (mg*22.5,mg*10) .. (mg*25,mg*5){down} .. (mg*22.5,0){left} ..
+ (mg*20,mg*5){up} .. (mg*22.5,mg*10);
+endchar;
+
+beginchar(77,fullwidth#,height#,0); "dlu";
+getpen;
+draw (0,0) -- (mg*10,0);
+draw (mg*5,0) -- (mg*5,mg*25);
+draw flex((0,mg*25),(mg*25,mg*22.5),(mg*5,mg*15));
+endchar;
+
+beginchar(78,fullwidth#,height#,0); "go";
+getpen;
+draw (0,0) -- (mg*5,0);
+draw (mg*20,0) -- (mg*25,0);
+draw (mg*2.5,0) -- (mg*12.5,mg*30) -- (mg*22.5,0);
+draw (mg*7.5,mg*15) -- (mg*17.5,mg*15);
+endchar;
+
+beginchar(79,narrowwidth#,height#,0); "ho";
+getpen;
+draw (0,0) -- (mg*5,0);
+draw (0,mg*30) -- (mg*5,mg*30);
+draw (mg*2.5,0) -- (mg*2.5,mg*30);
+draw (mg*2.5,mg*15) -- (mg*15,mg*15);
+draw (mg*15,mg*10) -- (mg*15,mg*20);
+endchar;
+
+beginchar(80,fullwidth#,height#,0); "lo";
+getpen;
+draw (mg*25,mg*25) -- (mg*25,mg*30);
+draw (mg*25,mg*27.5) .. (mg*15,mg*30){left} .. (0,mg*15){down} .. (mg*15,0){right}
+ .. (mg*25,mg*7.5){up} .. (mg*15,mg*15){left};
+draw (mg*15,mg*10) -- (mg*15,mg*20);
+endchar;
+
+beginchar(81,fullwidth#,height#,0); "mo";
+getpen;
+draw (0,mg*30) -- (mg*25,mg*30) -- (mg*15,mg*15) .. (mg*25,mg*7.5){down}
+ .. (mg*12.5,0){left} .. (0,mg*7.5){up} .. (mg*2.5,mg*10);
+endchar;
+
+beginchar(82,fullwidth#,height#,0); "no";
+getpen;
+draw (0,mg*27.5) -- (mg*2.5,mg*30) -- (mg*25,mg*30) -- (0,0) -- (mg*22.5,0) -- (mg*25,mg*2.5);
+endchar;
+
+beginchar(83,widewidth#,height#,0); "gwo";
+getpen;
+draw (mg*5,mg*10) .. (0,mg*5){down} .. (mg*5,0){right} .. (mg*10,mg*30){up};
+draw (mg*10,mg*30) -- (mg*25,0) -- (mg*25,mg*30) &
+ flex((mg*25,mg*30),(mg*29,mg*25),(mg*33,mg*30),(mg*37,mg*25)) .. (mg*37,mg*25) -- (mg*37.5,mg*20);
+endchar;
+
+beginchar(84,fullwidth#,height#,0); "so";
+getpen;
+draw (mg*10,mg*30) -- (mg*15,mg*30);
+draw (mg*10,0) -- (mg*15,0);
+draw (mg*12.5,0) -- (mg*12.5,mg*30);
+draw (mg*12.5,mg*10) .. (0,mg*15){up} .. (mg*5,mg*20);
+draw (mg*12.5,mg*20) .. (mg*25,mg*15){down} .. (mg*20,mg*10);
+endchar;
+
+beginchar(85,fullwidth#,height#,0); "do";
+getpen;
+draw (0,0) -- (mg*5,0);
+draw (mg*20,0) -- (mg*25,0);
+draw (mg*2.5,0) -- (mg*12.5,mg*30) -- (mg*27.5,0);
+endchar;
+
+beginchar(86,fullwidth#,height#,0); "dlo";
+getpen;
+draw (mg*20,mg*30) -- (mg*20,mg*15) &
+ flex((mg*20,mg*15),(mg*15,0),(mg*10,mg*15)) .. (mg*10,mg*15) ..
+ (mg*10,mg*25){up} .. (mg*5,mg*30){left} .. (0,mg*25){down}
+ .. (mg*5,mg*13);
+draw (0,mg*11) -- (mg*10,mg*15) -- (mg*25,mg*15);
+draw (0,mg*30) -- (mg*3,mg*27);
+endchar;
+
+beginchar(87,fullwidth#,height#,0); "dzo";
+getpen;
+draw (0,0) -- (mg*5,0);
+draw (mg*20,0) -- (mg*25,0);
+draw (0,mg*30) -- (mg*5,mg*30);
+draw (mg*20,mg*30) -- (mg*25,mg*30);
+draw (mg*2.5,0) -- (mg*2.5,mg*30);
+draw (mg*22.5,0) -- (mg*2.5,mg*15) -- (mg*22.5,mg*30);
+endchar;
+
+beginchar(88,fullwidth#,height#,0); "wo";
+getpen;
+draw (0,mg*15) .. (mg*8,mg*21) .. (mg*3,mg*25){left} .. (0,mg*15){down}
+ .. (mg*12.5,0){right} .. (mg*25,mg*15){up} .. (mg*20,mg*30);
+endchar;
+
+beginchar(89,fullwidth#,height#,0); "yo";
+getpen;
+draw (0,0) -- (mg*5,0);
+draw (mg*2.5,0) -- (mg*2.5,mg*20) & flex((mg*2.5,mg*20),(mg*13.75,mg*30),(mg*25,mg*20));
+draw flex((mg*2.5,mg*15),(mg*12.5,mg*12.5),(mg*20,mg*2.5),(mg*25,0));
+endchar;
+
+beginchar(90,fullwidth#,height#,0); "oo";
+getpen;
+draw (0,mg*15){down} .. (mg*7.5,0){right} .. (mg*15,mg*15){up} .. (mg*7.5,mg*30){left}
+ .. (0,mg*15){down};
+draw (mg*15,mg*15) .. (mg*25,mg*20){up} .. (mg*22.5,mg*22.5);
+endchar;
+
+beginchar(91,narrowwidth#,height#,0); "goo";
+getpen;
+draw (mg*7.5,mg*30) -- (mg*15,mg*30);
+draw (mg*11.25,mg*30) -- (mg*11.25,mg*5) .. (mg*5,0){left}
+ .. (0,mg*5){up} .. (mg*2.5,mg*7.5);
+endchar;
+
+beginchar(92,fullwidth#,height#,0); "hoo";
+getpen;
+draw (0,0) -- (mg*5,0);
+draw (mg*2.5,0) -- (mg*2.5,mg*30);
+draw (0,mg*30) -- (mg*25,mg*30) -- (mg*25,mg*25);
+endchar;
+
+beginchar(93,fullwidth#,height#,0); "loo";
+getpen;
+draw (mg*2.5,0) -- (mg*2.5,mg*30);
+draw (mg*22.5,0) -- (mg*22.5,mg*30);
+draw (0,mg*30) -- (mg*5,mg*30) -- (mg*12.5,mg*15) -- (mg*20,mg*30) -- (mg*25,mg*30);
+endchar;
+
+beginchar(94,fullwidth#,height#,0); "moo";
+getpen;
+draw (mg*10,mg*30) -- (mg*14,mg*30);
+draw (mg*12,mg*30) -- (mg*18,mg*10);
+draw (mg*25,mg*30) -- (mg*18,mg*10) & flex((mg*18,mg*10),(mg*12,0),(mg*6,mg*15),(0,mg*10));
+endchar;
+
+beginchar(95,fullwidth#,height#,0); "noo";
+getpen;
+draw (0,mg*22.5) -- (mg*5,mg*22.5);
+draw flex((mg*2.5,mg*22.5),(mg*12.5,mg*30),(mg*22.5,mg*22.5)) .. (mg*22.5,mg*22.5) -- (mg*22.5,0);
+draw (mg*20,0) -- (mg*25,0);
+draw (mg*22.5,mg*15) -- (mg*10,mg*5) .. (mg*2.5,mg*15){up};
+draw (0,mg*15) -- (mg*5,mg*15);
+endchar;
+
+beginchar(96,fullwidth#,height#,0); "gwoo";
+getpen;
+draw (mg*5,mg*15) .. (0,mg*7.5){down} .. (mg*7.5,0){right} .. (mg*12.5,mg*10){up};
+draw (mg*12.5,mg*10){down} .. (mg*17.5,0){right} .. (mg*25,mg*7.5){up}
+ .. (mg*12.5,mg*30){left} .. (mg*7.5,mg*27);
+endchar;
+
+beginchar(97,fullwidth#,height#,0); "a";
+getpen;
+draw (0,0) .. (mg*5,mg*5) .. (mg*15,mg*3) .. (mg*25,mg*17.5){up} .. (mg*5,mg*30){left} -- (0,mg*30);
+draw (mg*5,mg*30) -- (mg*5,mg*5);
+endchar;
+
+beginchar(98,fullwidth#,height#,0); "doo";
+getpen;
+draw (mg*20,mg*20) -- (mg*25,mg*25);
+draw (0,0) -- (mg*5,mg*5);
+draw (mg*22.5,mg*22.5) .. (mg*12.5,mg*30){left} .. (0,mg*22.5){down}
+ .. (mg*12.5,mg*15) .. (mg*25,mg*7.5){down} .. (mg*12.5,0){left}
+ .. (mg*2.5,mg*2.5);
+endchar;
+
+beginchar(99,fullwidth#,height#,0); "dloo";
+getpen;
+draw (mg*2.5,mg*25){up} .. (mg*5,mg*30){right} .. (mg*20,mg*15){down}
+ .. (mg*12.5,0){left} .. (mg*5,mg*15){up} .. (mg*20,mg*30){right}
+ .. (mg*25,mg*25){down};
+endchar;
+
+beginchar(100,narrowwidth#,height#,0); "dzoo";
+getpen;
+draw (mg*7.5,mg*30) -- (mg*15,mg*30);
+draw (mg*11.25,mg*30) -- (mg*11.25,mg*5) .. (mg*5,0){left}
+ .. (0,mg*5){up} .. (mg*10,mg*10);
+endchar;
+
+beginchar(101,fullwidth#,height#,0); "e";
+getpen;
+draw (mg*2.5,0) -- (mg*2.5,mg*30);
+draw (0,mg*30) -- (mg*5,mg*30) & flex((mg*5,mg*30),(mg*25,mg*22.5),(mg*5,mg*15));
+draw (mg*17,mg*12) -- (mg*25,0);
+endchar;
+
+beginchar(102,widewidth#,height#,0); "yoo";
+getpen;
+draw (mg*20,mg*10) -- (mg*25,mg*10) -- (mg*25,0);
+draw (mg*25,mg*10) .. (mg*12.5,0){left} .. (0,mg*15){up} .. (mg*12.5,mg*30){right}
+ .. (mg*20,mg*25){right} .. (mg*26,mg*30){right} .. (mg*32,mg*25){right}
+ .. (mg*37.5,mg*30);
+endchar;
+
+beginchar(103,fullwidth#,height#,0); "nah";
+getpen;
+draw (mg*25,mg*25) .. (mg*15,mg*30){left} .. (0,mg*15){down} .. (mg*15,0){right}
+ .. (mg*25,mg*10) -- (mg*20,mg*10);
+endchar;
+
+beginchar(104,fullwidth#,height#,0); "gu";
+getpen;
+draw (mg*25,mg*25) -- (mg*25,mg*30) -- (0,mg*30) -- (0,0) -- (mg*25,0) -- (mg*25,mg*5);
+draw (0,mg*15) -- (mg*10,mg*15);
+draw (mg*10,mg*12.5) -- (mg*10,mg*17.5);
+endchar;
+
+beginchar(105,fullwidth#,height#,0); "i";
+getpen;
+draw (0,mg*27.5) -- (mg*2.5,mg*30) -- (mg*25,mg*30);
+draw (mg*10,mg*30) -- (mg*10,0);
+endchar;
+
+beginchar(106,fullwidth#,height#,0); "lu";
+getpen;
+draw (mg*5,mg*25) .. (mg*13.75,mg*30){right} .. (mg*22.5,mg*25) -- (mg*22.5,0);
+draw (mg*20,0) -- (mg*25,0);
+draw (0,mg*10) -- (0,mg*20);
+draw (0,mg*15) -- (mg*15,mg*15) & flex((mg*15,mg*15),(mg*18.85,mg*11),(mg*22.5,mg*10));
+endchar;
+
+beginchar(107,fullwidth#,height#,0); "nu";
+getpen;
+draw (0,mg*15){down} .. (mg*7.5,0){right} .. (mg*15,mg*15){up} .. (mg*7.5,mg*30){left}
+ .. (0,mg*15){down};
+draw flex((mg*15,mg*15),(mg*17,mg*17),(mg*20,mg*10),(mg*25,mg*15));
+endchar;
+
+beginchar(108,fullwidth#,height#,0); "gwu";
+getpen;
+draw (mg*25,mg*30){left} .. (mg*5,mg*25){down} .. (mg*20,mg*20){right};
+draw (mg*20,mg*20){left} .. (0,mg*7.5){down} .. (mg*15,0){right}
+ .. (mg*25,mg*5){up} .. (mg*15,0);
+endchar;
+
+beginchar(109,fullwidth#,height#,0); "su";
+getpen;
+draw (mg*2.5,0) -- (mg*2.5,mg*30);
+draw (0,mg*30) -- (mg*5,mg*30) & flex((mg*5,mg*30),(mg*25,mg*22.5),(mg*5,mg*15));
+draw (mg*17,mg*12) -- (mg*22.25,mg*2.5);
+draw (mg*20,0) -- (mg*25,mg*5);
+endchar;
+
+beginchar(110,widewidth#,height#,0); "du";
+getpen;
+draw (mg*5,mg*25) .. (mg*10,mg*15){down} .. (mg*5,0){left} .. (0,mg*15){up} .. (mg*5,mg*25)
+ .. (mg*15,mg*30){right} .. (mg*22.5,mg*20){down} &
+ flex((mg*22.5,mg*20),(mg*33,mg*22),(mg*25.5,mg*15),(mg*37.5,mg*15));
+endchar;
+
+beginchar(111,fullwidth#,height#,0); "o";
+getpen;
+draw (mg*2.5,mg*10){left} .. (0,mg*5){down} .. (mg*2.5,0){right} .. (mg*5,mg*5){up}
+ .. (mg*2.5,mg*10){left} & flex((mg*2.5,mg*10),(mg*12.5,mg*15),(mg*25,mg*10)) ..
+ (mg*25,mg*10){down} .. (mg*20,0);
+draw (mg*12.5,mg*15) -- (mg*12.5,mg*30);
+draw (mg*7.5,mg*30) -- (mg*17.5,mg*30);
+endchar;
+
+beginchar(112,fullwidth#,height#,0); "dzu";
+getpen;
+draw flex((mg*25,mg*22.5),(mg*22.5,mg*25),(mg*20,mg*22.5),(mg*17.5,mg*25),(mg*15,mg*22.5));
+draw (mg*15,mg*22.5) .. (mg*7.5,mg*30){left} .. (0,mg*15){down} .. (mg*7.5,0){right}
+ .. (mg*15,mg*7.5) & flex((mg*15,mg*7.5),(mg*17.5,mg*5),(mg*20,mg*7.5),(mg*22.5,mg*5),(mg*25,mg*7.5));
+endchar;
+
+beginchar(113,fullwidth#,height#,0); "wu";
+getpen;
+draw (mg*25,mg*20) -- (mg*15,mg*25);
+draw (mg*20,mg*22.5){up} .. (mg*15,mg*30){left} .. (0,mg*15){down} ..
+ (mg*15,0){right} .. (mg*20,mg*5){up} .. (0,mg*15);
+endchar;
+
+beginchar(114,fullwidth#,height#,0); "yu";
+getpen;
+draw (0,0) -- (mg*2.5,0) -- (mg*2.5,mg*30) -- (0,mg*30);
+draw (mg*2.5,0){right} .. (mg*25,mg*7.5){up} .. (mg*2.5,mg*15){left} ..
+ (mg*2.5,mg*15){right} .. (mg*20,mg*22.5){up} .. (mg*2.5,mg*30){left};
+endchar;
+
+beginchar(115,fullwidth#,height#,0); "s";
+getpen;
+draw flex((mg*8,mg*10),(mg*4,0),(0,mg*10)) .. (0,mg*10) -- (mg*15,mg*10) &
+ flex((mg*15,mg*10),(mg*20,0),(mg*25,mg*10)) .. (mg*25,mg*10) ..
+ (mg*25,mg*12){up} .. (mg*5,mg*30){left};
+endchar;
+
+beginchar(116,fullwidth#,height#,0); "hna";
+getpen;
+draw (0,mg*20) -- (mg*10,mg*20);
+draw (mg*5,mg*30) -- (mg*5,mg*10) & flex((mg*5,mg*10),(mg*12.5,0),(mg*20,mg*10)) ..
+ (mg*20,mg*10) -- (mg*25,mg*10);
+endchar;
+
+beginchar(117,narrowwidth#,height#,0); "u";
+getpen;
+draw (0,0) .. (mg*5,mg*5) .. (mg*7.5,mg*20);
+draw (mg*15,0) .. (mg*10,mg*5) .. (mg*7.5,mg*20);
+getbigpen;
+drawdot(mg*7.5,mg*29);
+endchar;
+
+beginchar(118,narrowwidth#,height#,0); "ka";
+getpen;
+draw (0,mg*30){right} .. (mg*15,mg*15){down} .. (mg*7.5,0){left} ..
+ (0,mg*7.5){up} .. (mg*15,mg*15);
+endchar;
+
+beginchar(119,fullwidth#,height#,0); "ta";
+getpen;
+draw (0,mg*30) -- (mg*7.5,0) -- (mg*15,mg*30) -- (mg*18,mg*30);
+draw (mg*7,mg*30) -- (mg*14.5,0) -- (mg*22,mg*30) -- (mg*25,mg*30);
+endchar;
+
+beginchar(120,fullwidth#,height#,0); "ti";
+getpen;
+draw (0,mg*25) -- (mg*5,mg*30);
+draw (mg*2.5,mg*27.5) -- (mg*25,mg*27.5) -- (mg*25,0);
+draw (mg*25,mg*22.5){down} .. (mg*10,0){left} .. (0,mg*7.5);
+endchar;
+
+beginchar(121,fullwidth#,height#,0); "tla";
+getpen;
+draw (0,0) -- (mg*25,0) -- (mg*25,mg*5);
+draw (mg*10,0) -- (mg*10,mg*20) & flex ((mg*10,mg*20),(mg*20,mg*30),(mg*25,mg*20));
+endchar;
+
+beginchar(122,fullwidth#,height#,0); "te";
+getpen;
+draw (0,mg*25) -- (0,mg*30) -- (mg*25,mg*30);
+draw (mg*12.5,mg*30) -- (mg*12.5,mg*10) .. (mg*18.75,0){right} ..
+ (mg*25,mg*10){up} .. (mg*12.5,mg*15){left};
+endchar;
+
+end;
+
diff --git a/fonts/cherokee/cherokee.sty b/fonts/cherokee/cherokee.sty
new file mode 100644
index 0000000000..f5c4f2dcc3
--- /dev/null
+++ b/fonts/cherokee/cherokee.sty
@@ -0,0 +1,105 @@
+% cherokee.sty
+%
+% This style file was written by Alan M Stanier
+% of Essex University Computer Service (alan@essex.ac.uk)
+% for use with the cherokee font.
+%
+% Copyright 1994 Alan Stanier.
+% You may freely use, modify, and/or distribute this file, without limitation.
+%
+% If you make significant additions or improvements, I request
+% that you email me an updated version.
+%
+% The file defines a macro for each character in the font.
+%
+% a e i o u and s are defined by the macros Ca, Ce, etc,
+% while all others are given as C<syllable>.
+% Thus segwoya is written as \Cse\Cgwo\Cya.
+
+%
+\font\cherokee=cherokee
+\def\Csoo{{\cherokee\symbol{38}}}
+\def\Cga{{\cherokee\symbol{39}}}
+\def\Cha{{\cherokee\symbol{40}}}
+\def\Cla{{\cherokee\symbol{41}}}
+\def\Cma{{\cherokee\symbol{42}}}
+\def\Cna{{\cherokee\symbol{43}}}
+\def\Cgwa{{\cherokee\symbol{44}}}
+\def\Csa{{\cherokee\symbol{45}}}
+\def\Cda{{\cherokee\symbol{46}}}
+\def\Cdla{{\cherokee\symbol{47}}}
+\def\Cdza{{\cherokee\symbol{48}}}
+\def\Cwa{{\cherokee\symbol{49}}}
+\def\Cya{{\cherokee\symbol{50}}}
+\def\Cwoo{{\cherokee\symbol{51}}}
+\def\Cge{{\cherokee\symbol{52}}}
+\def\Che{{\cherokee\symbol{53}}}
+\def\Cle{{\cherokee\symbol{54}}}
+\def\Cme{{\cherokee\symbol{55}}}
+\def\Cne{{\cherokee\symbol{56}}}
+\def\Cgwe{{\cherokee\symbol{57}}}
+\def\Cse{{\cherokee\symbol{58}}}
+\def\Cde{{\cherokee\symbol{59}}}
+\def\Cdle{{\cherokee\symbol{60}}}
+\def\Cdze{{\cherokee\symbol{61}}}
+\def\Cwe{{\cherokee\symbol{62}}}
+\def\Cye{{\cherokee\symbol{63}}}
+\def\Chu{{\cherokee\symbol{64}}}
+\def\Cgi{{\cherokee\symbol{65}}}
+\def\Chi{{\cherokee\symbol{66}}}
+\def\Cli{{\cherokee\symbol{67}}}
+\def\Cmi{{\cherokee\symbol{68}}}
+\def\Cni{{\cherokee\symbol{69}}}
+\def\Cgwi{{\cherokee\symbol{70}}}
+\def\Csi{{\cherokee\symbol{71}}}
+\def\Cdi{{\cherokee\symbol{72}}}
+\def\Cdli{{\cherokee\symbol{73}}}
+\def\Cdzi{{\cherokee\symbol{74}}}
+\def\Cwi{{\cherokee\symbol{75}}}
+\def\Cyi{{\cherokee\symbol{76}}}
+\def\Cdlu{{\cherokee\symbol{77}}}
+\def\Cgo{{\cherokee\symbol{78}}}
+\def\Cho{{\cherokee\symbol{79}}}
+\def\Clo{{\cherokee\symbol{80}}}
+\def\Cmo{{\cherokee\symbol{81}}}
+\def\Cno{{\cherokee\symbol{82}}}
+\def\Cgwo{{\cherokee\symbol{83}}}
+\def\Cso{{\cherokee\symbol{84}}}
+\def\Cdo{{\cherokee\symbol{85}}}
+\def\Cdlo{{\cherokee\symbol{86}}}
+\def\Cdzo{{\cherokee\symbol{87}}}
+\def\Cwo{{\cherokee\symbol{88}}}
+\def\Cyo{{\cherokee\symbol{89}}}
+\def\Coo{{\cherokee\symbol{90}}}
+\def\Cgoo{{\cherokee\symbol{91}}}
+\def\Choo{{\cherokee\symbol{92}}}
+\def\Cloo{{\cherokee\symbol{93}}}
+\def\Cmoo{{\cherokee\symbol{94}}}
+\def\Cnoo{{\cherokee\symbol{95}}}
+\def\Cgwoo{{\cherokee\symbol{96}}}
+\def\Ca{{\cherokee\symbol{97}}}
+\def\Cdoo{{\cherokee\symbol{98}}}
+\def\Cdloo{{\cherokee\symbol{99}}}
+\def\Cdzoo{{\cherokee\symbol{100}}}
+\def\Ce{{\cherokee\symbol{101}}}
+\def\Cyoo{{\cherokee\symbol{102}}}
+\def\Cnah{{\cherokee\symbol{103}}}
+\def\Cgu{{\cherokee\symbol{104}}}
+\def\Ci{{\cherokee\symbol{105}}}
+\def\Clu{{\cherokee\symbol{106}}}
+\def\Cnu{{\cherokee\symbol{107}}}
+\def\Cgwu{{\cherokee\symbol{108}}}
+\def\Csu{{\cherokee\symbol{109}}}
+\def\Cdu{{\cherokee\symbol{110}}}
+\def\Co{{\cherokee\symbol{111}}}
+\def\Cdzu{{\cherokee\symbol{112}}}
+\def\Cwu{{\cherokee\symbol{113}}}
+\def\Cyu{{\cherokee\symbol{114}}}
+\def\Cs{{\cherokee\symbol{115}}}
+\def\Chna{{\cherokee\symbol{116}}}
+\def\Cu{{\cherokee\symbol{117}}}
+\def\Cka{{\cherokee\symbol{118}}}
+\def\Cta{{\cherokee\symbol{119}}}
+\def\Cti{{\cherokee\symbol{120}}}
+\def\Ctla{{\cherokee\symbol{121}}}
+\def\Cte{{\cherokee\symbol{122}}}