summaryrefslogtreecommitdiff
path: root/fonts/georgian
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/georgian
Initial commit
Diffstat (limited to 'fonts/georgian')
-rw-r--r--fonts/georgian/mxedruli/README105
-rw-r--r--fonts/georgian/mxedruli/afm/mxed10.afm134
-rw-r--r--fonts/georgian/mxedruli/afm/mxedbf10.afm134
-rw-r--r--fonts/georgian/mxedruli/afm/mxedc10.afm133
-rw-r--r--fonts/georgian/mxedruli/afm/mxedi10.afm134
-rw-r--r--fonts/georgian/mxedruli/afm/xuc10.afm131
-rw-r--r--fonts/georgian/mxedruli/alphabets.tex90
-rw-r--r--fonts/georgian/mxedruli/inputs/mxedruli.sty253
-rw-r--r--fonts/georgian/mxedruli/inputs/umxed.fd39
-rw-r--r--fonts/georgian/mxedruli/inputs/uxuc.fd28
-rw-r--r--fonts/georgian/mxedruli/inputs/xucuri.sty254
-rw-r--r--fonts/georgian/mxedruli/mf/mxed.mf102
-rw-r--r--fonts/georgian/mxedruli/mf/mxed10.mf121
-rw-r--r--fonts/georgian/mxedruli/mf/mxedacc.mf58
-rw-r--r--fonts/georgian/mxedruli/mf/mxedbase.mf78
-rw-r--r--fonts/georgian/mxedruli/mf/mxedbf10.mf121
-rw-r--r--fonts/georgian/mxedruli/mf/mxedc10.mf121
-rw-r--r--fonts/georgian/mxedruli/mf/mxedcaps.mf864
-rw-r--r--fonts/georgian/mxedruli/mf/mxedd.mf165
-rw-r--r--fonts/georgian/mxedruli/mf/mxedfont.mf1027
-rw-r--r--fonts/georgian/mxedruli/mf/mxedi10.mf122
-rw-r--r--fonts/georgian/mxedruli/mf/mxedp.mf247
-rw-r--r--fonts/georgian/mxedruli/mf/xuc.mf115
-rw-r--r--fonts/georgian/mxedruli/mf/xuc10.mf145
-rw-r--r--fonts/georgian/mxedruli/mf/xucbase.mf117
-rw-r--r--fonts/georgian/mxedruli/mf/xucd.mf165
-rw-r--r--fonts/georgian/mxedruli/mf/xucfont.mf960
-rw-r--r--fonts/georgian/mxedruli/mf/xucl.mf1157
-rw-r--r--fonts/georgian/mxedruli/mf/xucp.mf247
-rw-r--r--fonts/georgian/mxedruli/mxeddoc.pdfbin0 -> 331109 bytes
-rw-r--r--fonts/georgian/mxedruli/mxeddoc.tex953
-rw-r--r--fonts/georgian/mxedruli/mxedruli.map10
-rw-r--r--fonts/georgian/mxedruli/ossetic.tex46
-rw-r--r--fonts/georgian/mxedruli/type1/mxed10.pfbbin0 -> 27410 bytes
-rw-r--r--fonts/georgian/mxedruli/type1/mxedbf10.pfbbin0 -> 26950 bytes
-rw-r--r--fonts/georgian/mxedruli/type1/mxedc10.pfbbin0 -> 27220 bytes
-rw-r--r--fonts/georgian/mxedruli/type1/mxedi10.pfbbin0 -> 27136 bytes
-rw-r--r--fonts/georgian/mxedruli/type1/xuc10.pfbbin0 -> 37754 bytes
-rw-r--r--fonts/georgian/mxedruli/vepxis.tex40
-rw-r--r--fonts/georgian/stanier/README7
-rw-r--r--fonts/georgian/stanier/georgian.mf225
-rw-r--r--fonts/georgian/stanier/itgeorgian.README4
-rw-r--r--fonts/georgian/stanier/itgeorgian.mf230
43 files changed, 8882 insertions, 0 deletions
diff --git a/fonts/georgian/mxedruli/README b/fonts/georgian/mxedruli/README
new file mode 100644
index 0000000000..6e53656073
--- /dev/null
+++ b/fonts/georgian/mxedruli/README
@@ -0,0 +1,105 @@
+Mxedruli & Xucuri - The Georgian Alphabets 18th January 2009
+
+Designed by Johannes Heinecke
+ <johannes.heinecke@wanadoo.fr>
+
+This software is under the LaTeX Project Public License 1.3
+(http://ctan.org/license/lppl1.3)
+
+
+Please send any improvements, corrections, suggestions, enhancements etc
+to the Author!
+I would also very grateful, if you could send me text examples
+you created with these fonts, in order to replace the simple
+examples in the documentation by them.
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+Version 3.4
+
+The following files are included to use Mxedruli and Xucuri within
+LaTeX: (Some files have not been changed with this version, therefore
+they still use a version number prior to 3.3)
+
+mf/mxed10.mf - Driver for the 10pt normal
+mf/mxedbf10.mf - Driver for the 10pt bold
+mf/mxedc10.mf - Driver for the 10pt capital
+mf/mxedi10.mf - Driver for the 10pt italics
+mf/mxed.mf - Main Driver, calls character definition files
+mf/mxedbase.mf - Base file
+mf/mxedfont.mf - Definition of Mxedruli characters
+mf/mxedcaps.mf - Definition of Mxedruli ``capital'' characters
+mf/mxedp.mf - Punctuation (very simple)
+mf/mxedd.mf - Digits (very simple too, if cmbase is used the
+ cm-digits will be used instead of these.
+mf/mxedacc.mf - Accents for other Kartvelian languages (Svan).
+mf/xuc10 - Driver for the 10pt Xucuri
+mf/xuc.mf - Main Driver, calls character definition files
+mf/xucbase.mf - Base file
+mf/xucfont.mf - Definition of Xucuri characters
+mf/xucp.mf - Punctuation (very simple)
+
+
+alphabets.tex - An example of Xucuri and Mxedruli
+mxeddoc.pdf - Documentation (Far more exhaustive!)
+mxeddoc.tex - LaTeX-source for mxeddoc.pdf
+ossetic.tex - An example of Ossetic language written in Mxedruli
+vepxis.tex - A short sample file
+inputs/mxedruli.sty - LaTeX Style file, to hook Mxedruli to LaTeX
+ size change commands
+inputs/xucuri.sty - LaTeX Style file for Xucuri
+inputs/umxed.fd - Font definition file for NFSS2
+inputs/uxuc.fd - Font definition file for NFSS2
+
+
+
+How to create the .gf/.pk files?
+- Run METAFONT (and GFtoPK) on mxed10.mf and mxedbf10.mf
+
+What's more to say?
+- The punctuation is very simple, and only
+ includes . , : ; - -- --- ! ? ( ) \ / [ ] = +
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+History:
+
+6th April 2013: Version 3.4
+ there is now a debian package which installs type1 fonts, tfm, afm files as well
+ as style files on Ubuntu 10.04, Ubuntu 12.04 platforms and probably (untested) other
+ debian and derived platforms
+
+18th January 2009: Version 3.3c
+ 10 years, and the only thing changed is the doc (reference to Unicode codes and some minor details)
+
+1st Septmeber 1999: Version 3.3
+ Changed Fontcoding U to u
+
+15th April 1997: Version 3.0
+ Added Xucuri characters (upper and lower case)
+
+15th July 1996: Version 2.4
+ Added italics, minor corrections
+
+20th May 1996: Version 2.3
+ Added new letter: Glottal Stop (reverse `q')
+
+5th March 1996: Version 2.2
+ Added two more letters: `qhar' and `ee'
+
+26th June 1995: Version 2.1
+ Minor corrections (not distributed via CTAN)
+
+16th June 1995: Version 2.0
+ `Capital' fonts included
+ Introduced some letters for Old Georgian and Ossetian resp.
+ !! The letter .+c is now at position oct(014), not at
+ postion oct(171) where it used to be. This was necessary
+ as a letter being transcribed by "y" (oct(171)) was introduced.
+
+8th August 1994: Version 1.0
+ Some Corrections on too mishaped letters.
+ Introduced some letters for Old Georgian.
+
+September 1993:
+ First Release.
+
+
diff --git a/fonts/georgian/mxedruli/afm/mxed10.afm b/fonts/georgian/mxedruli/afm/mxed10.afm
new file mode 100644
index 0000000000..6caa901fb4
--- /dev/null
+++ b/fonts/georgian/mxedruli/afm/mxed10.afm
@@ -0,0 +1,134 @@
+StartFontMetrics 2.0
+Comment Generated by FontForge 20110222
+Comment Creation Date: Fri Apr 5 22:33:12 2013
+FontName mxed10
+FullName mxed10
+FamilyName mxed10
+Weight Regular
+Notice (Generated from MetaFont bitmap by mftrace 1.2.17, http://www.xs4all.nl/~hanwen/mftrace/ )
+ItalicAngle 0
+IsFixedPitch false
+UnderlinePosition -100
+UnderlineThickness 50
+Version 001.001
+EncodingScheme FontSpecific
+FontBBox -41 -306 682 875
+XHeight 319
+Ascender 641
+Descender -244
+StartCharMetrics 74
+C 0 ; WX 507 ; N grave ; B -14 -293 432 736 ;
+C 1 ; WX 368 ; N acute ; B -14 -41 292 736 ;
+C 2 ; WX 646 ; N circumflex ; B -15 -292 570 459 ; L one quotedblright ;
+C 3 ; WX 368 ; N tilde ; B -41 -266 319 570 ;
+C 4 ; WX 368 ; N dieresis ; B -14 -41 293 875 ;
+C 5 ; WX 507 ; N hungarumlaut ; B -13 -42 431 737 ;
+C 6 ; WX 507 ; N ring ; B -15 -291 431 625 ;
+C 7 ; WX 368 ; N caron ; B -14 -291 292 459 ;
+C 8 ; WX 576 ; N breve ; B 0 -265 570 458 ; L one quotedblright ;
+C 9 ; WX 507 ; N macron ; B 0 -45 431 739 ;
+C 10 ; WX 507 ; N dotaccent ; B -15 -53 432 458 ;
+C 11 ; WX 368 ; N cedilla ; B -14 -42 291 528 ;
+C 12 ; WX 424 ; N ogonek ; B -13 -291 321 736 ;
+C 13 ; WX 438 ; N quotesinglbase ; B -14 -291 293 559 ;
+C 14 ; WX 646 ; N guilsinglleft ; B -15 -122 606 736 ;
+C 16 ; WX 368 ; N quotedblleft ; B -14 -42 292 737 ;
+C 17 ; WX 368 ; N quotedblright ; B -14 -291 292 458 ;
+C 22 ; WX 368 ; N emdash ; B -28 637 306 694 ;
+C 33 ; WX 160 ; N exclam ; B 0 -52 104 695 ;
+C 39 ; WX 193 ; N quoteright ; B -14 503 104 746 ;
+C 40 ; WX 229 ; N parenleft ; B 0 -69 204 764 ;
+C 41 ; WX 229 ; N parenright ; B -13 -69 191 764 ;
+C 43 ; WX 368 ; N plus ; B -28 -28 306 306 ; L j breve ; L z caron ; L s hungarumlaut ; L c acute ;
+C 44 ; WX 193 ; N comma ; B -15 -192 105 52 ; L c ogonek ;
+C 45 ; WX 368 ; N hyphen ; B -28 249 306 306 ; L hyphen braceleft ;
+C 46 ; WX 229 ; N period ; B 0 -52 104 52 ; L plus comma ; L t ring ; L p dieresis ; L k tilde ; L g circumflex ; L c grave ;
+C 47 ; WX 507 ; N slash ; B -29 -28 446 723 ;
+C 48 ; WX 368 ; N zero ; B -16 0 293 694 ;
+C 49 ; WX 229 ; N one ; B -15 -1 153 694 ;
+C 50 ; WX 368 ; N two ; B -13 -1 310 694 ;
+C 51 ; WX 368 ; N three ; B -14 -1 293 694 ;
+C 52 ; WX 368 ; N four ; B -15 0 292 695 ;
+C 53 ; WX 368 ; N five ; B -15 1 294 694 ;
+C 54 ; WX 368 ; N six ; B -14 -1 291 695 ;
+C 55 ; WX 368 ; N seven ; B -13 0 292 694 ;
+C 56 ; WX 368 ; N eight ; B -15 -1 291 694 ;
+C 57 ; WX 368 ; N nine ; B -15 0 292 694 ;
+C 58 ; WX 229 ; N colon ; B 0 87 104 399 ;
+C 59 ; WX 193 ; N semicolon ; B -15 -192 105 260 ;
+C 61 ; WX 507 ; N equal ; B 0 181 416 376 ;
+C 63 ; WX 368 ; N question ; B -13 -52 292 736 ;
+C 91 ; WX 229 ; N bracketleft ; B -28 -98 167 792 ;
+C 92 ; WX 507 ; N backslash ; B -28 -29 445 723 ;
+C 93 ; WX 229 ; N bracketright ; B -28 -98 167 792 ;
+C 94 ; WX 368 ; N asciicircum ; B 2 528 334 694 ;
+C 97 ; WX 368 ; N a ; B -14 -42 291 459 ; L one quotedblright ;
+C 98 ; WX 368 ; N b ; B -14 -42 292 723 ; L one quotedblleft ;
+C 99 ; WX 438 ; N c ; B -14 -293 362 458 ; L one quotedblright ;
+C 100 ; WX 646 ; N d ; B -15 -292 571 459 ; L one quotedblright ;
+C 101 ; WX 368 ; N e ; B -15 -291 292 458 ; L zero guilsinglleft ; L e guilsinglleft ; L one cedilla ;
+C 102 ; WX 507 ; N f ; B -15 -291 432 736 ;
+C 103 ; WX 368 ; N g ; B -15 -292 293 458 ; L one quotedblright ;
+C 104 ; WX 368 ; N h ; B -14 -41 293 736 ;
+C 105 ; WX 368 ; N i ; B -15 -41 292 458 ; L one dotaccent ;
+C 106 ; WX 368 ; N j ; B -15 -42 292 736 ;
+C 107 ; WX 368 ; N k ; B -15 -292 292 736 ;
+C 108 ; WX 757 ; N l ; B -14 -292 682 459 ; L one quotedblright ;
+C 109 ; WX 368 ; N m ; B -15 -42 292 736 ;
+C 110 ; WX 368 ; N n ; B -14 -42 292 793 ;
+C 111 ; WX 646 ; N o ; B -15 -41 569 459 ; L one macron ;
+C 112 ; WX 646 ; N p ; B -15 -292 571 459 ; L one quotedblright ;
+C 113 ; WX 368 ; N q ; B -15 -292 292 458 ; L one quotesinglbase ;
+C 114 ; WX 646 ; N r ; B -15 -41 570 875 ;
+C 115 ; WX 368 ; N s ; B -14 -42 291 737 ;
+C 116 ; WX 646 ; N t ; B -15 -42 569 459 ; L one quotedblright ;
+C 117 ; WX 674 ; N u ; B -15 -292 599 458 ; L one quotedblright ;
+C 118 ; WX 368 ; N v ; B -15 -291 293 458 ;
+C 119 ; WX 368 ; N w ; B -14 -293 293 319 ;
+C 120 ; WX 368 ; N x ; B -14 -42 292 737 ;
+C 121 ; WX 368 ; N y ; B -15 -306 293 458 ;
+C 122 ; WX 646 ; N z ; B -15 -42 501 736 ;
+C 123 ; WX 507 ; N braceleft ; B -28 249 445 306 ; L hyphen bar ;
+C 124 ; WX 646 ; N bar ; B -28 248 583 306 ;
+C 127 ; WX 368 ; N sfthyphen ; B 0 590 278 694 ;
+EndCharMetrics
+StartKernData
+StartKernPairs 35
+KPX circumflex z -45
+KPX circumflex hungarumlaut -139
+KPX dieresis s 45
+KPX caron s 45
+KPX breve z -45
+KPX breve hungarumlaut -139
+KPX quoteright quoteright -72
+KPX comma comma -90
+KPX a z -45
+KPX a hungarumlaut -139
+KPX c z -45
+KPX c hungarumlaut -139
+KPX d z -45
+KPX d hungarumlaut -139
+KPX e z -45
+KPX e hungarumlaut -139
+KPX g z -45
+KPX g hungarumlaut -139
+KPX i z -45
+KPX i hungarumlaut -139
+KPX k s 45
+KPX l z -45
+KPX l hungarumlaut -139
+KPX m s 45
+KPX o z -45
+KPX o hungarumlaut -139
+KPX p z -45
+KPX p hungarumlaut -139
+KPX q z -45
+KPX q hungarumlaut -139
+KPX t z -45
+KPX t hungarumlaut -139
+KPX u z -45
+KPX u hungarumlaut -139
+KPX x s 45
+EndKernPairs
+EndKernData
+EndFontMetrics
diff --git a/fonts/georgian/mxedruli/afm/mxedbf10.afm b/fonts/georgian/mxedruli/afm/mxedbf10.afm
new file mode 100644
index 0000000000..4d0515dca5
--- /dev/null
+++ b/fonts/georgian/mxedruli/afm/mxedbf10.afm
@@ -0,0 +1,134 @@
+StartFontMetrics 2.0
+Comment Generated by FontForge 20110222
+Comment Creation Date: Fri Apr 5 22:33:46 2013
+FontName mxedbf10
+FullName mxedbf10
+FamilyName mxedbf10
+Weight Regular
+Notice (Generated from MetaFont bitmap by mftrace 1.2.17, http://www.xs4all.nl/~hanwen/mftrace/ )
+ItalicAngle 0
+IsFixedPitch false
+UnderlinePosition -100
+UnderlineThickness 50
+Version 001.001
+EncodingScheme FontSpecific
+FontBBox -61 -342 769 895
+XHeight 479
+Ascender 660
+Descender -267
+StartCharMetrics 74
+C 0 ; WX 557 ; N grave ; B -22 -311 490 755 ;
+C 1 ; WX 401 ; N acute ; B -22 -61 334 755 ;
+C 2 ; WX 712 ; N circumflex ; B -22 -311 645 479 ; L one quotedblright ;
+C 3 ; WX 401 ; N tilde ; B -61 -272 373 578 ;
+C 4 ; WX 401 ; N dieresis ; B -22 -61 333 895 ;
+C 5 ; WX 557 ; N hungarumlaut ; B -22 -62 489 756 ;
+C 6 ; WX 557 ; N ring ; B -22 -311 490 644 ;
+C 7 ; WX 401 ; N caron ; B -22 -312 333 478 ;
+C 8 ; WX 635 ; N breve ; B -1 -272 667 478 ; L one quotedblright ;
+C 9 ; WX 557 ; N macron ; B 14 -68 489 761 ;
+C 10 ; WX 557 ; N dotaccent ; B -22 -73 489 478 ;
+C 11 ; WX 401 ; N cedilla ; B -23 -61 333 556 ;
+C 12 ; WX 464 ; N ogonek ; B -22 -311 365 756 ;
+C 13 ; WX 479 ; N quotesinglbase ; B -22 -311 334 586 ;
+C 14 ; WX 712 ; N guilsinglleft ; B -23 -155 660 756 ;
+C 16 ; WX 401 ; N quotedblleft ; B -22 -61 333 755 ;
+C 17 ; WX 401 ; N quotedblright ; B -23 -311 333 478 ;
+C 22 ; WX 401 ; N emdash ; B -39 617 350 694 ;
+C 33 ; WX 168 ; N exclam ; B 0 -63 125 695 ;
+C 39 ; WX 214 ; N quoteright ; B -22 483 125 757 ;
+C 40 ; WX 246 ; N parenleft ; B 1 -69 237 764 ;
+C 41 ; WX 246 ; N parenright ; B -19 -69 217 764 ;
+C 43 ; WX 401 ; N plus ; B -39 -39 350 350 ; L j breve ; L z caron ; L s hungarumlaut ; L c acute ;
+C 44 ; WX 214 ; N comma ; B -22 -211 125 63 ; L c ogonek ;
+C 45 ; WX 401 ; N hyphen ; B -39 239 350 316 ; L hyphen braceleft ;
+C 46 ; WX 246 ; N period ; B 0 -63 125 63 ; L plus comma ; L t ring ; L p dieresis ; L k tilde ; L g circumflex ; L c grave ;
+C 47 ; WX 557 ; N slash ; B -37 -37 505 733 ;
+C 48 ; WX 401 ; N zero ; B -22 -1 333 694 ;
+C 49 ; WX 246 ; N one ; B -22 0 178 694 ;
+C 50 ; WX 401 ; N two ; B -22 0 362 694 ;
+C 51 ; WX 401 ; N three ; B -22 -1 334 695 ;
+C 52 ; WX 401 ; N four ; B -22 0 333 694 ;
+C 53 ; WX 401 ; N five ; B -22 -1 336 695 ;
+C 54 ; WX 401 ; N six ; B -23 -1 334 694 ;
+C 55 ; WX 401 ; N seven ; B -22 -1 333 694 ;
+C 56 ; WX 401 ; N eight ; B -22 -1 334 694 ;
+C 57 ; WX 401 ; N nine ; B -22 0 333 694 ;
+C 58 ; WX 246 ; N colon ; B 0 76 125 410 ;
+C 59 ; WX 214 ; N semicolon ; B -22 -211 125 271 ;
+C 61 ; WX 557 ; N equal ; B 1 169 466 386 ;
+C 63 ; WX 401 ; N question ; B -22 -63 333 755 ;
+C 91 ; WX 246 ; N bracketleft ; B -38 -108 194 802 ;
+C 92 ; WX 557 ; N backslash ; B -39 -38 505 733 ;
+C 93 ; WX 246 ; N bracketright ; B -39 -108 194 802 ;
+C 94 ; WX 401 ; N asciicircum ; B 3 529 371 694 ;
+C 97 ; WX 401 ; N a ; B -22 -61 333 478 ; L one quotedblright ;
+C 98 ; WX 401 ; N b ; B -22 -61 333 737 ; L one quotedblleft ;
+C 99 ; WX 479 ; N c ; B -23 -311 411 478 ; L one quotedblright ;
+C 100 ; WX 712 ; N d ; B -22 -311 644 479 ; L one quotedblright ;
+C 101 ; WX 401 ; N e ; B -22 -312 333 478 ; L zero guilsinglleft ; L e guilsinglleft ; L one cedilla ;
+C 102 ; WX 557 ; N f ; B -22 -312 490 755 ;
+C 103 ; WX 401 ; N g ; B -22 -312 333 479 ; L one quotedblright ;
+C 104 ; WX 401 ; N h ; B -22 -61 334 756 ;
+C 105 ; WX 401 ; N i ; B -22 -61 334 478 ; L one dotaccent ;
+C 106 ; WX 401 ; N j ; B -22 -62 333 755 ;
+C 107 ; WX 401 ; N k ; B -22 -312 333 755 ;
+C 108 ; WX 837 ; N l ; B -22 -312 769 479 ; L one quotedblright ;
+C 109 ; WX 401 ; N m ; B -22 -62 333 755 ;
+C 110 ; WX 401 ; N n ; B -22 -61 333 811 ;
+C 111 ; WX 712 ; N o ; B -22 -61 645 479 ; L one macron ;
+C 112 ; WX 712 ; N p ; B -22 -312 645 479 ; L one quotedblright ;
+C 113 ; WX 401 ; N q ; B -22 -312 333 478 ; L one quotesinglbase ;
+C 114 ; WX 712 ; N r ; B -22 -61 645 894 ;
+C 115 ; WX 401 ; N s ; B -22 -61 333 755 ;
+C 116 ; WX 712 ; N t ; B -22 -61 645 479 ; L one quotedblright ;
+C 117 ; WX 744 ; N u ; B -23 -312 675 479 ; L one quotedblright ;
+C 118 ; WX 401 ; N v ; B -23 -311 334 478 ;
+C 119 ; WX 401 ; N w ; B -22 -312 334 340 ;
+C 120 ; WX 401 ; N x ; B -22 -61 333 755 ;
+C 121 ; WX 401 ; N y ; B -22 -342 333 494 ;
+C 122 ; WX 712 ; N z ; B -22 -61 566 756 ;
+C 123 ; WX 557 ; N braceleft ; B -39 240 505 316 ; L hyphen bar ;
+C 124 ; WX 712 ; N bar ; B -39 239 660 316 ;
+C 127 ; WX 401 ; N sfthyphen ; B 0 569 311 694 ;
+EndCharMetrics
+StartKernData
+StartKernPairs 35
+KPX circumflex z -45
+KPX circumflex hungarumlaut -156
+KPX dieresis s 45
+KPX caron s 45
+KPX breve z -45
+KPX breve hungarumlaut -156
+KPX quoteright quoteright -72
+KPX comma comma -90
+KPX a z -45
+KPX a hungarumlaut -156
+KPX c z -45
+KPX c hungarumlaut -156
+KPX d z -45
+KPX d hungarumlaut -156
+KPX e z -45
+KPX e hungarumlaut -156
+KPX g z -45
+KPX g hungarumlaut -156
+KPX i z -45
+KPX i hungarumlaut -156
+KPX k s 45
+KPX l z -45
+KPX l hungarumlaut -156
+KPX m s 45
+KPX o z -45
+KPX o hungarumlaut -156
+KPX p z -45
+KPX p hungarumlaut -156
+KPX q z -45
+KPX q hungarumlaut -156
+KPX t z -45
+KPX t hungarumlaut -156
+KPX u z -45
+KPX u hungarumlaut -156
+KPX x s 45
+EndKernPairs
+EndKernData
+EndFontMetrics
diff --git a/fonts/georgian/mxedruli/afm/mxedc10.afm b/fonts/georgian/mxedruli/afm/mxedc10.afm
new file mode 100644
index 0000000000..7a7982f7cd
--- /dev/null
+++ b/fonts/georgian/mxedruli/afm/mxedc10.afm
@@ -0,0 +1,133 @@
+StartFontMetrics 2.0
+Comment Generated by FontForge 20110222
+Comment Creation Date: Fri Apr 5 22:33:47 2013
+FontName mxedc10
+FullName mxedc10
+FamilyName mxedc10
+Weight Regular
+Notice (Generated from MetaFont bitmap by mftrace 1.2.17, http://www.xs4all.nl/~hanwen/mftrace/ )
+ItalicAngle 0
+IsFixedPitch false
+UnderlinePosition -100
+UnderlineThickness 50
+Version 001.001
+EncodingScheme FontSpecific
+FontBBox -32 -198 751 976
+XHeight 512
+Ascender 431
+Descender 0
+StartCharMetrics 73
+C 0 ; WX 583 ; N grave ; B 0 -1 501 861 ;
+C 1 ; WX 444 ; N acute ; B 0 0 362 861 ;
+C 2 ; WX 611 ; N circumflex ; B 0 -1 528 862 ; L one quotedblright ;
+C 3 ; WX 444 ; N tilde ; B -1 0 362 861 ;
+C 4 ; WX 444 ; N dieresis ; B 0 -1 362 965 ;
+C 5 ; WX 583 ; N hungarumlaut ; B -1 0 501 861 ;
+C 6 ; WX 583 ; N ring ; B -1 0 502 861 ;
+C 7 ; WX 444 ; N caron ; B -1 0 362 861 ;
+C 8 ; WX 722 ; N breve ; B 0 -16 640 861 ; L one quotedblright ;
+C 9 ; WX 583 ; N macron ; B -32 -3 501 863 ;
+C 10 ; WX 444 ; N dotaccent ; B -1 -1 362 861 ;
+C 11 ; WX 444 ; N cedilla ; B -6 0 364 932 ;
+C 12 ; WX 500 ; N ogonek ; B 0 0 390 861 ;
+C 13 ; WX 514 ; N quotesinglbase ; B -1 0 362 891 ;
+C 14 ; WX 583 ; N guilsinglleft ; B 0 0 469 861 ;
+C 17 ; WX 444 ; N quotedblright ; B 0 0 362 861 ;
+C 22 ; WX 444 ; N emdash ; B -28 804 306 861 ;
+C 33 ; WX 236 ; N exclam ; B 0 -52 104 861 ;
+C 39 ; WX 269 ; N quoteright ; B -19 663 105 913 ;
+C 40 ; WX 306 ; N parenleft ; B 0 -86 208 947 ;
+C 41 ; WX 306 ; N parenright ; B -18 -86 190 947 ;
+C 43 ; WX 444 ; N plus ; B -28 -28 306 306 ; L j breve ; L z caron ; L s hungarumlaut ; L c acute ;
+C 44 ; WX 269 ; N comma ; B -19 -198 104 52 ; L c ogonek ;
+C 45 ; WX 444 ; N hyphen ; B -28 259 306 316 ; L hyphen braceleft ;
+C 46 ; WX 306 ; N period ; B 0 -52 104 52 ; L plus comma ; L t ring ; L p dieresis ; L k tilde ; L g circumflex ; L c grave ;
+C 47 ; WX 583 ; N slash ; B -27 -28 444 890 ;
+C 48 ; WX 444 ; N zero ; B -20 1 298 861 ;
+C 49 ; WX 306 ; N one ; B -19 -1 158 861 ;
+C 50 ; WX 444 ; N two ; B -20 0 298 862 ;
+C 51 ; WX 444 ; N three ; B -20 -1 297 861 ;
+C 52 ; WX 444 ; N four ; B -19 0 298 862 ;
+C 53 ; WX 444 ; N five ; B -19 1 299 861 ;
+C 54 ; WX 444 ; N six ; B -19 -1 297 862 ;
+C 55 ; WX 444 ; N seven ; B -20 -1 297 861 ;
+C 56 ; WX 444 ; N eight ; B -19 -1 297 862 ;
+C 57 ; WX 444 ; N nine ; B -19 0 297 862 ;
+C 58 ; WX 306 ; N colon ; B 0 92 104 411 ;
+C 59 ; WX 269 ; N semicolon ; B -19 -198 104 267 ;
+C 61 ; WX 583 ; N equal ; B 0 188 416 387 ;
+C 63 ; WX 444 ; N question ; B -19 -52 297 908 ;
+C 91 ; WX 306 ; N bracketleft ; B -28 -115 167 976 ;
+C 92 ; WX 583 ; N backslash ; B -28 -28 444 889 ;
+C 93 ; WX 306 ; N bracketright ; B -28 -115 167 976 ;
+C 94 ; WX 444 ; N asciicircum ; B 2 689 334 861 ;
+C 97 ; WX 444 ; N a ; B -2 0 364 861 ; L one quotedblright ;
+C 98 ; WX 444 ; N b ; B -1 0 363 861 ;
+C 99 ; WX 444 ; N c ; B 0 0 362 861 ; L one quotedblright ;
+C 100 ; WX 611 ; N d ; B 0 -1 528 862 ; L one quotedblright ;
+C 101 ; WX 444 ; N e ; B 0 -1 364 861 ; L zero guilsinglleft ; L e guilsinglleft ; L one cedilla ;
+C 102 ; WX 583 ; N f ; B 0 -1 501 862 ;
+C 103 ; WX 444 ; N g ; B 0 0 361 861 ; L one quotedblright ;
+C 104 ; WX 444 ; N h ; B 0 0 363 861 ;
+C 105 ; WX 444 ; N i ; B -2 0 364 861 ; L one dotaccent ;
+C 106 ; WX 444 ; N j ; B -1 0 362 861 ;
+C 107 ; WX 444 ; N k ; B 0 0 362 861 ;
+C 108 ; WX 833 ; N l ; B 0 -17 751 861 ; L one quotedblright ;
+C 109 ; WX 444 ; N m ; B -1 0 362 878 ;
+C 110 ; WX 444 ; N n ; B 1 0 363 947 ;
+C 111 ; WX 611 ; N o ; B 0 0 528 861 ; L one macron ;
+C 112 ; WX 611 ; N p ; B 0 0 528 861 ; L one quotedblright ;
+C 113 ; WX 444 ; N q ; B 0 0 362 861 ; L one quotesinglbase ;
+C 114 ; WX 611 ; N r ; B 0 0 528 862 ;
+C 115 ; WX 444 ; N s ; B 0 0 361 861 ;
+C 116 ; WX 611 ; N t ; B -1 -1 528 861 ; L one quotedblright ;
+C 117 ; WX 778 ; N u ; B 0 -1 695 862 ; L one quotedblright ;
+C 118 ; WX 444 ; N v ; B 0 0 362 861 ;
+C 119 ; WX 444 ; N w ; B -1 -1 362 861 ;
+C 120 ; WX 444 ; N x ; B 0 0 362 861 ;
+C 121 ; WX 444 ; N y ; B -1 0 363 861 ;
+C 122 ; WX 722 ; N z ; B 0 0 570 861 ;
+C 123 ; WX 583 ; N braceleft ; B -28 259 445 316 ; L hyphen bar ;
+C 124 ; WX 722 ; N bar ; B -28 258 583 316 ;
+C 127 ; WX 444 ; N sfthyphen ; B 0 757 278 861 ;
+EndCharMetrics
+StartKernData
+StartKernPairs 35
+KPX circumflex z -83
+KPX circumflex hungarumlaut -139
+KPX dieresis s 83
+KPX caron s 83
+KPX breve z -83
+KPX breve hungarumlaut -139
+KPX quoteright quoteright -133
+KPX comma comma -167
+KPX a z -83
+KPX a hungarumlaut -139
+KPX c z -83
+KPX c hungarumlaut -139
+KPX d z -83
+KPX d hungarumlaut -139
+KPX e z -83
+KPX e hungarumlaut -139
+KPX g z -83
+KPX g hungarumlaut -139
+KPX i z -83
+KPX i hungarumlaut -139
+KPX k s 83
+KPX l z -83
+KPX l hungarumlaut -139
+KPX m s 83
+KPX o z -83
+KPX o hungarumlaut -139
+KPX p z -83
+KPX p hungarumlaut -139
+KPX q z -83
+KPX q hungarumlaut -139
+KPX t z -83
+KPX t hungarumlaut -139
+KPX u z -83
+KPX u hungarumlaut -139
+KPX x s 83
+EndKernPairs
+EndKernData
+EndFontMetrics
diff --git a/fonts/georgian/mxedruli/afm/mxedi10.afm b/fonts/georgian/mxedruli/afm/mxedi10.afm
new file mode 100644
index 0000000000..c45480f4c8
--- /dev/null
+++ b/fonts/georgian/mxedruli/afm/mxedi10.afm
@@ -0,0 +1,134 @@
+StartFontMetrics 2.0
+Comment Generated by FontForge 20110222
+Comment Creation Date: Fri Apr 5 22:33:49 2013
+FontName mxedi10
+FullName mxedi10
+FamilyName mxedi10
+Weight Regular
+Notice (Generated from MetaFont bitmap by mftrace 1.2.17, http://www.xs4all.nl/~hanwen/mftrace/ )
+ItalicAngle 0
+IsFixedPitch false
+UnderlinePosition -100
+UnderlineThickness 50
+Version 001.001
+EncodingScheme FontSpecific
+FontBBox -66 -306 778 876
+XHeight 319
+Ascender 641
+Descender -244
+StartCharMetrics 74
+C 0 ; WX 507 ; N grave ; B 124 -292 576 736 ;
+C 1 ; WX 368 ; N acute ; B -14 -41 382 736 ;
+C 2 ; WX 646 ; N circumflex ; B 25 -292 633 458 ; L one quotedblright ;
+C 3 ; WX 368 ; N tilde ; B -66 -266 429 571 ;
+C 4 ; WX 368 ; N dieresis ; B 19 -42 428 876 ;
+C 5 ; WX 507 ; N hungarumlaut ; B 159 -42 575 737 ;
+C 6 ; WX 507 ; N ring ; B -9 -293 476 625 ;
+C 7 ; WX 368 ; N caron ; B -50 -292 396 458 ;
+C 8 ; WX 576 ; N breve ; B -63 -266 673 458 ; L one quotedblright ;
+C 9 ; WX 507 ; N macron ; B 31 -45 534 740 ;
+C 10 ; WX 507 ; N dotaccent ; B -14 -53 432 458 ;
+C 11 ; WX 368 ; N cedilla ; B 15 -42 330 528 ;
+C 12 ; WX 424 ; N ogonek ; B -50 -291 397 736 ;
+C 13 ; WX 438 ; N quotesinglbase ; B -50 -293 414 559 ;
+C 14 ; WX 646 ; N guilsinglleft ; B 67 -122 714 736 ;
+C 16 ; WX 368 ; N quotedblleft ; B 26 -42 355 737 ;
+C 17 ; WX 368 ; N quotedblright ; B -48 -292 357 459 ;
+C 22 ; WX 368 ; N emdash ; B 138 638 473 694 ;
+C 33 ; WX 160 ; N exclam ; B 0 -52 266 695 ;
+C 39 ; WX 193 ; N quoteright ; B 123 503 278 746 ;
+C 40 ; WX 229 ; N parenleft ; B 70 -69 394 764 ;
+C 41 ; WX 229 ; N parenright ; B -30 -69 295 764 ;
+C 43 ; WX 368 ; N plus ; B 6 -28 340 307 ; L j breve ; L z caron ; L s hungarumlaut ; L c acute ;
+C 44 ; WX 193 ; N comma ; B -53 -192 105 52 ; L c ogonek ;
+C 45 ; WX 368 ; N hyphen ; B 41 250 375 306 ; L hyphen braceleft ;
+C 46 ; WX 229 ; N period ; B 0 -52 104 52 ; L plus comma ; L t ring ; L p dieresis ; L k tilde ; L g circumflex ; L c grave ;
+C 47 ; WX 507 ; N slash ; B -28 -29 619 723 ;
+C 48 ; WX 368 ; N zero ; B 38 -1 412 694 ;
+C 49 ; WX 229 ; N one ; B 123 0 318 694 ;
+C 50 ; WX 368 ; N two ; B -4 0 435 694 ;
+C 51 ; WX 368 ; N three ; B 31 0 455 694 ;
+C 52 ; WX 368 ; N four ; B 48 0 355 694 ;
+C 53 ; WX 368 ; N five ; B 17 0 455 694 ;
+C 54 ; WX 368 ; N six ; B 31 0 386 694 ;
+C 55 ; WX 368 ; N seven ; B -5 -1 455 694 ;
+C 56 ; WX 368 ; N eight ; B 31 0 402 694 ;
+C 57 ; WX 368 ; N nine ; B 65 -1 435 694 ;
+C 58 ; WX 229 ; N colon ; B 35 87 191 399 ;
+C 59 ; WX 193 ; N semicolon ; B -53 -192 156 260 ;
+C 61 ; WX 507 ; N equal ; B 52 181 503 376 ;
+C 63 ; WX 368 ; N question ; B 87 -52 436 736 ;
+C 91 ; WX 229 ; N bracketleft ; B -46 -98 358 792 ;
+C 92 ; WX 507 ; N backslash ; B 146 -28 444 723 ;
+C 93 ; WX 229 ; N bracketright ; B -46 -98 358 792 ;
+C 94 ; WX 368 ; N asciicircum ; B 133 528 463 694 ;
+C 97 ; WX 368 ; N a ; B 15 -42 331 458 ; L one quotedblright ;
+C 98 ; WX 368 ; N b ; B 27 -42 356 723 ; L one quotedblleft ;
+C 99 ; WX 438 ; N c ; B -30 -291 411 458 ; L one quotedblright ;
+C 100 ; WX 646 ; N d ; B 25 -292 634 458 ; L one quotedblright ;
+C 101 ; WX 368 ; N e ; B -50 -292 367 458 ; L zero guilsinglleft ; L e guilsinglleft ; L one cedilla ;
+C 102 ; WX 507 ; N f ; B 30 -291 492 736 ;
+C 103 ; WX 368 ; N g ; B -37 -292 328 458 ; L one quotedblright ;
+C 104 ; WX 368 ; N h ; B 19 -42 436 737 ;
+C 105 ; WX 368 ; N i ; B 25 -42 356 458 ; L one dotaccent ;
+C 106 ; WX 368 ; N j ; B 27 -42 466 737 ;
+C 107 ; WX 368 ; N k ; B -50 -291 467 736 ;
+C 108 ; WX 757 ; N l ; B 25 -292 748 459 ; L one quotedblright ;
+C 109 ; WX 368 ; N m ; B 27 -42 436 736 ;
+C 110 ; WX 368 ; N n ; B 27 -42 480 792 ;
+C 111 ; WX 646 ; N o ; B 25 -42 633 458 ; L one macron ;
+C 112 ; WX 646 ; N p ; B 27 -292 634 458 ; L one quotedblright ;
+C 113 ; WX 368 ; N q ; B -50 -292 357 459 ; L one quotesinglbase ;
+C 114 ; WX 646 ; N r ; B 25 -42 778 875 ;
+C 115 ; WX 368 ; N s ; B 27 -42 348 737 ;
+C 116 ; WX 646 ; N t ; B 27 -42 633 458 ; L one quotedblright ;
+C 117 ; WX 674 ; N u ; B 75 -291 673 459 ; L one quotedblright ;
+C 118 ; WX 368 ; N v ; B -41 -291 364 458 ;
+C 119 ; WX 368 ; N w ; B -61 -292 362 319 ;
+C 120 ; WX 368 ; N x ; B 26 -40 350 737 ;
+C 121 ; WX 368 ; N y ; B -52 -306 367 458 ;
+C 122 ; WX 646 ; N z ; B 117 -40 558 736 ;
+C 123 ; WX 507 ; N braceleft ; B 41 250 515 306 ; L hyphen bar ;
+C 124 ; WX 646 ; N bar ; B 41 250 654 306 ;
+C 127 ; WX 368 ; N sfthyphen ; B 161 590 438 694 ;
+EndCharMetrics
+StartKernData
+StartKernPairs 35
+KPX circumflex z -45
+KPX circumflex hungarumlaut -139
+KPX dieresis s 45
+KPX caron s 45
+KPX breve z -45
+KPX breve hungarumlaut -139
+KPX quoteright quoteright -72
+KPX comma comma -90
+KPX a z -45
+KPX a hungarumlaut -139
+KPX c z -45
+KPX c hungarumlaut -139
+KPX d z -45
+KPX d hungarumlaut -139
+KPX e z -45
+KPX e hungarumlaut -139
+KPX g z -45
+KPX g hungarumlaut -139
+KPX i z -45
+KPX i hungarumlaut -139
+KPX k s 45
+KPX l z -45
+KPX l hungarumlaut -139
+KPX m s 45
+KPX o z -45
+KPX o hungarumlaut -139
+KPX p z -45
+KPX p hungarumlaut -139
+KPX q z -45
+KPX q hungarumlaut -139
+KPX t z -45
+KPX t hungarumlaut -139
+KPX u z -45
+KPX u hungarumlaut -139
+KPX x s 45
+EndKernPairs
+EndKernData
+EndFontMetrics
diff --git a/fonts/georgian/mxedruli/afm/xuc10.afm b/fonts/georgian/mxedruli/afm/xuc10.afm
new file mode 100644
index 0000000000..3ffa8fa9bc
--- /dev/null
+++ b/fonts/georgian/mxedruli/afm/xuc10.afm
@@ -0,0 +1,131 @@
+StartFontMetrics 2.0
+Comment Generated by FontForge 20110222
+Comment Creation Date: Fri Apr 5 22:41:56 2013
+FontName xuc10
+FullName xuc10
+FamilyName xuc10
+Weight Regular
+Notice (Generated from MetaFont bitmap by mftrace 1.2.17, http://www.xs4all.nl/~hanwen/mftrace/ )
+ItalicAngle 0
+IsFixedPitch false
+UnderlinePosition -100
+UnderlineThickness 50
+Version 001.001
+EncodingScheme FontSpecific
+FontBBox -128 -237 939 792
+CapHeight 711
+XHeight 96
+Ascender 308
+Descender -121
+StartCharMetrics 103
+C 0 ; WX 507 ; N grave ; B -53 -2 436 711 ;
+C 1 ; WX 507 ; N acute ; B -53 -2 436 711 ;
+C 2 ; WX 590 ; N circumflex ; B -53 -2 519 709 ;
+C 3 ; WX 507 ; N tilde ; B -53 -2 436 711 ;
+C 4 ; WX 785 ; N dieresis ; B -53 1 713 711 ;
+C 5 ; WX 507 ; N hungarumlaut ; B -53 0 436 711 ;
+C 6 ; WX 507 ; N ring ; B -53 -2 436 711 ;
+C 7 ; WX 785 ; N caron ; B -53 -2 713 711 ;
+C 8 ; WX 785 ; N breve ; B -53 -2 662 711 ;
+C 9 ; WX 785 ; N macron ; B 0 -2 713 711 ;
+C 10 ; WX 785 ; N dotaccent ; B -53 1 662 711 ;
+C 12 ; WX 646 ; N ogonek ; B -53 1 522 711 ;
+C 13 ; WX 646 ; N quotesinglbase ; B -53 -2 574 711 ;
+C 14 ; WX 507 ; N guilsinglleft ; B -53 -2 436 711 ;
+C 16 ; WX 783 ; N quotedblleft ; B -16 -235 611 346 ;
+C 17 ; WX 483 ; N quotedblright ; B -66 -235 361 596 ;
+C 18 ; WX 583 ; N quotedblbase ; B -95 -13 445 346 ;
+C 19 ; WX 483 ; N guillemotleft ; B -45 -235 311 596 ;
+C 20 ; WX 583 ; N guillemotright ; B -95 -13 472 346 ;
+C 21 ; WX 483 ; N endash ; B -45 -236 338 346 ;
+C 22 ; WX 483 ; N emdash ; B -17 -236 361 346 ;
+C 23 ; WX 583 ; N cwm ; B -95 -235 472 346 ;
+C 24 ; WX 583 ; N perthousand ; B -95 -237 445 347 ;
+C 26 ; WX 483 ; N dotlessj ; B 5 -13 372 357 ;
+C 28 ; WX 483 ; N fi ; B -5 -236 361 346 ;
+C 29 ; WX 683 ; N fl ; B -45 -235 538 346 ;
+C 30 ; WX 543 ; N ffi ; B -66 -235 411 596 ;
+C 33 ; WX 299 ; N exclam ; B 0 0 104 695 ;
+C 39 ; WX 332 ; N quoteright ; B -11 533 104 746 ;
+C 40 ; WX 368 ; N parenleft ; B 1 -69 203 764 ;
+C 41 ; WX 368 ; N parenright ; B -12 -69 191 764 ;
+C 43 ; WX 507 ; N plus ; B 1 -28 335 306 ; L j perthousand ; L z cwm ; L s endash ; L c quotedblright ; L J breve ; L Z caron ; L S hungarumlaut ; L C acute ;
+C 44 ; WX 332 ; N comma ; B -12 -110 104 104 ; L c fi ; L C ogonek ;
+C 45 ; WX 507 ; N hyphen ; B 0 250 335 306 ; L hyphen braceleft ;
+C 46 ; WX 368 ; N period ; B 0 0 104 104 ; L plus comma ; L t emdash ; L p guillemotright ; L k guillemotleft ; L g quotedblbase ; L c quotedblleft ; L T ring ; L P dieresis ; L K tilde ; L G circumflex ; L C grave ;
+C 47 ; WX 646 ; N slash ; B -29 -28 446 723 ;
+C 48 ; WX 507 ; N zero ; B -16 0 294 694 ;
+C 49 ; WX 368 ; N one ; B -16 0 154 694 ;
+C 50 ; WX 507 ; N two ; B -16 0 315 694 ;
+C 51 ; WX 507 ; N three ; B -15 0 294 694 ;
+C 52 ; WX 507 ; N four ; B -15 -1 292 695 ;
+C 53 ; WX 507 ; N five ; B -16 -1 295 694 ;
+C 54 ; WX 507 ; N six ; B -16 0 294 694 ;
+C 55 ; WX 507 ; N seven ; B -16 0 292 694 ;
+C 56 ; WX 507 ; N eight ; B -16 0 294 694 ;
+C 57 ; WX 507 ; N nine ; B -15 0 293 695 ;
+C 58 ; WX 368 ; N colon ; B 0 87 104 399 ;
+C 59 ; WX 332 ; N semicolon ; B -12 -110 104 312 ;
+C 61 ; WX 646 ; N equal ; B 0 181 473 376 ;
+C 63 ; WX 507 ; N question ; B -52 0 331 709 ;
+C 65 ; WX 646 ; N A ; B -53 -1 574 711 ;
+C 66 ; WX 785 ; N B ; B -53 -2 713 711 ;
+C 67 ; WX 993 ; N C ; B 0 -2 922 709 ;
+C 68 ; WX 729 ; N D ; B -53 -1 658 710 ;
+C 69 ; WX 507 ; N E ; B -53 -2 436 711 ; L zero guilsinglleft ;
+C 71 ; WX 785 ; N G ; B -53 -2 713 711 ;
+C 72 ; WX 785 ; N H ; B -53 0 661 711 ;
+C 73 ; WX 507 ; N I ; B -53 -2 436 711 ; L one dotaccent ;
+C 74 ; WX 785 ; N J ; B 0 -2 713 711 ;
+C 75 ; WX 785 ; N K ; B -53 -2 713 711 ;
+C 76 ; WX 785 ; N L ; B -53 0 661 711 ;
+C 77 ; WX 785 ; N M ; B -53 -2 713 711 ;
+C 78 ; WX 507 ; N N ; B -53 -2 436 711 ;
+C 79 ; WX 993 ; N O ; B -1 0 939 709 ; L one macron ;
+C 80 ; WX 785 ; N P ; B 0 -2 661 710 ;
+C 81 ; WX 507 ; N Q ; B -53 -2 436 711 ; L one quotesinglbase ;
+C 82 ; WX 785 ; N R ; B 1 0 713 711 ;
+C 83 ; WX 507 ; N S ; B -53 1 383 711 ;
+C 84 ; WX 785 ; N T ; B 0 -2 713 711 ;
+C 85 ; WX 924 ; N U ; B -1 -2 852 709 ;
+C 86 ; WX 729 ; N V ; B -53 -2 658 711 ;
+C 87 ; WX 507 ; N W ; B -53 -2 436 711 ;
+C 88 ; WX 507 ; N X ; B -53 -2 436 711 ;
+C 90 ; WX 785 ; N Z ; B -53 0 661 711 ;
+C 91 ; WX 368 ; N bracketleft ; B -28 -98 167 792 ;
+C 92 ; WX 646 ; N backslash ; B -28 -29 445 723 ;
+C 93 ; WX 368 ; N bracketright ; B -28 -98 167 792 ;
+C 97 ; WX 583 ; N a ; B -62 -56 506 346 ;
+C 98 ; WX 583 ; N b ; B -45 -236 438 346 ;
+C 99 ; WX 483 ; N c ; B -17 -236 361 346 ;
+C 100 ; WX 583 ; N d ; B -95 -12 495 597 ;
+C 101 ; WX 583 ; N e ; B -62 -235 478 346 ; L zero ffi ;
+C 103 ; WX 583 ; N g ; B -95 -236 445 346 ;
+C 104 ; WX 783 ; N h ; B -95 -13 672 346 ;
+C 105 ; WX 383 ; N i ; B -95 -13 245 346 ; L one dotlessj ;
+C 106 ; WX 683 ; N j ; B -45 -13 511 596 ;
+C 107 ; WX 683 ; N k ; B -45 -235 511 596 ;
+C 108 ; WX 783 ; N l ; B -95 -13 645 346 ;
+C 109 ; WX 483 ; N m ; B -45 -14 345 596 ;
+C 110 ; WX 483 ; N n ; B -72 -13 377 591 ;
+C 111 ; WX 683 ; N o ; B -45 -13 538 346 ;
+C 112 ; WX 683 ; N p ; B -45 -235 511 346 ;
+C 113 ; WX 483 ; N q ; B -45 -235 338 346 ; L one fl ;
+C 114 ; WX 683 ; N r ; B -45 -13 511 596 ;
+C 115 ; WX 483 ; N s ; B -45 -13 338 596 ;
+C 116 ; WX 683 ; N t ; B -45 -13 511 346 ;
+C 117 ; WX 883 ; N u ; B -45 -235 738 346 ;
+C 118 ; WX 783 ; N v ; B -62 -235 678 346 ;
+C 119 ; WX 483 ; N w ; B -45 -235 388 596 ;
+C 120 ; WX 483 ; N x ; B -17 -236 388 346 ;
+C 122 ; WX 483 ; N z ; B -128 -13 361 596 ;
+C 123 ; WX 646 ; N braceleft ; B 0 250 473 306 ; L hyphen bar ;
+C 124 ; WX 785 ; N bar ; B 0 250 613 306 ;
+EndCharMetrics
+StartKernData
+StartKernPairs 2
+KPX quoteright quoteright -183
+KPX comma comma -229
+EndKernPairs
+EndKernData
+EndFontMetrics
diff --git a/fonts/georgian/mxedruli/alphabets.tex b/fonts/georgian/mxedruli/alphabets.tex
new file mode 100644
index 0000000000..2298ca9213
--- /dev/null
+++ b/fonts/georgian/mxedruli/alphabets.tex
@@ -0,0 +1,90 @@
+\documentclass[12pt]{article}
+\usepackage{mxedruli,xucuri}
+\parindent0pt
+\parskip1.5ex
+\pagestyle{empty}
+
+\begin{document}
+\section*{Georgian Writing Systems}
+The following shows the same Text in the two Alphabets
+used in Georgian, {\it Mxedruli\/} and {\it Xucuri\/}.
+Both variants of {\it Xucuri\/} (Majuscules or {\it Mrg(v)lovani\/}
+and minuscules or {\it \d Kutxovani\/}) are demonstrated here.
+
+\subsection*{\emph{Mxedruli} \mxedb mxedruli}
+
+
+\begin{itemize}
+\item From: Bedi Kartlisa, 43 (1963) p. 17:
+
+\begin{mxedr}
+naxes ucxo moqme vinme, +jda m.tirali .cqlisa .pirsa,\\
++savi cxeni sadavata hqva lomsa da vita gmirsa,\\
+.k+sirad esxa margali.ti lagam-ab+jar-unagirsa,\\
+cremlsa vardi daetrtvila, gulsa mdu.grad ana.tirsa.
+\end{mxedr}
+\end{itemize}
+
+\subsection*{\emph{Xucuri -- Mrgvlovani} \xucr XUCURI -- MRGVLOVANI}
+
+
+\begin{itemize}
+\item Form: Bedi Kartlisa, 43 (1963) p. 17:
+
+\begin{xucr}
+NAXES UCXO MOQME VINME, +JDA M.TIRALI .CQLISA .PIRSA,\\
++SAVI CXENI SADAVATA HQVA LOMSA DA VITA GMIRSA,\\
+.K+SIRAD ESXA MARGALI.TI LAGAM-AB+JAR-UNAGIRSA,\\
+CREMLSA VARDI DAETRTVILA, GULSA MDU.GRAD ANA.TIRSA.
+\end{xucr}
+
+\item From: Nikolai Marr and Maurice Bri\`ere, La Langue G\'eorgienne, Paris
+1931, S. 595
+
+\begin{xucr}
+
+\begin{center}
+SAXAREBAI1 MATEES TAVISAI1.
+
+B
+\end{center}
+
+
+{\rm 1.} --- XOLO IESOW KRIS.TEES +SUBASA BETLEMS
+HOWRIAS\-.TANISASA. D.GETA HERODE MEPISATA. AHA MOGOWNI A.GMO\-SAVALIT
+MOVIDES IEROWSALEEMD DA I.TQODES:
+
+{\rm 2.} --- SADA ARS ROMELI IGI I+SVA. MEOWPEE HOWRIATAI1? RAI1RETOW
+VIXILET VARS.KOWLAVI MISI A.GMOSAVALIT DA MOVEDIT TAVQOWANIS--CEMAD
+MISA.
+
+{\rm 3.} --- VITARCA ESMA ESE HERODES MEPESA. +SEJR.COWNDA DA +SOVELI
+IEROWSALEEMI MISTANA.
+
+\end{xucr}
+\end{itemize}
+
+\subsection*{\emph{Xucuri -- \d Kutxovani} \xucr xucuri -- .kutxovani}
+
+
+From: {\it N. Marr and M. Bri\`ere, La Langue G\'eor\-gienne,
+Paris 1931\/}, p. 599
+
+\begin{xucr}
+\begin{center}\Large
+saxarebai1 lu.kai1s tavisai1.
+
+ie
+\end{center}
+
+{\rm 11.} --- merme i.tqoda da tkua: .kacsa visme escnes
+or je.
+
+{\rm 12.} --- da hrkua umr.cemesman man mamasa twssa:
+mamao. momec me romeli mxudebis na.cilidam.kw drebelisa. da ganuqo
+mat sacxovrebeli igi.
+\end{xucr}
+
+
+
+\end{document}
diff --git a/fonts/georgian/mxedruli/inputs/mxedruli.sty b/fonts/georgian/mxedruli/inputs/mxedruli.sty
new file mode 100644
index 0000000000..25d30fc22f
--- /dev/null
+++ b/fonts/georgian/mxedruli/inputs/mxedruli.sty
@@ -0,0 +1,253 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% mxedruli.sty %
+%% For the use of mxedruli fonts within LaTeX %
+%% Last modified 31st Januar 2009 %
+%% %
+\typeout{Document Style `mxedruli.sty' <1st September 1999>.} %
+%% %
+\def\fmxedr{mxed10 } %
+\def\fmxedb{mxedbf10 } %
+\def\fmxedi{mxedi10 } %
+\def\fmxedc{mxedc10 } %
+%% %
+%% Use with \mxedr, \mxedb, \mxedi or \mxedc %%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%
+%%
+%% Standard Mxedruli
+\expandafter \ifx \csname pmxedr\endcsname \relax \else
+ \expandafter \endinput
+\fi
+%%
+%% Bold Mxedruli
+\expandafter \ifx \csname pmxedb\endcsname \relax \else
+ \expandafter \endinput
+\fi
+
+%% Italic
+\expandafter \ifx \csname pmxedi\endcsname \relax \else
+ \expandafter \endinput
+\fi
+
+%% Capital Mxedruli
+\expandafter \ifx \csname pmxedc\endcsname \relax \else
+ \expandafter \endinput
+\fi
+
+%% select the mxedruliX font with \mxedrX
+%%
+\def\mxedr {\protect\pmxedr}
+\def\mxedb {\protect\pmxedb}
+\def\mxedi {\protect\pmxedi}
+\def\mxedc {\protect\pmxedc}
+
+% If NFSS2 is used, \DeclareFontShape is defined.
+
+\expandafter\ifx\csname DeclareFontShape\endcsname\relax
+
+
+% But possibly NFSS1 is used.
+\expandafter\ifx\csname selectfont\endcsname\relax
+
+% OLD FONT SELECTION
+\message {Using Standard Font Selection}
+
+% load all necessary fonts
+%
+
+
+
+%%
+%%\newfont {\fifemxedr} {mxedr5} % mxed5 to mxed9 are not yet designed
+%%\newfont {\sixmxedr} {mxedr6}
+%%\newfont {\sevenmxedr} {mxedr7}
+%%\newfont {\eightmxedr} {mxedr8}
+%%\newfont {\ninemxedr} {mxedr9}
+\newfont {\tenmxedr} {\fmxedr}
+\newfont {\elvnmxedr} {\fmxedr scaled 1095}
+\newfont {\twlvmxedr} {\fmxedr \@magscale1}
+\newfont {\frtnmxedr} {\fmxedr \@magscale2}
+\newfont {\svtnmxedr} {\fmxedr \@magscale3}
+\newfont {\twtymxedr} {\fmxedr \@magscale4}
+\newfont {\twfvmxedr} {\fmxedr \@magscale5}
+
+%%\newfont {\fifemxedb} {mxedb5} % not yet designed
+%%\newfont {\sixmxedb} {mxedb6}
+%%\newfont {\sevenmxedb} {mxedb7}
+%%\newfont {\eightmxedb} {mxedb8}
+%%\newfont {\ninemxedb} {mxedb9}
+\newfont {\tenmxedb} {\fmxedb}
+\newfont {\elvnmxedb} {\fmxedb scaled 1095}
+\newfont {\twlvmxedb} {\fmxedb \@magscale1}
+\newfont {\frtnmxedb} {\fmxedb \@magscale2}
+\newfont {\svtnmxedb} {\fmxedb \@magscale3}
+\newfont {\twtymxedb} {\fmxedb \@magscale4}
+\newfont {\twfvmxedb} {\fmxedb \@magscale5}
+
+%%\newfont {\fifemxedi} {mxedi5} % not yet designed
+%%\newfont {\sixmxedi} {mxedi6}
+%%\newfont {\sevenmxedi} {mxedi7}
+%%\newfont {\eightmxedi} {mxedi8}
+%%\newfont {\ninemxedi} {mxedi9}
+\newfont {\tenmxedi} {\fmxedi}
+\newfont {\elvnmxedi} {\fmxedi scaled 1095}
+\newfont {\twlvmxedi} {\fmxedi \@magscale1}
+\newfont {\frtnmxedi} {\fmxedi \@magscale2}
+\newfont {\svtnmxedi} {\fmxedi \@magscale3}
+\newfont {\twtymxedi} {\fmxedi \@magscale4}
+\newfont {\twfvmxedi} {\fmxedi \@magscale5}
+
+%%\newfont {\fifemxedc} {mxedc5} % not yet designed
+%%\newfont {\sixmxedc} {mxedc6}
+%%\newfont {\sevenmxedc} {mxedc7}
+%%\newfont {\eightmxedc} {mxedc8}
+%%\newfont {\ninemxedc} {mxedc9}
+\newfont {\tenmxedc} {\fmxedc}
+\newfont {\elvnmxedc} {\fmxedc scaled 1095}
+\newfont {\twlvmxedc} {\fmxedc \@magscale1}
+\newfont {\frtnmxedc} {\fmxedc \@magscale2}
+\newfont {\svtnmxedc} {\fmxedc \@magscale3}
+\newfont {\twtymxedc} {\fmxedc \@magscale4}
+\newfont {\twfvmxedc} {\fmxedc \@magscale5}
+
+%% add the \pmxedX command to commands which do the size changing
+%%
+%%\@addfontinfo \@vpt {\def\pmxedr {\fivemxedr}}
+%%\@addfontinfo \@viipt {\def\pmxedr {\sevenmxedr}}
+%%\@addfontinfo \@viiipt {\def\pmxedr {\eightmxedr}}
+%%\@addfontinfo \@ixpt {\def\pmxedr {\ninemxedr}}
+\@addfontinfo \@xpt {\def\pmxedr {\tenmxedr}}
+\@addfontinfo \@xipt {\def\pmxedr {\elvnmxedr}}
+\@addfontinfo \@xiipt {\def\pmxedr {\twlvmxedr}}
+\@addfontinfo \@xivpt {\def\pmxedr {\frtnmxedr}}
+\@addfontinfo \@xviipt {\def\pmxedr {\svtnmxedr}}
+\@addfontinfo \@xxpt {\def\pmxedr {\twtymxedr}}
+\@addfontinfo \@xxvpt {\def\pmxedr {\twfvmxedr}}
+%%
+%%
+%%\@addfontinfo \@vpt {\def\pmxedb {\fivemxedb}}
+%%\@addfontinfo \@viipt {\def\pmxedb {\sevenmxedb}}
+%%\@addfontinfo \@viiipt {\def\pmxedb {\eightmxedb}}
+%%\@addfontinfo \@ixpt {\def\pmxedb {\ninemxedb}}
+\@addfontinfo \@xpt {\def\pmxedb {\tenmxedb}}
+\@addfontinfo \@xipt {\def\pmxedb {\elvnmxedb}}
+\@addfontinfo \@xiipt {\def\pmxedb {\twlvmxedb}}
+\@addfontinfo \@xivpt {\def\pmxedb {\frtnmxedb}}
+\@addfontinfo \@xviipt {\def\pmxedb {\svtnmxedb}}
+\@addfontinfo \@xxpt {\def\pmxedb {\twtymxedb}}
+\@addfontinfo \@xxvpt {\def\pmxedb {\twfvmxedb}}
+%%
+%%
+%%\@addfontinfo \@vpt {\def\pmxedi {\fivemxedi}}
+%%\@addfontinfo \@viipt {\def\pmxedi {\sevenmxedi}}
+%%\@addfontinfo \@viiipt {\def\pmxedi {\eightmxedi}}
+%%\@addfontinfo \@ixpt {\def\pmxedi {\ninemxedi}}
+\@addfontinfo \@xpt {\def\pmxedi {\tenmxedi}}
+\@addfontinfo \@xipt {\def\pmxedi {\elvnmxedi}}
+\@addfontinfo \@xiipt {\def\pmxedi {\twlvmxedi}}
+\@addfontinfo \@xivpt {\def\pmxedi {\frtnmxedi}}
+\@addfontinfo \@xviipt {\def\pmxedi {\svtnmxedi}}
+\@addfontinfo \@xxpt {\def\pmxedi {\twtymxedi}}
+\@addfontinfo \@xxvpt {\def\pmxedi {\twfvmxedi}}
+%%
+%%
+%%\@addfontinfo \@vpt {\def\pmxedc {\fivemxedc}}
+%%\@addfontinfo \@viipt {\def\pmxedc {\sevenmxedc}}
+%%\@addfontinfo \@viiipt {\def\pmxedc {\eightmxedc}}
+%%\@addfontinfo \@ixpt {\def\pmxedc {\ninemxedc}}
+\@addfontinfo \@xpt {\def\pmxedc {\tenmxedc}}
+\@addfontinfo \@xipt {\def\pmxedc {\elvnmxedc}}
+\@addfontinfo \@xiipt {\def\pmxedc {\twlvmxedc}}
+\@addfontinfo \@xivpt {\def\pmxedc {\frtnmxedc}}
+\@addfontinfo \@xviipt {\def\pmxedc {\svtnmxedc}}
+\@addfontinfo \@xxpt {\def\pmxedc {\twtymxedc}}
+\@addfontinfo \@xxvpt {\def\pmxedc {\twfvmxedc}}
+
+
+\else
+
+% NEW FONT SELECTION -- Version 1
+%% By Jan De Lameillieure
+
+\message {Using NFSS1}
+
+% \pmxed uses the `mxed' family, `m'edium series, `n'ormal shape.
+%
+
+\@ifundefined{new@fontshape}
+{\errmessage{The style option `mxedruli' calls a file that requires
+ the New Font Selection Scheme.}
+ \endinput}
+{}
+\@ifundefined{@mxfontsloaded}{}{\endinput}
+
+\new@fontshape{mxed}{n}{n}{%
+ <10>mxed10 at10pt%
+ <11>mxed10 at10.95pt%
+ <12>mxed10 at12pt%
+ <14>mxed10 at14.4pt%
+ <17>mxed10 at17.28pt%
+ <20>mxed10 at20.74pt%
+ <25>mxed10 at24.88pt}{}
+
+\new@fontshape{mxed}{b}{n}{%
+ <10>mxedbf10 at10pt%
+ <11>mxedbf10 at10.95pt%
+ <12>mxedbf10 at12pt%
+ <14>mxedbf10 at14.4pt%
+ <17>mxedbf10 at17.28pt%
+ <20>mxedbf10 at20.74pt%
+ <25>mxedbf10 at24.88pt}{}
+
+\new@fontshape{mxed}{b}{i}{%
+ <10>mxedi10 at10pt%
+ <11>mxedi10 at10.95pt%
+ <12>mxedi10 at12pt%
+ <14>mxedi10 at14.4pt%
+ <17>mxedi10 at17.28pt%
+ <20>mxedi10 at20.74pt
+ <25>mxedi10 at24.88pt}{}
+
+\new@fontshape{mxed}{c}{n}{%
+ <10>mxedc10 at10pt%
+ <11>mxedc10 at10.95pt%
+ <12>mxedc10 at12pt%
+ <14>mxedc10 at14.4pt%
+ <17>mxedc10 at17.28pt%
+ <20>mxedc10 at20.74pt%
+ <25>mxedc10 at24.88pt}{}
+
+\def\pmxedr{\family{mxed}\series{n}\selectfont}
+\def\pmxedb{\family{mxed}\series{b}\selectfont}
+\def\pmxedi{\family{mxed}\series{i}\selectfont}
+\def\pmxedc{\family{mxed}\series{c}\selectfont}
+\def\@mxfontsloaded{}
+ %%%%%%%%%%%
+\fi
+
+\else
+% NEW FONT SELECTION -- Version 2
+
+\message {Using NFSS2}
+
+% \pmxed uses the `unknown' fontencoding, `mxed' fontfamily, `m'edium
+% fontseries, `n'ormal fontshape.
+%
+\def\pmxedr{\fontencoding{U}\fontfamily{mxed}%
+ \fontseries{m}\fontshape{n}\selectfont}
+\def\pmxedb{\fontencoding{U}\fontfamily{mxed}%
+ \fontseries{bx}\fontshape{n}\selectfont}
+\def\pmxedi{\fontencoding{U}\fontfamily{mxed}%
+ \fontseries{m}\fontshape{it}\selectfont}
+\def\pmxedc{\fontencoding{U}\fontfamily{mxed}%
+ \fontseries{c}\fontshape{n}\selectfont}
+
+% All the rest is defined `umxed.fd', which is loaded automatically
+
+
+\fi
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+
diff --git a/fonts/georgian/mxedruli/inputs/umxed.fd b/fonts/georgian/mxedruli/inputs/umxed.fd
new file mode 100644
index 0000000000..9f9843c7dc
--- /dev/null
+++ b/fonts/georgian/mxedruli/inputs/umxed.fd
@@ -0,0 +1,39 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% umxed.fd %
+% %
+% For the use of mxedruli fonts within LaTeX %
+% Last modified 31st Januar 2009 %
+% %
+%
+% fontencoding: U
+% fontfamily: mxed
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+% It has to be used with NFSS2 only
+%
+\ifx\DeclareFontShape\undefined
+ \message{You should not use this file but with NFSS2}
+\expandafter\endinput\fi
+
+
+\DeclareFontFamily{U}{mxed}{}%
+
+\DeclareFontShape{U}{mxed}{m}{n}{%
+ <10><10.95><12><14.4><17.28><20.74><24.88>mxed10
+}{}
+
+\DeclareFontShape{U}{mxed}{bx}{n}{%
+ <10><10.95><12><14.4><17.28><20.74><24.88>mxedbf10
+}{}
+
+\DeclareFontShape{U}{mxed}{m}{it}{%
+ <10><10.95><12><14.4><17.28><20.74><24.88>mxedi10
+}{}
+
+\DeclareFontShape{U}{mxed}{c}{n}{%
+ <10><10.95><12><14.4><17.28><20.74><24.88>mxedc10
+}{}
+
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
diff --git a/fonts/georgian/mxedruli/inputs/uxuc.fd b/fonts/georgian/mxedruli/inputs/uxuc.fd
new file mode 100644
index 0000000000..5a72972811
--- /dev/null
+++ b/fonts/georgian/mxedruli/inputs/uxuc.fd
@@ -0,0 +1,28 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% uxuc.fd %
+% %
+% For the use of Xucuri fonts within LaTeX %
+% Last modified 1st September 1999 %
+% %
+%
+% fontencoding: U
+% fontfamily: xuc
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+% It has to be used with NFSS2 only
+%
+\ifx\DeclareFontShape\undefined
+ \message{You should not use this file but with NFSS2}
+\expandafter\endinput\fi
+
+
+\DeclareFontFamily{U}{xuc}{}%
+
+\DeclareFontShape{U}{xuc}{m}{n}{%
+ <10><10.95><12><14.4><17.28><20.74><24.88>xuc10
+}{}
+
+
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
diff --git a/fonts/georgian/mxedruli/inputs/xucuri.sty b/fonts/georgian/mxedruli/inputs/xucuri.sty
new file mode 100644
index 0000000000..06cd518122
--- /dev/null
+++ b/fonts/georgian/mxedruli/inputs/xucuri.sty
@@ -0,0 +1,254 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% xucuri.sty %
+%% For the use of Xucuri fonts within LaTeX %
+%% Last modified 1st September 1999 %
+%% %
+\typeout{Document Style `xucuri.sty' <1st September 1999>.} %
+%% %
+\def\fxucr{xuc10 } %
+%\def\fxucb{xucbf10 } % not yet implemented %
+%\def\fxuci{xuci10 } % not yet implemented %
+%\def\fxucc{xucc10 } % not yet implemented %
+%% %
+%% Use with \xucr, (\xucb, \xuci or \xucc) %%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%
+%%
+%% Standard Xucuri
+\expandafter \ifx \csname pxucr\endcsname \relax \else
+ \expandafter \endinput
+\fi
+%%
+%% Bold Xucuri
+% \expandafter \ifx \csname pxucb\endcsname \relax \else
+% \expandafter \endinput
+% \fi
+%
+% %% Italic
+% \expandafter \ifx \csname pxuci\endcsname \relax \else
+% \expandafter \endinput
+% \fi
+%
+% %% Capital Xucuri
+% \expandafter \ifx \csname pxucc\endcsname \relax \else
+% \expandafter \endinput
+% \fi
+
+%% select the xucuriX font with \xucrX
+%%
+\def\xucr {\protect\pxucr}
+% \def\xucb {\protect\pxucb}
+% \def\xuci {\protect\pxuci}
+% \def\xucc {\protect\pxucc}
+
+
+% If NFSS2 is used, \DeclareFontShape is defined.
+
+\expandafter\ifx\csname DeclareFontShape\endcsname\relax
+
+
+% But possibly NFSS1 is used.
+\expandafter\ifx\csname selectfont\endcsname\relax
+
+% OLD FONT SELECTION
+\message {Using Standard Font Selection}
+
+% load all necessary fonts
+%
+
+
+
+%%
+%%\newfont {\fifexucr} {xucr5} % xuc5 to xuc9 are not yet designed
+%%\newfont {\sixxucr} {xucr6}
+%%\newfont {\sevenxucr} {xucr7}
+%%\newfont {\eightxucr} {xucr8}
+%%\newfont {\ninexucr} {xucr9}
+\newfont {\tenxucr} {\fxucr}
+\newfont {\elvnxucr} {\fxucr scaled 1095}
+\newfont {\twlvxucr} {\fxucr \@magscale1}
+\newfont {\frtnxucr} {\fxucr \@magscale2}
+\newfont {\svtnxucr} {\fxucr \@magscale3}
+\newfont {\twtyxucr} {\fxucr \@magscale4}
+\newfont {\twfvxucr} {\fxucr \@magscale5}
+
+% %%\newfont {\fifexucb} {xucb5} % not yet designed
+% %%\newfont {\sixxucb} {xucb6}
+% %%\newfont {\sevenxucb} {xucb7}
+% %%\newfont {\eightxucb} {xucb8}
+% %%\newfont {\ninexucb} {xucb9}
+% \newfont {\tenxucb} {\fxucb}
+% \newfont {\elvnxucb} {\fxucb scaled 1095}
+% \newfont {\twlvxucb} {\fxucb \@magscale1}
+% \newfont {\frtnxucb} {\fxucb \@magscale2}
+% \newfont {\svtnxucb} {\fxucb \@magscale3}
+% \newfont {\twtyxucb} {\fxucb \@magscale4}
+% \newfont {\twfvxucb} {\fxucb \@magscale5}
+%
+% %%\newfont {\fifexuci} {xuci5} % not yet designed
+% %%\newfont {\sixxuci} {xuci6}
+% %%\newfont {\sevenxuci} {xuci7}
+% %%\newfont {\eightxuci} {xuci8}
+% %%\newfont {\ninexuci} {xuci9}
+% \newfont {\tenxuci} {\fxuci}
+% \newfont {\elvnxuci} {\fxuci scaled 1095}
+% \newfont {\twlvxuci} {\fxuci \@magscale1}
+% \newfont {\frtnxuci} {\fxuci \@magscale2}
+% \newfont {\svtnxuci} {\fxuci \@magscale3}
+% \newfont {\twtyxuci} {\fxuci \@magscale4}
+% \newfont {\twfvxuci} {\fxuci \@magscale5}
+%
+% %%\newfont {\fifexucc} {xucc5} % not yet designed
+% %%\newfont {\sixxucc} {xucc6}
+% %%\newfont {\sevenxucc} {xucc7}
+% %%\newfont {\eightxucc} {xucc8}
+% %%\newfont {\ninexucc} {xucc9}
+% \newfont {\tenxucc} {\fxucc}
+% \newfont {\elvnxucc} {\fxucc scaled 1095}
+% \newfont {\twlvxucc} {\fxucc \@magscale1}
+% \newfont {\frtnxucc} {\fxucc \@magscale2}
+% \newfont {\svtnxucc} {\fxucc \@magscale3}
+% \newfont {\twtyxucc} {\fxucc \@magscale4}
+% \newfont {\twfvxucc} {\fxucc \@magscale5}
+
+%% add the \pxucX command to commands which do the size changing
+%%
+%%\@addfontinfo \@vpt {\def\pxucr {\fivexucr}}
+%%\@addfontinfo \@viipt {\def\pxucr {\sevenxucr}}
+%%\@addfontinfo \@viiipt {\def\pxucr {\eightxucr}}
+%%\@addfontinfo \@ixpt {\def\pxucr {\ninexucr}}
+\@addfontinfo \@xpt {\def\pxucr {\tenxucr}}
+\@addfontinfo \@xipt {\def\pxucr {\elvnxucr}}
+\@addfontinfo \@xiipt {\def\pxucr {\twlvxucr}}
+\@addfontinfo \@xivpt {\def\pxucr {\frtnxucr}}
+\@addfontinfo \@xviipt {\def\pxucr {\svtnxucr}}
+\@addfontinfo \@xxpt {\def\pxucr {\twtyxucr}}
+\@addfontinfo \@xxvpt {\def\pxucr {\twfvxucr}}
+% %%
+% %%
+% %%\@addfontinfo \@vpt {\def\pxucb {\fivexucb}}
+% %%\@addfontinfo \@viipt {\def\pxucb {\sevenxucb}}
+% %%\@addfontinfo \@viiipt {\def\pxucb {\eightxucb}}
+% %%\@addfontinfo \@ixpt {\def\pxucb {\ninexucb}}
+% \@addfontinfo \@xpt {\def\pxucb {\tenxucb}}
+% \@addfontinfo \@xipt {\def\pxucb {\elvnxucb}}
+% \@addfontinfo \@xiipt {\def\pxucb {\twlvxucb}}
+% \@addfontinfo \@xivpt {\def\pxucb {\frtnxucb}}
+% \@addfontinfo \@xviipt {\def\pxucb {\svtnxucb}}
+% \@addfontinfo \@xxpt {\def\pxucb {\twtyxucb}}
+% \@addfontinfo \@xxvpt {\def\pxucb {\twfvxucb}}
+% %%
+% %%
+% %%\@addfontinfo \@vpt {\def\pxuci {\fivexuci}}
+% %%\@addfontinfo \@viipt {\def\pxuci {\sevenxuci}}
+% %%\@addfontinfo \@viiipt {\def\pxuci {\eightxuci}}
+% %%\@addfontinfo \@ixpt {\def\pxuci {\ninexuci}}
+% \@addfontinfo \@xpt {\def\pxuci {\tenxuci}}
+% \@addfontinfo \@xipt {\def\pxuci {\elvnxuci}}
+% \@addfontinfo \@xiipt {\def\pxuci {\twlvxuci}}
+% \@addfontinfo \@xivpt {\def\pxuci {\frtnxuci}}
+% \@addfontinfo \@xviipt {\def\pxuci {\svtnxuci}}
+% \@addfontinfo \@xxpt {\def\pxuci {\twtyxuci}}
+% \@addfontinfo \@xxvpt {\def\pxuci {\twfvxuci}}
+% %%
+% %%
+% %%\@addfontinfo \@vpt {\def\pxucc {\fivexucc}}
+% %%\@addfontinfo \@viipt {\def\pxucc {\sevenxucc}}
+% %%\@addfontinfo \@viiipt {\def\pxucc {\eightxucc}}
+% %%\@addfontinfo \@ixpt {\def\pxucc {\ninexucc}}
+% \@addfontinfo \@xpt {\def\pxucc {\tenxucc}}
+% \@addfontinfo \@xipt {\def\pxucc {\elvnxucc}}
+% \@addfontinfo \@xiipt {\def\pxucc {\twlvxucc}}
+% \@addfontinfo \@xivpt {\def\pxucc {\frtnxucc}}
+% \@addfontinfo \@xviipt {\def\pxucc {\svtnxucc}}
+% \@addfontinfo \@xxpt {\def\pxucc {\twtyxucc}}
+% \@addfontinfo \@xxvpt {\def\pxucc {\twfvxucc}}
+
+
+\else
+
+% NEW FONT SELECTION -- Version 1
+%% By Jan De Lameillieure
+
+\message {Using NFSS1}
+
+% \pxuc uses the `xuc' family, `m'edium series, `n'ormal shape.
+%
+
+\@ifundefined{new@fontshape}
+{\errmessage{The style option `xucuri' calls a file that requires
+ the New Font Selection Scheme.}
+ \endinput}
+{}
+\@ifundefined{@mxfontsloaded}{}{\endinput}
+
+\new@fontshape{xuc}{n}{n}{%
+ <10>xuc10 at10pt%
+ <11>xuc10 at10.95pt%
+ <12>xuc10 at12pt%
+ <14>xuc10 at14.4pt%
+ <17>xuc10 at17.28pt%
+ <20>xuc10 at20.74pt%
+ <25>xuc10 at24.88pt}{}
+
+% \new@fontshape{xuc}{b}{n}{%
+% <10>xucbf10 at10pt%
+% <11>xucbf10 at10.95pt%
+% <12>xucbf10 at12pt%
+% <14>xucbf10 at14.4pt%
+% <17>xucbf10 at17.28pt%
+% <20>xucbf10 at20.74pt%
+% <25>xucbf10 at24.88pt}{}
+%
+% \new@fontshape{xuc}{b}{i}{%
+% <10>xuci10 at10pt%
+% <11>xuci10 at10.95pt%
+% <12>xuci10 at12pt%
+% <14>xuci10 at14.4pt%
+% <17>xuci10 at17.28pt%
+% <20>xuci10 at20.74pt
+% <25>xuci10 at24.88pt}{}
+%
+% \new@fontshape{xuc}{c}{n}{%
+% <10>xucc10 at10pt%
+% <11>xucc10 at10.95pt%
+% <12>xucc10 at12pt%
+% <14>xucc10 at14.4pt%
+% <17>xucc10 at17.28pt%
+% <20>xucc10 at20.74pt%
+% <25>xucc10 at24.88pt}{}
+
+\def\pxucr{\family{xuc}\series{n}\selectfont}
+% \def\pxucb{\family{xuc}\series{b}\selectfont}
+% \def\pxuci{\family{xuc}\series{i}\selectfont}
+% \def\pxucc{\family{xuc}\series{c}\selectfont}
+\def\@mxfontsloaded{}
+ %%%%%%%%%%%
+\fi
+
+\else
+% NEW FONT SELECTION -- Version 2
+
+\message {Using NFSS2}
+
+% \pxuc uses the `unknown' fontencoding, `xuc' fontfamily, `m'edium
+% fontseries, `n'ormal fontshape.
+%
+\def\pxucr{\fontencoding{U}\fontfamily{xuc}%
+ \fontseries{m}\fontshape{n}\selectfont}
+% \def\pxucb{\fontencoding{U}\fontfamily{xuc}%
+% \fontseries{bx}\fontshape{n}\selectfont}
+% \def\pxuci{\fontencoding{U}\fontfamily{xuc}%
+% \fontseries{m}\fontshape{i}\selectfont}
+% \def\pxucc{\fontencoding{U}\fontfamily{xuc}%
+% \fontseries{c}\fontshape{n}\selectfont}
+
+% All the rest is defined `uxuc.fd', which is loaded automatically
+
+
+\fi
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+
diff --git a/fonts/georgian/mxedruli/mf/mxed.mf b/fonts/georgian/mxedruli/mf/mxed.mf
new file mode 100644
index 0000000000..d28a0d1ab6
--- /dev/null
+++ b/fonts/georgian/mxedruli/mf/mxed.mf
@@ -0,0 +1,102 @@
+% Driver file for Mxedruli font `mxed.mf'
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Designed by Johannes Heinecke %
+% <johannes.heinecke@wanadoo.fr> %
+% This software is under the LaTeX Project Public License %
+% Please send any improvements, corrections, suggestions, enhancements etc %
+% to the Author! %
+% %
+% Version 2.2 as of 5th March 1996 %
+% %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+font_coding_scheme:="Mxedruli - Georgian";
+mode_setup;
+if known cmbase: font_setup; fi % If used with cmbase
+font_mxed_setup;
+let mxedchar=\;
+
+% fontmaking:=1; % to generate a TFM File during proof-ing
+
+%% Zeichendefinitionsdateien %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+if mxcap: input mxedcaps; else: input mxedfont; fi % the mxedruli alphabet
+if unknown cmbase: input mxedd; else: input romand; fi % digits: if cmbase is
+ % used this font will
+ % load cm-digits, for
+ % they are finer tuned.
+if unknown cmbase: input mxedp; else: input punct; fi % The same for punctuation
+input mxedacc; % Accents
+
+%% Font-Parameter fuer TeX %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+font_quad 2.5mxu#; % 1 em
+font_x_height mxlittle#; % 1 ex
+font_normal_space 3mxu#; % word gap
+font_normal_stretch 2mxu#; % word gap may stretch by ...
+font_normal_shrink 1mxu#; % word gap my shrink by ...
+font_slant slant;
+
+% special "grayfont graylj"; % Only for GFtoDVI on emTeXs METAFONT
+
+%% Ligature-Tables %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+% Palatals:
+ligtable "+" : "s" =: oct"005",
+ "c" =: oct"001",
+ "j" =: oct"010",
+ "z" =: oct"007";
+
+% Glottalized stops
+ligtable "." : "c" =: oct"000",
+ "g" =: oct"002",
+ "k" =: oct"003",
+ "p" =: oct"004",
+ "t" =: oct"006",
+ "+" =: ",";
+
+% Old Georgian "ho"
+ligtable "o" : "1" =: oct"011",
+ oct"005" kern -mxhalf#,
+ "z" kern -.5mxzw#;
+
+% Old Georgian "Short i"
+ligtable "i" : "1" =: oct"012",
+ oct"005" kern -mxhalf#,
+ "z" kern -.5mxzw#;
+
+% Ossetian "ae" and long "ee"
+ligtable "e" : "1" =: oct"013",
+ "0" =: oct"016",
+ "e" =: oct"016",
+ oct"005" kern -mxhalf#,
+ "z" kern -.5mxzw#;
+
+% Variated "b"
+if not mxcap: ligtable "b" : "1" =: oct"020"; fi;
+
+% Unaspirated "q"
+ligtable "q" : "1" =: oct"015",
+ oct"005" kern -mxhalf#,
+ "z" kern -.5mxzw#;
+
+% Keep the "s" away from letters with an ascender on the right
+ligtable oct"004" : oct"007" : "k" : "m" : "x" : "s" kern .5mxzw#;
+
+% two ' make a double quote
+ligtable "'" : "'" kern -.8mxzw#;
+
+% two , make a double comma,
+ligtable "," : "," kern -mxzw#,
+ "c" =: oct"014";
+
+%% Hyphens etc.
+ligtable "-" : "-" =: 123; % cf. The METAfontbook S. 306
+ligtable 123 : "-" =: 124;
+
+% Let "z" and oct005 closer two the little letters
+ligtable "a" : "d" : "g" : "l" : "t" : "u" : "p" : oct"002" : "c" : oct"010" :
+ oct"005" kern -mxhalf#,
+ "1" =: oct"021",
+ "z" kern -.5mxzw#;
+
+endinput;
diff --git a/fonts/georgian/mxedruli/mf/mxed10.mf b/fonts/georgian/mxedruli/mf/mxed10.mf
new file mode 100644
index 0000000000..ec226fbe6c
--- /dev/null
+++ b/fonts/georgian/mxedruli/mf/mxed10.mf
@@ -0,0 +1,121 @@
+% Mxedruli Font 10 point Normal Face `mxed10.mf'
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Designed by Johannes Heinecke %
+% <johannes.heinecke@wanadoo.fr> %
+% This software is under the LaTeX Project Public License %
+% Please send any improvements, corrections, suggestions, enhancements etc %
+% to the Author! %
+% %
+% Version 2.0 as of 16th June 1995 %
+% %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% Based on the parameters as in CMR10
+
+% if unknown cmbase: input cmbase fi
+if unknown mxedbase: input mxedbase fi
+
+font_identifier:="MXED"; font_size 10pt#;
+
+u#:=20/36pt#; % unit width
+if known cmbase:
+width_adj#:=0pt#; % width adjustment for certain characters
+serif_fit#:=0pt#; % extra sidebar near lowercase serifs
+cap_serif_fit#:=5/36pt#; % extra sidebar near uppercase serifs
+letter_fit#:=0pt#; % extra space added to all sidebars
+
+body_height#:=270/36pt#; % height of tallest characters
+asc_height#:=250/36pt#; % height of lowercase ascenders
+cap_height#:=246/36pt#; % height of caps
+fig_height#:=232/36pt#; % height of numerals
+x_height#:=155/36pt#; % height of lowercase without ascenders
+math_axis#:=90/36pt#; % axis of symmetry for math symbols
+bar_height#:=87/36pt#; % height of crossbar in lowercase e
+comma_depth#:=70/36pt#; % depth of comma below baseline
+desc_depth#:=70/36pt#; % depth of lowercase descenders
+
+crisp#:=0pt#; % diameter of serif corners
+tiny#:=8/36pt#; % diameter of rounded corners
+fine#:=7/36pt#; % diameter of sharply rounded corners
+thin_join#:=7/36pt#; % width of extrafine details
+hair#:=9/36pt#; % lowercase hairline breadth
+stem#:=25/36pt#; % lowercase stem breadth
+curve#:=30/36pt#; % lowercase curve breadth
+ess#:=27/36pt#; % breadth in middle of lowercase s
+flare#:=33/36pt#; % diameter of bulbs or breadth of terminals
+dot_size#:=38/36pt#; % diameter of dots
+cap_hair#:=11/36pt#; % uppercase hairline breadth
+cap_stem#:=32/36pt#; % uppercase stem breadth
+cap_curve#:=37/36pt#; % uppercase curve breadth
+cap_ess#:=35/36pt#; % breadth in middle of uppercase s
+rule_thickness#:=.4pt#; % thickness of lines in math symbols
+
+dish#:=1/36pt#; % amount erased at top or bottom of serifs
+bracket#:=20/36pt#; % vertical distance from serif base to tangent
+jut#:=28/36pt#; % protrusion of lowercase serifs
+cap_jut#:=37/36pt#; % protrusion of uppercase serifs
+beak_jut#:=10/36pt#; % horizontal protrusion of beak serifs
+beak#:=70/36pt#; % vertical protrusion of beak serifs
+vair#:=8/36pt#; % vertical diameter of hairlines
+notch_cut#:=10pt#; % maximum breadth above or below notches
+bar#:=11/36pt#; % lowercase bar thickness
+slab#:=11/36pt#; % serif and arm thickness
+cap_bar#:=11/36pt#; % uppercase bar thickness
+cap_band#:=11/36pt#; % uppercase thickness above/below lobes
+cap_notch_cut#:=10pt#; % max breadth above/below uppercase notches
+serif_drop#:=4/36pt#; % vertical drop of sloped serifs
+stem_corr#:=1/36pt#; % for small refinements of stem breadth
+vair_corr#:=1/36pt#; % for small refinements of hairline height
+apex_corr#:=0pt#; % extra width at diagonal junctions
+
+o#:=8/36pt#; % amount of overshoot for curves
+apex_o#:=8/36pt#; % amount of overshoot for diagonal junctions
+
+slant:=0; % tilt ratio $(\Delta x/\Delta y)$
+fudge:=1; % factor applied to weights of heavy characters
+math_spread:=0; % extra openness of math symbols
+superness:=1/sqrt2; % parameter for superellipses
+superpull:=1/6; % extra openness inside bowls
+beak_darkness:=11/30; % fraction of triangle inside beak serifs
+ligs:=2; % level of ligatures to be included
+
+square_dots:=false; % should dots be square?
+hefty:=false; % should we try hard not to be overweight?
+serifs:=true; % should serifs and bulbs be attached?
+monospace:=false; % should all characters have the same width?
+variant_g:=false; % should an italic-style g be used?
+low_asterisk:=false; % should the asterisk be centered at the axis?
+math_fitting:=false; % should math-mode spacing be used?
+fi
+
+% These are the real Mxedruli Parameters
+boolean mxcap;
+mxcap:=false; % No capitals
+mxu#:= 2.5u#; % was 2.7u# % the unit, which where used to design this fonts
+mxlittle#:= 3mxu#; % height of letters without ascenders
+mxtop#:= 2mxu#; % the height of the ascenders
+mxheight#:=mxtop#+mxlittle#;
+mxhalf#:=mxu#; % Half width of the letter 'a'
+mxone#:=2mxhalf#;
+mxmiddle#:=2/3mxlittle#; % strokes not reaching the baseline, as in 'o'
+mxthird#:=1/3mxlittle#;
+mxfeet#:= .4mxhalf#; % The feet of 'i' and 'o' etc are slightly
+ % bent to the middle
+mxlow#:= 1.8mxu#; %war 2mxu# % max depth below the baseline
+mxzw#:= .65mxu#; % Seperation of two letters
+
+
+px1#:=.18mxu#; % pen 1 xscaling
+py1#:=.60mxu#; % pen 1 yscaling
+
+dpx1#:=px1#; % digitpen xscaling
+dpy1#:=py1#; % digitpen yscaling
+pdot#:=.74mxu#; % pen for dots
+pdash#:=.40mxu#; % pen for dashes
+
+
+slant:=0;
+
+input mxed; % switch to the driver file
+bye.
diff --git a/fonts/georgian/mxedruli/mf/mxedacc.mf b/fonts/georgian/mxedruli/mf/mxedacc.mf
new file mode 100644
index 0000000000..88b81d7b11
--- /dev/null
+++ b/fonts/georgian/mxedruli/mf/mxedacc.mf
@@ -0,0 +1,58 @@
+% Mxedruli Accents `mxedacc.mf'
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Designed by Johannes Heinecke %
+% <johannes.heinecke@wanadoo.fr> %
+% This software is under the LaTeX Project Public License %
+% Please send any improvements, corrections, suggestions, enhancements etc %
+% to the Author! %
+% %
+% Version 2.0 as of 16th June 1995 %
+% %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%% Character Definitions: %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+%% Trema %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "Trema (Umlaut)";
+beginchar(127, mxzw#+mxone#, mxheight#, 0);
+ pickup mxed_dot;
+ top lft z1 = (0, mxheight);
+ rt z2 = (mxone, y1);
+ drawdot z1;
+ drawdot z2;
+ penlabels(range 1 thru 2);
+endchar;
+
+%% Macron %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "Macron";
+beginchar(22, mxzw#+mxone#, mxheight#, 0);
+ pickup mxed_dash;
+ top z1 = (0, mxheight);
+ z2 = (mxone, y1);
+ draw z1--z2;
+ penlabels(range 1 thru 2);
+endchar;
+
+%% Hachek %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "Hachek";
+beginchar(94, mxzw#+mxone#, mxheight#, 0);
+% pickup mxed_dash;
+% lft top z1 = (0, mxheight-mxthird);
+% rt z2 = (mxone, y1);
+% z3 = (.5[x1,x2], mxheight);
+% draw z1--z3--z2;
+% penlabels(range 1 thru 2);
+ z1 = (0, mxheight-1.2mxthird);
+ z2 = (1.2mxone, y1);
+ z3 = (.5[x1,x2], mxheight);
+ z4 = (x3, y3-.6mxthird);
+ fill z1--z3--z2--z4--cycle;
+endchar;
+
+
+
+endinput; \ No newline at end of file
diff --git a/fonts/georgian/mxedruli/mf/mxedbase.mf b/fonts/georgian/mxedruli/mf/mxedbase.mf
new file mode 100644
index 0000000000..483952c9c3
--- /dev/null
+++ b/fonts/georgian/mxedruli/mf/mxedbase.mf
@@ -0,0 +1,78 @@
+% Mxedruli Base File `mxedbase.mf'
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Designed by Johannes Heinecke %
+% <johannes.heinecke@wanadoo.fr> %
+% This software is under the LaTeX Project Public License %
+% Please send any improvements, corrections, suggestions, enhancements etc %
+% to the Author! %
+% %
+% Version 2.0 as of 16th June 1995 %
+% %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+
+mxedbase:=1; % Es soll nur einmal geladen werden.
+
+newinternal slant;
+
+def font_mxed_setup = % Eigenes Macro
+ define_pixels(mxu, mxlittle, mxhalf, mxone, mxheight, mxthird,
+ mxmiddle, mxtop, mxfeet, mxlow, mxzw);
+ define_blacker_pixels(px1, py1, dpx1, dpy1, pdot, pdash);
+
+ pickup pencircle xscaled px1 yscaled py1 rotated -10; % was -10
+ mxed_pen:=savepen;
+ pickup pencircle xscaled px1 yscaled .7py1 rotated -10; % was -10
+ mxed_finepen:=savepen;
+ pickup pencircle xscaled px1 yscaled py1 rotated -100; % was -10
+ mxed_penturned:=savepen;
+
+ pickup pencircle xscaled dpx1 yscaled dpy1 rotated -10;
+ mxed_digitpen:=savepen; % Pen for digits and punctuation
+
+ pickup pencircle scaled pdot;
+ mxed_dot:=savepen; % Pen for dots
+
+ pickup pencircle scaled pdash;
+ mxed_dash:=savepen; % Pen for lines
+
+
+ pickup pensquare scaled pdash;
+ mxed_square:=savepen;
+
+ pickup pencircle xscaled px1 yscaled py1;
+ mxed_pencc:=savepen;
+
+ currenttransform:=identity slanted slant yscaled aspect_ratio;
+enddef;
+
+
+
+if known cmbase:
+ def makebox(text rule) =
+ for y=0,h,mxlittle,-d,mxthird:
+ rule((0,y)t_,(r,y)t_); endfor % horizontals
+ for x=0,r,r-mxzw,mxhalf,mxone:
+ rule((x,-d)t_,(x,h)t_); endfor % verticals
+ % for x=u*(1+floor(l/u)) step u until r-1:
+ % rule((x,-body_depth)t_,(x,body_height)t_); endfor % more verticals
+ % if charic<>0:
+ % rule((r+charic*pt,h.o_),(r+charic*pt,.5h.o_)); fi % italic correction
+ enddef;
+else:
+ def makebox(text r) =
+ % horizontal lines on y-values:
+ % 0, char-height, char-depth, mxlittle, ...
+ for y=0%,h.o_,-d.o_
+ ,mxlittle,mxthird, mxheight,-mxlow: r((0,y),(w,y)); endfor
+ % vertical lines on x-values:
+ % 0, char-width, char-width - mxzw
+% for x=0,w,w-mxzw, mxhalf, mxone: r((x,-d.o_),(x,h.o_)); endfor
+ for x=0,w, mxhalf, mxone: r((x,-mxlow),(x,mxheight)); endfor
+ if charic<>0: r((w+charic*hppp,h.o_),(w+charic*hppp,.5h.o_)); fi
+ enddef;
+fi
+
+
+endinput;
diff --git a/fonts/georgian/mxedruli/mf/mxedbf10.mf b/fonts/georgian/mxedruli/mf/mxedbf10.mf
new file mode 100644
index 0000000000..2c54bda097
--- /dev/null
+++ b/fonts/georgian/mxedruli/mf/mxedbf10.mf
@@ -0,0 +1,121 @@
+% Mxedruli Font 10 point Bold Face `mxedbf10.mf'
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Designed by Johannes Heinecke %
+% <johannes.heinecke@wanadoo.fr> %
+% This software is under the LaTeX Project Public License %
+% Please send any improvements, corrections, suggestions, enhancements etc %
+% to the Author! %
+% %
+% Version 2.4 as of 15th July 1996 %
+% %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% Based on the parameters as in CMBX10
+
+% if unknown cmbase: input cmbase fi
+if unknown mxedbase: input mxedbase fi
+
+font_identifier:="MXEDBF"; font_size 10pt#;
+
+u#:=20/36pt#; % unit width
+if known cmbase:
+
+width_adj#:=11/36pt#; % width adjustment for certain characters
+serif_fit#:=0pt#; % extra sidebar near lowercase serifs
+cap_serif_fit#:=7/36pt#; % extra sidebar near uppercase serifs
+letter_fit#:=0pt#; % extra space added to all sidebars
+
+body_height#:=270/36pt#; % height of tallest characters
+asc_height#:=250/36pt#; % height of lowercase ascenders
+cap_height#:=247/36pt#; % height of caps
+fig_height#:=232/36pt#; % height of numerals
+x_height#:=160/36pt#; % height of lowercase without ascenders
+math_axis#:=90/36pt#; % axis of symmetry for math symbols
+bar_height#:=85/36pt#; % height of crossbar in lowercase e
+comma_depth#:=70/36pt#; % depth of comma below baseline
+desc_depth#:=70/36pt#; % depth of lowercase descenders
+
+crisp#:=0pt#; % diameter of serif corners
+tiny#:=13/36pt#; % diameter of rounded corners
+fine#:=10/36pt#; % diameter of sharply rounded corners
+thin_join#:=10/36pt#; % width of extrafine details
+hair#:=17/36pt#; % lowercase hairline breadth
+stem#:=41/36pt#; % lowercase stem breadth
+curve#:=46/36pt#; % lowercase curve breadth
+ess#:=38/36pt#; % breadth in middle of lowercase s
+flare#:=45/36pt#; % diameter of bulbs or breadth of terminals
+dot_size#:=56/36pt#; % diameter of dots
+cap_hair#:=19/36pt#; % uppercase hairline breadth
+cap_stem#:=51/36pt#; % uppercase stem breadth
+cap_curve#:=55/36pt#; % uppercase curve breadth
+cap_ess#:=53/36pt#; % breadth in middle of uppercase s
+rule_thickness#:=.6pt#; % thickness of lines in math symbols
+
+dish#:=1/36pt#; % amount erased at top or bottom of serifs
+bracket#:=10/36pt#; % vertical distance from serif base to tangent
+jut#:=25/36pt#; % protrusion of lowercase serifs
+cap_jut#:=39/36pt#; % protrusion of uppercase serifs
+beak_jut#:=11/36pt#; % horizontal protrusion of beak serifs
+beak#:=70/36pt#; % vertical protrusion of beak serifs
+vair#:=13/36pt#; % vertical diameter of hairlines
+notch_cut#:=10pt#; % maximum breadth above or below notches
+bar#:=17/36pt#; % lowercase bar thickness
+slab#:=17/36pt#; % serif and arm thickness
+cap_bar#:=17/36pt#; % uppercase bar thickness
+cap_band#:=17/36pt#; % uppercase thickness above/below lobes
+cap_notch_cut#:=10pt#; % max breadth above/below uppercase notches
+serif_drop#:=3/36pt#; % vertical drop of sloped serifs
+stem_corr#:=2/36pt#; % for small refinements of stem breadth
+vair_corr#:=1.5/36pt#; % for small refinements of hairline height
+apex_corr#:=0pt#; % extra width at diagonal junctions
+
+o#:=4/36pt#; % amount of overshoot for curves
+apex_o#:=3/36pt#; % amount of overshoot for diagonal junctions
+
+slant:=0; % tilt ratio $(\Delta x/\Delta y)$
+fudge:=1; % factor applied to weights of heavy characters
+math_spread:=.5; % extra openness of math symbols
+superness:=8/11; % parameter for superellipses
+superpull:=1/8; % extra openness inside bowls
+beak_darkness:=.4; % fraction of triangle inside beak serifs
+ligs:=2; % level of ligatures to be included
+
+square_dots:=false; % should dots be square?
+hefty:=false; % should we try hard not to be overweight?
+serifs:=true; % should serifs and bulbs be attached?
+monospace:=false; % should all characters have the same width?
+variant_g:=false; % should an italic-style g be used?
+low_asterisk:=false; % should the asterisk be centered at the axis?
+math_fitting:=false; % should math-mode spacing be used?
+fi
+
+% These are the real Mxedruli Parameters
+boolean mxcap;
+mxcap:=false; % No capitals
+mxu#:= 2.5u#; % war 2.7u# % the unit, which where used to design this fonts
+mxlittle#:= 3mxu#; % height of letters without ascenders
+mxtop#:= 2mxu#; % the height of the ascenders
+mxheight#:=mxtop#+mxlittle#;
+mxhalf#:=1.12mxu#; % Half width of the letter 'a'
+mxone#:=2mxhalf#;
+mxmiddle#:=2/3mxlittle#; % strokes not reaching the baseline, as in 'o'
+mxthird#:=1/3mxlittle#;
+mxfeet#:= .4mxhalf#; % The feet of 'i' and 'o' etc are slightly
+ % bent to the middle
+mxlow#:= 1.8mxu#; % war 2mxu# % max depth below the baseline
+mxzw#:= .65mxu#; % Seperation of two letters
+
+
+px1#:=.27mxu#; % pen 1 xscaling
+py1#:=.88mxu#; % pen 1 yscaling
+
+dpx1#:=px1#; % digitpen xscaling
+dpy1#:=py1#; % digitpen yscaling
+pdot#:=.89mxu#; % pen for dots
+pdash#:=.55mxu#; % pen for dashes
+
+slant:=0;
+
+input mxed; % switch to the driver file
+bye.
diff --git a/fonts/georgian/mxedruli/mf/mxedc10.mf b/fonts/georgian/mxedruli/mf/mxedc10.mf
new file mode 100644
index 0000000000..8769f7bbed
--- /dev/null
+++ b/fonts/georgian/mxedruli/mf/mxedc10.mf
@@ -0,0 +1,121 @@
+% Mxedruli Font 10 point Capitals `mxedc10.mf'
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Designed by Johannes Heinecke %
+% <johannes.heinecke@wanadoo.fr> %
+% This software is under the LaTeX Project Public License %
+% Please send any improvements, corrections, suggestions, enhancements etc %
+% to the Author! %
+% %
+% Version 2.0 as of 16th June 1995 %
+% %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% Based on the parameters as in CMR10
+
+% if unknown cmbase: input cmbase fi
+if unknown mxedbase: input mxedbase fi
+
+font_identifier:="MXEDC"; font_size 10pt#;
+
+u#:=20/36pt#; % unit width
+if known cmbase:
+width_adj#:=0pt#; % width adjustment for certain characters
+serif_fit#:=0pt#; % extra sidebar near lowercase serifs
+cap_serif_fit#:=5/36pt#; % extra sidebar near uppercase serifs
+letter_fit#:=0pt#; % extra space added to all sidebars
+
+body_height#:=270/36pt#; % height of tallest characters
+asc_height#:=250/36pt#; % height of lowercase ascenders
+cap_height#:=246/36pt#; % height of caps
+fig_height#:=232/36pt#; % height of numerals
+x_height#:=155/36pt#; % height of lowercase without ascenders
+math_axis#:=90/36pt#; % axis of symmetry for math symbols
+bar_height#:=87/36pt#; % height of crossbar in lowercase e
+comma_depth#:=70/36pt#; % depth of comma below baseline
+desc_depth#:=70/36pt#; % depth of lowercase descenders
+
+crisp#:=0pt#; % diameter of serif corners
+tiny#:=8/36pt#; % diameter of rounded corners
+fine#:=7/36pt#; % diameter of sharply rounded corners
+thin_join#:=7/36pt#; % width of extrafine details
+hair#:=9/36pt#; % lowercase hairline breadth
+stem#:=25/36pt#; % lowercase stem breadth
+curve#:=30/36pt#; % lowercase curve breadth
+ess#:=27/36pt#; % breadth in middle of lowercase s
+flare#:=33/36pt#; % diameter of bulbs or breadth of terminals
+dot_size#:=38/36pt#; % diameter of dots
+cap_hair#:=11/36pt#; % uppercase hairline breadth
+cap_stem#:=32/36pt#; % uppercase stem breadth
+cap_curve#:=37/36pt#; % uppercase curve breadth
+cap_ess#:=35/36pt#; % breadth in middle of uppercase s
+rule_thickness#:=.4pt#; % thickness of lines in math symbols
+
+dish#:=1/36pt#; % amount erased at top or bottom of serifs
+bracket#:=20/36pt#; % vertical distance from serif base to tangent
+jut#:=28/36pt#; % protrusion of lowercase serifs
+cap_jut#:=37/36pt#; % protrusion of uppercase serifs
+beak_jut#:=10/36pt#; % horizontal protrusion of beak serifs
+beak#:=70/36pt#; % vertical protrusion of beak serifs
+vair#:=8/36pt#; % vertical diameter of hairlines
+notch_cut#:=10pt#; % maximum breadth above or below notches
+bar#:=11/36pt#; % lowercase bar thickness
+slab#:=11/36pt#; % serif and arm thickness
+cap_bar#:=11/36pt#; % uppercase bar thickness
+cap_band#:=11/36pt#; % uppercase thickness above/below lobes
+cap_notch_cut#:=10pt#; % max breadth above/below uppercase notches
+serif_drop#:=4/36pt#; % vertical drop of sloped serifs
+stem_corr#:=1/36pt#; % for small refinements of stem breadth
+vair_corr#:=1/36pt#; % for small refinements of hairline height
+apex_corr#:=0pt#; % extra width at diagonal junctions
+
+o#:=8/36pt#; % amount of overshoot for curves
+apex_o#:=8/36pt#; % amount of overshoot for diagonal junctions
+
+slant:=0; % tilt ratio $(\Delta x/\Delta y)$
+fudge:=1; % factor applied to weights of heavy characters
+math_spread:=0; % extra openness of math symbols
+superness:=1/sqrt2; % parameter for superellipses
+superpull:=1/6; % extra openness inside bowls
+beak_darkness:=11/30; % fraction of triangle inside beak serifs
+ligs:=2; % level of ligatures to be included
+
+square_dots:=false; % should dots be square?
+hefty:=false; % should we try hard not to be overweight?
+serifs:=true; % should serifs and bulbs be attached?
+monospace:=false; % should all characters have the same width?
+variant_g:=false; % should an italic-style g be used?
+low_asterisk:=false; % should the asterisk be centered at the axis?
+math_fitting:=false; % should math-mode spacing be used?
+fi
+
+% These are the real Mxedruli Parameters
+boolean mxcap;
+mxcap:=true; % Capitals
+mxu#:= 2.5u#; % was 2.7u# % the unit, which where used to design this fonts
+mxlittle#:= 3.1mxu#; % height of letters without ascenders
+mxtop#:= 3.1mxu#; % the height of the ascenders
+mxheight#:=mxtop#+mxlittle#;
+mxhalf#:=mxu#; % Half width of the letter 'a'
+mxone#:=2mxhalf#;
+mxmiddle#:=2/3mxlittle#; % strokes not reaching the baseline, as in 'o'
+mxthird#:=1/3mxlittle#;
+mxfeet#:= .4mxhalf#; % The feet of 'i' and 'o' etc are slightly
+ % bent to the middle
+mxlow#:= 1.8mxu#; %war 2mxu# % max depth below the baseline
+mxzw#:= 1.20mxu#; % Seperation of two letters
+
+
+px1#:=.60mxu#; % pen 1 xscaling
+py1#:=.24mxu#; % pen 1 yscaling
+
+dpx1#:=.25mxu#; % digitpen xscaling
+dpy1#:=.68mxu#; % digitpen yscaling
+pdot#:=.74mxu#; % pen for dots
+pdash#:=.40mxu#; % pen for dashes
+
+
+slant:=0;
+
+input mxed; % switch to the driver file
+bye.
diff --git a/fonts/georgian/mxedruli/mf/mxedcaps.mf b/fonts/georgian/mxedruli/mf/mxedcaps.mf
new file mode 100644
index 0000000000..dbba5f026c
--- /dev/null
+++ b/fonts/georgian/mxedruli/mf/mxedcaps.mf
@@ -0,0 +1,864 @@
+% Mxedruli CAPITALS `mxedcaps.mf'
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Designed by Johannes Heinecke %
+% <johannes.heinecke@wanadoo.fr> %
+% This software is under the LaTeX Project Public License %
+% Please send any improvements, corrections, suggestions, enhancements etc %
+% to the Author! %
+% %
+% Version 2.3 as of 20th May 1996 %
+% %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%% Character Definitions: %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+
+%% Glottal Stop %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "' - Glottal Stop";
+beginchar(oct"021", mxzw#+mxone#, mxheight#, 0);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pencc;
+ top lft z1 = (mxone, mxheight);
+ lft z2 = (mxone, 1.5mxlittle);
+ lft z3 = (mxhalf, mxlittle);
+ lft z4 = (0, y2);
+ z5 = (x4, y1);
+ draw z1..{down}z2..{left}z3..{up}z4..z5;
+
+ z6 = (x4, .5mxlittle);
+ bot z7 = (x3, 0);
+ z8 = (x2, y6);
+ draw z4--z6{down}..{right}z7..{up}z8;
+ penlabels(range 1 thru 8);
+endchar;
+
+%% qh %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% Contributed by Mark Leisher and adapted by J Heinecke
+mxedchar "q - qhar (oct015)";
+beginchar(oct"015", mxzw#+mxone#+.5mxhalf#, mxheight#, 0);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pencc;
+ lft z1 = (0, mxthird);
+ bot lft z2 = (mxhalf, 0);
+ z4 = (x2, mxlittle);
+ lft z3 = (mxone, .67mxlittle);
+ z31 = (x3, .33mxlittle);
+ lft z5 = (0, .7mxlittle);
+ draw z1{down}..{right}z2..{up}z31..{up}z3..{left}z4..z5;
+
+ z6 = (x3, 1.5mxlittle);
+ z7 = (x4-.25mxthird, 1.75mxlittle);
+ z8 =(x6, mxheight);
+ draw z4{right}..{up}z6..{dir 90}z7..z8;
+
+ penlabels(range 1 thru 8);
+endchar;
+
+
+
+%% long ee %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% Contributed by Mark Leisher and adapted by J Heinecke
+mxedchar "ee - (Long e) oct(016)";
+beginchar(oct"016", mxzw#+1.5mxone#, mxheight#, 0);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pen;
+ lft top z1 = (0, mxheight);
+ lft z2 = (0, mxthird);
+ bot z25 = (mxone, 0);
+ z3 = (1.5mxone, y2);
+ z4 = (1.2mxone, .5mxlittle);
+ z5 = (.75mxone, 2/3mxlittle);
+ draw z1..z2{down}..{right}z25..z3..z4..z5;
+
+ z6 = (x3, 3/4mxlittle);
+ z7 = (x4, mxlittle);
+ z8 = (x5, 7/6mxlittle);
+ draw z4..z6..z7--z8;
+
+ z9 = (x6, 17/12mxlittle);
+ top z10 = (x5, mxheight);
+ draw z7..z9..{up}z10;
+
+ penlabels(range 1 thru 10);
+endchar;
+
+
+%% a %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "a - an";
+beginchar("a", mxzw#+mxone#, mxheight#, 0);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pencc;
+ lft z1 = (0, mxlittle);
+ bot lft z2 = (mxhalf, 0);
+ lft z3 = (mxone, y1);
+ top z4 = (x2, mxheight);
+ draw z1{down}..z2{right}..{up}z3..{up}z4;
+ penlabels(range 1 thru 4);
+endchar;
+
+%% ae %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "e1 - ae (Ossetian), oct013";
+beginchar(oct"013", mxzw#+mxone#, mxheight#, 0);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pencc;
+ lft z1 = (0, mxlittle);
+ bot lft z2 = (mxhalf, 0);
+ lft z3 = (mxone, y1);
+ top z4 = (.25mxhalf, mxheight); % x4 war x2
+ z5 = (x4+mxhalf, y4);
+ draw z1{down}..z2{right}..{up}z3..{up}z4..{down}z5;
+ penlabels(range 1 thru 5);
+endchar;
+
+
+%% i %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "i - in";
+beginchar("i", mxzw#+mxone#, mxheight#, 0);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pencc;
+ bot lft z1 = (0, 0);
+ lft z2 = (0, mxlittle);
+ top lft z3 = (mxhalf, mxheight);
+ lft z4 = (mxone, y2);
+ lft z5 = (mxone, y1);
+ draw z1..{up}z2..{right}z3..{down}z4..z5;
+ penlabels(range 1 thru 5);
+endchar;
+
+
+%% oo %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "oo - ho, (Old Georgian), oct011";
+beginchar(oct"011", mxzw#+mxone#+mxhalf#, mxheight#, 0);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pencc;
+ lft z1 = (mxone+mxhalf, .9mxlittle);
+ z8 = (x1, 1.1mxlittle);
+ lft z2 = (mxhalf, y1);
+ z7 = (x2, y8);
+ bot z3 = (x2, 0);
+ top z6 = (x2, mxheight);
+ lft z4 = (mxone, .8mxthird);
+ z5 = (x4, mxheight-.8mxthird);
+ draw z1--z2{left}..z3..{up}z4--z5{up}..z6..{right}z7--z8;
+ penlabels(range 1 thru 8);
+endchar;
+
+
+
+%% o %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "o - on";
+beginchar("o", mxzw#+1.6mxone#, mxheight#, 0);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pencc;
+ bot lft z1 = (0, 0);
+ z2 = (x1, 1.5mxlittle);
+ top lft z3 = (.8mxhalf, mxheight);
+ lft z4 = (.8mxone, mxlittle);
+ z41 = (x4, 1.5mxlittle);
+ lft z5 = (.8mxone+.8mxhalf, y3);
+ lft z6 = (1.6mxone, y2);
+ z7 = (x6, y1);
+ draw z1..{up}z2..{right}z3..{down}z41--z4;
+ draw z4--z41{up}..{right}z5..{down}z6..z7;
+ penlabels(range 1 thru 7, 41);
+endchar;
+
+%% r %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "r - ran";
+beginchar("r", mxzw#+1.6mxone#, mxheight#, 0);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pencc;
+ bot lft z1 = (0, 0);
+ z2 = (x1, .5mxlittle);
+ lft z3 = (.8mxhalf, .5mxheight);
+ lft z4 = (.8mxone, .5mxlittle);
+ lft z5 = (.8mxone+.8mxhalf, y3);
+ lft z6 = (1.6mxone, y2);
+ z7 = (x6, y1);
+ top z8 = (x6, mxheight);
+ draw z1..{up}z2..{right}z3..{down}z4;
+ draw z4{up}..{right}z5..{down}z6..z7;
+ draw z2{up}..z8;
+ penlabels(range 1 thru 8);
+endchar;
+
+
+
+%% b %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "b - ban";
+beginchar("b", mxzw#+mxone#, mxheight#, 0);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pencc;
+ lft z1 = (0, .5mxlittle);
+ bot lft z2 = (mxhalf, 0);
+ lft z3 = (mxone, y1);
+ z4 = (x2, mxlittle);
+ draw z1{down}..{right}z2..{up}z3..{left}z4..cycle;
+
+ z5 = (x4-.7mxhalf, mxheight-.7mxhalf);
+ top z6 = (x4, mxheight);
+ draw z5--z6--z4;
+
+ penlabels(range 1 thru 7);
+endchar;
+
+
+
+
+%% c %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "c - can";
+beginchar("c", mxzw#+mxone#, mxlittle#, 0);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pencc;
+ top lft z1 = (0, mxheight);
+ lft z4 = (mxone, .4mxheight);
+ bot z3 = (.5[x1,x4], 0);
+ z2 = (x1, y4);
+ z5 = (x4-.5mxhalf, .5mxheight);
+ draw z1..{down}z2..{right}z3..{up}z4..tension 2..{left}z5;
+
+ z6 = (x4, 1.2mxlittle);
+ z7 = (x4, y1);
+ draw z5{right}..{up}z6..z7;
+
+ penlabels(range 1 thru 7);
+endchar;
+
+
+
+%% .c %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar ".c - .cil (oct000)";
+beginchar(oct"000", mxzw#+mxone#+mxhalf#, mxheight#, 0);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pencc;
+ lft z1 = (0, mxheight-.3mxtop);
+ lft z9 = (mxone+mxhalf, y1);
+ bot z2 = (.5[x1,x9], 0);
+ z3 = (.4[z1,z2]);
+ z4 = (.4[z9,z2]);
+ z7 = (x2, y1);
+ top z6 = (.5[x1, x7], mxheight);
+ z8 = (.5[x7, x9], y6);
+ draw z1--z2--z4--z3;
+ draw z1{up}..{right}z6..{down}z7;
+ draw z7{up}..{right}z8..{down}z9;
+ penlabels(range 1 thru 9);
+endchar;
+
+%% ^c %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "^c - ^cin (+c, oct001)";
+beginchar(oct"001", mxzw#+mxone#, mxheight#, 0);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pencc;
+ bot lft z1 = (0, 0);
+ lft z2 = (0, .5mxlittle);
+ lft z3 = (mxhalf, mxlittle);
+ lft z4 = (mxone, y2);
+ bot z5 = (x4, 0);
+ draw z1..{up}z2..{right}z3..{down}z4..z5;
+
+ lft z6 = (0, mxheight-.05mxtop);
+ top lft z9 = (mxhalf, mxheight);
+ z7 = (x4-.5mxhalf,mxheight-.25mxtop);
+ z10 = (x9, mxheight-.5mxtop);
+ lft z8 = (0, mxheight-.45mxtop);
+ draw z2--z6;
+ draw z6..{right}z9..{down}z7..{left}z10..z8;
+
+ penlabels(range 1 thru 8);
+endchar;
+
+
+%% ^.c %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "^.c - ^.car (,c .+c oct014)";
+beginchar(oct"014", mxzw#+1.2mxone#, mxheight#, 0); % war "y"
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pencc;
+ lft z1 = (.5mxhalf, .6mxmiddle);
+ lft z2 = (0, .6mxthird);
+ bot lft z3 = (mxhalf, 0);
+ lft z4 = (mxone, y2);
+ lft z5 = (.75mxone, 1.3mxthird);
+ top z6 = (x5, mxheight);
+ z7 = (x1, .9mxheight);
+ draw z1{dir -135}..{down}z2..{right}z3..{up}z4..{up}z5--z6--z7;
+
+ z8 = (x5, mxlittle); % z10 and z11 should be 45 degree NE/SE
+ z9 = (x1, y8);
+ z10 = (x5+.7mxhalf, y8+.7mxhalf);
+ z11 = (x5+.7mxhalf, y8-.7mxhalf);
+ draw z10--z8..{up}z9..z8--z11;
+
+ penlabels(range 1 thru 11);
+endchar;
+
+%% d %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "d - don";
+beginchar("d", mxzw#+1.6mxone#, mxlittle#, 0);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pencc;
+ lft z1 = (.8mxone, 1.5mxlittle);
+ lft z2 = (.8mxone+.8mxhalf, mxlittle);
+ lft z3 = (1.6mxone, y1);
+ top z4 = (x2, mxheight);
+ z5 = (x1, mxmiddle+mxlittle);
+ draw z1{down}..{right}z2..{up}z3..{left}z4..{down}z5..cycle;
+
+ lft z6 = (.8mxhalf, y4);
+ lft z7 = (0, y1);
+ z8 = (x7, mxlittle);
+ draw z5{up}..{left}z6..{down}z7..z8;
+
+ bot z9 = (x3, 0);
+ draw z8..{dir -75}z9;
+ penlabels(range 1 thru 10);
+endchar;
+
+%% e %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "e - en";
+beginchar("e", mxzw#+mxone#, mxheight#, 0);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pencc;
+ lft z1 = (0, .4mxlittle);
+ bot lft z2 = (mxhalf, 0);
+ lft z3 = (mxone, mxlittle);
+ z4 = (x3, mxmiddle+mxlittle);
+ top z5 = (x2, mxheight);
+ lft z6 = (0, y4);
+ draw z1{down}..{right}z2..{up}z3--z4..{left}z5..z6;
+
+ penlabels(range 1 thru 6);
+endchar;
+
+%% g %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "g - gan";
+beginchar("g", mxzw#+mxone#, mxheight#, 0);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pencc;
+ bot lft z2 = (mxhalf, 0);
+ z4 = (x2, mxlittle);
+ lft z1 = (0, .5[y2,y4]); % y was -.5mxlow
+ lft z3 = (mxone, y1);
+ draw z1{down}..{right}z2..{up}z3..{left}z4..cycle;
+
+ z5 = (x3-.3mxhalf, 1.5mxlittle);
+ top z6 = (x4, mxheight);
+ lft z7 = (.3mxhalf, y5);
+ draw z4{right}..{up}z5..{left}z6..{down}z7;
+ penlabels(range 1 thru 7);
+endchar;
+
+
+
+%% .g %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar ".g - .gan (oct002)";
+beginchar(oct"002", mxzw#+1.6mxone#, mxheight#, 0);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pencc;
+ lft z1 = (0, mxlittle);
+ lft z2 = (0, 1.5mxlittle);
+ top lft z3 = (.8mxhalf, mxheight);
+ lft z4 = (.8mxone, mxmiddle+mxlittle);
+ lft z5 = (.8mxone+.8mxhalf, y3);
+ lft z6 = (1.6mxone, y2);
+ z7 = (x6, y1);
+ bot z8 = (x6, 0);
+ draw z1..{up}z2..{right}z3..{down}z4;
+ draw z4{up}..{right}z5..{down}z6..z7;
+ draw z1..{dir -75}z8;
+ penlabels(range 1 thru 8);
+endchar;
+
+
+%% h %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "h - ha";
+beginchar("h", mxzw#+mxone#, mxheight#, 0);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pencc;
+ lft z1 = (0, mxthird);
+ bot lft z2 = (mxhalf, 0);
+ lft z3 = (mxone, .5mxlittle);
+ lft z4 = (.75mxone, 5/6mxlittle);
+ lft z5 = (.75mxhalf, y4);
+ draw z1{dir -80}..{right}z2..{up}z3..{left}z4--z5;
+
+ z6 = (x3, mxlittle);
+ z7 = (x4, 7/6mxlittle);
+ z8 = (x5, y7);
+ draw z4..{up}z6..{left}z7--z8;
+
+ z9 = (x6, 8/6mxlittle);
+ top lft z10= (0, mxheight);
+ draw z7..{up}z9..{dir 110}z10;
+
+ penlabels(range 1 thru 10);
+endchar;
+
+
+%% ^dz %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "^dz/^j - ^jan (oct010)";
+beginchar(oct"010", mxzw#+2mxone#, mxheight#, 0);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pencc;
+ lft z1 = (0, mxthird);
+ lft z3 = (1.5mxhalf, y1);
+ z2 = (.5[x1,x3], 0);
+ lft z4 = (1.2mxhalf, .5mxlittle);
+ top lft z5 = (2mxone, mxheight);
+ draw z1{down}..{right}z2..{up}z3..z4;
+ draw z4--z5;
+
+ lft z6 = (.3mxhalf, 11/12mxheight);
+ top lft z7 = (mxhalf, mxheight);
+ lft z8 = (1.75mxone, .5mxlittle);
+ z9 = (x5, y8+1/12mxheight);
+ draw z6{up}..{right}z7..{right}z8..z9;
+
+ penlabels(range 1 thru 9);
+endchar;
+
+
+%% dz %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "dz (j) - dzil";
+beginchar("j", mxzw#+mxone#, mxheight#, 0);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pencc;
+ lft z1 = (0, .5mxlittle);
+ bot lft z2 = (mxhalf, 0);
+ lft z3 = (mxone, y1);
+ z4 = (x2, mxlittle);
+ draw z1{down}..{right}z2..{up}z3..{left}z4..cycle;
+
+ top z5 = (x3, mxheight);
+ draw z3--z5;
+ penlabels(range 1 thru 5);
+endchar;
+
+
+%% k %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "k - kan";
+beginchar("k", mxzw#+mxone#, mxheight#, 0);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pencc;
+ lft z1 = (0, .8mxlittle);
+ lft z2 = (mxhalf, mxlittle);
+ lft z3 = (mxone, .8mxlittle);
+ z4 = (x3, .2mxlittle);
+ bot z5 = (x2, 0);
+ z6 = (x1, y4);
+ top z7 = (x3, mxheight);
+ z8 = z7 - (mxhalf, mxthird);
+ draw z1..z2..{down}z3--z4{down}..{left}z5..{up}z6;
+ draw z3--z7--z8;
+ penlabels(range 1 thru 8);
+endchar;
+
+
+
+mxedchar ".k - .kan (oct003)";
+beginchar(oct"003", mxzw#+mxone#, mxheight#, 0);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pencc;
+ lft z1 = (0, mxthird);
+ bot lft z2 = (mxhalf, 0);
+ z4 = (x2, mxlittle);
+ lft z3 = (mxone, .67mxlittle);
+ z31 = (x3, .33mxlittle);
+ lft z5 = (0, .7mxlittle);
+ draw z1{down}..{right}z2..{up}z31..{up}z3..{left}z4..z5;
+
+ z6 = (x3, 1.33mxlittle);
+ top z7 = (x6, mxheight);
+ draw z4{right}..{up}z6..z7;
+
+ penlabels(range 1 thru 7, 31);
+endchar;
+
+
+
+%% l %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "l - las";
+beginchar("l", mxzw#+2.4mxone#, mxheight#, 0);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pencc;
+ lft z1 = (0, mxlittle);
+ lft z2 = (0, 1.5mxlittle);
+ top lft z3 = (.8mxhalf, mxheight);
+ lft z4 = (.8mxone, 1.5mxlittle);
+ lft z9 = (.8mxone+.8mxhalf, y3);
+ lft z10= (1.6mxone, y4);
+ lft z5 = (1.6mxone+.8mxhalf, y3);
+ lft z6 = (2.4mxone, y2);
+ lft z7 = (2.4mxone, y1);
+ z8 = (x6, 0);
+ draw z1..{up}z2..{right}z3..{down}z4;
+ draw z4{up}..{right}z9..{down}z10;
+ draw z10{up}..{right}z5..{down}z6..z7;
+ draw z1..{dir -50}z8;
+ penlabels(range 1 thru 10);
+endchar;
+
+
+%% m %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "m - man";
+beginchar("m", mxzw#+mxone#, mxheight#, 0);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pencc;
+ lft z1 = (0, .5mxlittle);
+ bot lft z2 = (mxhalf, 0);
+ lft z3 = (mxone, y1);
+ z4 = (x2, mxlittle);
+ draw z1{down}..{right}z2..{up}z3..{left}z4..cycle;
+
+ z5 = (x3, mxheight-.5mxtop);
+ z6 = (x4, mxheight);
+ lft z7 = (0, y5);
+ draw z3..z5{up}..{left}z6..{down}z7;
+ penlabels(range 1 thru 7);
+endchar;
+
+
+%% n %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "n - nar";
+beginchar("n", mxzw#+mxone#, mxheight#, 0);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pencc;
+ lft z1 = (0, .5mxlittle);
+ bot lft z2 = (mxhalf, 0);
+ lft z3 = (mxone, y1);
+ z4 = (x2, mxlittle);
+ draw z1{down}..{right}z2..{up}z3..{left}z4..cycle;
+
+ lft z5 = (0, mxheight-.25mxtop);
+ top lft z6 = (.5mxhalf, mxheight);
+ z7 = (x3, y6+.2mxtop);
+ draw z1..z5{up}..{right}z6..{dir 75}z7;
+ penlabels(range 1 thru 7);
+endchar;
+
+
+
+%% p %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "p - par";
+beginchar("p", mxzw#+1.6mxone#, mxheight#, 0);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pencc;
+ lft z1 = (0, 1.5mxlittle);
+ lft z2 = (.8mxhalf, mxlittle);
+ lft z3 = (.8mxone, y1);
+ z4 = (x3, mxlittle+mxmiddle);
+ top z5 = (x2, mxheight);
+ draw z1{down}..{right}z2..{up}z3..z4{up}..{left}z5..cycle;
+
+ lft z6 = (.8mxhalf+.8mxone, y5);
+ lft z7 = (1.6mxone, y1);
+ bot z8 = (x6, 0);
+ z9 = (x7, .5mxlittle);
+ lft z11= (.6mxone, y9);
+ bot z10= (.5[x11,x9], 0);
+% draw z4{up}..{right}z6..{down}z7..{left}z8;
+% draw z8{right}..{down}z9..{left}z10..{dir 70}z11;
+ draw z4{up}..{right}z6..{down}z7..{down}z9..
+ {left}z8..{left}z10..{up}z11;
+ penlabels(range 1 thru 11);
+endchar;
+
+%% .p %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar ".p - .par (oct004)";
+beginchar(oct"004", mxzw#+mxone#, mxthird#+mxheight#, 0);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pencc;
+ lft z1 = (0, mxthird);
+ bot lft z2 = (mxhalf, 0);
+ lft z3 = (mxone, .5mxlittle);
+ z4 = (x2, mxlittle);
+ z5 = (mxhalf, y4);
+ draw z1{dir -80}..{right}z2..{up}z3..{left}z4--z5;
+
+ z6 = (x3, mxlittle+.4mxtop);
+ z7 = (x1, .2mxtop+mxheight);
+ draw z4..{up}z6..{dir 110}z7;
+
+ penlabels(range 1 thru 7);
+endchar;
+
+
+%% q %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "q - qar";
+beginchar("q", mxzw#+mxone#, mxheight#, 0);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pencc;
+ top lft z1 = (0, mxheight);
+ lft z2 = (0, 1.5mxlittle);
+ lft z3 = (mxhalf, mxlittle);
+ lft z4 = (mxone, y2);
+ z5 = (x4, y1);
+ draw z1..{down}z2..{right}z3..{up}z4..z5;
+
+ z6 = (x4, .5mxlittle);
+ bot z7 = (x3, 0);
+ z8 = (x2, y6);
+ draw z4--z6{down}..{left}z7..{up}z8;
+ penlabels(range 1 thru 8);
+endchar;
+
+
+%% s %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "s - san";
+beginchar("s", mxzw#+mxone#, mxheight#, 0);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pencc;
+ top lft z5 = (0, mxheight);
+ lft z1 = (0, .5mxlittle);
+ bot lft z2 = (mxhalf, 0);
+ lft z3 = (mxone, y1);
+ lft z4 = (1/3mxone, mxlittle);
+ draw z5--z1{down}..{right}z2..{up}z3..{up}z4;
+
+ penlabels(range 1 thru 5);
+endchar;
+
+
+
+%% ^s %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "^s - ^san (+s, oct005)";
+beginchar(oct"005", mxzw#+mxhalf#+mxone#, mxheight#, 0);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pencc;
+ lft z1 = (mxhalf, .5mxlittle);
+ bot lft z2 = (mxhalf+mxhalf, 0);
+ lft z3 = (mxone+mxhalf, y1);
+ z4 = (x2, mxlittle);
+ draw z1{down}..{right}z2..{up}z3..{left}z4..cycle;
+
+ z5 = (x3, mxheight-.5mxtop);
+ top z6 = (x4, mxheight);
+ lft z7 = (mxhalf, y5);
+ draw z3..z5{up}..{left}z6..{down}z7;
+
+ lft z8 = (0, y6);
+ draw z7{up}..{left}z8;
+ penlabels(range 1 thru 8);
+endchar;
+
+
+%% t %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "t - tan";
+beginchar("t", mxzw#+1.6mxone#, mxheight#, 0);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pencc;
+ lft z1 = (0, mxlittle);
+ bot lft z2 = (.8mxhalf, 0);
+ lft z3 = (.8mxone, y1);
+ z4 = (x3, mxlittle+mxmiddle);
+ top z5 = (x2, mxheight);
+ draw z1{down}..tension 1.3..{right}z2..tension 1.3..{up}z3..z4{up}..{left}z5..tension 1.3..cycle;
+
+ lft z6 = (.8mxhalf+.8mxone, y5);
+ lft z7 = (1.6mxone, y1);
+ bot z8 = (x7, 0);
+ draw z4{up}..{right}z6..tension 1.3..{down}z7..z8;
+ penlabels(range 1 thru 8);
+endchar;
+
+
+%% .t %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar ".t - tar (oct006)";
+beginchar(oct"006", mxzw#+mxone#+mxhalf#, mxheight#, 0);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pencc;
+ lft z1 = (0, .8mxlittle);
+ bot lft z2 = (.5mxhalf+.5mxone, 0);
+ lft z3 = (mxone+mxhalf, y1);
+ z4 = (x2, .8mxheight);
+ draw z1{down}..{right}z2..{up}z3..{left}z4..cycle;
+
+ bot z5 = (x4, y4-.2mxheight);
+ top z6 = (x4, y4+.2mxheight);
+ draw z4{left}..{right}z5..cycle;
+ draw z4{left}..{right}z6..cycle;
+ penlabels(range 1 thru 6);
+endchar;
+
+
+
+%% u %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "u - un";
+beginchar("u", mxzw#+2.2mxone#, mxlittle#, 0);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pencc;
+ top lft z1 = (0, mxheight);
+ lft z5 = (mxone, y1);
+ z2 = (.5[x1,x5], 1.75mxlittle);
+ lft z6 = (1.4mxone, 1.5mxlittle);
+ z7 = (x6, mxlittle);
+ draw z1..z2..{right}z5..{down}z6--z7;
+
+ lft z8 = (1.4mxone+.8mxhalf, y5);
+ lft z9 = (2.2mxone, y6);
+ z10= (x9, .5mxlittle);
+ bot z11= (x6, 0);
+ z12= (x2, y10);
+ draw z6{dir 75}..{right}z8..{down}z9--z10...{left}z11..{up}z12;
+ penlabels(range 1 thru 12);
+endchar;
+
+
+%% v %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "v - vin";
+beginchar("v", mxzw#+mxone#, mxheight#, 0);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pencc;
+ lft z1 = (0, mxlittle+mxmiddle);
+ top lft z2 = (mxhalf, mxheight);
+ lft z3 = (mxone, .5[y4,y2]);
+ z4 = (x2, mxlittle);
+ draw z1{up}..{right}z2..{down}z3..{left}z4; % ..z5;
+
+ z6 = (x3, .5[y4,y7]);
+ bot z7 = (x2, 0);
+ lft z8 = (0, y6);
+ draw z4{right}..{down}z6..{left}z7..{up}z8;
+
+ penlabels(range 1 thru 8);
+endchar;
+
+
+%% x %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "x - xan";
+beginchar("x", mxzw#+mxone#, mxheight#, 0);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pencc;
+ lft z1 = (0, .5mxlittle);
+ bot lft z2 = (mxhalf, 0);
+ lft z3 = (mxone, y1);
+ z4 = (x2, 5/6mxlittle);
+ z6 = (x1, y4);
+ draw z1{down}..{right}z2..{up}z3..{left}z4..z6;
+
+ top lft z5 = (0, mxheight);
+ draw z1--z5;
+
+ z7 = z6 +(1mxu, 1mxu);
+ draw z6--z7;
+ penlabels(range 1 thru 7);
+endchar;
+
+
+%% z %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "z - zen";
+beginchar("z", mxzw#+2mxone#, mxheight#, 0);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pencc;
+ lft z1 = (.75mxone, .5mxlittle);
+ bot lft z2 = (.75mxone+mxhalf, 0);
+ lft z3 = (.75mxone+mxone, y1);
+ z4 = (x2, 5/6mxlittle);
+ z6 = (x1, y4);
+ draw z1{down}..{right}z2..{up}z3..{left}z4..z6;
+
+ lft z5 = (.75mxone, mxheight-.5mxtop);
+ top z11= (x5, mxheight);
+ lft z8 = (mxhalf, y11);
+ lft z9 = (0, y5);
+ z10 =(.5[x9,x5], mxheight-mxtop);
+% draw z1--z11..{left}z8..{down}z9..{right}z10..{up}z5;
+ draw z1--z5{up}..{left}z8..{down}z9..{right}z10..{up}z5;
+
+ z7 = z6 + (1mxu, 1mxu);
+ draw z6--z7;
+ penlabels(range 1 thru 11);
+endchar;
+
+
+
+%% ^z %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "^z - ^zan (+z, oct007)";
+beginchar(oct"007", mxzw#+mxone#, mxheight#, 0);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pencc;
+ lft z1 = (0, 1.5mxlittle);
+ lft z2 = (.5mxhalf, mxlittle);
+ lft z3 = (mxhalf, y1);
+ top lft z4 = (mxone, mxheight);
+ draw z1{down}..{right}z2..{up}z3..{up}z4;
+
+ z5 = (x4, .5mxlittle);
+ bot z6 = (x3, 0);
+ lft z7 = (0, y5);
+ draw z4--z5{down}..{left}z6..{up}z7;
+ penlabels(range 1 thru 7);
+endchar;
+
+
+%% f %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "f, (Ossetian)";
+beginchar("f", mxzw#+mxone#+mxhalf#, mxheight#, 0);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pencc;
+ lft z1 = (0, mxlittle);
+ lft z2 = (1.5mxone, y1);
+ draw z1..z2..cycle;
+
+ lft z3 = (0, .8mxheight);
+ top lft z31 = (1/3mxone, mxheight);
+ lft z4 = (1.5mxhalf, y1);
+ bot lft z51 = (7/6mxone, 0);
+ lft z5 = (1.5mxone, .2mxheight);
+ draw z3{up}..{right}z31..{down}z4..{right}z51..{up}z5;
+
+ penlabels(range 1 thru 5, 31, 51);
+endchar;
+
+%% i1 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "i1 - short i, (Old Georgian), oct012";
+beginchar(oct"012", mxzw#+mxone#, mxheight#, 0);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pencc;
+ bot lft z1 = (0, 0);
+ lft z2 = (mxhalf, .5mxthird);
+ top z4 = (x2, mxheight);
+ lft z3 = (mxone, .5[y2,y4]);
+ lft z5 = (0, y3);
+ z6 = (x3, y1);
+ draw z2..z3..z4..z5..cycle;
+ draw z1..z2..z6;
+ penlabels(range 1 thru 6);
+endchar;
+
+%% w %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "w - wi, (Old Georgian)";
+beginchar("w", mxzw#+mxone#, mxheight#, 0);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pencc;
+ top lft z1 = (.5mxhalf, mxheight);
+ lft z2 = (mxone, y1);
+ z3 = (x1, mxlittle);
+ z4 = (x2, .5mxlittle);
+ bot lft z5 = (mxhalf, 0);
+ lft z6 = (0, mxthird);
+ draw z1--z2--z3{dir 30}..{down}z4..{left}z5..z6;
+ penlabels(range 1 thru 6);
+endchar;
+
+%% Schwa %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "y - Schwa, (Ossetian)";
+beginchar("y", mxzw#+mxone#, mxheight#, 0);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pencc;
+ lft z1 = (0, 1.5mxlittle);
+ lft z2 = (mxone, y1);
+ top z12 = (.5[x1,x2], mxheight);
+ z3 = (x1, .5mxlittle);
+ z4 = (x2, y3);
+ bot z34 = (x12, 0);
+ draw z1{up}..{right}z12..{down}z2..{down}z3..{right}z34..{up}z4;
+ penlabels(range 1 thru 4, 12, 34);
+endchar;
+
+
+endinput;
diff --git a/fonts/georgian/mxedruli/mf/mxedd.mf b/fonts/georgian/mxedruli/mf/mxedd.mf
new file mode 100644
index 0000000000..7c25c6b6d0
--- /dev/null
+++ b/fonts/georgian/mxedruli/mf/mxedd.mf
@@ -0,0 +1,165 @@
+% Mxedruli digits `mxedd.mf'
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Designed by Johannes Heinecke %
+% <johannes.heinecke@wanadoo.fr> %
+% This software is under the LaTeX Project Public License %
+% Please send any improvements, corrections, suggestions, enhancements etc %
+% to the Author! %
+% %
+% Version 2.0 as of 16th June 1995 %
+% %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%% Character Definitions: %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+
+%% 1 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "1";
+beginchar("1", mxhalf#+mxzw#, mxheight#, 0);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_digitpen;
+ top z1 = (mxhalf, mxheight);
+ bot z2 = (x1, 0);
+ z3 = (0, mxheight-.5mxtop);
+ draw z3--z1--z2;
+ penlabels(1, 2, 3);
+endchar;
+
+%% 2 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "2";
+beginchar("2", mxone#+mxzw#, mxheight#, 0);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_digitpen;
+ z1 = (0, mxheight-.5mxtop);
+ top z2 = (mxhalf, mxheight);
+ z3 = (mxone, y1);
+ bot z4 = (x1, 0);
+ z5 = (x3, y4);
+% draw z1{up}..{right}z2..{down}z3..tension 2..z4--z5;
+ draw z1{up}..{right}z2..z3..{z4-z3}z4--z5;
+ penlabels(1, 2, 3, 4, 5);
+endchar;
+
+%% 3 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "3";
+beginchar("3", mxone#+mxzw#, mxheight#, 0);
+ pickup mxed_digitpen;
+ top z1 = (0, mxheight);
+ z2 = (mxone, y1);
+ z3 = (mxhalf, mxlittle);
+ z4 = (x2, .5mxlittle);
+ bot z5 = (x3, 0);
+ z6 = (x1, .5mxlittle);
+ draw z1--z2--z3;
+ draw z3{right}..{down}z4..{left}z5..{up}z6;
+ penlabels(1, 2, 3, 4, 5, 6);
+endchar;
+
+%% 4 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "4";
+beginchar("4", mxone#+mxzw#, mxheight#, 0);
+ pickup mxed_digitpen;
+ top z1 = (mxhalf, mxheight);
+ z2 = (0, .6mxlittle);
+ z3 = (mxone, y2);
+ draw z1--z2--z3;
+ bot z4 = (x1, 0);
+ z5 = (x4, 1.25mxlittle);
+ draw z4--z5;
+ penlabels(1, 2, 3, 4, 5);
+endchar;
+
+%% 5 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "5";
+beginchar("5", mxone#+mxzw#, mxheight#, 0);
+ pickup mxed_digitpen;
+ top z1 = (mxone, mxheight);
+ z2 = (0, y1);
+ z3 = (x2, mxlittle);
+ z4 = (mxhalf, y3);
+ z5 = (x1, .5mxlittle);
+ bot z6 = (x4, 0);
+ z7 = (x2, .3mxlittle);
+ draw z1--z2--z3--z4{right}..z5..{left}z6..z7;
+ penlabels(1, 2, 3, 4, 5, 6, 7);
+endchar;
+
+%% 6 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "6";
+beginchar("6", mxone#+mxzw#, mxheight#, 0);
+ pickup mxed_digitpen;
+ bot z1 = (mxhalf, 0);
+ z2 = (x1, mxlittle);
+ z3 = (0, .5mxlittle);
+ z5 = (mxone, y3);
+ draw z1{left}..{up}z3..{right}z2..{down}z5..cycle;
+ top z4 = (1.5mxhalf, mxheight);
+% draw z3{up}..{dir 60}z4;
+ draw z3{up}..z4;
+ penlabels(1, 2, 3, 4, 5);
+endchar;
+
+%% 7 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "7";
+beginchar("7", mxone#+mxzw#, mxheight#, 0);
+ pickup mxed_digitpen;
+ top z1 = (0, mxheight);
+ z2 = (mxone, y1);
+ bot z3 = (x1, 0);
+ draw z1--z2--z3;
+ penlabels(1, 2, 3);
+endchar;
+
+%% 8 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "8";
+beginchar("8", mxone#+mxzw#, mxheight#, 0);
+ pickup mxed_digitpen;
+ bot z1 = (mxhalf, 0);
+ z2 = (x1, mxlittle);
+ z6 = (0, .5mxlittle);
+ z7 = (mxone, y6);
+ draw z1{left}..{up}z6..{right}z2..{down}z7..cycle;
+ top z3 = (x1, mxheight);
+ z4 = (.2mxhalf, .5[y2, y3]);
+ z5 = (1.8mxhalf, y4);
+ draw z3{left}..{down}z4..{right}z2..{up}z5..cycle;
+ penlabels(1, 2, 3, 4, 5, 6, 7);
+endchar;
+
+%% 9 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "9";
+beginchar("9", mxone#+mxzw#, mxheight#, 0);
+ pickup mxed_digitpen;
+ top z1 = (mxhalf, mxheight);
+ z2 = (x1, mxlittle);
+ z3 = (mxone, mxheight-.5mxtop);
+ z4 = (0, y3);
+
+ draw z1{left}..{down}z4..{right}z2..{up}z3..cycle;
+ bot z5 = (.5mxhalf, 0);
+% draw z3{down}..{dir -120}z5;
+ draw z3{down}..z5;
+ penlabels(1, 2, 3, 4);
+endchar;
+
+%% 0 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "0";
+beginchar("0", mxone#+mxzw#, mxheight#, 0);
+ pickup mxed_digitpen;
+ bot z1 = (mxhalf, 0);
+ z2 = (mxone, mxlittle);
+ top z3 = (x1, mxheight);
+ z4 = (0, y2);
+ draw z1{right}..{up}z2..{left}z3..{down}z4..cycle;
+ penlabels(1, 2, 3, 4);
+endchar;
+
+
+endinput;
+
+
+
diff --git a/fonts/georgian/mxedruli/mf/mxedfont.mf b/fonts/georgian/mxedruli/mf/mxedfont.mf
new file mode 100644
index 0000000000..20a8693425
--- /dev/null
+++ b/fonts/georgian/mxedruli/mf/mxedfont.mf
@@ -0,0 +1,1027 @@
+% Mxedruli FONT `mxedfont.mf'
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Designed and (c) by Johannes Heinecke %
+% <johannes.heinecke@wanadoo.fr> %
+% Please send any improvements, corrections, suggestions, enhancements etc %
+% to the Author! %
+% %
+% Version 2.3 as of 20th May 1996 %
+% %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%% Character Definitions: %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+%% Glottal Stop %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "' - Glottal Stop";
+beginchar(oct"021", mxzw#+mxone#, mxlittle#, mxlow#);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pen;
+ z1 = (mxone-mxfeet, mxlittle);
+ z2 = (mxone, .5mxlittle);
+ z3 = (mxhalf, 0);
+ z4 = (0, y2);
+ z5 = (mxfeet, y1);
+ draw z1..{down}z2..{left}z3..{up}z4..z5;
+
+ z6 = (x4, -.5mxlow);
+ z7 = (x3, -mxlow);
+ z8 = (x2, y6);
+ draw z4--z6..{right}z7..{up}z8;
+ penlabels(range 1 thru 8);
+endchar;
+
+
+%% qh %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% Contributed by Mark Leisher
+mxedchar "q - qhar (oct015)";
+beginchar(oct"015", mxzw#+mxone#+.5mxhalf#, mxlittle#, mxlow#);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pen;
+ z1 = (0, -.5mxlow);
+ z2 = (mxhalf, -mxlow);
+ z3 = (mxone, -.25mxlow);
+ z4 = (x2, 1/3mxlittle);
+ z5 = (0, 1/6mxlittle);
+ draw z1{down}..{right}z2..{up}z3..{left}z4..z5;
+
+ z6 = (x3, 1.75mxthird);
+ z7 = (x4-.25mxthird, mxlittle);
+ z8 =(x6, y7+.5mxthird);
+ draw z4{right}..{up}z6..{dir 90}z7..z8;
+
+ penlabels(range 1 thru 8);
+endchar;
+
+
+%% long ee %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% Contributed by Mark Leisher
+mxedchar "ee - (Long e) oct(016)";
+beginchar(oct"016", mxzw#+2mxone#, mxheight#, 0);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pen;
+ z0 = (0, .5[mxlittle,2/3mxlittle]);
+ z1 = (.5mxthird, mxheight-.5mxthird);
+ z2 = (0, mxlittle);
+ z3 = (.7w, .1mxlittle);
+ z4 = (.6w, 2/6mxlittle);
+ z5 = (.4w, 3/6mxlittle);
+ draw z0{right}..{left}z1..z2{down}..{up}z3..z4--z5;
+
+ z6 = (x3+.5mxthird, .6mxlittle);
+ z7 = (x4+.5mxthird, 5/6mxlittle);
+ z8 = (x5+.5mxthird, mxlittle);
+ draw z4..{up}z6..z7--z8;
+
+ z9 = (x6+.5mxthird, mxlittle);
+ z10= (.5w, mxheight);
+ draw z7..{up}z9..{dir 110}z10;
+
+ penlabels(range 0 thru 10);
+endchar;
+
+
+%% ae %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "e1 - ae (Ossetian), oct013";
+beginchar(oct"013", mxzw#+mxone#, 4mxthird#, 0);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pen;
+ z1 = (0, mxthird);
+ z2 = (mxhalf, 0);
+ z3 = (mxone, y1);
+ z4 = (.2mxhalf, mxlittle); % x4 war x2
+ z5 = (x4+mxhalf, y4);
+ draw z1{down}..z2{right}..{up}z3..{up}z4..{down}z5;
+ penlabels(range 1 thru 5);
+endchar;
+
+
+
+%% a %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "a - an";
+beginchar("a", mxzw#+mxone#, mxlittle#, 0);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pen;
+ z1 = (0, mxthird);
+ z2 = (mxhalf, 0);
+ z3 = (mxone, y1);
+ z4 = (x2, mxlittle);
+ draw z1{down}..z2{right}..{up}z3..{up}z4;
+ penlabels(range 1 thru 4);
+endchar;
+
+
+%% b %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% New Design
+mxedchar "b - ban";
+beginchar("b", mxzw#+mxone#, mxheight#, 0);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pen;
+ z1 = (0, .5mxlittle);
+ z2 = (mxhalf, 0);
+ z3 = (mxone, y1);
+ z4 = (x2, mxlittle);
+ draw z1{down}..{right}z2..{up}z3..{left}z4..cycle;
+
+
+% top z5 = (x1, mxheight);
+% z6 = (x5, mxheight);
+% z7 = (x4, y6-.3mxtop);
+% draw z5--z6--z7--z4;
+ pickup mxed_finepen;
+ top z5 = (x1, mxheight);
+ z6 = (x5, mxheight);
+ z7 = (x4, y6-.5mxtop);
+ draw z4..{up}z7..z5..{up}z6;
+
+ penlabels(range 1 thru 7);
+endchar;
+
+
+%% b1 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "b - ban (Variation, b1)";
+beginchar(oct"020", mxzw#+mxone#, mxheight#, 0);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pen;
+ z1 = (0, .5mxlittle);
+ z2 = (mxhalf, 0);
+ z3 = (mxone, y1);
+ z4 = (x2, mxlittle);
+ draw z1{down}..{right}z2..{up}z3..{left}z4..cycle;
+
+% Correction by JDL (8/5/94)
+% z5 = (x3, mxheight);
+% z6 = (0, y5);
+% z7 = (0, y5-.3mxtop);
+% draw z4{up}..{left}z5;
+% draw z5--z6--z7;
+ z5 = (0, 0.5[y6,y7]);
+ z6 = (0, mxheight);
+ z7 = (0, y6-.3mxtop);
+ draw z4{up}..{left}z5;
+ draw z6--z7;
+% end correction
+ penlabels(range 1 thru 7);
+endchar;
+
+
+
+%% c %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "c - can";
+beginchar("c", mxzw#+mxone#+.5mxhalf#, mxlittle#, mxlow#);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pen;
+ z1 = (.5mxhalf, mxlittle);
+ z2 = (0, .5mxthird);
+ z3 = (mxhalf, -mxlow);
+ z4 = (mxone+.5mxhalf, -.4mxlow);
+ z5 = (x4-mxhalf, y2);
+ draw z1..{down}z2..{right}z3..{up}z4..{left}z5;
+
+ z6 = (x4, 1.2mxthird);
+ z7 = (x5, y1);
+ draw z5{right}..{up}z6..{dir 135}z7;
+
+ penlabels(range 1 thru 7);
+endchar;
+
+
+%% %% .c %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% mxedchar ".c - .cil (oct000)";
+%% beginchar(oct"000", mxzw#+mxone#+mxhalf#, mxheight#, mxlow#);
+%% if known cmbase: adjust_fit(0,0); fi
+%% pickup mxed_pen;
+%% z1 = (0, mxheight-.5mxtop);
+%% z2 = (.5mxone+.5mxhalf, -mxlow);
+%% z3 = (.4[z1,z2]);
+%% z4 = (mxone+mxhalf, y3);
+%% x5 = .5[x3,x4];
+%% y5 = y4+mxthird;
+%% z6 = (.5[x1, x7], mxheight);
+%% z7 = (x2, y1);
+%% z8 = (.5[x7, x9], y6);
+%% z9 = (x4, y1);
+%% draw z1--z2--z4..{left}z5..{(z2-z1)}z3;
+%% draw z1..{right}z6..{down}z7;
+%% draw z7..{right}z8..{down}z9;
+%% penlabels(range 1 thru 9);
+%% endchar;
+
+
+%% .c %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar ".c - .cil (oct000)";
+beginchar(oct"000", mxzw#+mxone#+mxhalf#, mxheight#, mxlow#);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pen;
+ z1 = (0, mxheight-.5mxtop);
+ z9 = (mxone+mxhalf, y1);
+ z2 = (.5[x1,x9], -mxlow);
+ z3 = (.4[z1,z2]);
+ z4 = (.4[z9,z2]);
+ z7 = (x2, y1);
+ z6 = (.5[x1, x7], mxheight);
+ z8 = (.5[x7, x9], y6);
+ draw z1--z2--z4--z3;
+ draw z1{up}..{right}z6..{down}z7;
+ draw z7{up}..{right}z8..{down}z9;
+ penlabels(range 1 thru 9);
+endchar;
+
+%% ^c %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "^c - ^cin (+c, oct001)";
+beginchar(oct"001", mxzw#+mxone#, mxheight#, 0);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pen;
+ z1 = (0, 0);
+ z2 = (0, .5mxlittle);
+ z3 = (mxhalf, mxlittle);
+ z4 = (mxone, y2);
+ z5 = (mxone-mxfeet, 0);
+ draw z1..{up}z2..{right}z3..{down}z4..z5;
+
+ z6 = (0, mxheight-.05mxtop);
+ z9 = (mxhalf, mxheight);
+ z7 = (x4-.5mxhalf,mxheight-.25mxtop);
+ z10 = (x9, mxheight-.5mxtop);
+ z8 = (0, mxheight-.45mxtop);
+ draw z2--z6;
+ draw z6..{right}z9..{down}z7..{left}z10..z8;
+
+ penlabels(range 1 thru 8);
+endchar;
+
+
+%% ^.c %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "^.c - ^.car (,c .+c oct014)";
+beginchar(oct"014", mxzw#+1.2mxone#, mxheight#, mxlow#); % war "y"
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pen;
+ z1 = (.5mxhalf, 0);
+ z2 = (0, -.5mxlow);
+ z3 = (mxhalf, -mxlow);
+ z4 = (mxone, y2);
+ z5 = (.75mxone, mxthird);
+ z6 = (x5, mxheight);
+ z7 = (x1, mxheight-.5mxtop);
+ draw z1{dir -135}..{down}z2..{right}z3..{up}z4..{up}z5--z6--z7;
+
+ z8 = (x5, .5mxlittle); % z10 and z11 should be 45 degree NE/SE
+ z9 = (x1, y8);
+ z10 = (x5+.7mxhalf, y8+.7mxhalf);
+ z11 = (x5+.7mxhalf, y8-.7mxhalf);
+ draw z10--z8..{up}z9..z8--z11;
+
+ penlabels(range 1 thru 11);
+endchar;
+
+%% d %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "d - don";
+beginchar("d", mxzw#+2mxone#, mxlittle#, mxlow#);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pen;
+ z1 = (mxone, .5mxlittle);
+ z2 = (mxone+mxhalf, 0);
+ z3 = (mxone+mxone, y1);
+ z4 = (x2, mxlittle);
+ z5 = (x1, mxmiddle);
+ draw z1{down}..{right}z2..{up}z3..{left}z4..{down}z5..cycle;
+
+ z6 = (mxhalf, y4);
+ z7 = (0, y1);
+ z8 = (mxfeet, 0);
+ draw z5{up}..{left}z6..{down}z7..z8;
+
+ z9 = (x3, -mxlow);
+ draw z8..{dir -50}z9;
+ penlabels(range 1 thru 10);
+endchar;
+
+%% e %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "e - en";
+beginchar("e", mxzw#+mxone#, mxlittle#, mxlow#);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pen;
+ z1 = (0, -.5mxlow);
+ z2 = (mxhalf, -mxlow);
+ z3 = (mxone, 0);
+ z4 = (x3, mxmiddle);
+ z5 = (x2, mxlittle);
+ z6 = (0, y4);
+ draw z1{down}..{right}z2..{up}z3--z4..{left}z5..z6;
+
+ penlabels(range 1 thru 6);
+endchar;
+
+%% g %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "g - gan";
+beginchar("g", mxzw#+mxone#, mxlittle#, mxlow#);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pen;
+ z2 = (mxhalf, -mxlow);
+ z4 = (x2, mxthird);
+ z1 = (0, .5[y2,y4]); % y was -.5mxlow
+ z3 = (mxone, y1);
+ draw z1{down}..{right}z2..{up}z3..{left}z4..cycle;
+
+ z5 = (x3-.3mxhalf, mxmiddle);
+ z6 = (x4, mxlittle);
+ z7 = (.3mxhalf, y5);
+ draw z4{right}..{up}z5..{left}z6..{down}z7;
+ penlabels(range 1 thru 7);
+endchar;
+
+
+
+%% .g %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar ".g - .gan (oct002)";
+beginchar(oct"002", mxzw#+2mxone#, mxlittle#, mxlow#);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pen;
+ z1 = (mxfeet, 0);
+ z2 = (0, .5mxlittle);
+ z3 = (mxhalf, mxlittle);
+ z4 = (mxone, mxmiddle);
+ z5 = (mxone+mxhalf, y3);
+ z6 = (2mxone, y2);
+ z7 = (2mxone-mxfeet, 0);
+ z8 = (x6, -mxlow);
+ draw z1..{up}z2..{right}z3..{down}z4;
+ draw z4{up}..{right}z5..{down}z6..z7;
+ draw z1..{dir -50}z8;
+ penlabels(range 1 thru 8);
+endchar;
+
+
+%% h %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "h - ha";
+beginchar("h", mxzw#+mxone#, mxheight#, 0);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pen;
+ z1 = (0, mxthird);
+ z2 = (mxhalf, 0);
+ z3 = (mxone, .5mxlittle);
+ z4 = (.75mxone, 5/6mxlittle);
+ z5 = (.75mxhalf, y4);
+ draw z1{dir -80}..{right}z2..{up}z3..{left}z4--z5;
+
+ z6 = (x3, mxlittle);
+ z7 = (x4, 7/6mxlittle);
+ z8 = (x5, y7);
+ draw z4..{up}z6..{left}z7--z8;
+
+ z9 = (x6, 8/6mxlittle);
+ z10= (0, mxheight);
+ draw z7..{up}z9..{dir 110}z10;
+
+ penlabels(range 1 thru 10);
+endchar;
+
+%% i %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "i - in";
+beginchar("i", mxzw#+mxone#, mxlittle#, 0);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pen;
+ z1 = (mxfeet, 0);
+ z2 = (0, .5mxlittle);
+ z3 = (mxhalf, mxlittle);
+ z4 = (mxone, y2);
+ z5 = (mxone-mxfeet, 0);
+ draw z1..{up}z2..{right}z3..{down}z4..z5;
+ penlabels(range 1 thru 5);
+endchar;
+
+
+%% i1 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "i1 - short i, (Old Georgian), oct012";
+beginchar(oct"012", mxzw#+mxone#+mxhalf#, mxlittle#, 0);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pen;
+ z1 = (0, 0);
+ z2 = (1.5mxhalf, .15mxthird); % y2 war .5mxthird
+ z4 = (x2, mxlittle);
+ z3 = (mxone+.5mxhalf, .5[y2,y4]);
+ z5 = (.5mxhalf, y3);
+ z6 = (mxone+mxhalf, y1);
+ draw z1..z2..z3..z4..z5..z2..z6;
+ penlabels(range 1 thru 6);
+endchar;
+
+
+%% %% i1 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% mxedchar "i1 - short i, (Old Georgian), oct012";
+%% beginchar(oct"012", mxzw#+mxone#, mxlittle#, 0);
+%% if known cmbase: adjust_fit(0,0); fi
+%% pickup mxed_pen;
+%% z1 = (0, 0);
+%% z2 = (mxhalf, .15mxthird); % y2 war .5mxthird
+%% z4 = (x2, mxlittle);
+%% z3 = (mxone, .5[y2,y4]);
+%% z5 = (0, y3);
+%% z6 = (x3, y1);
+%% draw z1..z2..z3..z4..z5..z2..z6;
+%% penlabels(range 1 thru 6);
+%% endchar;
+
+
+%% ^dz %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% mxedchar "^dz/^j - ^jan (oct010)";
+% beginchar(oct"010", mxzw#+1.75mxone#, mxlittle#, mxlow#);
+% if known cmbase: adjust_fit(0,0); fi
+% pickup mxed_pen;
+% z1 = (0, -.5mxlow);
+% z3 = (1.5mxhalf, y1);
+% z2 = (.5[x1,x3], -mxlow);
+% z4 = (1.2mxhalf, 0);
+% z5 = (1.75mxone, mxlittle);
+% draw z1{down}..{right}z2..{up}z3..z4;
+% draw z4--z5;
+%
+% z6 = (.3mxhalf, 5/6mxlittle);
+% z7 = (mxhalf, mxlittle);
+% z8 = (1.5mxone, 0);
+% z9 = (x5, .5mxthird);
+% draw z6{up}..{right}z7..{right}z8..{dir 45}z9;
+%
+% penlabels(range 1 thru 9);
+% endchar;
+
+%% ^dz %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "^dz/^j - ^jan (oct010)";
+beginchar(oct"010", mxzw#+1.75mxone#, mxlittle#, mxlow#);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_penturned;
+ %z1 = (0, -.5mxlow);
+
+ z4 = rt (0, 0);
+ z2 = (x4, -mxlow);
+ z3 = (mxhalf, .5[y2,y4]);
+
+ draw z2{right}..{up}z3..{left}z4;
+ z5 = (x4+1.75mxone, mxlittle);
+ draw z4{curl 1}..z5;
+ pickup mxed_pen;
+
+ %z6 = (x4+.3mxhalf, 5/6mxlittle);
+ z6 = rt (0, 5/6mxlittle);
+ z7 = (x6+.7mxhalf, mxlittle);
+ z8 = (x4+1.5mxone, 0);
+ z9 = (x5, .5mxthird);
+ draw z6{up}..{right}z7..{right}z8..{up}z9;
+
+ penlabels(range 1 thru 9);
+endchar;
+
+
+%% dz %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "dz (j) - dzil";
+beginchar("j", mxzw#+mxone#, mxheight#, 0);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pen;
+ z1 = (0, .5mxlittle);
+ z2 = (mxhalf, 0);
+ z3 = (mxone, y1);
+ z4 = (x2, mxlittle);
+ draw z1{down}..{right}z2..{up}z3..{left}z4..cycle;
+
+ z5 = (x3, mxheight);
+ draw z3--z5;
+ penlabels(range 1 thru 5);
+endchar;
+
+
+%% k %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "k - kan";
+beginchar("k", mxzw#+mxone#, mxheight#, mxlow#);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pen;
+ z1 = (0, mxthird);
+ z2 = (mxhalf, 2mxthird);
+ z3 = (mxone, 1.5mxthird);
+ z4 = (x3, -.5mxlow);
+ z5 = (x2, -mxlow);
+ z6 = (x1, y4);
+ z7 = (x3, mxheight);
+ z8 = z7 - (mxhalf, mxthird);
+ draw z1..z2..{down}z3--z4{down}..{left}z5..{up}z6;
+ draw z3--z7--z8;
+ penlabels(range 1 thru 8);
+endchar;
+
+
+%% .k %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% mxedchar ".k - .kan (oct003)";
+%% beginchar(oct"003", mxzw#+mxone#, mxlittle#, 1.5mxlow#);
+%% if known cmbase: adjust_fit(0,0); fi
+%% pickup mxed_pen;
+%% z1 = (0, -mxlow);
+%% % z1 = (0, -.66mxlow);
+%% z2 = (mxhalf, -1.5mxlow);
+%% % z2 = (mxhalf, -mxlow);
+%% z3 = (mxone, -.75mxlow);
+%% % z3 = (mxone, -.5mxlow);
+%% z4 = (x2, 0);
+%% z5 = (0, -1/6mxlittle);
+%% draw z1{down}..{right}z2..{up}z3..{left}z4..z5;
+%%
+%% z6 = (x3, .75mxthird);
+%% z7 = (x6, mxlittle);
+%% draw z4{right}..{up}z6--z7;
+%%
+%% penlabels(range 1 thru 7);
+%% endchar;
+
+% mxedchar ".k - .kan (oct003)";
+% beginchar(oct"003", mxzw#+mxone#, mxheight#, 1mxlow#);
+% if known cmbase: adjust_fit(0,0); fi
+% pickup mxed_pen;
+% z1 = (0, -.5mxlow);
+% z2 = (mxhalf, -mxlow);
+% z3 = (mxone, -.25mxlow);
+% z4 = (x2, 1/3mxlittle);
+% z5 = (0, 1/6mxlittle);
+% draw z1{down}..{right}z2..{up}z3..{left}z4..z5;
+%
+% z6 = (x3, 1.75mxthird);
+% % z7 = (x6, 4/3mxlittle);
+% z7 = (x4, 4/3mxlittle);
+% % draw z4{right}..{up}z6--z7;
+% draw z4{right}..{up}z6..z7;
+%
+% penlabels(range 1 thru 7);
+% endchar;
+
+
+mxedchar ".k - .kan (oct003)";
+beginchar(oct"003", mxzw#+mxone#, mxheight#, 1mxlow#);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_penturned;
+ z1 = (0, -.25mxlow);
+ z2 = (mxhalf, -mxlow);
+ z4 = (x2, 2/3mxlittle);
+ %z3 = (mxone, -.25mxlow);
+ z3 = (mxone, .5[y2,y4]);
+ %z5 = (0, 1/6mxlittle);
+ draw z1{down}..{right}z2..{up}z3..{left}z4;
+
+ z7 = (x4, 4/3mxlittle);
+ z6 = (x3, .5[y4,y7]);
+% z7 = (x6, 4/3mxlittle);
+
+% draw z4{right}..{up}z6--z7;
+ draw z4{right}..{up}z6..z7;
+
+ penlabels(range 1 thru 7);
+endchar;
+
+
+%% l %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "l - las";
+beginchar("l", mxzw#+2.4mxone#, mxlittle#, mxlow#);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pen;
+ z1 = (mxfeet, 0);
+ z2 = (0, .5mxlittle);
+ z3 = (.8mxhalf, mxlittle);
+ z4 = (.8mxone, mxmiddle);
+ z9 = (.8mxone+.8mxhalf, y3);
+ z10= (1.6mxone, y4);
+ z5 = (1.6mxone+.8mxhalf, y3);
+ z6 = (2.4mxone, y2);
+ z7 = (2.4mxone-mxfeet, 0);
+ z8 = (x6, -mxlow);
+ draw z1..{up}z2..{right}z3..{down}z4;
+ draw z4{up}..{right}z9..{down}z10;
+ draw z10{up}..{right}z5..{down}z6..z7;
+ draw z1..{dir -50}z8;
+ penlabels(range 1 thru 10);
+endchar;
+
+
+%% m %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "m - man";
+beginchar("m", mxzw#+mxone#, mxheight#, 0);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pen;
+ z1 = (0, .5mxlittle);
+ z2 = (mxhalf, 0);
+ z3 = (mxone, y1);
+ z4 = (x2, mxlittle);
+ draw z1{down}..{right}z2..{up}z3..{left}z4..cycle;
+
+ z5 = (x3, mxheight-.5mxtop);
+ z6 = (x4, mxheight);
+ z7 = (0, y5);
+ draw z3..z5{up}..{left}z6..{down}z7;
+ penlabels(range 1 thru 7);
+endchar;
+
+
+%% n %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "n - nar";
+beginchar("n", mxzw#+mxone#, mxheight#, 0);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pen;
+ z1 = (0, .5mxlittle);
+ z2 = (mxhalf, 0);
+ z3 = (mxone, y1);
+ z4 = (x2, mxlittle);
+ draw z1{down}..{right}z2..{up}z3..{left}z4..cycle;
+
+ z5 = (0, mxheight-.25mxtop);
+ z6 = (.5mxhalf, mxheight);
+ z7 = (x3, y6+.2mxtop);
+ draw z1..z5{up}..{right}z6..{dir 75}z7;
+ penlabels(range 1 thru 7);
+endchar;
+
+
+%% o %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "o - on";
+beginchar("o", mxzw#+2mxone#, mxlittle#, 0);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pen;
+ z1 = (mxfeet, 0);
+ z2 = (0, .5mxlittle);
+ z3 = (mxhalf, mxlittle);
+ z4 = (mxone, mxmiddle);
+ z5 = (mxone+mxhalf, y3);
+ z6 = (2mxone, y2);
+ z7 = (2mxone-mxfeet, 0);
+ draw z1..{up}z2..{right}z3..{down}z4;
+ draw z4{up}..{right}z5..{down}z6..z7;
+ penlabels(range 1 thru 7);
+endchar;
+
+%% p %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "p - par";
+beginchar("p", mxzw#+2mxone#, mxlittle#, mxlow#);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pen;
+ z1 = (0, .5mxlittle);
+ z2 = (mxhalf, 0);
+ z3 = (mxone, y1);
+ z4 = (x3, mxmiddle);
+ z5 = (x2, mxlittle);
+ draw z1{down}..{right}z2..{up}z3..z4{up}..{left}z5..cycle;
+
+ z6 = (mxhalf+mxone, y5);
+ z7 = (2mxone, y1);
+ z8 = (x6, 0);
+ z9 = (x7, -.5mxlow);
+ z11= (.75mxone, y9);
+ z10= (.5[x11,x9], -mxlow);
+ draw z4{up}..{right}z6..{down}z7..{left}z8;
+ draw z8{right}..{down}z9..{left}z10..{dir 70}z11;
+ penlabels(range 1 thru 11);
+endchar;
+
+%% .p %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar ".p - .par (oct004)";
+beginchar(oct"004", mxzw#+mxone#, mxthird#+mxheight#, 0);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pen;
+ z1 = (0, mxthird);
+ z2 = (mxhalf, 0);
+ z3 = (mxone, .5mxlittle);
+ z4 = (x2, mxlittle);
+ z5 = (x1, y4);
+ draw z1{dir -80}..{right}z2..{up}z3..{left}z4--z5;
+
+ z6 = (x3, mxlittle+.4mxtop);
+ z7 = (x1, mxthird+mxheight);
+ draw z4..{up}z6..{dir 110}z7;
+
+ penlabels(range 1 thru 7);
+endchar;
+
+
+%% q %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar ".q - .qar";
+beginchar("q", mxzw#+mxone#, mxlittle#, mxlow#);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pen;
+ z1 = (mxfeet, mxlittle);
+ z2 = (0, .5mxlittle);
+ z3 = (mxhalf, 0);
+ z4 = (mxone, y2);
+ z5 = (x4 - mxfeet, y1);
+ draw z1..{down}z2..{right}z3..{up}z4..z5;
+
+ z6 = (x4, -.5mxlow);
+ z7 = (x3, -mxlow);
+ z8 = (x2, y6);
+ draw z4--z6..{left}z7..{up}z8;
+ penlabels(range 1 thru 8);
+endchar;
+
+%% r %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "r - ran";
+beginchar("r", mxzw#+2mxone#, mxthird#+mxheight#, 0);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pen;
+ z1 = (mxfeet, 0);
+ z2 = (0, .5mxlittle);
+ z3 = (mxhalf, mxlittle);
+ z4 = (mxone, mxmiddle);
+ z5 = (mxone+mxhalf, y3);
+ z6 = (2mxone, y2);
+ z7 = (2mxone-mxfeet, 0);
+ z8 = (x6, mxheight+mxthird);
+ draw z1..{up}z2..{right}z3..{down}z4;
+ draw z4{up}..{right}z5..{down}z6..z7;
+ draw z2{up}..{dir 70}z8;
+ penlabels(range 1 thru 8);
+endchar;
+
+
+%% s %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "s - san";
+beginchar("s", mxzw#+mxone#, mxheight#, 0);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pen;
+ z5 = (0, mxheight);
+ z1 = (0, .5mxlittle);
+ z2 = (mxhalf, 0);
+ z3 = (mxone, y1);
+ z4 = (1/3mxone, mxlittle);
+ draw z5--z1{down}..{right}z2..{up}z3..{up}z4;
+
+ penlabels(range 1 thru 5);
+endchar;
+
+
+
+%% ^s %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "^s - ^san (+s, oct005)";
+beginchar(oct"005", mxzw#+mxhalf#+mxone#, mxheight#, 0);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pen;
+ z1 = (mxhalf, .5mxlittle);
+ z2 = (mxhalf+mxhalf, 0);
+ z3 = (mxone+mxhalf, y1);
+ z4 = (x2, mxlittle);
+ draw z1{down}..{right}z2..{up}z3..{left}z4..cycle;
+
+ z5 = (x3, mxheight-.5mxtop);
+ z6 = (x4, mxheight);
+ z7 = (mxhalf, y5);
+ draw z3..z5{up}..{left}z6..{down}z7;
+
+ z8 = (0, y6);
+ draw z7{up}..{left}z8;
+ penlabels(range 1 thru 8);
+endchar;
+
+
+%% t %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "t - tan";
+beginchar("t", mxzw#+2mxone#, mxlittle#, 0);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pen;
+ z1 = (0, .5mxlittle);
+ z2 = (mxhalf, 0);
+ z3 = (mxone, y1);
+ z4 = (x3, mxmiddle);
+ z5 = (x2, mxlittle);
+ draw z1{down}..{right}z2..{up}z3..z4{up}..{left}z5..cycle;
+
+ z6 = (mxhalf+mxone, y5);
+ z7 = (2mxone, y1);
+ z8 = (x7-.mxfeet, 0);
+ draw z4{up}..{right}z6..{down}z7..z8;
+ penlabels(range 1 thru 8);
+endchar;
+
+
+%% .t %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar ".t - tar (oct006)";
+beginchar(oct"006", mxzw#+mxone#+mxhalf#, mxheight#, mxlow#);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pen;
+ z1 = (0, .3mxlittle);
+ z2 = (.5mxhalf+.5mxone, -mxlow);
+ z3 = (mxone+mxhalf, y1);
+ z4 = (x2, mxlittle);
+ draw z1{down}..{right}z2..{up}z3..{left}z4..cycle;
+
+ z5 = (x4, y4-1.2mxthird);
+ z6 = (x4, y4+1.2mxthird);
+ draw z4{left}..{right}z5..cycle;
+ draw z4{left}..{right}z6..cycle;
+ penlabels(range 1 thru 6);
+endchar;
+
+
+
+%% u %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "u - un";
+beginchar("u", mxzw#+2.1mxone#, mxlittle#, mxlow#);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pen;
+ z1 = (0, mxlittle);
+ z5 = (.9mxone, y1);
+ z2 = (.5[x1,x5], 2.4mxthird);
+ z6 = (1.3mxone, 2mxthird);
+ z7 = (x6, .5mxlittle);
+ draw z1..z2..{right}z5..{down}z6--z7;
+
+ z8 = (1.3mxone+.8mxhalf, y5);
+ z9 = (2.1mxone, y6);
+ z10= (x9, 0);
+ z11= (x6, -mxlow);
+ z12= (x2, -.5mxlow);
+ draw z6{dir 75}..{right}z8..{down}z9--z10..{left}z11..{up}z12;
+ penlabels(range 1 thru 12);
+endchar;
+
+
+%% v %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "v - vin";
+beginchar("v", mxzw#+mxone#, mxlittle#, mxlow#);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pen;
+ z1 = (0, mxmiddle);
+ z2 = (mxhalf, mxlittle);
+% z3 = (mxone, .5mxlittle);
+ z3 = (mxone, .5[y4,y2]);
+% Esthetic correction JDL (8/5/94)
+% z4 = (x2, 0);
+ z4 = (x2, .375y1);
+% end of esthetic correction
+% z5 = (0, 1/6mxlittle);
+ draw z1{up}..{right}z2..{down}z3..{left}z4; % ..z5;
+
+% z6 = (x3, -.5mxlow);
+ z6 = (x3, .5[y4,y7]);
+% Correction by JDL (8/5/94)
+% z7 = (x2, -1.5mxlow);
+% z8 = (0, -mxlow);
+ z7 = (x2, -mxlow);
+ z8 = (0, y6);
+ draw z4{right}..{down}z6..{left}z7..{up}z8;
+
+ penlabels(range 1 thru 7);
+endchar;
+
+
+%% x %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "x - xan";
+beginchar("x", mxzw#+mxone#, mxheight#, 0);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pen;
+ z1 = (0, .5mxlittle);
+ z2 = (mxhalf, 0);
+ z3 = (mxone, y1);
+ z4 = (x2, 5/6mxlittle);
+ z6 = (x1, y4);
+ draw z1{down}..{right}z2..{up}z3..{left}z4..z6;
+
+ z5 = (0, mxheight);
+ draw z1--z5;
+
+ z7 = z6 +(1mxu, 1mxu);
+ draw z6--z7;
+ penlabels(range 1 thru 7);
+endchar;
+
+
+%% z %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "z - zen";
+beginchar("z", mxzw#+2mxone#, mxheight#, 0);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pen;
+ z1 = (.75mxone, .5mxlittle);
+ z2 = (.75mxone+mxhalf, 0);
+ z3 = (.75mxone+mxone, y1);
+ z4 = (x2, 5/6mxlittle);
+ z6 = (x1, y4);
+ draw z1{down}..{right}z2..{up}z3..{left}z4..z6;
+
+ z5 = (.75mxone, mxheight-.5mxtop);
+ z11= (x5, mxheight);
+ z8 = (mxhalf, y11);
+ z9 = (0, y5);
+ z10 =(.5[x9,x5], mxheight-mxtop);
+% draw z1--z11..{left}z8..{down}z9..{right}z10..{up}z5;
+ draw z1--z5{up}..{left}z8..{down}z9..{right}z10..{up}z5;
+ z7 = z6 + (1mxu, 1mxu);
+ draw z6--z7;
+ penlabels(range 1 thru 10);
+endchar;
+
+%% %% z %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% mxedchar "z - zen";
+%% beginchar("z", mxzw#+2mxone#, mxheight#, 0);
+%% if known cmbase: adjust_fit(0,0); fi
+%% pickup mxed_pen;
+%% z1 = (mxone, .5mxlittle);
+%% z2 = (mxone+mxhalf, 0);
+%% z3 = (mxone+mxone, y1);
+%% z4 = (x2, 5/6mxlittle);
+%% z6 = (x1, y4);
+%% draw z1{down}..{right}z2..{up}z3..{left}z4..z6;
+%%
+%% z5 = (mxone, mxheight-.5mxtop);
+%% z11= (x5, mxheight);
+%% z8 = (mxhalf, y11);
+%% z9 = (0, y5);
+%% z10 =(x8, mxheight-mxtop);
+%% draw z1--z11..{left}z8..{down}z9..{right}z10..{up}z5;
+%%
+%% z7 = z6 + (1.8mxu, 1.8mxu);
+%% draw z6--z7;
+%% penlabels(range 1 thru 10);
+%% endchar;
+
+
+%% ^z %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "^z - ^zan (+z, oct007)";
+beginchar(oct"007", mxzw#+mxone#, mxlittle#, mxlow#);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pen;
+ z1 = (0, mxthird);
+ z2 = (.5mxhalf, 0);
+ z3 = (mxhalf, y1);
+ z4 = (mxone, mxlittle);
+ draw z1{down}..{right}z2..{up}z3..{up}z4;
+
+ z5 = (x4, -.5mxlow);
+ z6 = (x3, -mxlow);
+ z7 = (0, y5);
+ draw z4--z5..{left}z6..{up}z7;
+ penlabels(range 1 thru 7);
+endchar;
+
+
+%% f %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "f, (Ossetian)";
+beginchar("f", mxzw#+mxone#+mxhalf#, mxheight#, mxlow#);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pen;
+ z1 = (0, .5mxlittle);
+ z2 = (1.5mxone, y1);
+ draw z1..z2..cycle;
+
+ z3 = (0, 4mxthird);
+ z31 = (1/3mxone, 5mxthird);
+ z4 = (1.5mxhalf, y1);
+ z51 = (7/6mxone, -mxlow);
+ z5 = (1.5mxone, -.5mxlow);
+% draw z3{dir 45}..z4..{dir 45}z5;
+ draw z3{up}..{right}z31..{down}z4..{right}z51..{up}z5;
+
+ penlabels(range 1 thru 5, 31, 51);
+endchar;
+
+
+%% oo %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "oo - ho, (Old Georgian), oct011";
+beginchar(oct"011", mxzw#+mxone#+mxhalf#, mxheight#, 0);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pen;
+ z1 = (mxone+mxhalf, 2/3mxlittle);
+ z8 = (x1, mxlittle);
+ z2 = (mxhalf, y1);
+ z7 = (x2, y8);
+ z3 = (x2, 0);
+ z6 = (x2, mxheight);
+ z4 = (mxone, .7mxthird);
+ z5 = (x4, mxheight-.7mxthird);
+ draw z1--z2{left}..z3..{up}z4--z5{up}..z6..{right}z7--z8;
+ penlabels(range 1 thru 8);
+endchar;
+
+
+%% w %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "w - wi, (Old Georgian)";
+beginchar("w", mxzw#+mxone#, mxheight#, mxlow#);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pen;
+ z1 = (.5mxhalf, 2/3mxlittle);
+ z2 = (mxone, y1);
+ z3 = (x1, .4mxthird);
+ z4 = (x2, -.4mxlow);
+ z5 = (mxhalf, -mxlow);
+ z6 = (0, -.75mxlow);
+ draw z1--z2--z3{dir 30}..{down}z4..{left}z5..z6;
+ penlabels(range 1 thru 6);
+endchar;
+
+
+%% Schwa %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "y - Schwa, (Ossetian)";
+beginchar("y", mxzw#+mxone#, mxlittle#, mxlow#);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_pen;
+ z1 = (0, 2mxthird);
+ z2 = (mxone, y1);
+ z3 = (0, -.5mxlow);
+ z4 = (x2, y3);
+ draw z1{up}..{down}z2..{down}z3..{up}z4;
+ penlabels(range 1 thru 4);
+endchar;
+
+endinput;
diff --git a/fonts/georgian/mxedruli/mf/mxedi10.mf b/fonts/georgian/mxedruli/mf/mxedi10.mf
new file mode 100644
index 0000000000..d46255333e
--- /dev/null
+++ b/fonts/georgian/mxedruli/mf/mxedi10.mf
@@ -0,0 +1,122 @@
+% Mxedruli Font 10 point Italics `mxedi10.mf'
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Designed by Johannes Heinecke %
+% <johannes.heinecke@wanadoo.fr> %
+% This software is under the LaTeX Project Public License %
+% Please send any improvements, corrections, suggestions, enhancements etc %
+% to the Author! %
+% %
+% Version 2.4 as of 15th July 1996 %
+% %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% Based on the parameters as in CMTI10
+
+% if unknown cmbase: input cmbase fi
+if unknown mxedbase: input mxedbase fi
+
+font_identifier:="MXED"; font_size 10pt#;
+
+u#:=20/36pt#; % unit width
+if known cmbase:
+width_adj#:=0pt#; % width adjustment for certain characters
+serif_fit#:=0pt#; % extra sidebar near lowercase serifs
+cap_serif_fit#:=5/36pt#; % extra sidebar near uppercase serifs
+letter_fit#:=9.2/36pt#; % extra space added to all sidebars
+
+body_height#:=270/36pt#; % height of tallest characters
+asc_height#:=250/36pt#; % height of lowercase ascenders
+cap_height#:=246/36pt#; % height of caps
+fig_height#:=232/36pt#; % height of numerals
+x_height#:=155/36pt#; % height of lowercase without ascenders
+math_axis#:=90/36pt#; % axis of symmetry for math symbols
+bar_height#:=87/36pt#; % height of crossbar in lowercase e
+comma_depth#:=70/36pt#; % depth of comma below baseline
+desc_depth#:=70/36pt#; % depth of lowercase descenders
+
+crisp#:=8/36pt#; % diameter of serif corners
+tiny#:=8/36pt#; % diameter of rounded corners
+fine#:=7/36pt#; % diameter of sharply rounded corners
+thin_join#:=7/36pt#; % width of extrafine details
+hair#:=11/36pt#; % lowercase hairline breadth
+stem#:=23/36pt#; % lowercase stem breadth
+curve#:=28/36pt#; % lowercase curve breadth
+ess#:=27/36pt#; % breadth in middle of lowercase s
+flare#:=29/36pt#; % diameter of bulbs or breadth of terminals
+dot_size#:=38/36pt#; % diameter of dots
+cap_hair#:=11/36pt#; % uppercase hairline breadth
+cap_stem#:=29/36pt#; % uppercase stem breadth
+cap_curve#:=34/36pt#; % uppercase curve breadth
+cap_ess#:=31/36pt#; % breadth in middle of uppercase s
+rule_thickness#:=.4pt#; % thickness of lines in math symbols
+
+dish#:=1/36pt#; % amount erased at top or bottom of serifs
+bracket#:=20/36pt#; % vertical distance from serif base to tangent
+jut#:=30/36pt#; % protrusion of lowercase serifs
+cap_jut#:=34/36pt#; % protrusion of uppercase serifs
+beak_jut#:=9/36pt#; % horizontal protrusion of beak serifs
+beak#:=70/36pt#; % vertical protrusion of beak serifs
+vair#:=8/36pt#; % vertical diameter of hairlines
+notch_cut#:=10pt#; % maximum breadth above or below notches
+bar#:=11/36pt#; % lowercase bar thickness
+slab#:=11/36pt#; % serif and arm thickness
+cap_bar#:=11/36pt#; % uppercase bar thickness
+cap_band#:=11/36pt#; % uppercase thickness above/below lobes
+cap_notch_cut#:=10pt#; % max breadth above/below uppercase notches
+serif_drop#:=4/36pt#; % vertical drop of sloped serifs
+stem_corr#:=1/36pt#; % for small refinements of stem breadth
+vair_corr#:=1/36pt#; % for small refinements of hairline height
+apex_corr#:=0pt#; % extra width at diagonal junctions
+
+o#:=8/36pt#; % amount of overshoot for curves
+apex_o#:=8/36pt#; % amount of overshoot for diagonal junctions
+
+slant:=.25; % tilt ratio $(\Delta x/\Delta y)$
+fudge:=1; % factor applied to weights of heavy characters
+math_spread:=0; % extra openness of math symbols
+superness:=1/sqrt2; % parameter for superellipses
+superpull:=1/6; % extra openness inside bowls
+beak_darkness:=11/30; % fraction of triangle inside beak serifs
+ligs:=2; % level of ligatures to be included
+
+square_dots:=false; % should dots be square?
+hefty:=false; % should we try hard not to be overweight?
+serifs:=true; % should serifs and bulbs be attached?
+monospace:=false; % should all characters have the same width?
+variant_g:=true; % should an italic-style g be used?
+low_asterisk:=false; % should the asterisk be centered at the axis?
+math_fitting:=false; % should math-mode spacing be used?
+
+fi
+
+% These are the real Mxedruli Parameters
+boolean mxcap;
+mxcap:=false; % No capitals
+mxu#:= 2.5u#; % was 2.7u# % the unit, which where used to design this fonts
+mxlittle#:= 3mxu#; % height of letters without ascenders
+mxtop#:= 2mxu#; % the height of the ascenders
+mxheight#:=mxtop#+mxlittle#;
+mxhalf#:=mxu#; % Half width of the letter 'a'
+mxone#:=2mxhalf#;
+mxmiddle#:=2/3mxlittle#; % strokes not reaching the baseline, as in 'o'
+mxthird#:=1/3mxlittle#;
+mxfeet#:= .4mxhalf#; % The feet of 'i' and 'o' etc are slightly
+ % bent to the middle
+mxlow#:= 1.8mxu#; %war 2mxu# % max depth below the baseline
+mxzw#:= .65mxu#; % Seperation of two letters
+
+
+px1#:=.18mxu#; % pen 1 xscaling
+py1#:=.60mxu#; % pen 1 yscaling
+
+dpx1#:=px1#; % digitpen xscaling
+dpy1#:=py1#; % digitpen yscaling
+pdot#:=.74mxu#; % pen for dots
+pdash#:=.40mxu#; % pen for dashes
+
+
+slant:=.25;
+
+input mxed; % switch to the driver file
+bye.
diff --git a/fonts/georgian/mxedruli/mf/mxedp.mf b/fonts/georgian/mxedruli/mf/mxedp.mf
new file mode 100644
index 0000000000..f8091705fc
--- /dev/null
+++ b/fonts/georgian/mxedruli/mf/mxedp.mf
@@ -0,0 +1,247 @@
+% Mxedruli punctuation `mxedp.mf'
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Designed by Johannes Heinecke %
+% <johannes.heinecke@wanadoo.fr> %
+% This software is under the LaTeX Project Public License %
+% Please send any improvements, corrections, suggestions, enhancements etc %
+% to the Author! %
+% %
+% Version 2.0 as of 16th June 1995 %
+% %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%% Character Definitions: %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+
+
+%% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "+";
+beginchar("+", mxzw#+mxone#, mxone#, 0);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup mxed_dash;
+ z1 = (0, .5mxone);
+ z2 = (mxone, y1);
+ draw z1--z2;
+
+ z3 = (.5[x1, x2], 0);
+ z4 = (x3, mxone);
+ draw z3--z4;
+
+ penlabels(range 1 thru 4);
+endchar;
+
+%% = %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "Equals sign =";
+beginchar("=", mxzw#+1.5mxone#, mxlittle#, 0);
+ pickup mxed_dash;
+ lft z1 = (0, 1.5mxthird);
+ rt z2 = (1.5mxone, y1);
+ lft z3 = (0, 2.5mxthird);
+ rt z4 = (1.5mxone, y3);
+ draw z1--z2;
+ draw z3--z4;
+ penlabels(range 1 thru 4);
+endchar;
+
+%% / %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "Slash /";
+beginchar("/", mxzw#+1.5mxone#, mxlittle#, 0);
+ pickup mxed_dash;
+ z1 = (0,0);
+ z2 = (1.5mxone, mxheight);
+ draw z1--z2;
+ penlabels(1,2);
+endchar;
+
+%% \ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "Backslash \ ";
+beginchar("\", mxzw#+1.5mxone#, mxlittle#, 0);
+ pickup mxed_dash;
+ z1 = (0,mxheight);
+ z2 = (1.5mxone, 0);
+ draw z1--z2;
+ penlabels(1,2);
+endchar;
+
+
+
+%% - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "-";
+beginchar("-", mxzw#+mxone#, mxlittle#, 0);
+ pickup mxed_dash;
+ z1 = (0, mxmiddle);
+ z2 = (mxone, y1);
+ draw z1--z2;
+ penlabels(range 1 thru 2);
+endchar;
+
+%% -- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "-- (123)";
+beginchar(123, mxzw#+1.5mxone#, mxlittle#, 0);
+ pickup mxed_dash;
+ z1 = (0, mxmiddle);
+ z2 = (1.5mxone, y1);
+ draw z1--z2;
+ penlabels(range 1 thru 2);
+endchar;
+
+%% --- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "--- (124)";
+beginchar(124, mxzw#+2mxone#, mxlittle#, 0);
+ pickup mxed_dash;
+ z1 = (0, mxmiddle);
+ z2 = (2mxone, y1);
+ draw z1--z2;
+ penlabels(range 1 thru 2);
+endchar;
+
+%% . %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "Period .";
+beginchar(".", mxzw#+mxhalf#, mxlittle#, 0);
+ pickup mxed_dot;
+ lft z1 = (0, 0);
+ drawdot z1;
+ penlabels(1);
+endchar;
+
+%% : %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "Colon :";
+beginchar(":", mxzw#+mxhalf#, mxlittle#, 0);
+ pickup mxed_dot;
+ lft z1 = (0, mxthird);
+ lft z2 = (0, 2.5mxthird);
+ drawdot z1;
+ drawdot z2;
+ penlabels(range 1 thru 2);
+endchar;
+
+%% ; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "Semicolon ;";
+beginchar(";", mxzw#+pdot#, mxlittle#, .6mxlow#);
+ pickup mxed_dot;
+ lft z1 = (0, 0);
+ z4 = (x1, .5mxlittle);
+ drawdot z1;
+ drawdot z4;
+
+ pickup mxed_digitpen;
+ rt z2 = (pdot, -1/12mxlow);
+ z3 = (0, -.6mxlow);
+% draw z2{dir -45}..{dir -135}z3;
+ draw z2{down}..{dir -135}z3;
+ penlabels(range 1 thru 4);
+endchar;
+
+
+%% , %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "Comma ,";
+beginchar(",", mxzw#+pdot#, mxlittle#, .6mxlow#);
+ pickup mxed_dot;
+ lft z1 = (0, 0);
+ drawdot z1;
+
+ pickup mxed_digitpen;
+ rt z2 = (pdot, y1-1/12mxlow);
+ z3 = (0, -.6mxlow);
+ draw z2{down}..{dir -135}z3;
+ penlabels(range 1 thru 3);
+endchar;
+
+
+%% ' %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "Apostroph '";
+beginchar("'", mxzw#+pdot#, mxheight#, 0#);
+ pickup mxed_dot;
+ lft z1 = (0, mxheight);
+ drawdot z1;
+
+ pickup mxed_digitpen;
+ rt z2 = (pdot, y1-1/12mxlow);
+ z3 = (0, mxheight-.6mxlow);
+ draw z2{down}..{dir -135}z3;
+ penlabels(range 1 thru 3);
+endchar;
+
+%% ? %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "Question mark ?";
+beginchar("?", mxzw#+mxone#, mxheight#, 0);
+ pickup mxed_dot;
+ z1 = (mxhalf, 0);
+ drawdot z1;
+
+ pickup mxed_digitpen;
+ z2 = (0, mxheight-.5mxtop);
+ z3 = (x1, mxheight);
+ z4 = (mxone, y2);
+ z5 = (x1, mxmiddle);
+ z6 = (x5, 1.2mxthird);
+
+ draw z2{up}..{right}z3..{down}z4..{down}z5--z6;
+ penlabels(1,2,3,4,5);
+endchar;
+
+%% ! %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "Exclamation mark !";
+beginchar("!", mxzw#+.5mxhalf#, mxheight#, 0);
+ pickup mxed_dot;
+ lft z1 = (0, 0);
+ drawdot z1;
+
+ z2 = (x1, mxheight-.5pdot); penpos2(pdot, 0);
+ drawdot z2;
+ z3 = (x1, mxmiddle); penpos3(px1, 0);
+ penstroke z2e..z3e;
+ penlabels(1,2,3);
+endchar;
+
+%% ( %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "Left parenthesis (";
+beginchar("(", mxzw#+mxhalf#, 1.1mxheight#, .1mxheight#);
+ z1 = (.5pdot+mxhalf, 1.1mxheight); penpos1(dpx1, 0);
+ z3 = (x1, -.1mxheight); penpos3(dpx1, 0);
+ z2 = (.5pdot, .5[y1, y3]); penpos2(pdot, 0);
+ penstroke z1e..z2e..z3e;
+ penlabels(range 1 thru 4);
+endchar;
+
+
+%% ) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "Right parenthesis )";
+beginchar(")", mxzw#+mxhalf#, 1.1mxheight#, .1mxheight#);
+ z1 = (0, 1.1mxheight); penpos1(dpx1, 0);
+ z3 = (x1, -.1mxheight); penpos3(dpx1, 0);
+ z2 = (mxhalf, .5[y1, y3]); penpos2(pdot, 0);
+ penstroke z1e..z2e..z3e;
+ penlabels(range 1 thru 4);
+endchar;
+
+%% [ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "Left bracket [";
+beginchar("[", mxzw#+mxhalf#, 1.1mxheight#, .1mxheight#);
+ pickup mxed_square;
+ z1 = (mxhalf, -.1mxheight);
+ z2 = (0, y1);
+ z3 = (0, 1.1mxheight);
+ z4 = (x1, y3);
+ draw z1--z2--z3--z4;
+ penlabels(range 1 thru 4);
+endchar;
+
+%% ] %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mxedchar "Right bracket ]";
+beginchar("]", mxzw#+mxhalf#, 1.1mxheight#, .1mxheight#);
+ pickup mxed_square;
+ z1 = (0, -.1mxheight);
+ z2 = (mxhalf, y1);
+ z3 = (x2, 1.1mxheight);
+ z4 = (0, y3);
+ draw z1--z2--z3--z4;
+ penlabels(range 1 thru 4);
+endchar;
+
+
+endinput; \ No newline at end of file
diff --git a/fonts/georgian/mxedruli/mf/xuc.mf b/fonts/georgian/mxedruli/mf/xuc.mf
new file mode 100644
index 0000000000..af60a6c6de
--- /dev/null
+++ b/fonts/georgian/mxedruli/mf/xuc.mf
@@ -0,0 +1,115 @@
+% Driver file for Xucuri font `xuc.mf'
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Designed by Johannes Heinecke %
+% <johannes.heinecke@wanadoo.fr> %
+% This software is under the LaTeX Project Public License %
+% Please send any improvements, corrections, suggestions, enhancements etc %
+% to the Author! %
+% %
+% Version 0.2 as of 14th July 1998 %
+% %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+
+font_coding_scheme:="Xucuri - Georgian";
+mode_setup;
+if known cmbase: font_setup; fi % If used with cmbase
+
+font_xuc_setup;
+
+let xucchar=\;
+
+% fontmaking:=1; % to generate a TFM File during proof-ing
+
+%% Zeichendefinitionsdateien %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+input xucfont; % the xucuri alphabet majuscules (Mrglovani)
+input xucl; % the xucuri alphabet minuscules (.Kutxovani)
+if unknown cmbase: input xucp; else: input punct; fi % punctuation
+if unknown cmbase: input xucd; else: input romand; fi % digits: if cmbase is
+ % used this font will
+ % load cm-digits, for
+ % they are finer tuned.
+
+
+%% Font-Parameter fuer TeX %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+font_quad 2.5mxu#; % 1 em
+font_x_height mxlittle#; % 1 ex
+font_normal_space 3.5mxu#; % word gap
+font_normal_stretch 2mxu#; % word gap may stretch by ...
+font_normal_shrink 1mxu#; % word gap my shrink by ...
+font_slant slant;
+
+% special "grayfont graylj"; % Only for GFtoDVI on emTeXs METAFONT
+
+%% Ligature-Tables %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+
+% Palatals:
+ligtable "+" : "S" =: oct"005",
+ "C" =: oct"001",
+ "J" =: oct"010",
+ "Z" =: oct"007",
+ "s" =: oct"025",
+ "c" =: oct"021",
+ "j" =: oct"030",
+ "z" =: oct"027";
+
+% Glottalized stops
+ligtable "." : "C" =: oct"000",
+ "G" =: oct"002",
+ "K" =: oct"003",
+ "P" =: oct"004",
+ "T" =: oct"006",
+ "c" =: oct"020",
+ "g" =: oct"022",
+ "k" =: oct"023",
+ "t" =: oct"026",
+ "p" =: oct"024",
+ "+" =: ",";
+
+% Old Georgian "ho"
+ligtable "O" : "1" =: oct"011";
+% oct"005" kern -mxhalf#,
+% "Z" kern -.5mxzw#;
+
+% Old Georgian "Short i"
+ligtable "I" : "1" =: oct"012";
+
+ligtable "i" : "1" =: oct"032";
+
+
+% long "ee"
+ligtable "E" : "0" =: oct"016";
+
+ligtable "e" : "0" =: oct"036";
+
+
+% Unaspirated "q"
+ligtable "Q" : "1" =: oct"015";
+
+ligtable "q" : "1" =: oct"035";
+
+
+% Keep the "s" away from letters with an ascender on the right
+% ligtable oct"004" : oct"007" : "k" : "m" : "x" : "s" kern .5mxzw#;
+
+% two ' make a double quote
+ligtable "'" : "'" kern -.8mxzw#;
+
+% two , make a double comma,
+ligtable "," : "," kern -mxzw#,
+ "C" =: oct"014",
+ "c" =: oct"034";
+
+%% Hyphens etc.
+ligtable "-" : "-" =: 123; % cf. The METAfontbook S. 306
+ligtable 123 : "-" =: 124;
+
+% Let "z" and oct005 closer two the little letters
+%ligtable "a" : "d" : "g" : "l" : "t" : "u" : "p" : oct"002" : "c" : oct"010" :
+% oct"005" kern -mxhalf#,
+% "1" =: oct"021",
+% "z" kern -.5mxzw#;
+
+endinput;
diff --git a/fonts/georgian/mxedruli/mf/xuc10.mf b/fonts/georgian/mxedruli/mf/xuc10.mf
new file mode 100644
index 0000000000..87146d21dd
--- /dev/null
+++ b/fonts/georgian/mxedruli/mf/xuc10.mf
@@ -0,0 +1,145 @@
+% Xucuri Font 10 point Normal Face `xuc10.mf'
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Designed by Johannes Heinecke %
+% <johannes.heinecke@wanadoo.fr> %
+% This software is under the LaTeX Project Public License %
+% Please send any improvements, corrections, suggestions, enhancements etc %
+% to the Author! %
+% %
+% Version 0.3 as of 17th July 1998 %
+% %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% Based on the parameters as in CMR10
+
+% if unknown cmbase: input cmbase fi
+if unknown xucbase: input xucbase fi
+
+font_identifier:="XUC"; font_size 10pt#;
+
+u#:=20/36pt#; % unit width
+if known cmbase:
+width_adj#:=0pt#; % width adjustment for certain characters
+serif_fit#:=0pt#; % extra sidebar near lowercase serifs
+cap_serif_fit#:=5/36pt#; % extra sidebar near uppercase serifs
+letter_fit#:=0pt#; % extra space added to all sidebars
+
+body_height#:=270/36pt#; % height of tallest characters
+asc_height#:=250/36pt#; % height of lowercase ascenders
+cap_height#:=246/36pt#; % height of caps
+fig_height#:=232/36pt#; % height of numeralsx_height#:=155/36pt#; % height of lowercase without ascenders
+math_axis#:=90/36pt#; % axis of symmetry for math symbols
+bar_height#:=87/36pt#; % height of crossbar in lowercase e
+comma_depth#:=70/36pt#; % depth of comma below baseline
+desc_depth#:=70/36pt#; % depth of lowercase descenders
+
+crisp#:=0pt#; % diameter of serif corners
+tiny#:=8/36pt#; % diameter of rounded corners
+fine#:=7/36pt#; % diameter of sharply rounded corners
+thin_join#:=7/36pt#; % width of extrafine details
+hair#:=9/36pt#; % lowercase hairline breadth
+stem#:=25/36pt#; % lowercase stem breadth
+curve#:=30/36pt#; % lowercase curve breadth
+ess#:=27/36pt#; % breadth in middle of lowercase s
+flare#:=33/36pt#; % diameter of bulbs or breadth of terminals
+dot_size#:=38/36pt#; % diameter of dots
+cap_hair#:=11/36pt#; % uppercase hairline breadth
+cap_stem#:=32/36pt#; % uppercase stem breadth
+cap_curve#:=37/36pt#; % uppercase curve breadth
+cap_ess#:=35/36pt#; % breadth in middle of uppercase s
+rule_thickness#:=.4pt#; % thickness of lines in math symbols
+
+dish#:=1/36pt#; % amount erased at top or bottom of serifs
+bracket#:=20/36pt#; % vertical distance from serif base to tangent
+jut#:=28/36pt#; % protrusion of lowercase serifs
+cap_jut#:=37/36pt#; % protrusion of uppercase serifs
+beak_jut#:=10/36pt#; % horizontal protrusion of beak serifs
+beak#:=70/36pt#; % vertical protrusion of beak serifs
+vair#:=8/36pt#; % vertical diameter of hairlines
+notch_cut#:=10pt#; % maximum breadth above or below notches
+bar#:=11/36pt#; % lowercase bar thickness
+slab#:=11/36pt#; % serif and arm thickness
+cap_bar#:=11/36pt#; % uppercase bar thickness
+cap_band#:=11/36pt#; % uppercase thickness above/below lobes
+cap_notch_cut#:=10pt#; % max breadth above/below uppercase notches
+serif_drop#:=4/36pt#; % vertical drop of sloped serifs
+stem_corr#:=1/36pt#; % for small refinements of stem breadth
+vair_corr#:=1/36pt#; % for small refinements of hairline height
+apex_corr#:=0pt#; % extra width at diagonal junctions
+
+o#:=8/36pt#; % amount of overshoot for curves
+apex_o#:=8/36pt#; % amount of overshoot for diagonal junctions
+
+slant:=0; % tilt ratio $(\Delta x/\Delta y)$
+fudge:=1; % factor applied to weights of heavy characters
+math_spread:=0; % extra openness of math symbols
+superness:=1/sqrt2; % parameter for superellipses
+superpull:=1/6; % extra openness inside bowls
+beak_darkness:=11/30; % fraction of triangle inside beak serifs
+ligs:=2; % level of ligatures to be included
+
+square_dots:=false; % should dots be square?
+hefty:=false; % should we try hard not to be overweight?
+serifs:=true; % should serifs and bulbs be attached?
+monospace:=false; % should all characters have the same width?
+variant_g:=false; % should an italic-style g be used?
+low_asterisk:=false; % should the asterisk be centered at the axis?
+math_fitting:=false; % should math-mode spacing be used?
+fi
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% These are the real Xucuri Parameters
+boolean mxcap;
+%mxcap:=false; % No capitals
+
+mxu#:= 2.5u#; % was 2.7u# % the unit, which where used to design this fonts
+mxlittle#:= 3mxu#; % height of letters without ascenders
+mxtop#:= 2mxu#; % the height of the ascenders
+mxheight#:=mxtop#+mxlittle#;
+
+mxhalf#:=mxu#; % Half width of the letter 'a'
+mxone#:=2mxhalf#;
+mxmiddle#:=2/3mxlittle#; % strokes not reaching the baseline, as in 'o'
+mxthird#:=1/3mxlittle#;
+mxfeet#:= .4mxhalf#; % The feet of 'i' and 'o' etc are slightly
+ % bent to the middle
+mxlow#:= 1.8mxu#; %war 2mxu# % max depth below the baseline
+%mxzw#:= .65mxu#; % Seperation of two letters
+mxzw#:= 1.65mxu#; % Seperation of two letters
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Parameters for Xucuri Minuscles
+xuclu#:=.8mxu#;
+xucllittle#:= 3xuclu#; % height of letters without ascenders
+xucltop#:= 2/3xucllittle#; % the height of the ascenders
+xuclheight#:=xucltop#+xucllittle#;
+
+xuclhalf#:=.9xuclu#; % Half width of the letter 'a'
+xuclone#:=2xuclhalf#;
+xuclmiddle#:=2/3xucllittle#; % strokes not reaching the baseline, as in 'o'
+xuclthird#:=1/3xucllittle#;
+xuclfeet#:= .4xuclhalf#; % The feet of 'i' and 'o' etc are slightly
+ % bent to the middle
+xucllow#:= 2xuclu#; % max depth below the baseline
+xuclzw#:= 1.65xuclu#; % Seperation of two letters
+
+
+px1#:=.75mxu#; % pen 1 xscaling (Uppercase)
+py1#:=.21mxu#; % pen 1 yscaling
+px2#:=.65mxu#; % pen 2 xscaling (Lowercase)
+py2#:=.15mxu#; % pen 2 yscaling
+
+mxserifonset# := .4mxu#;
+% mxserifonset# := 2py1#;
+mxseriffoot# := .02mxu#;
+
+dpx1#:=px1#; % digitpen xscaling
+dpy1#:=py1#; % digitpen yscaling
+pdot#:=.74mxu#; % pen for dots
+pdash#:=.40mxu#; % pen for dashes
+pcomma#:=.15mxu#; % pen for commas
+slant:=0;
+
+input xuc; % switch to the driver file
+bye.
diff --git a/fonts/georgian/mxedruli/mf/xucbase.mf b/fonts/georgian/mxedruli/mf/xucbase.mf
new file mode 100644
index 0000000000..211da4a8b5
--- /dev/null
+++ b/fonts/georgian/mxedruli/mf/xucbase.mf
@@ -0,0 +1,117 @@
+% Xucuri Base File `xucbase.mf'
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Designed by Johannes Heinecke %
+% <johannes.heinecke@wanadoo.fr> %
+% This software is under the LaTeX Project Public License %
+% Please send any improvements, corrections, suggestions, enhancements etc %
+% to the Author! %
+% %
+% Version 0.3 as of 17th July 1998 %
+% %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+xucbase:=1; % Es soll nur einmal geladen werden.
+
+newinternal slant;
+
+def font_xuc_setup = % Eigenes Macro
+ define_pixels(mxu, mxlittle, mxhalf, mxone, mxheight, mxthird,
+ mxmiddle, mxtop, mxfeet, mxlow, mxzw,
+ mxseriffoot,
+ xuclu, xucllittle, xuclhalf, xuclone, xuclheight, xuclthird,
+ xuclmiddle, xucltop, xuclfeet, xucllow, xuclzw,
+ xuclseriffoot);
+
+ define_blacker_pixels(px1, py1, dpx1, dpy1, px2, py2, pdot,
+ pdash, pcomma, mxserifonset);
+
+ % used by Xucuri majuscules
+ pickup pensquare xscaled px1 yscaled py1 rotated 0;
+ xuc_pen:=savepen;
+
+ % used by Xucuri minuscules main strokes
+ pickup penrazor xscaled px2 rotated 10;
+ xuc_penl:=savepen;
+
+ % used by Xucuri minuscules secondary
+ pickup penrazor xscaled px2 rotated 1;
+ xuc_penlx:=savepen;
+
+ % used by Xucuri arabesques
+ pickup pencircle xscaled px2 yscaled py2 rotated 10;
+ xuc_penb:=savepen;
+
+ pickup penrazor xscaled px2 rotated 30;
+ xuc_penlr:=savepen;
+
+ pickup pencircle xscaled dpx1 yscaled dpy1 rotated 90; % rotated -10;
+ xuc_digitpen:=savepen; % Pen for digits
+
+ pickup pencircle xscaled dpx1 yscaled dpy1; % rotated -10;
+ xuc_punctpen:=savepen; % Pen for punctuation
+
+ pickup pencircle scaled pdot;
+ xuc_dot:=savepen; % Pen for dots
+
+ pickup pencircle scaled pdash;
+ xuc_dash:=savepen; % Pen for lines
+
+ pickup pencircle scaled pcomma;
+ xuc_pcomma:=savepen; % Pen for Commas
+
+ pickup pensquare scaled pdash;
+ xuc_square:=savepen;
+
+
+ currenttransform:=identity slanted slant yscaled aspect_ratio;
+enddef;
+
+if known cmbase: % Boxen f"uer den Proofmode (mit CM-Base)
+ def makebox(text rule) =
+ for y=0,h,mxlittle,-d,mxthird:
+ rule((0,y)t_,(r,y)t_); endfor % horizontals
+ for x=0,r,r-mxzw,mxhalf,mxone:
+ rule((x,-d)t_,(x,h)t_); endfor % verticals
+ % for x=u*(1+floor(l/u)) step u until r-1:
+ % rule((x,-body_depth)t_,(x,body_height)t_); endfor % more verticals
+ % if charic<>0:
+ % rule((r+charic*pt,h.o_),(r+charic*pt,.5h.o_)); fi % italic correction
+ enddef;
+
+else: % Boxen f"uer den Proofmode
+ def makebox(text r) =
+ % horizontal lines on y-values:
+ % 0, char-height, char-depth, mxlittle, ...
+ for y=0, xucllittle, xuclheight, -xucllow:
+ r((0,y),(w-mxzw,y)); endfor
+ r((0, h.o_),(w, h.o_)); % Bounding Box top
+ r((0, -d.o_),(w, -d.o_)); % Bounding Box bottom
+ r((0, h.o_-2),(w, h.o_-2)); % Bounding Box top
+ r((0, -d.o_+2),(w, -d.o_+2)); % Bounding Box bottom
+
+ % vertical lines on x-values:
+ for x=0 step mxhalf until w-mxzw: r((x,h.o_),(x, -d.o_)); endfor
+ r((w,-d.o_),(w,h.o_)); % Bounding Box right
+ r((0,-d.o_),(0,h.o_)); % Bounding Box left
+ r((w-2,-d.o_),(w-2,h.o_)); % Bounding Box right
+ r((2,-d.o_),(2,h.o_)); % Bounding Box left
+% if charic<>0: r((w+charic*hppp,h.o_),(w+charic*hppp,.5h.o_)); fi
+ enddef;
+
+%% def makebox(text r) =
+%% % horizontal lines on y-values:
+%% % 0, char-height, char-depth, mxlittle, ...
+%% for y=0, % h.o_,-d.o_
+%% xmxthird ,xmxlittle, xmxmiddle, xmxheight,-xmxlow:
+%% r((0,y),(w,y)); endfor
+%% % vertical lines on x-values:
+%% % 0, char-width, char-width - mxzw
+%% % for x=0 step xmxhalf until w-mxzw+1: r((x,-xmxlow),(x,xmxheight)); endfor
+%% for x=0 step xmxone/3 until w-mxzw+1: r((x,-xmxlow),(x,xmxheight)); endfor
+%% r((w,-xmxlow),(w,xmxheight))
+%% if charic<>0: r((w+charic*hppp,h.o_),(w+charic*hppp,.5h.o_)); fi
+%% enddef;
+fi
+
+endinput; \ No newline at end of file
diff --git a/fonts/georgian/mxedruli/mf/xucd.mf b/fonts/georgian/mxedruli/mf/xucd.mf
new file mode 100644
index 0000000000..916c85811f
--- /dev/null
+++ b/fonts/georgian/mxedruli/mf/xucd.mf
@@ -0,0 +1,165 @@
+% Xucuri digits `xucd.mf'
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Designed by Johannes Heinecke %
+% <johannes.heinecke@wanadoo.fr> %
+% This software is under the LaTeX Project Public License %
+% Please send any improvements, corrections, suggestions, enhancements etc %
+% to the Author! %
+% %
+% Version 2.0 as of 14th July 1998 %
+% %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%% Character Definitions: %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+
+%% 1 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "1";
+beginchar("1", mxhalf#+mxzw#, mxheight#, 0);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup xuc_digitpen;
+ top z1 = (mxhalf, mxheight);
+ bot z2 = (x1, 0);
+ z3 = (0, mxheight-.5mxtop);
+ draw z3--z1--z2;
+ penlabels(1, 2, 3);
+endchar;
+
+%% 2 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "2";
+beginchar("2", mxone#+mxzw#, mxheight#, 0);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup xuc_digitpen;
+ z1 = (0, mxheight-.5mxtop);
+ top z2 = (mxhalf, mxheight);
+ z3 = (mxone, y1);
+ bot z4 = (x1, 0);
+ z5 = (x3, y4);
+% draw z1{up}..{right}z2..{down}z3..tension 2..z4--z5;
+ draw z1{up}..{right}z2..z3..{z4-z3}z4--z5;
+ penlabels(1, 2, 3, 4, 5);
+endchar;
+
+%% 3 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "3";
+beginchar("3", mxone#+mxzw#, mxheight#, 0);
+ pickup xuc_digitpen;
+ top z1 = (0, mxheight);
+ z2 = (mxone, y1);
+ z3 = (mxhalf, mxlittle);
+ z4 = (x2, .5mxlittle);
+ bot z5 = (x3, 0);
+ z6 = (x1, .5mxlittle);
+ draw z1--z2--z3;
+ draw z3{right}..{down}z4..{left}z5..{up}z6;
+ penlabels(1, 2, 3, 4, 5, 6);
+endchar;
+
+%% 4 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "4";
+beginchar("4", mxone#+mxzw#, mxheight#, 0);
+ pickup xuc_digitpen;
+ top z1 = (mxhalf, mxheight);
+ z2 = (0, .6mxlittle);
+ z3 = (mxone, y2);
+ draw z1--z2--z3;
+ bot z4 = (x1, 0);
+ z5 = (x4, 1.25mxlittle);
+ draw z4--z5;
+ penlabels(1, 2, 3, 4, 5);
+endchar;
+
+%% 5 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "5";
+beginchar("5", mxone#+mxzw#, mxheight#, 0);
+ pickup xuc_digitpen;
+ top z1 = (mxone, mxheight);
+ z2 = (0, y1);
+ z3 = (x2, mxlittle);
+ z4 = (mxhalf, y3);
+ z5 = (x1, .5mxlittle);
+ bot z6 = (x4, 0);
+ z7 = (x2, .3mxlittle);
+ draw z1--z2--z3--z4{right}..z5..{left}z6..z7;
+ penlabels(1, 2, 3, 4, 5, 6, 7);
+endchar;
+
+%% 6 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "6";
+beginchar("6", mxone#+mxzw#, mxheight#, 0);
+ pickup xuc_digitpen;
+ bot z1 = (mxhalf, 0);
+ z2 = (x1, mxlittle);
+ z3 = (0, .5mxlittle);
+ z5 = (mxone, y3);
+ draw z1{left}..{up}z3..{right}z2..{down}z5..cycle;
+ top z4 = (1.5mxhalf, mxheight);
+% draw z3{up}..{dir 60}z4;
+ draw z3{up}..z4;
+ penlabels(1, 2, 3, 4, 5);
+endchar;
+
+%% 7 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "7";
+beginchar("7", mxone#+mxzw#, mxheight#, 0);
+ pickup xuc_digitpen;
+ top z1 = (0, mxheight);
+ z2 = (mxone, y1);
+ bot z3 = (x1, 0);
+ draw z1--z2--z3;
+ penlabels(1, 2, 3);
+endchar;
+
+%% 8 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "8";
+beginchar("8", mxone#+mxzw#, mxheight#, 0);
+ pickup xuc_digitpen;
+ bot z1 = (mxhalf, 0);
+ z2 = (x1, mxlittle);
+ z6 = (0, .5mxlittle);
+ z7 = (mxone, y6);
+ draw z1{left}..{up}z6..{right}z2..{down}z7..cycle;
+ top z3 = (x1, mxheight);
+ z4 = (.2mxhalf, .5[y2, y3]);
+ z5 = (1.8mxhalf, y4);
+ draw z3{left}..{down}z4..{right}z2..{up}z5..cycle;
+ penlabels(1, 2, 3, 4, 5, 6, 7);
+endchar;
+
+%% 9 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "9";
+beginchar("9", mxone#+mxzw#, mxheight#, 0);
+ pickup xuc_digitpen;
+ top z1 = (mxhalf, mxheight);
+ z2 = (x1, mxlittle);
+ z3 = (mxone, mxheight-.5mxtop);
+ z4 = (0, y3);
+
+ draw z1{left}..{down}z4..{right}z2..{up}z3..cycle;
+ bot z5 = (.5mxhalf, 0);
+% draw z3{down}..{dir -120}z5;
+ draw z3{down}..z5;
+ penlabels(1, 2, 3, 4);
+endchar;
+
+%% 0 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "0";
+beginchar("0", mxone#+mxzw#, mxheight#, 0);
+ pickup xuc_digitpen;
+ bot z1 = (mxhalf, 0);
+ z2 = (mxone, mxlittle);
+ top z3 = (x1, mxheight);
+ z4 = (0, y2);
+ draw z1{right}..{up}z2..{left}z3..{down}z4..cycle;
+ penlabels(1, 2, 3, 4);
+endchar;
+
+
+endinput;
+
+
+
diff --git a/fonts/georgian/mxedruli/mf/xucfont.mf b/fonts/georgian/mxedruli/mf/xucfont.mf
new file mode 100644
index 0000000000..210d68d7c4
--- /dev/null
+++ b/fonts/georgian/mxedruli/mf/xucfont.mf
@@ -0,0 +1,960 @@
+% Xucuri Font `xucfont.mf'
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Designed by Johannes Heinecke %
+% <johannes.heinecke@wanadoo.fr> %
+% This software is under the LaTeX Project Public License %
+% Please send any improvements, corrections, suggestions, enhancements etc %
+% to the Author! %
+% %
+% Version 0.1 as of 29th March 1997 %
+% %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+
+
+% Serifen: Aufruf xuc_serif(Punktnr, 1|-1);
+% unten: -1 Serife f"ur oben, 1 f"ur unten
+def xuc_serif (suffix $)(expr unten) =
+ z$a = (x$-.5px1, y$+ ((mxserifonset-.55py1)*unten));
+ z$d = (x$+.5px1, y$a);
+
+ z$c = (x$-px1, y$-(.55py1*unten));
+ z$f = (x$+px1, y$c);
+
+ z$b = (x$c, y$c+(.5py1*unten));
+ z$e = (x$f, y$b);
+
+ if unten = 1:
+ fill z$a--z$d{down}..{right}z$e--z$f--z$c--z$b{right}..{up}cycle
+ else:
+ fill z$a--z$d{up}..{right}z$e--z$f--z$c--z$b{right}..{down}cycle
+ fi;
+ labels($a, $b, $c, $d, $e, $f);
+enddef;
+
+
+% links = 1: linke Halbserife, links = -1: rechte Halbserife
+def xuc_halbserif (suffix $)(expr unten, links) =
+ z$a = (x$-(.5px1*links), y$+ ((mxserifonset-.55py1)*unten));
+ z$d = (x$, y$a);
+
+ z$c = (x$-(px1*links), y$-(.55py1*unten));
+ z$f = (x$, y$c);
+
+ z$b = (x$c, y$c+(.5py1*unten));
+
+ if unten = 1:
+ if links = 1:
+ fill z$a--z$d--z$f--z$c--z$b{right}..{up}cycle
+ else:
+ fill z$a--z$d--z$f--z$c--z$b{left}..{up}cycle
+ fi;
+ else:
+ if links = 1:
+ fill z$a--z$d--z$f--z$c--z$b{right}..{down}cycle
+ else:
+ fill z$a--z$d--z$f--z$c--z$b{left}..{down}cycle
+ fi;
+ fi;
+% labels($a, $b, $c, $d, $f);
+enddef;
+
+
+% Kleiner Haken links oben
+def xuc_haken (suffix $) =
+ z$x = (x$ - mxhalf, y$ + .5mxtop);
+ draw z$x{down}..{right}z$;
+ xuc_serif($x, -1);
+ labels($x);
+enddef;
+
+% Grosser Haken links oben
+def xuc_haken_gross (suffix $) =
+ z$x = (x$ - mxone, y$ + .5mxtop);
+ z$y = (x$ - mxhalf, y$);
+ draw z$x{down}..{right}z$y--z$;
+ xuc_serif($x, -1);
+ labels($x, $y);
+enddef;
+
+% Grosser Haken rechts unten
+def xuc_fuss_gross (suffix $) =
+ z$x = (x$ + mxone, y$ - mxthird);
+ z$y = (x$ + mxhalf, y$);
+ draw z$x{up}..{left}z$y--z$;
+ xuc_serif($x, 1);
+ labels($x, $y);
+enddef;
+
+% Kleiner Haken rechts unten
+def xuc_fuss (suffix $) =
+ z$x = (x$ + mxhalf, y$ - mxthird);
+ draw z$x{up}..{left}z$;
+ xuc_serif($x, 1);
+ labels($x);
+enddef;
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%% Character Definitions: %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+%% ^C %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "^C - ^Cin (+C, oct001)";
+beginchar(oct"001", mxzw#+1mxone#, mxheight#, 0);
+ pickup xuc_pen;
+ lft bot z1 = (0, 0);
+ z2 = (x1, mxheight);
+ draw z1--z2;
+ xuc_serif(1, 1);
+ xuc_serif(2, -1);
+ z3 = (x1, mxlittle);
+ xuc_fuss_gross(3);
+ penlabels(range 1 thru 3);
+endchar;
+
+
+
+
+%% K %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "K";
+beginchar("K", mxzw#+2mxone#, mxheight#, 0);
+ pickup xuc_pen;
+ lft bot z1 = (mxone, 0);
+ z2 = (x1, mxheight);
+ z3 = (x1, .5[y1, y2]);
+ z4 = (x1-mxone, mxlittle);
+ z5 = (x1+mxone, y4-mxthird);
+ draw z1--z2;
+ xuc_serif(1, 1);
+ xuc_serif(2, -1);
+ xuc_serif(4, -1);
+ xuc_serif(5, 1);
+ draw z4{down}..{down}z5;
+
+ penlabels(range 1 thru 5);
+endchar;
+
+
+%% S %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "S";
+beginchar("S", mxzw#+mxone#, mxheight#, 0);
+ pickup xuc_pen;
+ lft z2 = (0, mxheight);
+ z5 = (x2+mxhalf, mxmiddle);
+ bot z3 = (x5, 0);
+ z1 = (x2, .5[y3, y5]);
+ z4 = (x2+mxone, y1);
+ draw z2---z1..z3..z4..{left}z5;
+ xuc_serif(2, -1);
+ penlabels(range 1 thru 5);
+endchar;
+
+
+
+%% ^DZ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "^DZ/^J - ^Jan (oct010)";
+beginchar(oct"010", mxzw#+2mxone#, mxheight#, 0);
+ pickup xuc_pen;
+ lft z1 = (mxone, mxheight-.5mxtop);
+ bot z2 = (x1, 0);
+ draw z1--z2;
+ xuc_serif(2, 1);
+ xuc_haken_gross(1);
+
+ z3 = (x1+mxhalf, y1);
+ z5 = (x2, mxmiddle);
+ z4 = (x1+mxone, .5[y1, y5]);
+ z6 = (x1-mxone, y2);
+ draw z1---z3..z4..z5..{down}z6;
+ xuc_serif(6, 1);
+ penlabels(range 1 thru 6);
+endchar;
+
+
+%% X %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "X";
+beginchar("X", mxzw#+mxone#, mxheight#, 0);
+ pickup xuc_pen;
+ lft z1 = (0, mxheight);
+ bot z2 = (x1, mxthird);
+ draw z1--z2;
+ xuc_fuss_gross(2);
+ xuc_serif(1, -1);
+
+ z3 = (x1, mxmiddle);
+ z4 = (x1+mxone, mxlittle);
+ xuc_halbserif(4, 1, -1);
+ z5 = (x4, y1);
+ draw z3{up}..{right}z4--z5;
+ xuc_serif(5, -1);
+ penlabels(range 1 thru 5);
+endchar;
+
+
+
+%% ^.c %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "^.C - ^.Car (,C .+C oct014)";
+beginchar(oct"014", mxzw#+1.5mxone#, mxheight#, 0);
+ pickup xuc_pen;
+ lft z1 = (0, mxheight);
+ z2 = (x1, mxlittle);
+ x4 = x1+1.5mxone;
+ z3 = (.5[x1, x4], y2);
+ bot z5 = (x3, 0);
+
+ y4 = .5[y3, y5];
+ z6 = (x1, y4);
+ z7 = (x4-.5mxhalf, y1);
+ z8 = (x7, y1-.5mxtop);
+ draw z8--z7--z1--z2---z3..z4..z5..{up}z6;
+ xuc_serif(8, 1);
+ xuc_halbserif(1, -1, 1);
+ xuc_serif(6, -1);
+ penlabels(range 1 thru 8);
+endchar;
+
+%% A %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "A";
+beginchar("A", mxzw#+1.5mxone#, mxheight#, 0);
+ pickup xuc_pen;
+ lft z1 = (0, mxheight);
+ z2 = (x1, y1-.5mxtop);
+ z3 = (x1+1.5mxone, y1);
+ z4 = (x3, y2);
+% z5 = (x1+1.2mxone, y1);
+ z5 = (.5[z2, z3]);
+ z6 = (x1, 1.5mxthird);
+ bot z7 = (x1+mxhalf, 0);
+ z8 = (x3, mxthird);
+
+ draw z1--z2{right}..z5..{right}z3--z4;
+ xuc_serif(1, -1);
+ xuc_serif(4, 1);
+
+ draw z5..{down}z6..{right}z7..{up}z8;
+ xuc_serif(8, -1);
+ penlabels(range 1 thru 8);
+endchar;
+%endinput;
+
+
+% %% A1 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% xucchar "A -- variant A1";
+% beginchar(oct"0??", mxzw#+mxone#, mxheight#, 0);
+% pickup xuc_pen;
+% lft z1 = (0, mxlittle+.35mxtop);
+% bot z2 = (x1, mxthird);
+% draw z1--z2;
+% xuc_serif(1, -1);
+% xuc_halbserif(2, 1, 1);
+% xuc_fuss_gross(2);
+%
+% z3 = (x1, mxheight);
+% z5 = (x2x, mxheight-.5mxtop);
+% z4 = .5[z3, z5];
+% draw z3{down}..{dir 65}z4..{dir -80}z5;
+% xuc_serif(3, -1);
+% xuc_serif(5, 1);
+%
+% penlabels(range 1 thru 5);
+% endchar;
+
+
+
+%% I1 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "I1 - short I, (Old Georgian), oct012";
+beginchar(oct"012", mxzw#+2mxone#, mxheight#, 0);
+ pickup xuc_pen;
+ bot lft z1 = (0, mxmiddle);
+ z3 = (x1+2mxone, y1);
+ bot z2 = (.5[x1, x3], 0);
+ z4 = (x2, 2mxmiddle);
+ z5 = (x1+mxhalf, y4);
+
+ draw z1{down}..z2..z3..{left}z4---z5;
+ xuc_serif(1, -1);
+ xuc_haken(5);
+ penlabels(range 1 thru 5);
+endchar;
+
+
+%% .K %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar ".K - .Kan (oct003)";
+beginchar(oct"003", mxzw#+mxone#, mxheight#, 0);
+ pickup xuc_pen;
+ lft z1 = (0, mxheight);
+ z2 = (x1, mxheight-mxtop);
+ z3 = (x1+mxhalf, y2-mxthird);
+
+ bot z4 = (x1+mxone, 0);
+ z5 = (x4, y4+mxtop);
+ z6 = (x3, y2);
+ draw z1---z2..z3---z5;
+ draw z4---z5..z6---z2;
+ xuc_serif(1, -1);
+ xuc_serif(4, 1);
+ penlabels(range 1 thru 6);
+endchar;
+
+
+%% C %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "C";
+beginchar("C", mxzw#+2.75mxone#, mxheight#, 0);
+ pickup xuc_pen;
+ lft x3 = 0;
+ lft x1 = 1.75mxone;
+ x2 = x4 = .5[x1, x3];
+ y2 = mxheight;
+ bot y4 = 0;
+ y3 = .5[y4, y2];
+ y1 = mxlittle;
+ z5 = (x1, mxmiddle);
+ z6 = (x5+mxhalf, y5);
+ z7 = (x5+mxone, mxthird);
+ z8 = (x7, y4);
+ draw z1..{left}z2..z3..z4{right}..z5;
+ draw z5---z6..z7---z8;
+ xuc_serif(1, 1);
+ xuc_serif(8, 1);
+ xuc_halbserif(5, -1, 1);
+ penlabels(range 1 thru 8);
+endchar;
+
+%% G %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "G";
+beginchar("G", mxzw#+2mxone#, mxheight#, 0);
+ pickup xuc_pen;
+ lft z1 = (0, mxlittle);
+ z2 = (x1, mxheight);
+ z3 = (x1+mxone, y2);
+ bot z4 = (x3, mxmiddle);
+ z5 = (x4+mxhalf, y4-mxthird);
+
+ draw z1--z2--z3--z4{right}..{down}z5;
+ xuc_serif(1, 1);
+ xuc_halbserif(2, -1, 1);
+ xuc_halbserif(3, -1, -1);
+ xuc_halbserif(4, 1, 1);
+ xuc_halbserif(5, 1, 1);
+ xuc_fuss(5);
+ penlabels(range 1 thru 5);
+endchar;
+
+
+
+%% Q %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "Q";
+beginchar("Q", mxzw#+mxone#, mxheight#, 0);
+ pickup xuc_pen;
+ lft bot z1 = (mxone, 0);
+ z2 = (x1, mxheight);
+ z3 = (x1, mxlittle);
+ z6 = (x1-mxone, y2);
+ z5 = (x6, .5[y3, y2]);
+ z4 = (.5[x5, x3], y3);
+ draw z1--z2;
+ xuc_serif(1, 1);
+ xuc_serif(2, -1);
+
+ draw z6---z5...z4---z3;
+ xuc_serif(6, -1);
+ penlabels(range 1 thru 6);
+endchar;
+
+
+%% ^Z %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "^Z - ^Zan (+Z, oct007)";
+beginchar(oct"007", mxzw#+2mxone#, mxheight#, 0);
+ pickup xuc_pen;
+ lft bot z1 = (2mxone, 0);
+ z2 = (x1, mxheight);
+ z3 = (x1, mxlittle);
+ z5 = (x1-mxone, .5[y3, y2]);
+ z4 = (.5[x5, x3], y3);
+ draw z1--z2;
+ xuc_serif(1, 1);
+ xuc_serif(2, -1);
+
+ draw z5{down}..z4---z3;
+ xuc_halbserif(5, -1, -1);
+ xuc_haken_gross(5);
+% xuc_haken(5);
+ penlabels(range 1 thru 5);
+endchar;
+
+
+
+
+%% B %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "B";
+beginchar("B", mxzw#+2mxone#, mxheight#, 0);
+ pickup xuc_pen;
+ lft bot z1 = (mxone, mxthird);
+ z2 = (x1, mxheight);
+ z6 = (x1-mxone, y2);
+ z3 = (x1, mxlittle);
+ z5 = (x6, .5[y3, y2]);
+ z4 = (.5[x5, x3], y3);
+% draw z6---z5...z4---z3;
+ draw z6--z5{down}...z4---z3;
+ draw z2--z1;
+
+ xuc_fuss_gross(1);
+ xuc_halbserif(1, 1, 1);
+ xuc_serif(2, -1);
+
+
+ xuc_serif(6, -1);
+ penlabels(range 1 thru 6);
+endchar;
+%endinput;
+
+
+%% ^S %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "^S - ^San (+S, oct005)";
+beginchar(oct"005", mxzw#+mxone#, mxheight#, 0);
+ pickup xuc_pen;
+ y9 = mxmiddle;
+ lft bot z1 = (mxone, .5[0, y9]);
+ z2 = (x1, mxheight);
+ z3 = (x1, mxlittle);
+ z6 = (x1-mxone, y2);
+ z5 = (x6, .5[y3, y2]);
+ z4 = (.5[x5, x3], y3);
+
+ bot z7 = (x4, 0);
+ z8 = (x6, y1);
+ x9 = x4;
+ draw z2---z1..z7..z8..{right}z9;
+
+ xuc_serif(2, -1);
+
+ draw z6---z5...z4---z3;
+ xuc_serif(6, -1);
+ penlabels(range 1 thru 9);
+endchar;
+
+
+%% R %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "R";
+beginchar("R", mxzw#+2mxone#, mxheight#, 0);
+ pickup xuc_pen;
+ y9 = mxmiddle;
+ lft bot z1 = (mxone, .5[0, y9]);
+ z2 = (x1, mxheight);
+ z3 = (x1, mxlittle);
+
+ z8 = (x1-mxone, y1);
+ x9 = .5[x8, x1];
+ bot z7 = (x9, 0);
+ draw z2---z1..z7..z8..{right}z9;
+
+ xuc_serif(2, -1);
+ xuc_fuss_gross(3);
+ penlabels(range 1 thru 9);
+endchar;
+
+
+
+%% O %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "O";
+beginchar("O", mxzw#+2.75mxone#, mxheight#, 0);
+ pickup xuc_pen;
+ z2 = (2mxone, .5mxheight);
+ lft z4 = (0, y2);
+
+ bot z1 = (.5[x4,x2], 0);
+ z3 = (x1, mxheight);
+ draw z1..z2..z3..z4..cycle;
+
+ y5 = y2 - (sind 30)*mxone;
+ x5 = x1 + (cosd 30)*mxone;
+
+ z7 = (3mxone, y5);
+ z6 = (.5[x5,x7], y1);
+ draw z5{down}..{right}z6..{up}z7;
+
+ xuc_serif(7, -1);
+ penlabels(range 1 thru 7);
+endchar;
+
+
+%% U %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "U";
+beginchar("U", mxzw#+2.5mxone#, mxheight#, 0);
+ pickup xuc_pen;
+ z2 = (2mxone, .5mxheight);
+ lft z4 = (0, y2);
+
+ bot z1 = (.5[x4,x2], 0);
+ z3 = (x1, mxheight);
+ draw z1..z2..z3..z4..cycle;
+
+ y5 = y2 - (sind 30)*mxone;
+ x5 = x1 + (cosd 30)*mxone;
+
+ lft z6 = (2.5mxone, y1);
+ draw z5{right}..z6;
+
+ xuc_serif(6, 1);
+ penlabels(range 1 thru 6);
+endchar;
+
+
+
+
+%% D %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "D";
+beginchar("D", mxzw#+1.8mxone#, mxheight#, 0);
+ pickup xuc_pen;
+ lft z2 = (1.8mxone, .5mxlittle);
+ lft z4 = (0, y2);
+
+ bot z1 = (.5[x4,x2], 0);
+ z3 = (x1, mxlittle+.5mxthird);
+ draw z1..z2..z3..z4..cycle;
+
+ z5 = (x3, mxheight);
+ draw z3--z5;
+
+ z6 = (x4, y5-.5mxtop);
+ z7 = (x6, y5);
+ z8 = (x2, y5);
+ z9 = (x8, y6);
+ draw z6--z7---z8---z9;
+
+ xuc_serif(6, 1);
+ xuc_serif(9, 1);
+ penlabels(range 1 thru 9);
+endchar;
+
+%% E %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "E";
+beginchar("E", mxzw#+mxone#, mxheight#, 0);
+ pickup xuc_pen;
+ lft bot z1 = (mxone, 0);
+ z2 = (x1, mxheight);
+ lft z3 = (0, y2);
+ z4 = (x3, mxlittle);
+ z5 = (x1, mxlittle);
+ rt z6 = (2mxone, y5);
+ z7 = (x6, .5y6);
+ draw z1--z2--z3--z4;
+
+ xuc_serif(1, 1);
+ xuc_halbserif(2, -1, -1);
+ xuc_halbserif(3, -1, 1);
+
+ xuc_serif(4, 1);
+
+ penlabels(range 1 thru 4);
+endchar;
+
+
+%% N %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "N";
+beginchar("N", mxzw#+mxone#, mxheight#, 0);
+ pickup xuc_pen;
+ bot lft z1 = (0, 0);
+ z2 = (x1, mxheight);
+ z3 = (x1+mxone, y2);
+ z4 = (x3, 1.2mxlittle);
+
+ z5 = (x1, mxmiddle);
+ z6 = (x3, y1);
+
+ z7 = (.5[x5, x6], y5);
+ z8 = (x6, .5[y5, y6]);
+ draw z1--z2--z3--z4;
+ draw z5..z7{right}..{down}z8..z6;
+
+ xuc_serif(1, 1);
+ xuc_halbserif(2, -1, 1);
+ xuc_halbserif(3, -1, -1);
+ xuc_serif(4, 1);
+ xuc_serif(6, 1);
+
+ penlabels(range 1 thru 6);
+endchar;
+
+
+%% T %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "T";
+beginchar("T", mxzw#+2mxone#, mxheight#, 0);
+ pickup xuc_pen;
+ lft bot z1 = (mxone, 0);
+ z2 = (x1, mxheight);
+ lft z3 = (0, .5[y1, y2]);
+ draw z1--z2{left}..{down}z3..{right}z1;
+
+ z5 = (x1, mxlittle);
+ z6 = (x1+mxone, y5);
+% z7 = (x6, .5y6);
+
+% draw z5--z6--z7;
+ xuc_fuss_gross(5);
+ xuc_halbserif(1, 1, -1);
+ xuc_halbserif(2, -1, -1);
+
+% xuc_halbserif(6, -1, -1);
+% xuc_serif(7, 1);
+
+ penlabels(range 1 thru 7);
+endchar;
+
+
+
+
+
+%% V %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "V";
+beginchar("V", mxzw#+1.8mxone#, mxheight#, 0);
+ pickup xuc_pen;
+ lft bot z1 = (.9mxone, 0);
+ z2 = (x1, mxheight);
+ lft z3 = (0, y2);
+ z4 = (x3, mxlittle);
+ z5 = (x1, mxlittle);
+ z6 = (x1+.9mxone, y5);
+ z7 = (x6, .5y6);
+ draw z1--z2--z3--z4;
+ draw z5--z6--z7;
+ xuc_serif(1, 1);
+ xuc_halbserif(2, -1, -1);
+ xuc_halbserif(3, -1, 1);
+ xuc_serif(4, 1);
+ xuc_halbserif(6, -1, -1);
+ xuc_serif(7, 1);
+
+ penlabels(range 1 thru 7);
+endchar;
+
+
+%% E %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "EE - (Long E) oct(016)";
+beginchar(oct"016", mxzw#+mxone#, mxheight#, 0);
+ pickup xuc_pen;
+ lft bot z1 = (0, 0);
+ z2 = (x1, mxheight);
+ z5 = (x1, mxlittle);
+ z6 = (x1+mxone, y5);
+ z7 = (x6, .5y6);
+ draw z1--z2;
+ draw z5--z6--z7;
+
+ z3 = (x6, y2);
+ z4 = (x6, y2-.5mxtop);
+ draw z3--z4;
+
+ xuc_serif(1, 1);
+ xuc_serif(2, -1);
+ xuc_serif(3, -1);
+ xuc_serif(4, 1);
+ xuc_halbserif(6, -1, -1);
+ xuc_serif(7, 1);
+
+ penlabels(range 1 thru 7);
+endchar;
+
+
+%% L %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "L";
+beginchar("L", mxzw#+2mxone#, mxheight#, 0);
+ pickup xuc_pen;
+ lft bot z1 = (mxone, .5mxlittle);
+ z2 = (x1, mxheight);
+ lft z3 = (0, y2);
+ z4 = (x3, mxlittle+mxthird);
+ draw z1--z2--z3--z4;
+
+ z5 = (x1, mxlittle);
+ z7 = (x1+mxone, .5mxlittle);
+ z6 = (.5[x5, x7], y5);
+ bot z8 = (.x6, 0);
+
+ draw z5---z6..z7..z8{left}..{up}z1;
+
+ xuc_halbserif(2, -1, -1);
+ xuc_halbserif(3, -1, 1);
+ xuc_serif(4, 1);
+
+ penlabels(range 1 thru 8);
+endchar;
+
+%% H %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "H";
+beginchar("H", mxzw#+2mxone#, mxheight#, 0);
+ pickup xuc_pen;
+ lft bot z1 = (mxone, .5mxlittle);
+ z2 = (x1, mxheight);
+ lft z3 = (0, y2);
+ z4 = (x3, mxlittle);
+ draw z1--z2--z3--z4;
+
+ z5 = (x1, mxlittle);
+ z7 = (x1+mxone, .5mxlittle);
+ z6 = (.5[x5, x7], y5);
+ bot z8 = (.x6, 0);
+
+ draw z6{right}..z7..z8{left}..{up}z1;
+
+ xuc_halbserif(2, -1, -1);
+ xuc_halbserif(3, -1, 1);
+ xuc_serif(4, 1);
+
+ penlabels(range 1 thru 8);
+endchar;
+
+
+%% Z %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "Z";
+beginchar("Z", mxzw#+2mxone#, mxheight#, 0);
+ pickup xuc_pen;
+ lft bot z1 = (mxone, .5mxlittle);
+ z2 = (x1, mxheight-.5mxtop);
+ draw z1--z2;
+
+ z5 = (x1, mxlittle);
+ z7 = (x1+mxone, .5mxlittle);
+ z6 = (.5[x5, x7], y5);
+ bot z8 = (.x6, 0);
+
+ draw z5--z6{right}..z7..z8{left}..{up}z1;
+
+ xuc_halbserif(2, -1, -1);
+% xuc_haken(2);
+ xuc_haken_gross(2);
+ penlabels(range 1 thru 8);
+endchar;
+
+
+%% I %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "I";
+beginchar("I", mxzw#+mxone#, mxheight#, 0);
+ pickup xuc_pen;
+ lft bot z1 = (mxone, 0);
+ z2 = (x1, mxheight-.5mxtop);
+ draw z1--z2;
+ xuc_serif(1, 1);
+% xuc_haken(2);
+ xuc_haken_gross(2);
+ penlabels(range 1 thru 2);
+endchar;
+
+
+%% W %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "W";
+beginchar("W", mxzw#+mxone#, mxheight#, 0);
+ pickup xuc_pen;
+ lft bot z1 = (mxone, 0);
+ z2 = (x1, mxheight);
+ draw z1--z2;
+
+ z3 = (x1, mxlittle);
+ xuc_serif(1, 1);
+ xuc_serif(2, -1);
+ xuc_haken_gross(3);
+ penlabels(range 1 thru 3);
+endchar;
+
+
+%% M %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "M";
+beginchar("M", mxzw#+2mxone#, mxheight#, 0);
+ pickup xuc_pen;
+ lft z8 = (mxone, mxheight-.5mxtop);
+ z1 = (x8, mxlittle);
+ lft bot z2 = (mxhalf, 0);
+ lft z3 = (0, .5mxlittle);
+ z4 = (x2, mxlittle);
+ z5 = (x8+.5mxone, y4);
+ z6 = (x8+mxone, y3);
+ z7 = (x6, y2);
+ draw z8--z1{down}..{left}z2..z3..{right}z4--z5{right}..{down}z6--z7;
+ xuc_haken_gross(8);
+ xuc_serif(7, 1);
+ xuc_halbserif(8, -1, -1);
+ penlabels(range 1 thru 8);
+endchar;
+
+
+%% DZ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "Dz (j) - Dzil";
+beginchar("J", mxzw#+2mxone#, mxheight#, 0);
+ pickup xuc_pen;
+ lft z8 = (mxone, mxheight);
+ z1 = (x8, mxlittle);
+ lft bot z2 = (mxhalf, 0);
+ lft z3 = (0, .5mxlittle);
+ z4 = (x2, mxlittle);
+ z5 = (x8+.5mxone, y4);
+ z6 = (x8+mxone, y3);
+ z7 = (x6, y2);
+ draw z8--z1{down}..{left}z2..z3..{right}z4--z5{right}..{down}z6--z7;
+ xuc_serif(8, -1);
+ xuc_serif(7, 1);
+ penlabels(range 1 thru 8);
+endchar;
+
+
+
+%% OO/HO %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "OO - HO (Old Georgian), oct011";
+beginchar(oct"011", mxzw#+2mxone#, mxheight#, 0);
+ pickup xuc_pen;
+ lft z8 = (mxone, mxheight);
+ z1 = (x8, mxlittle);
+ lft bot z2 = (mxhalf, 0);
+ lft z3 = (0, .5mxlittle);
+ z4 = (x2, mxlittle);
+ lft z5 = (1.5mxone, y4);
+ lft z6 = (2mxone, y3);
+ z7 = (x6, y2);
+ draw z8--z1{down}..{left}z2..z3..{right}z4--z5{right}..{down}z6--z7;
+
+ z12 = (x8, 1.2mxlittle);
+ z10 = (x6, .5[y8, y12]);
+ z9 = (.5[x8, x10], y8);
+ z11 = (x9, y12);
+ draw z8--z9{right}..{down}z10..{left}z11--z12;
+
+ xuc_halbserif(8, -1, 1);
+ xuc_serif(7, 1);
+
+ penlabels(range 1 thru 12);
+endchar;
+
+
+
+
+%% .G %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar ".G - .Gan (oct002)";
+beginchar(oct"002", mxzw#+1.3mxone#, mxheight#, 0);
+ pickup xuc_pen;
+ bot lft z1 = (0, 0);
+ z5 = (x1+1.3mxone, y1);
+ z2 = (x1, mxheight-mxtop);
+ z4 = (x5, y2);
+ z3 = (.5[x1, x5], mxheight);
+ draw z1--z2{up}..{right}z3..{down}z4--z5;
+ xuc_serif(1, 1);
+ xuc_serif(5, 1);
+
+ penlabels(range 1 thru 5);
+endchar;
+
+
+
+%% .P %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar ".P - .Par (oct004)";
+beginchar(oct"004", mxzw#+2mxone#, mxheight#, 0);
+ pickup xuc_pen;
+% lft z6 = (0, mxheight);
+ lft z1 = (mxone, mxheight-.5mxtop);
+ z5 = (x1+1mxone, y1);
+ z2 = (x1, mxmiddle);
+ z4 = (x5, y2);
+ bot z3 = (.5[x1, x5], 0);
+ draw z1--z2{down}..{right}z3..{up}z4--z5;
+ xuc_halbserif(1, -1, -1);
+ xuc_serif(5, -1);
+% xuc_haken(1);
+ xuc_haken_gross(1);
+ penlabels(range 1 thru 6);
+endchar;
+
+
+
+%% .T %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar ".T - .Tar (oct006)";
+beginchar(oct"006", mxzw#+mxone#, mxheight#, 0);
+ pickup xuc_pen;
+ lft bot z1 = (0, mxthird);
+ z2 = (x1, mxheight);
+ z6 = (x1, mxlittle);
+ z4 = (x1+mxone, .5[y2, y6]);
+ x3 = x5 = .5[x4, x6];
+ y3 = y2;
+ y5 = y6;
+ draw z1--z2--z3{right}..{down}z4..{left}z5--z6;
+ xuc_halbserif(2, -1, 1);
+ xuc_halbserif(1, 1, 1);
+ xuc_fuss_gross(1);
+ penlabels(range 1 thru 6);
+endchar;
+
+
+%% .C %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar ".C - .Cil (oct000)";
+beginchar(oct"000", mxzw#+mxone#, mxheight#, 0);
+ pickup xuc_pen;
+ lft bot z1 = (0, 0);
+ z2 = (x1, mxheight);
+ z6 = (x1, mxlittle);
+ z4 = (x1+mxone, .5[y2, y6]);
+ x3 = x5 = .5[x4, x6];
+ y3 = y2;
+ y5 = y6;
+ draw z1--z2--z3{right}..{down}z4..{left}z5--z6;
+
+ z7 = (x1, mxmiddle);
+ xuc_halbserif(2, -1, 1);
+ xuc_serif(1, 1);
+ xuc_fuss_gross(7);
+ penlabels(range 1 thru 7);
+endchar;
+
+
+%% P %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "P";
+beginchar("P", mxzw#+2mxone#, mxheight#, 0);
+ pickup xuc_pen;
+ lft bot z1 = (mxone, 0);
+ z2 = (x1, mxheight);
+ x4 = x1+mxone;
+ x8 = x1-mxone;
+ x3 = x5 = .5[x4, x2];
+ x9 = x7 = .5[x8, x2];
+ y3 = y9 = y2;
+ y7 = y5 = mxlittle;
+ y4 = y8 = .5[y2, y5];
+
+
+ draw z1--z2;
+ draw z3{right}..{down}z4..{left}z5--z7..{up}z8..{right}z9--cycle;;
+ xuc_serif(1, 1);
+
+ penlabels(range 1 thru 9);
+endchar;
+
+
+%% Qh %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "Qh - qhar (oct015)";
+beginchar(oct"015", mxzw#+1.5mxone#, mxheight#, 0);
+ pickup xuc_pen;
+ lft z3 = (0, mxheight);
+ z6 = (x3 + 1.5mxone, y3);
+ x4 = x3;
+ x5 = x6;
+ y4 = y5 = mxlittle;
+ z2 = (.5[x4, x5], y4);
+ bot z1 = (x2, 0);
+ draw z1--z2;
+ draw z3--z4--z5--z6;
+ xuc_serif(1, 1);
+ xuc_serif(3, -1);
+ xuc_serif(6, -1);
+ penlabels(range 1 thru 6);
+endchar;
+
+% Dummy Digits for Ligatures
+%xucchar "0 (empty)";
+%beginchar("0", mxzw#+mxone#, mxheight#, 0);
+%endchar;
+%
+%xucchar "1 (empty)";
+%beginchar("1", mxzw#+mxone#, mxheight#, 0);
+%endchar;
+
diff --git a/fonts/georgian/mxedruli/mf/xucl.mf b/fonts/georgian/mxedruli/mf/xucl.mf
new file mode 100644
index 0000000000..635e4a3baa
--- /dev/null
+++ b/fonts/georgian/mxedruli/mf/xucl.mf
@@ -0,0 +1,1157 @@
+% Xucuri Font `xucl.mf' Lowercase
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Designed by Johannes Heinecke %
+% <johannes.heinecke@wanadoo.fr> %
+% This software is under the LaTeX Project Public License %
+% Please send any improvements, corrections, suggestions, enhancements etc %
+% to the Author! %
+% %
+% Version 0.3 as of 17th July 1998 %
+% %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+
+
+% Serifen: Aufruf xuc_serif(Punktnr, 1|-1);
+% unten: -1 Serife f"ur oben, 1 f"ur unten
+def xucmin_serif (suffix $)(expr theta, unten) =
+ if unten = 1:
+ z$a = (x$-(.8px2*(cosd 10)), y$-.8px2*(sind 10));
+ else:
+ z$a = (x$-(1px2*(cosd 10)), y$-1px2*(sind 10));
+ fi;
+ z$c = (x$-(.5px2*(cosd 10)), y$-.5px2*(sind 10));
+ z$b = z$a + unten*.2px2*(dir theta);
+ z$d = z$c + unten*.6px2*(dir theta);
+
+ if unten = 1:
+ z$e = (x$+(1px2*(cosd 10)), y$+1px2*(sind 10));
+ else:
+ z$e = (x$+(.8px2*(cosd 10)), y$+.8px2*(sind 10));
+ fi;
+ z$g = (x$+(.5px2*(cosd 10)), y$+.5px2*(sind 10));
+ z$f = z$e + unten*.2px2*(dir theta);
+ z$h = z$g + unten*.6px2*(dir theta);
+
+ if unten = 1:
+ fill z$--z$a--z$b{dir 10}..{dir theta}z$d--z$h{-dir (theta)}..{dir 10}z$f--z$e--cycle;
+ else:
+ fill z$--z$a--z$b{dir 10}..{-dir theta}z$d--z$h{dir (theta)}..{dir 10}z$f--z$e--cycle;
+ fi;
+ labels($a, $b, $c, $d, $e, $f, $g, $h);
+enddef;
+
+
+def xucl_hakenlinks (suffix $) =
+ pickup xuc_penl;
+ z$m = (x$-7/6xuclone, y$-xucllittle/3);
+ z$n = (x$-xuclone, y$);
+ numeric th;
+ th = angle(z$n-z$m);
+ xucmin_serif($n, th, -1);
+ draw z$--z$m;
+ draw z$m--z$n;
+ labels($m, $n);
+enddef;
+
+def xucl_hakenrechts (suffix $) =
+ pickup xuc_penl;
+ z$m = (x$+7/6xuclone, y$+xucllittle/3);
+ z$n = (x$+xuclone, y$);
+ numeric th;
+ th = angle(z$m-z$n);
+ xucmin_serif($n, th, 1);
+ draw z$--z$m;
+ draw z$m--z$n;
+ labels($m, $n);
+enddef;
+
+
+def xucl_fussrechts (suffix $) =
+ z$e = (x$+5/6xuclone, y$+2/12xucllittle);
+ z$f = (x$e+1/6xuclone, y$);
+ z$g = (x$f, y$-1/6xucllittle);
+ draw z$--z$e{z$e-z$}..z$f..z$g;
+ labels($e, $f, $g);
+enddef;
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%% Character Definitions: %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+%% a %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "an";
+beginchar("a", xuclzw#+2xuclone#, xucllittle#, .3xucllow#);
+ pickup xuc_penl;
+ z1 = (7/6xuclone, xucllittle);
+ z2 = (x1-(1/3xuclone), 0);
+ z3 = (2/3[z2, z1]);
+ draw z1--z2;
+ xucl_hakenlinks(1);
+ xucl_hakenrechts(3);
+
+ pickup xuc_penlx;
+ xucl_fussrechts(2);
+ penlabels(1, 2, 3);
+endchar;
+
+%% e %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "en";
+beginchar("e", xuclzw#+2xuclone#, xucllittle#, xucllow#);
+ pickup xuc_penl;
+ numeric theta[];
+
+ z1 = (7/6xuclone, xucllittle);
+ z2 = (x1-(1/3xuclone), 0);
+ z3 = (2/3[z2, z1]);
+ theta1 = angle(z1-z2);
+ xucmin_serif(2, theta1, 1);
+
+ z4 = (x1+xuclone, y1);
+ z5 = (x4-(1/3xuclone), 0);
+ z6 = (5/3[z4, z5]);
+ theta4 = angle(z4-z6);
+ xucmin_serif(6, theta4, 1);
+
+ draw z1--z2;
+ draw z3--z4--z6;
+
+ xucl_hakenlinks(1);
+
+ penlabels(range 1 thru 9);
+endchar;
+
+%% v %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "vin";
+beginchar("v", xuclzw#+3xuclone#, xucllittle#, xucllow#);
+ pickup xuc_penl;
+ numeric theta[];
+
+ z1 = (7/6xuclone, xucllittle);
+ z2 = (x1-(1/3xuclone), 0);
+ z3 = (2/3[z2, z1]);
+ theta1 = angle(z1-z2);
+ xucmin_serif(2, theta1, 1);
+
+ z4 = (x1+xuclone, y1);
+ z5 = (x4-(1/3xuclone), 0);
+ z6 = (5/3[z4, z5]);
+ z7 = (2/3[z5, z4]);
+ theta4 = angle(z4-z6);
+ xucmin_serif(6, theta4, 1);
+
+ z8 = (x4+xuclone, y1);
+ z9 = (x8-(1/3xuclone), 0);
+ theta8 = angle(z8-z9);
+ xucmin_serif(9, theta8, 1);
+
+ draw z1--z2;
+ draw z3--z4--z6;
+ draw z7--z8--z9;
+
+ xucl_hakenlinks(1);
+
+ penlabels(range 1 thru 9);
+endchar;
+
+
+%% t %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "tan";
+beginchar("t", xuclzw#+2.5xuclone#, xucllittle#, 0);
+ pickup xuc_penl;
+ numeric theta[]; % Winkel der Strichs
+
+ z2 = (0, 0);
+ z1 = (x2+1/3xuclone, xucllittle);
+ z3 = (2/3[z2, z1]);
+ theta1 = angle(z1-z2);
+ xucmin_serif(1, theta1, -1);
+
+ z4 = (x1+xuclone, y1);
+ z5 = (x2+xuclone, 0);
+ z6 = (2/3[z5, z4]);
+ z7 = (1/3[z5, z4]);
+ theta4 = angle(z4-z5);
+ xucmin_serif(5, theta4, 1);
+
+
+ z8 = (x4+xuclone, y1);
+ z9 = (x5+xuclone, 0);
+ theta8 = angle(z8-z9);
+ xucmin_serif(9, theta8, 1);
+
+ draw z1--z2;
+ draw z2--z7;
+ draw z3--z4--z5;
+ draw z6--z8--z9;
+
+ penlabels(1, 2, 3, 4, 5, 6, 7, 8, 9);
+endchar;
+
+
+%% l %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "las";
+beginchar("l", xuclzw#+3xuclone#, xucllittle#, 0);
+ pickup xuc_penl;
+ numeric theta[]; % Winkel der Strichs
+
+ z1 = (xuclone, xucllittle);
+ z2 = (x1-1/3xuclone, 0);
+ z3 = (1/3[z1, z2]);
+ xucl_hakenlinks(1);
+ theta1 = angle(z1-z2);
+ xucmin_serif(2, theta1, 1);
+ draw z1--z2;
+
+ z4 = (x1+xuclone, y1);
+ z5 = (x2+xuclone, y2);
+ z6 = (1/3[z4, z5]);
+ theta4 = angle(z4-z5);
+% xucmin_serif(5, theta4, 1);
+ draw z3--z4--z5;
+
+ z7 = (x4+xuclone, y4);
+ z8 = (x5+xuclone, y5);
+ z9 = (2/3[z7, z8]);
+ theta7 = angle(z7-z8);
+ xucmin_serif(8, theta7, 1);
+ draw z6--z7--z8;
+ draw z5--z9;
+
+ penlabels(range 1 thru 9);
+endchar;
+
+
+
+%% o %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "on";
+beginchar("o", xuclzw#+2.5xuclone#, xucllittle#, 0);
+ pickup xuc_penl;
+ numeric theta[]; % Winkel der Strichs
+
+ z2 = (0, 0);
+ z1 = (1/3xuclone, xucllittle);
+ theta1 = angle(z1-z2);
+ xucmin_serif(1, theta1, -1);
+ draw z1--z2;
+
+ z4 = (x1+xuclone, y1);
+ z5 = (x2+xuclone, y2);
+ z3 = (2/3[z4, z5]);
+ theta4 = angle(z4-z5);
+ xucmin_serif(4, theta4, -1);
+ draw z2--z3;
+ draw z4--z5;
+
+ z7 = (x4+xuclone, y4);
+ z8 = (x5+xuclone, y5);
+ z6 = (2/3[z7, z8]);
+ theta7 = angle(z7-z8);
+ xucmin_serif(7, theta7, -1);
+ xucmin_serif(8, theta7, 1);
+ draw z7--z8;
+ draw z5--z6;
+
+ penlabels(range 1 thru 8);
+endchar;
+
+
+%% u %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "un";
+beginchar("u", xuclzw#+3.5xuclone#, xucllittle#, xucllow#);
+ pickup xuc_penl;
+ numeric theta[]; % Winkel der Strichs
+
+ z2 = (0, 0);
+ z1 = (1/3xuclone, xucllittle);
+ theta1 = angle(z1-z2);
+ xucmin_serif(1, theta1, -1);
+ draw z1--z2;
+
+ z4 = (x1+xuclone, y1);
+ z5 = (x2+xuclone, y2);
+ z3 = (2/3[z4, z5]);
+ theta4 = angle(z4-z5);
+ xucmin_serif(4, theta4, -1);
+ draw z2--z3;
+ draw z4--z5;
+
+ z7 = (x4+xuclone, y4);
+ z8 = (x5+xuclone, y5);
+ z6 = (2/3[z7, z8]);
+ theta7 = angle(z7-z8);
+ xucmin_serif(7, theta7, -1);
+ draw z7--z8;
+ draw z5--z6;
+
+ z10 = (x7+xuclone, y7);
+ z11 = (x8+xuclone, y8);
+ z12 = (5/3[z10, z11]);
+ z9 = (2/3[z10, z11]);
+ theta10 = angle(z10-z11);
+ xucmin_serif(10, theta10, -1);
+ xucmin_serif(12, theta10, 1);
+ draw z10--z12;
+ draw z8--z9;
+
+ penlabels(range 1 thru 11);
+endchar;
+
+
+%% p %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "par";
+beginchar("p", xuclzw#+2.5xuclone#, xucllittle#, xucllow#);
+ pickup xuc_penl;
+ numeric theta[]; % Winkel der Strichs
+
+ z2 = (0, 0);
+ z1 = (1/3xuclone, xucllittle);
+ z10 = (1/3[z1, z2]);
+ theta1 = angle(z1-z2);
+ xucmin_serif(1, theta1, -1);
+ draw z1--z2;
+
+ z4 = (x1+xuclone, y1);
+ z5 = (x2+xuclone, y2);
+ z3 = (2/3[z4, z5]);
+ z9 = (5/3[z4, z5]);
+ z11 = (1/3[z4, z5]);
+ theta4 = angle(z4-z5);
+ xucmin_serif(9, theta4, 1);
+ draw z10--z4;
+ draw z2--z3;
+ draw z4--z9;
+
+ z7 = (x4+xuclone, y4);
+ z8 = (x5+xuclone, y5);
+ z6 = (2/3[z7, z8]);
+ theta7 = angle(z7-z8);
+% xucmin_serif(7, theta7, -1);
+ xucmin_serif(8, theta7, 1);
+ draw z11--z7;
+ draw z7--z8;
+ draw z5--z6;
+
+ penlabels(range 1 thru 11);
+endchar;
+
+
+
+%% .g %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar ".ghan (oct022)";
+beginchar(oct"022", xuclzw#+2xuclone#, xucllittle#, 0);
+ pickup xuc_penl;
+ numeric theta[]; % Winkel der Strichs
+
+ z1 = (xuclone, xucllittle);
+ z2 = (x1-1/3xuclone, 0);
+ z3 = (1/3[z1, z2]);
+ xucl_hakenlinks(1);
+ theta1 = angle(z1-z2);
+ xucmin_serif(2, theta1, 1);
+ draw z1--z2;
+
+ z4 = (x1+xuclone, y1);
+ z5 = (x2+xuclone, y2);
+ theta4 = angle(z4-z5);
+ xucmin_serif(5, theta4, 1);
+ draw z3--z4--z5;
+
+ penlabels(range 1 thru 9);
+endchar;
+
+
+
+
+%% q %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar ".qar";
+beginchar("q", xuclzw#+1.5xuclone#, xucllittle#, xucllow#);
+ pickup xuc_penl;
+ numeric theta[]; % Winkel der Strichs
+
+ z2 = (0, 0);
+ z1 = (1/3xuclone, xucllittle);
+ theta1 = angle(z1-z2);
+ xucmin_serif(1, theta1, -1);
+ draw z1--z2;
+
+ z4 = (x1+xuclone, y1);
+ z5 = (x2+xuclone, y2);
+ z3 = (2/3[z4, z5]);
+ z6 = (5/3[z4, z5]);
+ theta4 = angle(z4-z5);
+ xucmin_serif(4, theta4, -1);
+ xucmin_serif(6, theta4, 1);
+ draw z2--z3;
+ draw z4--z6;
+
+ penlabels(range 1 thru 8);
+endchar;
+
+
+
+%% dz %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "dz (j) - dzil";
+beginchar("j", xuclzw#+2.5xuclone#, xuclheight#, 0);
+ pickup xuc_penl;
+ numeric theta[]; % Winkel der Strichs
+
+ z2 = (0, 0);
+ z1 = (1/3xuclone, xucllittle);
+ z10 = (1/3[z1, z2]);
+ theta1 = angle(z1-z2);
+ xucmin_serif(1, theta1, -1);
+ draw z1--z2;
+
+ z4 = (x1+xuclone, y1);
+ z5 = (x2+xuclone, y2);
+ z3 = (2/3[z4, z5]);
+ z6 = (1/3[z4, z5]);
+ z9 = (7/4[z5, z4]);
+ theta4 = angle(z4-z5);
+ xucmin_serif(5, theta4, 1);
+ xucmin_serif(9, theta4, -1);
+ draw z10--z4;
+ draw z2--z3;
+ draw z9--z5;
+
+ z7 = (x4+xuclone, y4);
+ z8 = (x5+xuclone, y5);
+ theta7 = angle(z7-z8);
+ xucmin_serif(8, theta7, 1);
+ draw z7--z8;
+ draw z7--z6;
+
+ penlabels(range 1 thru 10);
+endchar;
+
+
+%% c %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar ".can (oct020)";
+beginchar(oct"020", xuclzw#+3xuclone#, xucllittle#, xucllow#);
+ pickup xuc_penl;
+ numeric theta[]; % Winkel der Strichs
+
+ z2 = (xuclhalf, 0);
+ z1 = (x2+1/3xuclone, xucllittle);
+ z10 = (1/3[z1, z2]);
+ z9 = (5/3[z1, z2]);
+ theta1 = angle(z1-z2);
+ xucmin_serif(1, theta1, -1);
+ xucmin_serif(9, theta1, 1);
+ draw z1--z9;
+
+ z4 = (x1+xuclone, y1);
+ z5 = (x2+xuclone, y2);
+ z6 = (1/3[z4, z5]);
+ theta4 = angle(z4-z5);
+ xucmin_serif(5, theta4, 1);
+ draw z5--z4--z10;
+
+ z7 = (x4+xuclone, y4);
+ z8 = (x5+xuclone, y5);
+
+ theta7 = angle(z7-z8);
+ xucmin_serif(8, theta7, 1);
+ draw z6--z7--z8;
+
+ penlabels(range 1 thru 10);
+endchar;
+
+
+%% h %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "ha";
+beginchar("h", xuclzw#+3xuclone#, xucllittle#, 0);
+ pickup xuc_penl;
+ numeric theta[]; % Winkel der Strichs
+
+ z1 = (xuclone, xucllittle);
+ z2 = (x1-1/3xuclone, 0);
+ z3 = (1/3[z1, z2]);
+ xucl_hakenlinks(1);
+ theta1 = angle(z1-z2);
+ xucmin_serif(2, theta1, 1);
+ draw z1--z2;
+
+ z4 = (x1+xuclone, y1);
+ z5 = (x2+xuclone, y2);
+ draw z3--z4--z5;
+
+ z7 = (x4+xuclone, y4);
+ z8 = (x5+xuclone, y5);
+ z9 = (2/3[z7, z8]);
+ theta7 = angle(z7-z8);
+ xucmin_serif(7, theta7, -1);
+ xucmin_serif(8, theta7, 1);
+ draw z7--z8;
+ draw z5--z9;
+
+ penlabels(range 1 thru 9);
+endchar;
+
+
+%% i %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "in";
+beginchar("i", xuclzw#+xuclone#, xucllittle#, 0);
+ pickup xuc_penl;
+ numeric theta[]; % Winkel der Strichs
+
+ z1 = (xuclone, xucllittle);
+ z2 = (x1-1/3xuclone, 0);
+ xucl_hakenlinks(1);
+ theta1 = angle(z1-z2);
+ xucmin_serif(2, theta1, 1);
+ draw z1--z2;
+
+ penlabels(range 1 thru 2);
+endchar;
+
+
+%% .p %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar ".p - .par (oct024)";
+beginchar(oct"024", xuclzw#+2xuclone#, xucllittle#, 0);
+ pickup xuc_penl;
+ numeric theta[]; % Winkel der Strichs
+
+ z1 = (xuclone, xucllittle);
+ z2 = (x1-1/3xuclone, 0);
+ xucl_hakenlinks(1);
+
+ z4 = (x1+xuclone, y1);
+ z5 = (x2+xuclone, y2);
+ z3 = (2/3[z4, z5]);
+ draw z4--z5;
+ draw z1--z2--z3;
+ theta4 = angle(z4-z5);
+ xucmin_serif(4, theta4, -1);
+ xucmin_serif(5, theta4, 1);
+
+ penlabels(range 1 thru 5);
+endchar;
+
+
+%% ^z %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "^z - ^zan (+z, oct027)";
+beginchar(oct"027", xuclzw#+2xuclone#, xucllittle#, xucllow#);
+ pickup xuc_penl;
+ numeric theta[]; % Winkel der Strichs
+
+ z1 = (xuclone, xucllittle);
+ z2 = (x1-1/3xuclone, 0);
+ xucl_hakenlinks(1);
+
+ z4 = (x1+xuclone, y1);
+ z5 = (x2+xuclone, y2);
+ z3 = (2/3[z4, z5]);
+ z6 = (5/3[z4, z5]);
+ draw z4--z6;
+ draw z1--z2--z3;
+ theta4 = angle(z4-z5);
+ xucmin_serif(4, theta4, -1);
+ xucmin_serif(6, theta4, 1);
+
+ penlabels(range 1 thru 6);
+endchar;
+
+
+%% r %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "ran";
+beginchar("r", xuclzw#+2.5xuclone#, xuclheight#, 0);
+ pickup xuc_penl;
+ numeric theta[]; % Winkel der Strichs
+
+ z2 = (0, 0);
+ z1 = (1/3xuclone, xucllittle);
+ theta1 = angle(z1-z2);
+ xucmin_serif(1, theta1, -1);
+ draw z1--z2;
+
+ z4 = (x1+xuclone, y1);
+ z5 = (x2+xuclone, y2);
+ z3 = (2/3[z4, z5]);
+ z6 = (1/3[z4, z5]);
+ z9 = (7/4[z5, z4]);
+ theta4 = angle(z4-z5);
+ xucmin_serif(5, theta4, 1);
+ xucmin_serif(9, theta4, -1);
+ draw z2--z3;
+ draw z9--z5;
+
+ z7 = (x4+xuclone, y4);
+ z8 = (x5+xuclone, y5);
+ theta7 = angle(z7-z8);
+ xucmin_serif(8, theta7, 1);
+ draw z7--z8;
+ draw z7--z6;
+
+ penlabels(range 1 thru 9);
+endchar;
+
+
+%% s %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "san";
+beginchar("s", xuclzw#+1.5xuclone#, xuclheight#, 0);
+ pickup xuc_penl;
+ numeric theta[]; % Winkel der Strichs
+
+ z2 = (0, 0);
+ z1 = (1/3xuclone, xucllittle);
+ z6 = (7/4[z2, z1]);
+ theta1 = angle(z1-z2);
+ xucmin_serif(6, theta1, -1);
+ draw z6--z2;
+
+ z4 = (x1+xuclone, y1);
+ z5 = (x2+xuclone, y2);
+ z3 = (2/3[z4, z5]);
+ theta4 = angle(z4-z5);
+ xucmin_serif(4, theta4, -1);
+ xucmin_serif(5, theta4, 1);
+ draw z2--z3;
+ draw z4--z5;
+
+ penlabels(range 1 thru 6);
+endchar;
+
+
+%% w %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "we";
+beginchar("w", xuclzw#+1.5xuclone#, xuclheight#, xucllow#);
+ pickup xuc_penl;
+ numeric theta[]; % Winkel der Strichs
+
+ z2 = (0, 0);
+ z1 = (1/3xuclone, xucllittle);
+ theta1 = angle(z1-z2);
+ xucmin_serif(1, theta1, -1);
+ draw z1--z2;
+
+ z4 = (x1+xuclone, y1);
+ z5 = (x2+xuclone, y2);
+ z3 = (2/3[z4, z5]);
+ z7 = (5/3[z4, z5]);
+ z6 = (7/4[z5, z4]);
+ theta4 = angle(z4-z5);
+ xucmin_serif(6, theta4, -1);
+ xucmin_serif(7, theta4, 1);
+ draw z2--z3;
+ draw z6--z7;
+
+ penlabels(range 1 thru 7);
+endchar;
+
+
+%% k %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "kan";
+beginchar("k", xuclzw#+2.5xuclone#, xuclheight#, xucllow#);
+ pickup xuc_penl;
+ numeric theta[]; % Winkel der Strichs
+
+ z2 = (0, 0);
+ z1 = (1/3xuclone, xucllittle);
+ theta1 = angle(z1-z2);
+ xucmin_serif(1, theta1, -1);
+ draw z1--z2;
+
+ z4 = (x1+xuclone, y1);
+ z5 = (x2+xuclone, y2);
+ z3 = (2/3[z4, z5]);
+ z9 = (1/3[z4, z5]);
+ z10 = (5/3[z4, z5]);
+ z6 = (7/4[z5, z4]);
+ theta4 = angle(z4-z5);
+ xucmin_serif(6, theta4, -1);
+ xucmin_serif(10, theta4, 1);
+ draw z2--z3;
+ draw z6--z10;
+
+ z7 = (x4+xuclone, y4);
+ z8 = (x5+xuclone, y5);
+ theta7 = angle(z7-z8);
+ xucmin_serif(8, theta7, 1);
+ draw z9--z7--z8;
+
+ penlabels(range 1 thru 10);
+endchar;
+
+%% q %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% To be improved
+xucchar "q - qhar (oct035, TO BE IMPROVED)";
+beginchar(oct"035", xuclzw#+2.5xuclone#, xucllittle#, xucllow#);
+ pickup xuc_penl;
+ numeric theta[]; % Winkel der Strichs
+
+ z2 = (0, 0);
+ z1 = (1/3xuclone, xucllittle);
+ theta1 = angle(z1-z2);
+ xucmin_serif(1, theta1, -1);
+ draw z1--z2;
+
+ z4 = (x1+xuclone, y1);
+ z5 = (x2+xuclone, y2);
+ z3 = (2/3[z4, z5]);
+ z10 = (5/3[z4, z5]);
+ theta4 = angle(z4-z5);
+ xucmin_serif(3, theta4, -1);
+ xucmin_serif(10, theta4, 1);
+ draw z3--z10;
+
+ z7 = (x4+xuclone, y4);
+ z8 = (x5+xuclone, y5);
+ z12 = (3/6[z7, z8]);
+ theta7 = angle(z7-z8);
+ xucmin_serif(7, theta7, -1);
+ xucmin_serif(8, theta7, 1);
+ draw z7--z8;
+
+% pickup xuc_penlx;
+ draw z2--z12;
+
+ penlabels(range 1 thru 12);
+endchar;
+
+
+%% b %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "ban";
+beginchar("b", xuclzw#+2xuclone#, xucllittle#, xucllow#);
+ pickup xuc_penl;
+ numeric theta[]; % Winkel der Strichs
+
+ z2 = (0, 0);
+ z1 = (1/3xuclone, xucllittle);
+ theta1 = angle(z1-z2);
+ xucmin_serif(1, theta1, -1);
+ draw z1--z2;
+
+ z4 = (x1+1.5xuclone, y1);
+ z5 = (x2+1.5xuclone, y2);
+ z3 = (2/3[z4, z5]);
+ theta4 = angle(z4-z5);
+ xucmin_serif(4, theta4, -1);
+
+ x6 = .5[x2, x5]; y6 = -1xucllow;
+ z7 = (x2, -.5xucllow);
+ z8 = (.5[x3,x4], y7);
+
+ draw z4--z5;
+
+ pickup xuc_penlx;
+ draw z2--z3;
+
+ pickup xuc_penb;
+ draw z5{-dir theta4}..{down}z8..{left}z6..{up}z7;
+
+ penlabels(range 1 thru 8);
+endchar;
+
+
+%% g %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "gan";
+beginchar("g", xuclzw#+2xuclone#, xucllittle#, xucllow#);
+ pickup xuc_penl;
+ numeric theta[]; % Winkel der Strichs
+
+ z1 = (xuclone, xucllittle);
+ z2 = (x1-1/3xuclone, 0);
+ z3 = (1/3[z1, z2]);
+ xucl_hakenlinks(1);
+ theta1 = angle(z1-z2);
+ xucmin_serif(2, theta1, 1);
+ draw z1--z2;
+
+ z4 = (x1+xuclone, y1);
+ z5 = (x2+xuclone, y2);
+ theta4 = angle(z4-z5);
+ draw z3--z4--z5;
+
+ x6 = .5[x2, x5]; y6 = -1xucllow;
+ z7 = (.5x2, -.5xucllow);
+ z8 = (x4, y7);
+ z9 = (x3, -.2xucllow);
+
+ pickup xuc_penb;
+ draw z5{-dir theta4}..{down}z8..{left}z6..{up}z7..{right}z9;
+
+ penlabels(range 1 thru 9);
+endchar;
+
+%% d %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "don";
+beginchar("d", xuclzw#+2xuclone#, xuclheight#, 0);
+ pickup xuc_penl;
+ numeric theta[]; % Winkel der Strichs
+
+ z1 = (xuclone, 7/4xucllittle);
+ z2 = (x1, 4/5xucllittle);
+ z3 = (1/3[z1, z2]);
+ xucl_hakenlinks(1);
+ xucl_hakenrechts(3);
+
+ z4 = (2x1, .5y2);
+ z6 = (0, y4);
+ z5 = (x2, 0);
+ draw z1--z2;
+
+ pickup xuc_penb;
+ draw z2..tension 2..z4..tension 2..z5..tension 2..z6..tension 2..cycle;
+ penlabels(range 1 thru 6);
+endchar;
+
+
+%% z %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "zen";
+beginchar("z", xuclzw#+1.5xuclone#, xuclheight#, 0);
+ pickup xuc_penl;
+ numeric theta[]; % Winkel der Strichs
+
+ z2 = (.5xuclhalf, 0);
+ z1 = (x2+1/3xuclone, xucllittle);
+ z6 = (7/4[z2, z1]);
+ z7 = (2/3[z2, z1]);
+
+ draw z6--z2;
+ xucl_hakenlinks(6);
+
+ z4 = (x1+xuclone, y1);
+ z5 = (x2+xuclone, y2);
+ z3 = (2/3[z4, z5]);
+ theta4 = angle(z4-z5);
+ xucmin_serif(5, theta4, 1);
+ draw z2--z3;
+ draw z4--z5;
+ draw z4--z7;
+
+ penlabels(range 1 thru 7);
+endchar;
+
+
+%% he %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "he (long e, oct036)";
+beginchar(oct"036", xuclzw#+1.8xuclone#, xuclheight#, xucllow#);
+ pickup xuc_penl;
+ numeric theta[]; % Winkel der Strichs
+
+ z2 = (.5xuclhalf, 0);
+ z1 = (x2+1/3xuclone, xucllittle);
+ z6 = (7/4[z2, z1]);
+ z3 = (2/3[z2, z1]);
+ z7 = (5/3[z1, z2]);
+ theta1 = angle(z1-z2);
+ xucmin_serif(6, theta1, -1);
+ xucmin_serif(7, theta1, 1);
+
+ draw z6--z7;
+
+ z4 = (x1+xuclone, y1);
+ z5 = (x2+xuclone, y2);
+ theta4 = angle(z4-z5);
+ xucmin_serif(5, theta4, 1);
+ draw z3--z4--z5;
+
+ z9 = (7/4[z5, z4]);
+ z8 = (5/4[z5, z4]);
+ draw z8--z9;
+
+ penlabels(range 1 thru 9);
+endchar;
+
+
+%% .k %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar ".k - .kan (oct003)";
+beginchar(oct"023", xuclzw#+1.5xuclone#, xuclheight#, xucllow#);
+ pickup xuc_penl;
+ numeric theta[]; % Winkel der Strichs
+
+ z2 = (0, 0);
+ z1 = (1/3xuclone, xucllittle);
+ z6 = (7/4[z2, z1]);
+ z3 = (1/3[z1, z2]);
+ theta1 = angle(z1-z2);
+ xucmin_serif(6, theta1, -1);
+ draw z6--z2;
+
+ z4 = (x1+xuclone, y1);
+ z5 = (x2+xuclone, y2);
+ z7 = (2/3[z4, z5]);
+ z8 = (5/3[z4, z5]);
+ theta4 = angle(z4-z5);
+ xucmin_serif(8, theta4, 1);
+ draw z3--z4--z8;
+ draw z2--z7;
+
+ penlabels(range 1 thru 8);
+endchar;
+
+
+%% m %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "man";
+beginchar("m", xuclzw#+1.5xuclone#, xuclheight#, 0);
+ pickup xuc_penl;
+
+ z1 = (1.5xuclone, 7/4xucllittle);
+ z2 = (x1, 4/5xucllittle);
+ z3 = (2/3[z1, z2]);
+ xucl_hakenlinks(1);
+
+ z4 = (0, .5y2);
+ z5 = (.5[x4, x1], 0);
+
+ draw z1--z2;
+
+ pickup xuc_penb;
+ draw z2{down}..{left}z5..{up}z4..{z3-z4}z3;
+
+ penlabels(range 1 thru 5);
+endchar;
+
+%% n %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% not yet very nice
+xucchar "nar (TO BE IMPROVED)";
+beginchar("n", xuclzw#+1.5xuclone#, xuclheight#, 0);
+ pickup xuc_penl;
+ numeric theta[]; % Winkel der Strichs
+
+ z2 = (0, 0);
+ z1 = (1/3xuclone, xucllittle);
+ z6 = (12/8[z2, z1]);
+ z3 = (1/3[z1, z2]);
+
+ theta1 = angle(z1-z2);
+ xucmin_serif(2, theta1, 1);
+
+ z4 = (x1+xuclone, y1);
+ z5 = (x2+xuclone, y2);
+ z7 = (7/4[z5, z4]);
+ z8 = (5/4[z5, z4]);
+ draw z2--z6--z7--z8;
+
+ theta4 = angle(z4-z5);
+ xucmin_serif(5, theta4, 1);
+ xucmin_serif(8, theta4, 1);
+ draw z3--z4--z5;
+
+ penlabels(range 1 thru 8);
+endchar;
+
+
+%% i1 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "i1 - short i, (Old Georgian), oct032";
+beginchar(oct"032", xuclzw#+1.5xuclone#, xucllittle#, 0);
+ pickup xuc_penb;
+ numeric theta[]; % Winkel der Strichs
+
+ z1 = (1.5xuclone, xucllittle);
+ z3 = (xuclhalf, 2/3y1);
+ z2 = (.5[x1, x3], 0);
+ z4 = (x1, y1+.5py2);
+ draw z1{down}..{left}z2..{dir 30}z3;
+ xucmin_serif(4, 90, -1);
+
+ penlabels(range 1 thru 3);
+endchar;
+
+
+%% ^s %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "^sin";
+beginchar(oct"025", xuclzw#+1.5xuclone#, xucllittle#, xucllow#);
+ pickup xuc_penl;
+ numeric theta[]; % Winkel der Strichs
+
+ z2 = (0, 0);
+ z1 = (1/3xuclone, xucllittle);
+ theta1 = angle(z1-z2);
+ xucmin_serif(1, theta1, -1);
+ draw z1--z2;
+
+ z4 = (x1+1xuclone, y1);
+ z5 = (x2+1xuclone, y2);
+ z3 = (2/3[z4, z5]);
+ theta4 = angle(z4-z5);
+ xucmin_serif(4, theta4, -1);
+
+ x6 = .5[x2, x5]; y6 = -1xucllow;
+ z7 = (x2, -.5xucllow);
+ z8 = (x5, y7);
+
+ draw z2--z3;
+ draw z4--z5;
+
+ pickup xuc_penb;
+ draw z5{-dir theta4}..{down}z8..{left}z6..{up}z7;
+
+ penlabels(range 1 thru 8);
+endchar;
+
+
+%% ^c %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "^cin";
+beginchar(oct"021", xuclzw#+1.5xuclone#, xuclheight#, xucllow#);
+ pickup xuc_penl;
+ numeric theta[]; % Winkel der Strichs
+
+ z2 = (.5xuclhalf, 0);
+ z1 = (x2+1/3xuclone, xucllittle);
+ z6 = (7/4[z2, z1]);
+ z3 = (2/3[z2, z1]);
+ z7 = (5/3[z1, z2]);
+ theta1 = angle(z1-z2);
+ xucmin_serif(6, theta1, -1);
+ xucmin_serif(7, theta1, 1);
+
+ draw z6--z7;
+
+ z4 = (x1+xuclone, y1);
+ z5 = (x2+xuclone, y2);
+ theta4 = angle(z4-z5);
+ xucmin_serif(5, theta4, 1);
+ draw z3--z4--z5;
+
+ penlabels(range 1 thru 7);
+endchar;
+
+%% c %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "cin";
+beginchar("c", xuclzw#+1.5xuclone#, xucllittle#, xucllow#);
+ pickup xuc_penl;
+ numeric theta[]; % Winkel der Strichs
+
+ z2 = (.5xuclhalf, 0);
+ z1 = (x2+1/3xuclone, xucllittle);
+ z3 = (2/3[z2, z1]);
+ z7 = (4/3[z1, z2]);
+ theta1 = angle(z1-z2);
+ xucmin_serif(1, theta1, -1);
+
+ z4 = (x1+xuclone, y1);
+ z5 = (x2+xuclone, y2);
+ z6 = (x5, 5/3[y4, y5]);
+
+ theta4 = angle(z4-z5);
+ xucmin_serif(5, theta4, 1);
+
+ draw z1--z7;
+ draw z3--z4--z5;
+
+ pickup xuc_penb;
+ draw z7{down}..{right}z6;
+
+ penlabels(range 1 thru 7);
+endchar;
+
+
+%% x %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "xan";
+beginchar("x", xuclzw#+1.5xuclone#, xucllittle#, xucllow#);
+ pickup xuc_penl;
+ numeric theta[]; % Winkel der Strichs
+
+ z2 = (.5xuclhalf, 0);
+ z1 = (x2+1/3xuclone, xucllittle);
+ z7 = (4/3[z1, z2]);
+ theta1 = angle(z1-z2);
+ xucmin_serif(1, theta1, -1);
+
+ z4 = (x1+xuclone, y1);
+ z5 = (x2+xuclone, y2);
+ z6 = (x4, 5/3[y4, y5]);
+ z3 = (2/3[z4, z5]);
+
+ theta4 = angle(z4-z5);
+ xucmin_serif(4, theta4, -1);
+ xucmin_serif(5, theta4, 1);
+
+ draw z1--z7;
+ draw z3--z2;
+ draw z4--z5;
+
+ pickup xuc_penb;
+ draw z7{down}..{right}z6;
+
+ penlabels(range 1 thru 7);
+endchar;
+
+%% .t %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar ".t - .tar (.t oct026)";
+beginchar(oct"026", xuclzw#+1.5xuclone#, xucllittle#, xucllow#);
+ pickup xuc_penl;
+ numeric theta[]; % Winkel der Strichs
+
+ z2 = (.5xuclhalf, 0);
+ z1 = (x2+1/3xuclone, xucllittle);
+ z7 = (2/3[z2, z1]);
+ z8 = (4/3[z1, z2]);
+ theta1 = angle(z1-z2);
+ xucmin_serif(1, theta1, -1);
+
+ z4 = (x1+xuclone, y1);
+ z5 = (x2+xuclone, y2);
+ z6 = (x5, 5/3[y4, y5]);
+ z3 = (2/3[z4, z5]);
+
+ theta4 = angle(z4-z5);
+ xucmin_serif(5, theta4, 1);
+
+ draw z1--z8;
+ draw z3--z2;
+ draw z4--z5;
+ draw z4--z7;
+
+ pickup xuc_penb;
+ draw z8{down}..{right}z6;
+
+ penlabels(range 1 thru 8);
+endchar;
+
+
+%% .^c %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "^.c - ^.car (,c .+c oct034)";
+beginchar(oct"034", xuclzw#+1.5xuclone#, xucllittle#, xucllow#);
+ pickup xuc_penl;
+ numeric theta[]; % Winkel der Strichs
+ z2 = (.5xuclhalf, 0);
+ z1 = (x2+1/3xuclone, xucllittle);
+ z3 = (2/3[z2, z1]);
+ z8 = (7/6[z1, z2]);
+ theta1 = angle(z1-z2);
+ xucmin_serif(1, theta1, -1);
+
+ z4 = (x1+xuclone, y1);
+ z5 = (x2+xuclone, y2);
+ z6 = (x5, 4/3[y4, y5]);
+ z7 = (x2, 5/3[y4, y5]);
+
+ theta4 = angle(z4-z5);
+ xucmin_serif(5, theta4, 1);
+
+ draw z1--z8;
+ draw z3--z4--z5;
+
+ pickup xuc_penb;
+ draw z8{right}..{down}z6..{left}z7;
+
+ penlabels(range 1 thru 8);
+endchar;
+
+
+%% d^z %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "d^zan (+j oct030)";
+beginchar(oct"030", xuclzw#+2xuclone#, xucllittle#, xucllow#);
+ pickup xuc_penl;
+ z1 = (xuclone, xucllittle);
+ xucl_hakenlinks(1);
+
+ z2 = (2xuclone, -1/3xucllittle);
+ z3 = (x1, 2/3xucllittle);
+
+ z4 = (.75[x1,x2], y1);
+ z5 = (x2, y3);
+ z6 = (x1, -2/3xucllittle);
+
+ pickup xuc_penb;
+ draw z1..z3..z2;
+ draw z3..{right}z4..{down}z5..{right}z6;
+
+ penlabels(range 1 thru 7);
+endchar;
diff --git a/fonts/georgian/mxedruli/mf/xucp.mf b/fonts/georgian/mxedruli/mf/xucp.mf
new file mode 100644
index 0000000000..9349d05cf6
--- /dev/null
+++ b/fonts/georgian/mxedruli/mf/xucp.mf
@@ -0,0 +1,247 @@
+% Xucuri Punctuation `xucp.mf'
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Designed by Johannes Heinecke %
+% <johannes.heinecke@wanadoo.fr> %
+% This software is under the LaTeX Project Public License %
+% Please send any improvements, corrections, suggestions, enhancements etc %
+% to the Author! %
+% %
+% Version 0.1 as of 30th March 1997 %
+% %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+
+
+def xuc_comma (suffix $) =
+ pickup xuc_pcomma;
+ rt z$a = (pdot, y$);
+ z$b = (0, y$-.6mxlow);
+ draw z$a{down}..{dir -135}z$b;
+ labels($a, $b);
+enddef;
+
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%% Character Definitions: %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+
+
+%% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "+";
+beginchar("+", mxzw#+mxone#, mxone#, 0);
+ if known cmbase: adjust_fit(0,0); fi
+ pickup xuc_dash;
+ lft z1 = (0, .5mxone);
+ z2 = (x1+mxone, y1);
+ draw z1--z2;
+
+ z3 = (.5[x1, x2], 0);
+ z4 = (x3, mxone);
+ draw z3--z4;
+
+ penlabels(range 1 thru 4);
+endchar;
+
+%% = %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "Equals sign =";
+beginchar("=", mxzw#+1.5mxone#, mxlittle#, 0);
+ pickup xuc_dash;
+ lft z1 = (0, 1.5mxthird);
+ z2 = (x1+1.5mxone, y1);
+ z3 = (x1, 2.5mxthird);
+ z4 = (x2, y3);
+ draw z1--z2;
+ draw z3--z4;
+ penlabels(range 1 thru 4);
+endchar;
+
+%% / %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "Slash /";
+beginchar("/", mxzw#+1.5mxone#, mxlittle#, 0);
+ pickup xuc_dash;
+ z1 = (0,0);
+ z2 = (1.5mxone, mxheight);
+ draw z1--z2;
+ penlabels(1,2);
+endchar;
+
+%% \ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "Backslash \ ";
+beginchar("\", mxzw#+1.5mxone#, mxlittle#, 0);
+ pickup xuc_dash;
+ z1 = (0,mxheight);
+ z2 = (1.5mxone, 0);
+ draw z1--z2;
+ penlabels(1,2);
+endchar;
+
+
+
+%% - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "-";
+beginchar("-", mxzw#+mxone#, mxlittle#, 0);
+ pickup xuc_dash;
+ lft z1 = (0, mxmiddle);
+ z2 = (x1+mxone, y1);
+ draw z1--z2;
+ penlabels(range 1 thru 2);
+endchar;
+
+%% -- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "-- (123)";
+beginchar(123, mxzw#+1.5mxone#, mxlittle#, 0);
+ pickup xuc_dash;
+ lft z1 = (0, mxmiddle);
+ z2 = (x1+1.5mxone, y1);
+ draw z1--z2;
+ penlabels(range 1 thru 2);
+endchar;
+
+%% --- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "--- (124)";
+beginchar(124, mxzw#+2mxone#, mxlittle#, 0);
+ pickup xuc_dash;
+ lft z1 = (0, mxmiddle);
+ z2 = (x1+2mxone, y1);
+ draw z1--z2;
+ penlabels(range 1 thru 2);
+endchar;
+
+%% . %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "Period .";
+beginchar(".", mxzw#+mxhalf#, mxlittle#, 0);
+ pickup xuc_dot;
+ bot lft z1 = (0, 0);
+ drawdot z1;
+ penlabels(1);
+endchar;
+
+%% : %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "Colon :";
+beginchar(":", mxzw#+mxhalf#, mxlittle#, 0);
+ pickup xuc_dot;
+ lft z1 = (0, mxthird);
+ lft z2 = (0, 2.5mxthird);
+ drawdot z1;
+ drawdot z2;
+ penlabels(range 1 thru 2);
+endchar;
+
+%% ; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "Semicolon ;";
+beginchar(";", mxzw#+pdot#, mxlittle#, .6mxlow#);
+ pickup xuc_dot;
+ bot lft z1 = (0, 0);
+ z4 = (x1, y1+.5mxlittle);
+ drawdot z1;
+ drawdot z4;
+
+ xuc_comma(1);
+ penlabels(range 1 thru 4);
+endchar;
+
+
+%% , %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "Comma ,";
+beginchar(",", mxzw#+pdot#, mxlittle#, .6mxlow#);
+ pickup xuc_dot;
+ bot lft z1 = (0, 0);
+ drawdot z1;
+ xuc_comma(1);
+ penlabels(range 1 thru 3);
+endchar;
+
+
+%% ' %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "Apostroph '";
+beginchar("'", mxzw#+pdot#, mxheight#, 0#);
+ pickup xuc_dot;
+ lft z1 = (0, mxheight);
+ drawdot z1;
+
+ xuc_comma(1);
+ penlabels(range 1 thru 3);
+endchar;
+
+%% ? %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "Question mark ?";
+beginchar("?", mxzw#+mxone#, mxheight#, 0);
+ pickup xuc_dot;
+ bot z1 = (mxhalf, 0);
+ drawdot z1;
+
+ pickup xuc_punctpen;
+ z2 = (0, mxheight-.5mxtop);
+ z3 = (x1, mxheight);
+ z4 = (mxone, y2);
+ z5 = (x1, mxmiddle);
+ z6 = (x5, 1.2mxthird);
+
+ draw z2{up}..{right}z3..{down}z4..{down}z5--z6;
+ penlabels(1,2,3,4,5);
+endchar;
+
+%% ! %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "Exclamation mark !";
+beginchar("!", mxzw#+.5mxhalf#, mxheight#, 0);
+ pickup xuc_dot;
+ bot lft z1 = (0, 0);
+ drawdot z1;
+
+ z2 = (x1, mxheight-.5pdot); penpos2(pdot, 0);
+ drawdot z2;
+ z3 = (x1, mxmiddle); penpos3(.18mxu, 0);
+ penstroke z2e..z3e;
+ penlabels(1,2,3);
+endchar;
+
+%% ( %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "Left parenthesis (";
+beginchar("(", mxzw#+mxhalf#, 1.1mxheight#, .1mxheight#);
+ z1 = (.5pdot+mxhalf, 1.1mxheight); penpos1(.18mxu, 0);
+ z3 = (x1, -.1mxheight); penpos3(.18mxu, 0);
+ z2 = (.5pdot, .5[y1, y3]); penpos2(pdot, 0);
+ penstroke z1e..z2e..z3e;
+ penlabels(range 1 thru 4);
+endchar;
+
+
+%% ) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "Right parenthesis )";
+beginchar(")", mxzw#+mxhalf#, 1.1mxheight#, .1mxheight#);
+ z1 = (0, 1.1mxheight); penpos1(.18mxu, 0);
+ z3 = (x1, -.1mxheight); penpos3(.18mxu, 0);
+ z2 = (mxhalf, .5[y1, y3]); penpos2(pdot, 0);
+ penstroke z1e..z2e..z3e;
+ penlabels(range 1 thru 4);
+endchar;
+
+%% [ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "Left bracket [";
+beginchar("[", mxzw#+mxhalf#, 1.1mxheight#, .1mxheight#);
+ pickup xuc_square;
+ z1 = (mxhalf, -.1mxheight);
+ z2 = (0, y1);
+ z3 = (0, 1.1mxheight);
+ z4 = (x1, y3);
+ draw z1--z2--z3--z4;
+ penlabels(range 1 thru 4);
+endchar;
+
+%% ] %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+xucchar "Right bracket ]";
+beginchar("]", mxzw#+mxhalf#, 1.1mxheight#, .1mxheight#);
+ pickup xuc_square;
+ z1 = (0, -.1mxheight);
+ z2 = (mxhalf, y1);
+ z3 = (x2, 1.1mxheight);
+ z4 = (0, y3);
+ draw z1--z2--z3--z4;
+ penlabels(range 1 thru 4);
+endchar;
+
+
+%endinput; \ No newline at end of file
diff --git a/fonts/georgian/mxedruli/mxeddoc.pdf b/fonts/georgian/mxedruli/mxeddoc.pdf
new file mode 100644
index 0000000000..bc0fdf204a
--- /dev/null
+++ b/fonts/georgian/mxedruli/mxeddoc.pdf
Binary files differ
diff --git a/fonts/georgian/mxedruli/mxeddoc.tex b/fonts/georgian/mxedruli/mxeddoc.tex
new file mode 100644
index 0000000000..dbaeb391cd
--- /dev/null
+++ b/fonts/georgian/mxedruli/mxeddoc.tex
@@ -0,0 +1,953 @@
+\documentclass[12pt]{article}
+\usepackage{a4,mxedruli,xucuri,tipa}
+\usepackage{times}
+
+% Designed by Johannes Heinecke %
+% <johannes.heinecke@wanadoo.fr> %
+% This software is under the LaTeX Project Public License %
+
+%\newif\ifpdf\ifx\pdfoutput\undefined\pdffalse\else\pdftrue\fi
+
+%\ifpdf
+\usepackage[pdftex,colorlinks=true,
+ urlcolor=urlcol, % URL: http://
+ citecolor=bibcol, % bibTeX
+ linkcolor=linkcol, % sections, footnotes, ...
+ filecolor=filecol, % URL: file:/
+ pdftitle={The Georgian Alphabets},
+ pdfauthor={Johannes Heinecke},
+ pdfsubject={},pdfkeywords={},pagebackref,
+ pdfpagemode=UseNone,bookmarksopen=true]{hyperref}
+ \usepackage{color}
+ \definecolor{linkcol}{rgb}{0.75,0,0}
+ \definecolor{bibcol}{rgb}{0,0.5,0}
+ \definecolor{urlcol}{rgb}{0,0,0.75}
+ \definecolor{filecol}{rgb}{0,0,0.75}
+ \urlstyle{same}
+
+%\else
+%\fi
+
+
+\parskip7mm
+\parindent 0pt
+\addtolength{\topmargin}{-1ex}
+\addtolength{\textheight}{2ex}
+
+\font\logo=logo10 scaled \magstep1
+\font\logogr=logobf10 scaled \magstep3
+%\font\phon=wsuipa12
+
+\title{{\mxedc mxedruli} --- \it Mxedruli,\\
+ {\xucr XUCURI, xucuri} --- Xucuri\\
+The Georgian Alphabets\thanks{With improvements by
+Jan De Lameillieure, Berlin and Mark Leisher, Las Cruces, New Mexico}}
+
+\author{Johannes Heinecke (\href{mailto:johannes.heinecke@wanadoo.fr}{johannes.heinecke@wanadoo.fr})\\
+Lannion, France}
+
+\def\mxedversion{3.4}
+
+\date{Version \mxedversion, 5th April 2013}
+
+\begin{document}
+\maketitle
+
+\thispagestyle{empty}
+
+\section{Introduction}
+This is a short documentation of the two alphabets
+used by Georgian and some of its neighbouring languages from
+the Kartvelian language family. The first alphabet is called
+{\it Mxedruli}. Some letters used by Old Georgian or
+other languages such as Ossetian are also included.
+The second alphabet is called {\it Xucuri\/}. Whereas {\it Mxedruli\/}
+does differentiate majuscules and minuscules, {\it Xucuri\/} distinguishes
+between majuscules (also called {\it Mrg(v)lovani\/}) and minuscules
+({\it \d Kutxovani\/}). However, in opposition to the Roman, Greek and
+Cyrillic alphabets in a text either majuscules or minuscules are
+used. They cannot be combined. {\it Xucuri\/} is now restricted to
+religious use.
+
+It is implemented using {\logo METAFONT} and can be used in
+\LaTeX\ or \TeX-documents.
+The font are of a rather simple design (cf. section \ref{Examples}) and
+surely may be improved. I would be very happy if any suggestions,
+improvements, corrections, extensions, enhancements etc. could be
+forwarded to me\footnote{By e-mail: \href{mailto:johannes.heinecke@wanadoo.fr}{johannes.heinecke@wanadoo.fr}. I try to realize suggestions etc. as
+quick as possible. So please check my WWW-Homepage for the newest
+$\beta$-release: \url{http://pagesperso-orange.fr/heinecke/mxedruli/}}. Thank
+you very much!
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%% USAGE %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\section{The fonts and their usage}
+\subsection{\emph{Mxedruli}}
+The tables below show the names of the {\it Mxedruli\/} letters,
+followed by the letter in normal and bold shape and in a
+``capital''\footnote{As there are no capital letters in {\it mxedruli\/}
+the letters are scaled to the same height for headlines etc.} mode.
+Within a \LaTeX-document they can be activated by \verb+\mxedr+
+(normal), \verb+\mxedb+ (bold)
+\verb+\mxedi+ (italics) or \verb+\mxedc+
+analogously to standard \LaTeX\ font commands such as \verb+\rm+,
+\verb+\bf+, \verb+\it+ or \verb+\sc+ respectively. Therefore the
+\verb|mxedruli.sty| stylefile must be loaded for standard font
+selection and NFSS2.\footnote{NFSS1 is supported too.
+Due to the lack of NFSS1 however, I
+could not test, whether the NFSS1 routines work satisfactorily.}.
+Please refer to section
+\ref{Install} in order to install the fonts. They are provided for
+300dpi printers, if you need different solutions section \ref{MF}
+describes how you can produce the {\tt .pk}-files required.
+
+Within \LaTeX\ the font size commands have also effect on the {\it
+Mxedruli\/} letters. Finally, in the last column, the required
+\LaTeX\ or \TeX-input to produce the {\it Mxedruli\/} letter is shown.
+
+
+(As I designed some new letters I had to reposition the
+`{\mxedr .+c}' (\verb-.+c-) from its original position\footnote{As
+coded in versions anterior to 2.1} {\it '171\/}
+to {\it '014\/}. On {\it '171\/} ({\it y\/}) the new
+letter `{\mxedr y}' ({\it schwa\/}) is installed now. This is
+mainly important for those users, who address the letters
+directly by using the \TeX\ \verb+\char+{\it nnn\/} or the
+\LaTeX\ \verb+\symbol{+{\it nnn\/}\verb+}+ commands respectively.
+If you address the letter as described here, nothing has changed
+compared to previous versions.)
+
+For those (Kartvelian) languages, which use {\it Mxedruli\/} together
+with diacritics\footnote{Sometimes also used in Kartvelian
+dialectology or descriptive linguistics of Kaukasian languages in
+Georgian, in order to provide a phonetic transcription without recurring to the
+Internal Phonetic Alphabet.} an umlaut (`\char127'), a circumflex (`\char94')
+and a macron (`\char22') have
+been defined. They can be used as in normal \LaTeX-documents by the
+\verb+\"+{\it char\/} (umlaut on {\it char\/}), \verb+\^+{\it char\/} (circonflex)
+ or \verb+\=+{\it char\/} (macron)
+command respectively, e.g. \verb+{\mxedr \"o}+ yields `{\mxedr \"o}',
+\verb+{\mxedr+ \verb+\^a}+ yields `{\mxedr \^a}',
+and \verb+{\mxedr \=u}+ yields `{\mxedr \=u}'.
+
+The table in sections \ref{mxedletters} and \ref{xucletters}
+contains in the leftmost column the corresponding
+Unicode-code\footnote{Cf. \url{http://www.unicode.org/charts/}.} Please note that the
+letter-names do slightly differ to the names used in the Unicode name table. This is due
+to different conventions.
+
+
+\vfill
+\subsubsection{Standard letters}\label{mxedletters}
+
+\begin{center}
+\begin{tabular}{|l |c |c |c |c |c |c|c|}
+\hline
+ & \multicolumn{4}{c|}{\it Mxedruli} & & &\\
+\cline{2-5}
+\raisebox{1.5ex}[1.5ex]{Name} & normal & bold & italics & capital &
+\raisebox{1.5ex}[1.5ex]{Transcription} & \raisebox{1.5ex}[1.5ex]{input} & \raisebox{1.5ex}[1.5ex]{Unicode} \\
+\hline\hline
+an & \mxedr a & \mxedb a & \mxedi a & \mxedc a & a & \verb|a| & 10D0 \\ \hline
+ban & \mxedr b & \mxedb b & \mxedi b & \mxedc b & b & \verb|b| & 10D1 \\
+\hfill \it or & \mxedr b1 & \mxedb b1 & \mxedi b1 & & & \verb|b1| & \\ \hline
+gan & \mxedr g & \mxedb g & \mxedi g & \mxedc g & g & \verb|g| & 10D2 \\ \hline
+don & \mxedr d & \mxedb d & \mxedi d & \mxedc d & d & \verb|d| & 10D3 \\ \hline
+en & \mxedr e & \mxedb e & \mxedi e & \mxedc e & e & \verb|e| & 10D4 \\ \hline
+vin & \mxedr v & \mxedb v & \mxedi v & \mxedc v & v & \verb|v| & 10D5 \\ \hline
+zen & \mxedr z & \mxedb z & \mxedi z & \mxedc z & z & \verb|z| & 10D6 \\ \hline
+tan & \mxedr t & \mxedb t & \mxedi t & \mxedc t & t & \verb|t| & 10D7 \\ \hline
+in & \mxedr i & \mxedb i & \mxedi i & \mxedc i & i & \verb|i| & 10D8 \\ \hline
+\d kan & \mxedr .k & \mxedb .k & \mxedi .k & \mxedc .k & \d k & \verb|.k| & 10D9 \\ \hline
+las & \mxedr l & \mxedb l & \mxedi l & \mxedc l & l & \verb|l| & 10DA \\ \hline
+man & \mxedr m & \mxedb m & \mxedi m & \mxedc m & m & \verb|m| & 10DB \\ \hline
+nar & \mxedr n & \mxedb n & \mxedi n & \mxedc n & n & \verb|n| & 10DC \\ \hline
+on & \mxedr o & \mxedb o & \mxedi o & \mxedc o & o & \verb|o| & 10DD \\ \hline
+\.par & \mxedr .p & \mxedb .p & \mxedi .p & \mxedc .p & \.p & \verb|.p| & 10DE \\ \hline
+\v zan & \mxedr +z & \mxedb +z & \mxedi +z & \mxedc +z & \v z & \verb|+z| & 10DF \\ \hline
+ran & \mxedr r & \mxedb r & \mxedi r & \mxedc r & r & \verb|r| & 10E0 \\ \hline
+san & \mxedr s & \mxedb s & \mxedi s & \mxedc s & s & \verb|s| & 10E1 \\ \hline
+\d tar & \mxedr .t & \mxedb .t & \mxedi .t & \mxedc .t & \d t & \verb|.t| & 10E2 \\ \hline
+un & \mxedr u & \mxedb u & \mxedi u & \mxedc u & u & \verb|u| & 10E3 \\ \hline
+par & \mxedr p & \mxedb p & \mxedi p & \mxedc p & p & \verb|p| & 10E4 \\ \hline
+kan & \mxedr k & \mxedb k & \mxedi k & \mxedc k & k & \verb|k| & 10E5 \\ \hline
+\.gan & \mxedr .g & \mxedb .g & \mxedi .g & \mxedc .g & \.g & \verb|.g| & 10E6 \\ \hline
+\.qar & \mxedr q & \mxedb q & \mxedi q & \mxedc q & \.q & \verb|q|\footnotemark & 10E7 \\ \hline
+\v san & \mxedr +s & \mxedb +s & \mxedi +s & \mxedc +s & \v s & \verb|+s| & 10E8 \\ \hline
+\v cin & \mxedr +c & \mxedb +c & \mxedi +c & \mxedc +c & \v c & \verb|+c| & 10E9 \\ \hline
+can & \mxedr c & \mxedb c & \mxedi c & \mxedc c & c & \verb|c| & 10EA \\ \hline
+dzil & \mxedr j & \mxedb j & \mxedi j & \mxedc j & j/dz & \verb|j| & 10EB \\ \hline
+\d cil & \mxedr .c & \mxedb .c & \mxedi .c & \mxedc .c & \d c & \verb|.c| & 10EC \\ \hline
+\d{\v c}ar & \mxedr .+c & \mxedb .+c & \mxedi .+c & \mxedc .+c & \d{\v c}& \verb|.+c| & 10ED \\ \hline
+xan & \mxedr x & \mxedb x & \mxedi x & \mxedc x & x & \verb|x| & 10EE \\ \hline
+d\v zan & \mxedr +j & \mxedb +j & \mxedi +j & \mxedc +j & d\v z & \verb|+j| & 10EF \\ \hline
+ha & \mxedr h & \mxedb h & \mxedi h & \mxedc h & h & \verb|h| & 10F0 \\ \hline
+\end{tabular}
+\end{center}
+
+\footnotetext{Although the transcription of `{\mxedr q}' is {\it \.q\/} the
+\TeX-input will remain `{\tt q}' for the letter {\it \.qar\/} as
+it appears with a far more frequent than {\it qar\/} (`{\mxedr q1}')
+which is coded as `{\tt q1}'.}
+
+\subsubsection{Other letters}
+
+\begin{center}
+\begin{tabular}{|l |c |c |c |c |c |c| c|}
+\hline
+ & \multicolumn{4}{c|}{\it Mxedruli} & & & \\
+\cline{2-5}
+\raisebox{1.5ex}[1.5ex]{Name} & normal & bold & italics & capital &
+\raisebox{1.5ex}[1.5ex]{Transcription} & \raisebox{1.5ex}[1.5ex]{input} & \raisebox{1.5ex}[1.5ex]{Unicode} \\ \hline\hline
+qar & \mxedr q1 & \mxedb q1 & \mxedi q1 & \mxedc q1 & q & \verb|q1| & 10F4 \\ \hline
+h\=e & \mxedr e0 & \mxedb e0 & \mxedi e0 & \mxedc e0 & \=e, e\u\i & \verb|e0| & 10F1 \\ \hline
+ho & \mxedr o1 & \mxedb o1 & \mxedi o1 & \mxedc o1 & \=o, oy & \verb|o1| & 10F5 \\ \hline
+jo & \mxedr i1 & \mxedb i1 & \mxedi i1 & \mxedc i1 & \u\i & \verb|i1| & 10F2 \\ \hline
+wi & \mxedr w & \mxedb w & \mxedi w & \mxedc w & w & \verb|w| & 10F3 \\ \hline
+fi & \mxedr f & \mxedb f & \mxedi f & \mxedc f & f & \verb|f| & 10F6 \\ \hline
+schwa & \mxedr y & \mxedb y & \mxedi y & \mxedc y & \textschwa, y & \verb|y| & 10F7 \\ \hline
+elifi & \mxedr a1 & \mxedb a1 & \mxedi a1 & \mxedc a1 & ' & \verb|a1| & 10F8 \\ \hline
+\ae & \mxedr e1 & \mxedb e1 & \mxedi e1 & \mxedc e1 & \ae & \verb|e1| & \\ \hline
+\end{tabular}
+\end{center}
+
+The letters \emph{qar}, \emph{h\=e}, \emph{ho}, \emph{jo}, \emph{wi} and \emph{fi}
+are seldomly used or archaic letters (\emph{fi} may be used to transcribe
+latin \emph{f}). \emph{Schwa} and \emph{elifi} are mainly used in Mingrelian or Svan, whereas \emph{\ae} is used to write the Ossetian
+language using Mxedruli.
+
+\subsubsection{Digits}
+
+
+\begin{center}
+\begin{tabular}{|c |c |c | c|}
+\hline
+\multicolumn{3}{|c|}{\it Mxedruli} & \\
+\cline{1-3}
+normal & bold & capital & \raisebox{1.5ex}[1.5ex]{input} \\
+\hline\hline
+ \mxedr 1 & \mxedb 1 & \mxedc 1 & \verb|1| \\ \hline
+ \mxedr 2 & \mxedb 2 & \mxedc 2 & \verb|2| \\ \hline
+ \mxedr 3 & \mxedb 3 & \mxedc 3 & \verb|3| \\ \hline
+ \mxedr 4 & \mxedb 4 & \mxedc 4 & \verb|4| \\ \hline
+ \mxedr 5 & \mxedb 5 & \mxedc 5 & \verb|5| \\ \hline
+\end{tabular} \hspace{10mm}
+%
+\begin{tabular}{|c |c |c | c|}
+\hline
+\multicolumn{3}{|c|}{\it Mxedruli} & \\
+\cline{1-3}
+normal & bold & capital & \raisebox{1.5ex}[1.5ex]{input} \\
+\hline\hline
+\mxedr 6 & \mxedb 6 & \mxedc6 & \verb|6| \\ \hline
+\mxedr 7 & \mxedb 7 & \mxedc7 & \verb|7| \\ \hline
+\mxedr 8 & \mxedb 8 & \mxedc8 & \verb|8| \\ \hline
+\mxedr 9 & \mxedb 9 & \mxedc9 & \verb|9| \\ \hline
+\mxedr 0 & \mxedb 0 & \mxedc0 & \verb|0| \\ \hline
+\end{tabular}
+\end{center}
+
+
+\subsubsection{Punctuation}\label{punkte}
+\begin{center}
+
+
+\begin{tabular}[t]{|c |c |c | c|}
+\hline
+\multicolumn{3}{|c|}{\it Mxedruli} & \\
+\cline{1-3}
+normal & bold & capital & \raisebox{1.5ex}[1.5ex]{input} \\
+\hline\hline
+ \mxedb . & \mxedr . & \mxedc . & \verb|.| \\ \hline
+ \mxedr , & \mxedb , & \mxedc , & \verb|,| \\ \hline
+ \mxedr ! & \mxedb ! & \mxedc ! & \verb|!| \\ \hline
+ \mxedr ? & \mxedb ? & \mxedc ? & \verb|?| \\ \hline
+ \mxedr = & \mxedb = & \mxedc = & \verb|=| \\ \hline
+ \mxedr - & \mxedb - & \mxedc - & \verb|-| \\ \hline
+ \mxedr -- & \mxedb -- & \mxedc -- & \verb|--| \\ \hline
+ \mxedr --- & \mxedb --- & \mxedc --- & \verb|---| \\ \hline
+ \mxedr / & \mxedb / & \mxedc / & \verb|/| \\ \hline
+ \mxedr \char92 & \mxedb \char92 & \mxedc \char92 & \verb|\char92| \\ \hline
+\end{tabular} \hspace{10mm}
+%
+\begin{tabular}[t]{|c |c |c | c|}
+\hline
+\multicolumn{3}{|c|}{\it Mxedruli} & \\
+\cline{1-3}
+normal & bold & capital & \raisebox{1.5ex}[1.5ex]{input} \\
+\hline\hline
+ \mxedr : & \mxedb : & \mxedc : & \verb|:| \\ \hline
+ \mxedr ; & \mxedb ; & \mxedc ; & \verb|;| \\ \hline
+ \mxedr + & \mxedb + & \mxedc + & \verb|+| \\ \hline
+ \mxedr ( & \mxedb ( & \mxedc ( & \verb|(| \\ \hline
+ \mxedr ) & \mxedb ) & \mxedc ) & \verb|)| \\ \hline
+ \mxedr [ & \mxedb [ & \mxedc [ & \verb|[| \\ \hline
+ \mxedr ] & \mxedb ] & \mxedc ] & \verb|]| \\ \hline
+ \mxedr '' & \mxedb '' & \mxedc '' & \verb|''| \\ \hline
+ \mxedr ,, & \mxedb ,, & \mxedc ,, & \verb|,,| \\ \hline
+\end{tabular}
+\end{center}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\subsection{\emph{Xucuri}}
+The following tables show the names and the coding of the {\it
+Xucuri\/} alphabets ({\it Mrgvlovani\/} and {\it \d
+Kutxovani\/}). These fonts do not have any
+diacritics. Further, for the time being, it only consists of the normal
+series.\footnote{If there is a demand for italics and bold versions, I
+will gladly provide the driver files required. Please contact me as
+indicated on page 1.}
+
+Within a \LaTeX-document they can be activated by \verb+\xucr+.
+If used within a \LaTeX-document together with the style file provided
+({\tt xucuri.sty}) the \LaTeX\ size commands will also work.
+(\LaTeXe\ is supported together with NFSS2, as is \LaTeX 2.09)
+
+\subsubsection{Letters}\label{xucletters}
+
+\begin{center}
+\begin{tabular}{|l |c |c| c| c|c|c|}
+\hline
+% & \it Xucuri & \\
+%\cline{2-2}
+%\raisebox{1.5ex}[1.5ex]{Name} & normal &
+%\raisebox{1.5ex}[1.5ex]{Transcription} &
+%raisebox{1.5ex}[1.5ex]{\TeX-input} \\
+Name & \multicolumn{2}{c|}{\it Xucuri} & Transcription & input & \multicolumn{2}{c|}{Unicode}\\
+ & majuscules & minuscules & & & & \\
+ & \it Mrg(v)lovani & \it \d Kutxovani & & & \it Mrg(v)lovani & \it \d Kutxovani \\
+\hline\hline
+an & \xucr A & \xucr a & a & \verb|A|, \verb|a| & 10A0 & 2D00 \\ \hline
+ban & \xucr B & \xucr b & b & \verb|B|, \verb|b| & 10A1 & 2D01 \\ \hline
+gan & \xucr G & \xucr g & g & \verb|G|, \verb|g| & 10A2 & 2D02 \\ \hline
+don & \xucr D & \xucr d & d & \verb|D|, \verb|d| & 10A3 & 2D03 \\ \hline
+en & \xucr E & \xucr e & e & \verb|E|, \verb|e| & 10A4 & 2D04 \\ \hline
+vin & \xucr V & \xucr v & v & \verb|V|, \verb|v| & 10A5 & 2D05 \\ \hline
+zen & \xucr Z & \xucr z & z & \verb|Z|, \verb|z| & 10A6 & 2D06 \\ \hline
+tan & \xucr T & \xucr t & t & \verb|T|, \verb|t| & 10A7 & 2D07 \\ \hline
+in & \xucr I & \xucr i & i & \verb|I|, \verb|i| & 10A8 & 2D08 \\ \hline
+\d kan & \xucr .K & \xucr .k & \d k & \verb|.K|, \verb|.k| & 10A9 & 2D09\\ \hline
+las & \xucr L & \xucr l & l & \verb|L|, \verb|l| & 10AA & 2D0A \\ \hline
+man & \xucr M & \xucr m & m & \verb|M|, \verb|m| & 10AB & 2D)B \\ \hline
+nar & \xucr N & \xucr n & n & \verb|N|, \verb|n| & 10AC & 2D0C \\ \hline
+on & \xucr O & \xucr o & o & \verb|O|, \verb|o| & 10AD & 2D0D \\ \hline
+\.par & \xucr .P & \xucr .p & \.p & \verb|.P|, \verb|.p| & 10AE & 2D0E\\ \hline
+\v zan & \xucr +Z & \xucr +z & \v z & \verb|+Z|, \verb|+z| & 10AF & 2D0F\\ \hline
+ran & \xucr R & \xucr r & r & \verb|R|, \verb|r| & 10B0 & 2D10 \\ \hline
+san & \xucr S & \xucr s & s & \verb|S|, \verb|s| & 10B1 & 2D11 \\ \hline
+\d tar & \xucr .T & \xucr .t & \d t & \verb|.T|, \verb|.t| & 10B2 & 2D12\\ \hline
+un & \xucr U & \xucr u & u & \verb|U|, \verb|u| & 10B3 & 2D13 \\ \hline
+par & \xucr P & \xucr p & p & \verb|P|, \verb|p| & 10B4 & 2D14 \\ \hline
+kan & \xucr K & \xucr k & k & \verb|K|, \verb|k| & 10B5 & 2D15 \\ \hline
+\.gan & \xucr .G & \xucr .g & \.g & \verb|.G|, \verb|.g| & 10B6 & 2D16 \\ \hline
+\.qar & \xucr Q & \xucr q & \.q & \verb|Q|, \verb|q|\footnotemark & 10B7 & 2D17 \\ \hline
+\v san & \xucr +S & \xucr +s & \v s & \verb|+S|, \verb|+s| & 10B8 & 2D18 \\ \hline
+\v cin & \xucr +C & \xucr +c & \v c & \verb|+C|, \verb|+c| & 10B9 & 2D19 \\ \hline
+can & \xucr C & \xucr c & c & \verb|C|, \verb|c| & 10BA & 2D1A \\ \hline
+dzil & \xucr J & \xucr j & j/dz & \verb|J|, \verb|j| & 10BB & 2D1B \\ \hline
+\d cil & \xucr .C & \xucr .c & \d c & \verb|.C|, \verb|.c| & 10BC & 2D1C \\ \hline
+\d{\v c}ar & \xucr .+C & \xucr .+c & \d{\v c}& \verb|.+C|, \verb|.+c| & 10BD & 2D1D \\ \hline
+xan & \xucr X & \xucr x & x & \verb|X|, \verb|x| & 10BE & 2D1E \\ \hline
+d\v zan & \xucr +J & \xucr +j & d\v z & \verb|+J|, \verb|+j| & 10BF & 2D1F \\ \hline
+ha & \xucr H & \xucr h & h & \verb|H|, \verb|h| & 10C0 & 2D20 \\ \hline
+\end{tabular}
+\end{center}
+
+\footnotetext{Although the transcription of `{\xucr Q}' and
+`{\xucr q}' is {\it \.Q\/} and {\it \.q\/} respectively, the
+\TeX-input will remain `{\tt Q}' and `{\tt q}' for the letter {\it \.qar\/}
+as it appears with a far more frequent than {\it qar\/}
+(`{\xucr Q1}', `{\xucr q1}') which is coded as `{\tt Q1}' and `{\tt q1}'.}
+
+
+\begin{center}
+\begin{tabular}{|l |c| c |c| c|}
+\hline
+% & \it Xucuri & & \\
+%\cline{2-2}
+%\raisebox{1.5ex}[1.5ex]{Name} & normal &
+%\raisebox{1.5ex}[1.5ex]{Transcription} &
+%\raisebox{1.5ex}[1.5ex]{\TeX-input} \\
+Name & \multicolumn{2}{c|}{\it Xucuri} & Transcription & \TeX-input \\
+ & majuscules & minuscules & & \\
+ & \it Mrg(v)lovani & \it \d Kutxovani & & \\
+\hline\hline
+qar & \xucr Q1 & \xucr q1 & q & \verb|Q1|, \verb|q1| \\ \hline
+h\=e & \xucr E0 & \xucr e0 & \=e, e\u\i & \verb|E0|, \verb|e0| \\ \hline
+ho & \xucr O1 & ---\footnotemark & \=o, oy & \verb|O1| \\ \hline
+jo & \xucr I1 & \xucr i1 & \u\i & \verb|I1|, \verb|i1| \\ \hline
+wi & \xucr W & \xucr w & w & \verb|W|, \verb|w| \\ \hline
+\end{tabular}
+\end{center}
+
+\footnotetext{The letter {\it ho\/} does only have a majuscule form.}
+
+\subsubsection{Punctuation}
+Please refer to section \ref{punkte} on page
+\pageref{punkte}. Punctuation for {\it Xucuri\/} is encoded exactly as
+for {\it Mxedruli\/}
+
+\subsection{Correspondant letters}
+
+This table shows, which character of {\it Mxedruli\/} corresponds to
+which {\it Xucuri\/} character. Characters not found here do only occur in
+one of the alphabets.
+
+\begin{center}
+\begin{tabular}{|l |c |c | c|}\hline
+ & \it Mxedruli & \multicolumn{2}{c|}{\it Xucuri} \\
+ & & majuscules & minuscules \\
+ & & \it Mrg(v)lovani & \it \d Kutxovani \\
+\hline
+an & \mxedr a & \xucr A & \xucr a \\ \hline
+ban & \mxedr b & \xucr B & \xucr b \\ \hline
+gan & \mxedr g & \xucr G & \xucr g \\ \hline
+don & \mxedr d & \xucr D & \xucr d \\ \hline
+en & \mxedr e & \xucr E & \xucr e \\ \hline
+vin & \mxedr v & \xucr V & \xucr v \\ \hline
+zen & \mxedr z & \xucr Z & \xucr z \\ \hline
+tan & \mxedr t & \xucr T & \xucr t \\ \hline
+in & \mxedr i & \xucr I & \xucr i \\ \hline
+\d kan & \mxedr .k & \xucr .K & \xucr .k \\ \hline
+las & \mxedr l & \xucr L & \xucr l \\ \hline
+man & \mxedr m & \xucr M & \xucr m \\ \hline
+nar & \mxedr n & \xucr N & \xucr n \\ \hline
+\end{tabular}
+
+\begin{tabular}{|l |c |c | c|}\hline
+ & \it Mxedruli & \multicolumn{2}{c|}{\it Xucuri} \\
+ & & majuscules & minuscules \\
+ & & \it Mrg(v)lovani & \it \d Kutxovani \\
+\hline
+on & \mxedr o & \xucr O & \xucr o \\ \hline
+\.par & \mxedr .p & \xucr .P & \xucr .p \\ \hline
+\v zan & \mxedr +z & \xucr +Z & \xucr +z \\ \hline
+ran & \mxedr r & \xucr R & \xucr r \\ \hline
+san & \mxedr s & \xucr S & \xucr s \\ \hline
+\d tar & \mxedr .t & \xucr .T & \xucr .t \\ \hline
+un & \mxedr u & \xucr U & \xucr u \\ \hline
+par & \mxedr p & \xucr P & \xucr p \\ \hline
+kan & \mxedr k & \xucr K & \xucr k \\ \hline
+\.gan & \mxedr .g & \xucr .G & \xucr .g \\ \hline
+\.qar & \mxedr q & \xucr Q & \xucr q \\ \hline
+\v san & \mxedr +s & \xucr +S & \xucr +s \\ \hline
+\v cin & \mxedr +c & \xucr +C & \xucr +c \\ \hline
+can & \mxedr c & \xucr C & \xucr c \\ \hline
+dzil & \mxedr j & \xucr J & \xucr j \\ \hline
+\d cil & \mxedr .c & \xucr .C & \xucr .c \\ \hline
+\d{\v c}ar & \mxedr .+c & \xucr .+C & \xucr .+c \\ \hline
+xan & \mxedr x & \xucr X & \xucr x \\ \hline
+d\v zan & \mxedr +j & \xucr +J & \xucr +j \\ \hline
+ha & \mxedr h & \xucr H & \xucr h \\ \hline
+%\hline
+%% \end{tabular}
+%% \end{center}
+%%
+%% \begin{center}
+%% \begin{tabular}{|l |c |c|}
+%% \hline
+%% & \it Mxedruli & \it Xucuri \\ \hline
+qar & \mxedr q1 & \xucr Q1 & \xucr q1 \\ \hline
+h\=e & \mxedr e0 & \xucr E0 & \xucr e0 \\ \hline
+ho & \mxedr o1 & \xucr O1 & \xucr --- \\ \hline
+jo & \mxedr i1 & \xucr I1 & \xucr i1 \\ \hline
+wi & \mxedr w & \xucr W & \xucr w \\ \hline
+\end{tabular}
+\end{center}
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%% FIRST EXAMPLE %%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+
+
+\section{Examples}\label{Examples}
+\subsection{{\mxedb ve.pxis .tqaosani} -- {The Knight in the Tiger's Skin}}
+The following example are two stanzas from {\it \v Sota Rustaveli\/}'s
+{\it Ve\.pxis \d T\.qaosani\/} ``The Knight in the Tiger's Skin''.%
+\footnote{This example you can find slightly changed in the example
+file {\tt vepxis.tex}.}
+
+\begin{center}
+{\Large\mxedc ve.pxis .tqaosani}
+
+\medskip
+{\large\mxedc +sota rustaveli}
+\end{center}
+
+\bigskip
+
+\begin{verse}
+\begin{mxedr}
+.gmertsa +semvedre, nutu .kvla damxsnas soplisa +sromasa,\\
+cecxls, .cqalsa da mi.casa, haerta tana +sromasa;\\
+momcnes prteni da a.gvprinde, mivhxvde mas +cemsa ndomasa,\\
+d.gisit da .gamit vhxedvide mzisa elvata .krtomasa.
+
+\medskip
+mze u+senod ver ikmdebis, ratgan +sen xar masa .cili,\\
+gana.gamca mas eaxel misi e.tli, ar tu .cbili!\\
+muna gnaxo, madve gsaxo, ganminatlo guli +crdili,\\
+tu sicocxle m.care mkonda, si.kvdilimca mkonda .t.kbili!
+\end{mxedr}
+\end{verse}
+
+\bigskip
+This was set with the following:
+
+
+\begin{small}
+\begin{verbatim}
+ \documentclass[12pt]{article}
+ \usepackage{mxedruli}
+ \begin{document}
+ \begin{center}
+ {\Large\mxedc ve.pxis .tqaosani}
+
+ \medskip
+ {\large\mxedc +sota rustaveli}
+ \end{center}
+
+ \bigskip
+
+ \begin{verse}
+ \begin{mxedr}
+ .gmertsa +semvedre, nutu .kvla damxsnas soplisa
+ +sromasa,\\
+ cecxls, .cqalsa da mi.casa, haerta tana +sromasa;\\
+ momcnes prteni da a.gvprinde, mivhxvde mas +cemsa
+ ndomasa,\\
+ d.gisit da .gamit vhxedvide mzisa elvata .krtomasa.
+
+ \medskip
+ mze u+senod ver ikmdebis, ratgan +sen xar masa .cili,\\
+ gana.gamca mas eaxel misi e.tli, ar tu .cbili!\\
+ muna gnaxo, madve gsaxo, ganminatlo guli +crdili,\\
+ tu sicocxle m.care mkonda, si.kvdilimca mkonda .t.kbili!
+ \end{mxedr}
+ \end{verse}
+ \end{document}
+\end{verbatim}
+\end{small}
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%% SECOND EXAMPLE %%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+
+\subsection{Another example with different font sizes}
+The second sample text is due to the lack of some proper text%
+\footnote{If you would send me a sample text, you prepared with
+these fonts to be included in this documentation, I would be most grateful.}
+when I prepared this file just taken from the preface of a small
+Georgian-German dictionary, but it should give another impression how
+this font -- using different sizes and the ``capitals''-- looks like as well:
+
+\begin{center}
+{\LARGE\mxedc kartul--germanuli
+leksi.koni}
+
+\medskip
+\mxedi +sedgenili: \\
+{\large\mxedb o. xuci+svilis da \\
+t. xa.tia+svilis mier}
+
+\bigskip
+\bigskip
+{\mxedc gamomcemloba ,,ganatleba''\\
+tbilisi ---} 1977
+\end{center}
+
+\bigskip
+\mxedr
+.cinamdebare kartul--germanul leksi.kon+si +ser+ceulia kartuli
+enis leksi\-.ki\-dan si.tqvebi, romlebic qvelaze me.tad
+ixmareba sala.para.ko ena+si, agretve mxa.tvrul, .poli.ti.kur,
+mecnierul da sas.cavlo li.tera.tura+si. ganmar.tebulia si.tqvis
+qvela jiritadi mni+svneloba da ilus.trirebulia nimu\-+se\-bit.
+vcdilobdit, satanado prazeologizmebis mo+sveleibit gang\-ve\-mar\-.ta
+si.tqvis niuansobrivi gagebanic.
+
+\rm
+The input was:
+
+
+\begin{small}
+\begin{verbatim}
+ \documentclass[12pt]{article}
+ \usepackage{mxedruli}
+ \begin{document}
+ \begin{center}
+ {\LARGE\mxedc kartul--germanuli
+ leksi.koni}
+
+ \medskip
+ \mxedi +sedgenili: \\
+ {\large\mxedb o. xuci+svilis da \\
+ t. xa.tia+svilis mier}
+
+ \bigskip
+ \bigskip
+ {\mxedc gamomcemloba ,,ganatleba''\\
+ tbilisi ---} 1977
+ \end{center}
+
+ \bigskip \mxedr
+ .cinamdebare kartul--germanul leksi.kon+si
+ +ser+ceulia kartuli enis lek\-si.ki\-dan si.tqvebi,
+ romlebic qvelize me.tad ixmareba sala.para.ko eni+si,
+ abretve mxa.tvrul, .poli.ti.kur, mecnierul da sas.cavlo
+ li.tera.turi+si. ganmar.tbulia si.tqvis qvela jiritadi
+ mni+svneloba da ilus.trarebulia nimu\-+se\-bit.
+ vcdilobdit, satanado prazeologizsegis mo+svelibit
+ gang\-ve\-mar\-.ta si.tqvis niuansobrivi gagebanic.
+ \end{document}
+\end{verbatim}
+\end{small}
+
+
+\subsection{An example using \emph{Xucuri}}
+The following example is taken from {\it N. Marr and M. Bri\`ere,
+La Langue G\'eor\-gienne, Paris 1931\/}, p. 595:
+
+\begin{xucr}
+\begin{center}
+SAXAREBAI1 MATEES TAVISAI1.
+
+B
+\end{center}
+
+{\rm 1.} --- XOLO IESOW KRIS.TEES +SUBASA BETLEMS
+HOWRIAS.TANISASA. D.GETA HERODE MEPISATA. AHA
+MOGOWNI A.GMOSAVALIT MOVIDES IEROWSALEEMD DA
+I.TQODES:
+
+{\rm 2.} --- SADA ARS ROMELI IGI I+SVA. MEOWPEE
+HOWRIATAI1? RAI1\-RETOW VIXILET VARS.KOWLAVI MISI
+A.GMOSAVALIT DA MOVEDIT TAV\-QOWA\-NIS-CEMAD MISA.
+
+{\rm 3.} --- VITARCA ESMA ESE HERODES
+MEPESA. +SEJR.COWNDA DA +SOVELI IEROWSALEEMI
+MISTANA.
+
+\end{xucr}
+
+This was generated using the following input:
+
+
+\begin{small}
+\begin{verbatim}
+ \documentclass[12pt]{article}
+ \usepackage{xucuri}
+
+ \begin{xucr}
+ \begin{center}
+ SAXAREBAI1 MATEES TAVISAI1.
+
+ B
+ \end{center}
+
+ {\rm 1.} --- XOLO IESOW KRIS.TEES +SUBASA BETLEMS
+ HOWRIAS.TANISASA. D.GETA HERODE MEPISATA. AHA
+ MOGOWNI A.GMOSAVALIT MOVIDES IEROWSALEEMD DA
+ I.TQODES:
+
+ {\rm 2.} --- SADA ARS ROMELI IGI I+SVA. MEOWPEE
+ HOWRIATAI1? RAI1RETOW VIXILET VARS.KOWLAVI MISI
+ A.GMOSAVALIT DA MOVEDIT TAVQOWANIS-CEMAD MISA.
+
+ {\rm 3.} --- VITARCA ESMA ESE HERODES
+ MEPESA. +SEJR.COWNDA DA +SOVELI IEROWSALEEMI
+ MISTANA.
+ \end{xucr}
+\end{verbatim}
+\end{small}
+
+
+The example which illustrates the {\it Xucuri\/} minuscules is again
+taken from {\it N. Marr and M. Bri\`ere, La Langue G\'eor\-gienne,
+Paris 1931\/}, p. 599:
+
+\begin{xucr}
+\begin{center}\Large
+saxarebai1 lu.kai1s tavisai1.
+
+ie
+\end{center}
+
+{\rm 11.} --- merme i.tqoda da tkua: .kacsa visme escnes
+or je.
+
+{\rm 12.} --- da hrkua umr.cemesman man mamasa twssa:
+mamao. momec me romeli mxudebis na.cilidam.kw drebelisa. da ganuqo
+mat sacxovrebeli igi.
+\end{xucr}
+
+
+The input was
+
+
+\begin{small}
+\begin{verbatim}
+ \begin{xucr}
+ \begin{center}\Large
+ saxarebai1 lu.kai1s tavisai1.
+
+ ie
+ \end{center}
+
+ {\rm 11.} --- merme i.tqoda da tkua: .kacsa visme escnes
+ or je.
+
+ {\rm 12.} --- da hrkua umr.cemesman man mamasa twssa:
+ mamao. momec me romeli mxudebis na.cilidam.kw drebelisa.
+ da ganuqo mat sacxovrebeli igi.
+\end{xucr}
+\end{verbatim}
+\end{small}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%% FONT CODING %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\section{Font coding}
+\def\cell#1{\char'#1}
+
+\def\cellrow#1{
+ & \cell{#10} & \cell{#11} & \cell{#12} & \cell{#13} &
+ \cell{#14} & \cell{#15} & \cell{#16} & \cell{#17} \\ \hline}
+
+\def\reihe#1{\it '#10 \cellrow{#1}}
+
+The following table shows the internal encoding of the
+defined letters of {\it Mxedruli\/} and {\it Xucuri\/}:
+
+
+\begin{center}
+{\mxedr
+\begin{tabular}{ r || c | c | c | c | c | c | c | c | }
+ & \it 0 & \it 1 & \it 2 & \it 3 & \it 4 & \it 5 & \it 6 & \it 7 \\
+\hline\hline
+\reihe{00}\reihe{01}\reihe{02}\reihe{03}\reihe{04}
+\reihe{05}\reihe{06}\reihe{07}\reihe{10}\reihe{11}
+\reihe{12}\reihe{13}\reihe{14}\reihe{15}\reihe{16}
+\reihe{17}
+\end{tabular}}
+%\end{center}
+
+%\begin{center}
+{\xucr
+\begin{tabular}{ r || c | c | c | c | c | c | c | c | }
+ & \it 0 & \it 1 & \it 2 & \it 3 & \it 4 & \it 5 & \it 6 & \it 7 \\
+\hline\hline
+\reihe{00}\reihe{01}\reihe{02}\reihe{03}\reihe{04}
+\reihe{05}\reihe{06}\reihe{07}\reihe{10}\reihe{11}
+\reihe{12}\reihe{13}\reihe{14}\reihe{15}\reihe{16}
+\reihe{17}
+\end{tabular}}
+\end{center}
+
+
+
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%% FILES %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\section{Files}\label{Install}
+The package consists of the following files:
+
+\begin{list}{}{%
+ \labelwidth55mm
+ \labelsep2mm
+ \itemindent0mm
+ \parsep0mm
+ \leftmargin57mm
+ \topsep0mm
+ \itemsep0pt
+ }
+\renewcommand{\makelabel}[1]{#1\hfill}
+
+
+\item[\tt README.txt] A short information file.
+%\item[\tt fonts/pk300/mxed10.*pk] The {\tt .pk}-Files for standard
+% {\it Mxedruli\/} generated for use with 300 dpi printers.
+%\item[\tt fonts/pk300/mxedbf10.*pk] The {\tt .pk}-Files for bold
+% {\it Mxedruli\/} generated for use with 300 dpi printers.
+%\item[\tt fonts/pk300/mxedi10.*pk] The {\tt .pk}-Files for italics
+% {\it Mxedruli\/} generated for use with 300 dpi printers.
+%\item[\tt fonts/pk300/mxedc10.*pk] The {\tt .pk}-Files for capital
+% {\it Mxedruli\/} generated for use with 300 dpi printers.
+%\item[\tt fonts/pk300/xuc10.*pk] The {\tt .pk}-Files for
+% {\it Xucuri\/} generated for use with 300 dpi printers.
+%\item [\tt fonts/tfm/*.tfm] \TeX\ Font Metrics Files.
+
+\item[\tt inputs/umxed.fd] Font definition files for use with NFSS2.
+\item[\tt inputs/uxuc.fd] %Font definition file for use with NFSS2.
+\item[\tt inputs/mxedruli.sty] \LaTeX\ Style File.
+\item[\tt inputs/xucuri.sty] % \LaTeX\ Style File.
+
+\item[\tt mf/mxed.mf] The standard generation file for {\logo METAFONT}.
+\item[\tt mf/mxed10.mf] Driver file for normal {\it Mxedruli\/}.
+ Run {\logo METAFONT} on this file to generate {\it Mxedruli\/}
+ for any other resolution than 300 dpi.
+\item[\tt mf/mxedbf10.mf] As before, but bold {\it Mxedruli\/}.
+\item[\tt mf/mxedi10.mf] As before, but italics {\it Mxedruli\/}.
+\item[\tt mf/mxedc10.mf] As before, but capital {\it Mxedruli\/}.
+\item[\tt mf/mxedacc.mf] Accents for other Kartvelian languages (Svan).
+\item[\tt mf/mxedbase.mf] {\logo METAFONT} macros etc.
+\item[\tt mf/mxedcaps.mf] ``Capital'' letters.
+\item[\tt mf/mxedd.mf] Digits (can be replaced by Computer Modern digits,
+ cf. below).
+\item[\tt mf/mxedfont.mf] Letters.
+\item[\tt mf/mxedp.mf] Punctuation (can be replaced by Computer Modern
+ punctuation, cf. below).
+
+\item[\tt mf/xuc.mf] The standard generation file for {\logo METAFONT}.
+\item[\tt mf/xuc10.mf] Driver file for {\it Xucuri\/}.
+ Run {\logo METAFONT} on this file to generate {\it Xucuri\/}
+ for any other resolution than 300 dpi.
+\item[\tt mf/xucbase.mf] {\logo METAFONT} macros etc.
+\item[\tt mf/xucfont.mf] {\it Xucuri\/} majuscules.
+\item[\tt mf/xucd.mf] Digits (can be replaced by Computer Modern digits,
+ cf. below).
+\item[\tt mf/xucl.mf] {\it Xucuri\/} minuscules.
+\item[\tt mf/xucp.mf] Punctuation (can be replaced by Computer Modern
+ punctuation, cf. below).
+\item[\tt afm/*.afm] afm files for use with type1 fonts
+\item[\tt type1/*.pbf] type1 vector fonts
+\item[\tt alphabets.tex] An example showing both Xucuri and Mxedruli
+\item[\tt mxeddoc.ps] This documentation.
+\item[\tt ossetic.tex] A short example of Ossetic text, written in
+ {\it Mxedruli\/}.
+\item[\tt vepxis.tex] The first {\it Mxedruli\/}-example of this
+ documentation.
+
+\end{list}
+
+To install the fonts etc., please copy all {\tt .mf}-files from the
+{\tt mf}-directory to the appropriate directory of
+your \TeX-system.
+%The {\tt .tfm}-files must be copied into
+%the {\tt tfm}-directory of your \TeX-system.
+Further, the files
+from the {\tt inputs}-directory must be copied into the directory
+where \LaTeX\ can find them.
+
+\subsection{Debian package}
+
+If you are on a Ubuntu platform (at least Ubuntu 10.04 or 12.04), you can install
+the necessary files (style-files and type1 fonts) via the debian package
+
+{\tt sudo dpkg -i mxedruli-\mxedversion.deb}
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%% METAFONT %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\section{Using {\logogr METAFONT}} % on {\tt mxed[bf|c|i]10.mf}/{\tt xuc10.mf}}
+\label{MF}
+If you are going to regenerate the fonts, there are two possibilities,
+using the Computer Modern digits and punctuation (which are far nicer)
+or the digits and punctuation provided in \verb|mxedd.mf| and
+\verb|mxedp.mf| or \verb|xucp.mf| respectively.
+
+In the first case you should use the following command in a UN*X
+environment:\footnote{Do so analogously for {\tt mxedbf10},
+{\tt mxedi10}, {\tt mxedc10} and {\tt xuc10} respectively.}\\
+\verb| mf '&cmmf \mode=|{\it your\_mode\/}\verb|;' input mxed10|
+
+
+Else you use plain {\logo METAFONT} by:\\
+\verb| mf '\mode=|{\it your\_mode\/}\verb|;' input mxed10|
+
+(Other sizes are generated by:\\
+\verb| mf '&cmmf \mode=|{\it your\_mode\/}\verb|; mag=magstep|{\it
+n\/}\verb|' input mxed10|
+
+or\\
+\verb| mf '\mode=|{\it your\_mode\/}\verb|; mag=magstep|{\it
+n\/}\verb|' input mxed10|
+
+respectively.) {\it your\_mode\/} has to be replaced by the mode your
+printer requires, e.g. \verb|localmode| or \verb|laserjet|, {\it n\/} by
+a valid magstep ({\tt 1}, {\tt 2}, {\tt 3}, {\tt 4}, {\tt 5}
+or {\tt half}).
+
+In either case \verb|mf| must be followed by \verb|gftopk| to
+generate the \verb|.pk|-files. Please refer to the documentation
+of \verb|gftopk| for further information on postprocessing
+{\logo METAFONT} output.
+
+\section{License}
+
+This Material is subjec to the LaTeX Project Public LiĀ­cense 1.3
+(\url{http://ctan.org/license/lppl1.3}).
+
+\section{Changelog}
+
+\begin{itemize}
+\item 6th April 2013: Version 3.4
+
+ there is now a debian package which installs type1 fonts, tfm, afm files as well
+ as style files on Ubuntu 10.04, Ubuntu 12.04 platforms and probably (untested) other
+ debian and derived platforms
+
+\item 18th January 2009: Version 3.3c
+
+ 10 years, and the only thing changed is the doc (reference to Unicode codes and some minor details)
+
+\item 1st September 1999: Version 3.3
+
+Changed Fontcoding U to u
+
+\item 15th April 1997: Version 3.0
+
+ Added Xucuri characters (upper and lower case)
+
+\item 15th July 1996: Version 2.4
+
+ Added italics, minor corrections
+
+\item 20th May 1996: Version 2.3
+
+ Added new letter: Glottal Stop (reverse `q')
+
+\item 5th March 1996: Version 2.2
+
+ Added two more letters: `qhar' and `ee'
+
+\item 26th June 1995: Version 2.1
+
+ Minor corrections (not distributed via CTAN)
+
+\item 16th June 1995: Version 2.0
+
+ `Capital' fonts included
+
+ Introduced some letters for Old Georgian and Ossetian resp.
+
+ The letter .+c is now at position oct(014), not at
+ postion oct(171) where it used to be. This was necessary
+ as a letter being transcribed by "y" (oct(171)) was introduced.
+
+\item 8th August 1994: Version 1.0
+
+ Some Corrections on too mishaped letters.
+ Introduced some letters for Old Georgian.
+
+\item September 1993:
+
+First Release.
+\end{itemize}
+
+\end{document}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
diff --git a/fonts/georgian/mxedruli/mxedruli.map b/fonts/georgian/mxedruli/mxedruli.map
new file mode 100644
index 0000000000..d592f0ba00
--- /dev/null
+++ b/fonts/georgian/mxedruli/mxedruli.map
@@ -0,0 +1,10 @@
+
+% mxed font series
+mxed10 Mxedruli-10 <mxed10.pfb
+mxedbf10 MxedruliBold-10 <mxedbf10.pfb
+mxedi10 MxedruliItalic-10 <mxedi10.pfb
+mxedc10 MxedruliSmallCapital-10 <mxedc10.pfb
+xuc10 Xucuri-10 <xuc10.pfb
+
+
+
diff --git a/fonts/georgian/mxedruli/ossetic.tex b/fonts/georgian/mxedruli/ossetic.tex
new file mode 100644
index 0000000000..5a82357df3
--- /dev/null
+++ b/fonts/georgian/mxedruli/ossetic.tex
@@ -0,0 +1,46 @@
+\documentclass[12pt]{article}
+\usepackage{mxedruli}
+
+\pagestyle{empty}
+\begin{document}
+
+\begin{center}
+{\LARGE\bf Ra\u\i la\u\i\ae n Kal\ae g
+
+
+\bigskip\bigskip
+\Huge\mxedc rai1lai1e1n kale1g
+}
+\end{center}
+
+\bigskip
+\begin{verse}
+
+\begin{mxedr}
+cyt+jym xisde1rte1, ne1 buc ke1sde1rte1,\\
+farn we1m jyrde1we1d, xorz wyl e1rce1we1d!\\
+e1rbii1+cusut-mi fe1ndyry ca.gdme1,\\
+we1, ba+cyrnut myn ze1ronda zardme1!
+
+\medskip
+ra+jy, xe1rz ra+jy, fyde1lty du+jy,\\
+arv 'me1 ze1xxy xse1n iwjinad kwy wyd, ---\\
+ze1xme1 taxtysty we1larvon ze1dte1,\\
+alvme1 cydysty ze1xxon ade1mte1.\\
+ze1xxe1l cardysty wycy re1ste1+jy\\
+xe1xty .cassyty tyx+jyn we1i1gwyte1,\\
+de1le1 fe1zty ta we1d --- gwymiryte1,\\
+arf de1n+jyzy byn we1d --- donbettyrte1,\\
+avd de1n+jyzy byn ta --- de1limonte1.\\
+
+fe1le1 iw du+jy ze1xxe1i1 arv-aste1w\\
+saw pillon kodta, e1mje1xe1r festad.\\
+
+we1ce1 ze1ng arve1i1 i1e1xi we1d fexsta,\\
+den+je1zme1 'rttivge1 i1e1xi rappe1rsta\\
+e1me1 den+jyzy i1e1xi bai1se1rsta.
+\end{mxedr}
+\end{verse}
+
+
+\end{document}
diff --git a/fonts/georgian/mxedruli/type1/mxed10.pfb b/fonts/georgian/mxedruli/type1/mxed10.pfb
new file mode 100644
index 0000000000..3df415510e
--- /dev/null
+++ b/fonts/georgian/mxedruli/type1/mxed10.pfb
Binary files differ
diff --git a/fonts/georgian/mxedruli/type1/mxedbf10.pfb b/fonts/georgian/mxedruli/type1/mxedbf10.pfb
new file mode 100644
index 0000000000..e3e279cdda
--- /dev/null
+++ b/fonts/georgian/mxedruli/type1/mxedbf10.pfb
Binary files differ
diff --git a/fonts/georgian/mxedruli/type1/mxedc10.pfb b/fonts/georgian/mxedruli/type1/mxedc10.pfb
new file mode 100644
index 0000000000..ec5eb92e1a
--- /dev/null
+++ b/fonts/georgian/mxedruli/type1/mxedc10.pfb
Binary files differ
diff --git a/fonts/georgian/mxedruli/type1/mxedi10.pfb b/fonts/georgian/mxedruli/type1/mxedi10.pfb
new file mode 100644
index 0000000000..ceff6c77d0
--- /dev/null
+++ b/fonts/georgian/mxedruli/type1/mxedi10.pfb
Binary files differ
diff --git a/fonts/georgian/mxedruli/type1/xuc10.pfb b/fonts/georgian/mxedruli/type1/xuc10.pfb
new file mode 100644
index 0000000000..9e1be0343f
--- /dev/null
+++ b/fonts/georgian/mxedruli/type1/xuc10.pfb
Binary files differ
diff --git a/fonts/georgian/mxedruli/vepxis.tex b/fonts/georgian/mxedruli/vepxis.tex
new file mode 100644
index 0000000000..e5a4ba2ff8
--- /dev/null
+++ b/fonts/georgian/mxedruli/vepxis.tex
@@ -0,0 +1,40 @@
+\documentclass[12pt]{article}
+\usepackage{mxedruli}
+
+\pagestyle{empty}
+\begin{document}
+
+\begin{center}
+{\LARGE\bf The Knight in the Tiger's Skin
+
+\medskip
+{\large\bf \v Sota Rustaveli}
+
+\bigskip\bigskip
+\Huge\mxedc ve.pxis .tqaosani
+}
+
+\medskip
+{\large\mxedb +sota rustaveli}
+\end{center}
+
+\bigskip
+
+\begin{verse}
+
+\begin{mxedr}
+.gmertsa +semvedre, nutu .kvla damxsnas soplisa +sromasa,\\
+cecxls, .cqalsa da mi.casa, haerta tana +sromasa;\\
+momcnes prteni da a.gvprinde, mivhxvde mas +cemsa ndomasa,\\
+d.gisit da .gamit vhxedvide mzisa elvata .krtomasa.
+
+\medskip
+mze u+senod ver ikmdebis, ratgan +sen xar masa .cili,\\
+gana.gamca mas eaxel misi e.tli, ar tu .cbili!\\
+muna gnaxo, madve gsaxo, ganminatlo guli +crdili,\\
+tu sicocxle m.care mkonda, si.kvdilimca mkonda .t.kbili!
+\end{mxedr}
+\end{verse}
+
+
+\end{document}
diff --git a/fonts/georgian/stanier/README b/fonts/georgian/stanier/README
new file mode 100644
index 0000000000..c5c8c2e942
--- /dev/null
+++ b/fonts/georgian/stanier/README
@@ -0,0 +1,7 @@
+This is a (somewhat crude) font of the 33-character Mkhedruli alphabet,
+as used in the Georgian Republic. The letter forms are taken from
+Howard I Aronson's "GEORGIAN A Reading Grammar" (Slavica Publishers,
+Columbus Ohio, 1989)
+
+Comments, criticisms, etc, to Alan M Stanier (alan@essex.ac.uk)
+
diff --git a/fonts/georgian/stanier/georgian.mf b/fonts/georgian/stanier/georgian.mf
new file mode 100644
index 0000000000..8ebed1c7cc
--- /dev/null
+++ b/fonts/georgian/stanier/georgian.mf
@@ -0,0 +1,225 @@
+% georgian.mf
+% This font was designed by me, Alan M Stanier ( alan@essex.ac.uk ),
+% at Essex University Computer Service, Colchester, Essex CO4 3EA. England.
+% It isn't very good, but it serves the purpose for which I designed it.
+% I have the copyright, but please feel free to use in in any way you want.
+% No charge, but if you're really impressed, leave me an extremely large bequest in your will.
+% If you make significant additions or improvements to the font, please email me an updated version
+%
+% The letter forms are taken from Howard I Aronson's
+% "GEORGIAN A Reading Grammar" (Slavica Publishers, Columbus Ohio, 1989)
+
+
+mg:=1.0; % CHANGE THIS TO GET DIFFERENT SIZES OF FONT (font size = 10*mg pt)
+
+mode_setup;
+xpensize#:=mg*0.8pt;
+ypensize#:=mg*0.2pt;
+lheight#:=mg*7.5pt#;
+sheight#:=mg*4.7pt#;
+uheight#:=mg*2.7pt#;
+define_pixels(lheight,sheight,uheight);
+def getpen = pickup pencircle xscaled xpensize# yscaled ypensize# rotated 30 enddef;
+
+beginchar(" ",0.4lheight#,1pt#,0);
+endchar;
+
+beginchar("A",0.6lheight#,sheight#,0);
+getpen;
+draw flex((mg*5,mg*17.5),(mg*3.5,mg*14),(mg*7,mg*12)) & (mg*7,mg*12) .. (mg*9,mg*14) &
+ flex((mg*9,mg*14),(mg*12,mg*13),(mg*13,mg*7.5)) & flex((mg*13,mg*7.5),(mg*7.5,0),(mg*2,mg*7.5));
+endchar;
+
+beginchar("B",0.6lheight#,lheight#,0);
+getpen;
+draw (mg*3,mg*25) -- (mg*3,mg*27.5) -- (mg*12,mg*27.5) -- (mg*7.5,mg*17.5);
+draw (mg*7.5,mg*17.5) .. (mg*2,mg*8.75) .. (mg*7.5,0) .. (mg*13,mg*8.75) .. (mg*7.5,mg*17.5) .. cycle;
+endchar;
+
+beginchar("C",0.6lheight#,sheight#,uheight#);
+getpen;
+draw (mg*10,0) .. (mg*5,0) .. (mg*2,mg*-5) .. (mg*7.5,mg*-10) .. (mg*13,mg*-5) .. (mg*10,0) -- (mg*10,mg*10) &
+ flex((mg*10,mg*10),(mg*7.5,mg*17.5),(mg*5,mg*10));
+endchar;
+
+beginchar("D",0.8lheight#,sheight#,uheight#);
+getpen;
+draw (mg*8,mg*13) .. (mg*8,mg*5) .. (mg*13,0) .. (mg*18,mg*8) .. (mg*13,mg*17.5) .. (mg*8,mg*13) ..
+ flex((mg*8,mg*13),(mg*5,mg*17),(mg*2,mg*13)) & (mg*2,mg*13) -- (mg*2,0) -- (mg*15,mg*-10);
+endchar;
+
+beginchar("E",0.6lheight#,sheight#,uheight#);
+getpen;
+draw flex((mg*2,mg*12.5),(mg*7.5,mg*17.5),(mg*13,mg*12.5)) & (mg*13,mg*12.5) -- (mg*13,mg*-5) &
+ flex((mg*13,mg*-5),(mg*7.5,mg*-10),(mg*2,mg*-5));
+endchar;
+
+beginchar("F",0.6lheight#,sheight#,uheight#);
+getpen;
+draw (mg*2,mg*12.5) .. (mg*7,mg*17.5) & flex((mg*7,mg*17.5),(mg*12,mg*5),(mg*5,0)) & (mg*5,0) .. (mg*10,0) ..
+ (mg*10,mg*-10) .. (mg*5,mg*-10) .. (mg*2,mg*-5);
+endchar;
+
+beginchar("G",0.6lheight#,lheight#,0);
+getpen;
+draw (mg*10,mg*22.5) .. (mg*5,mg*25) .. (mg*7.5,mg*27.5) .. (mg*10,mg*22.5) .. cycle;
+draw (mg*10,mg*22.5) -- (mg*7.5,mg*17.5);
+draw (mg*7.5,mg*17.5) .. (mg*2,mg*8.75) .. (mg*7.5,0) .. (mg*13,mg*8.75) .. (mg*7.5,mg*17.5) .. cycle;
+endchar;
+
+beginchar("H",0.8lheight#,sheight#,0);
+getpen;
+draw (mg*11,mg*12) .. (mg*7.5,mg*17.5) .. (mg*2,mg*8) .. (mg*7.5,0) .. (mg*11,mg*5) .. (mg*11,mg*12) &
+ flex((mg*11,mg*12),(mg*15,mg*17),(mg*18,mg*10)) .. (mg*18,mg*10) .. (mg*18,0);
+endchar;
+
+beginchar("I",0.6lheight#,sheight#,0);
+getpen;
+draw (mg*2,0) -- (mg*2,mg*12) & flex((mg*2,mg*12),(mg*7.5,mg*17.5),(mg*13,mg*12)) & (mg*13,mg*12) -- (mg*13,0);
+endchar;
+
+beginchar("J",0.6lheight#,sheight#,uheight#);
+getpen;
+draw flex((mg*5,mg*17.5),(mg*12,mg*5),(mg*5,0)) & (mg*5,0) .. (mg*10,0) .. (mg*10,mg*-10) .. (mg*5,mg*-10) .. (mg*2,mg*-5);
+endchar;
+
+beginchar("L",1.1lheight#,lheight#,uheight#);
+getpen;
+draw (mg*28,0) -- (mg*28,mg*13) & flex((mg*28,mg*13),(mg*24,mg*17),(mg*19,mg*11)) &
+ flex((mg*19,mg*11),(mg*15,mg*17),(mg*11,mg*11)) & flex((mg*11,mg*11),(mg*7,mg*17),(mg*3,mg*11)) .. (mg*3,mg*11) --
+ (mg*3,0) -- (mg*20,mg*-10);
+endchar;
+
+beginchar("M",0.6lheight#,lheight#,0);
+getpen;
+draw flex((mg*2,mg*22.5),(mg*7.5,mg*27.5),(mg*13,mg*22.5)) & (mg*13,mg*22.5) -- (mg*13,10) .. (mg*7.5,0) .. (mg*2,mg*10)
+ .. (mg*7.5,mg*17.5) .. (mg*13,mg*16);
+endchar;
+
+beginchar("N",0.6lheight#,lheight#,0);
+getpen;
+draw (mg*13,mg*27.5) -- (mg*2,mg*27.5) .. (mg*2,mg*10) .. (mg*7.5,0) .. (mg*13,mg*10) .. (mg*7.5,mg*17.5) .. (mg*2,mg*16);
+endchar;
+
+beginchar("O",0.8lheight#,sheight#,0);
+getpen;
+draw (mg*2,0) -- (mg*2,mg*12.5) & flex((mg*2,mg*12.5),(mg*6,mg*17.5),(mg*10,mg*12.5)) &
+ flex((mg*10,mg*12.5),(mg*14,mg*17.5),(mg*18,mg*12.5)) & (mg*18,mg*12.5) .. (mg*18,0);
+endchar;
+
+beginchar("P",0.6lheight#,lheight#,0);
+getpen;
+draw (mg*2,mg*4) .. (mg*7.5,0) .. (mg*13,mg*10) .. (mg*7.5,mg*17.5){left} & flex((mg*7.5,mg*17.5),(mg*11,mg*22.5),(mg*4,mg*27.5));
+endchar;
+
+beginchar("Q",0.6lheight#,sheight#,uheight#);
+getpen;
+draw flex((mg*2,mg*5),(mg*3.5,0),(mg*5,mg*5)) .. (mg*5,mg*5) -- (mg*13,mg*17.5) -- (mg*13,mg*-5) &
+ flex((mg*13,mg*-5),(mg*7.5,mg*-10),(mg*2,mg*-5));
+endchar;
+
+beginchar("R",0.8lheight#,lheight#,0);
+getpen;
+draw (mg*2,0) -- (mg*2,mg*12.5) & flex((mg*2,mg*12.5),(mg*6,mg*17.5),(mg*10,mg*12.5)) &
+ flex((mg*10,mg*12.5),(mg*14,mg*17.5),(mg*18,mg*12.5)) & (mg*18,mg*12.5) .. (mg*18,0);
+draw (mg*6,mg*17.5) -- (mg*13,mg*27.5);
+endchar;
+
+beginchar("S",0.6lheight#,sheight#,0);
+getpen;
+draw (mg*2,mg*27.5) -- (mg*2,10) .. (mg*7.5,0) .. (mg*13,mg*10) .. (mg*7,mg*14);
+endchar;
+
+beginchar("T",0.8lheight#,lheight#,uheight#);
+getpen;
+draw (mg*2,mg*22.5) -- (mg*2,0) & flex((mg*2,0),(mg*10,mg*-8),(mg*18,0)) & flex((mg*18,0),(mg*13,mg*10),(mg*8,0)) &
+ flex((mg*8,0),(mg*11,mg*-3),(mg*14,0));
+draw (mg*12.5,mg*10) .. (mg*18,mg*16.25) .. (mg*12.5,mg*22.5) .. (mg*7,mg*16.25) .. (mg*12.5,mg*10) .. cycle;
+endchar;
+
+beginchar("U",0.6lheight#,sheight#,uheight#);
+getpen;
+draw flex((mg*2,mg*-4.5),(mg*7.5,mg*-10),(mg*13,mg*-4.5)) & (mg*13,mg*-4.5) -- (mg*13,mg*13) &
+ flex((mg*13,mg*13),(mg*9,mg*17),(mg*5,mg*13)) & (mg*5,mg*13) -- (mg*5,mg*5);
+draw (mg*5,mg*13) -- (mg*2,mg*16);
+endchar;
+
+beginchar("V",0.8.lheight#,sheight#,uheight#);
+getpen;
+draw flex((mg*2,mg*-5),(mg*10,mg*-10),(mg*18,mg*-5)) & flex((mg*18,mg*-5),(mg*15,mg),(mg*12,0),(mg*9,mg*4)) .. (mg*9,mg*4)
+ -- (mg*9,mg*13) & flex((mg*9,mg*13),(mg*13.5,mg*17.5),(mg*18,mg*13)) .. (mg*18,mg*13) -- (mg*18,mg*4) .. (mg*12,0);
+draw flex((mg*9,mg*13),(mg*5.5,mg*16.5),(mg*2,mg*13)) .. (mg*2,mg*13) -- (mg*2,mg*4) & flex((mg*2,mg*4),(mg*5.5,0),(mg*9,mg*4));
+endchar;
+
+beginchar("W",0.6lheight#,lheight#,uheight#);
+getpen;
+draw flex((mg*2,mg*-4.5),(mg*7.5,mg*-10),(mg*13,mg*-4.5)) .. (mg*13,mg*4.5) -- (mg*13,mg*27.5) -- (mg*8,mg*25);
+draw flex((mg*2,mg*12),(mg*7.5,mg*17.5),(mg*13,mg*12));
+endchar;
+
+beginchar("X",0.8lheight#,lheight#,uheight#);
+getpen;
+draw (mg*18,0) -- (mg*18,mg*11) & flex((mg*18,mg*11),(mg*14,mg*17),(mg*10,mg*11)) & flex((mg*10,mg*11),(mg*6,mg*17),(mg*2,mg*11))
+ .. (mg*2,mg*11) -- (mg*2,0) -- (mg*15,mg*-10);
+endchar;
+
+beginchar("Y",0.6lheight#,sheight#,uheight#);
+getpen;
+draw (mg*2,mg*17.5) -- (mg*2,mg*4.5) & flex((mg*2,mg*4.5),(mg*7.5,0),(mg*13,mg*4.5)) .. (mg*13,mg*4.5) -- (mg*13,mg*17.5);
+draw (mg*13,mg*4.5) -- (mg*13,mg*-4.5) & flex((mg*13,mg*-4.5),(mg*7.5,mg*-10),(mg*2,mg*-4.5));
+endchar;
+
+beginchar("Z",0.6lheight#,sheight#,0);
+getpen;
+draw (mg*12.5,mg*8) .. (mg*7.5,mg*17.5) .. (mg*2,mg*8) .. (mg*7.5,0) .. (mg*13,mg*8) -- (mg*13,mg*22.5) &
+ flex((mg*13,mg*22.5),(mg*10.25,mg*27.5),(mg*7.5,mg*22.5)) & flex((mg*7.5,mg*22.5),(mg*4.75,mg*27.5),(mg*2,mg*22.5));
+endchar;
+
+beginchar(91,0.6lheight#,lheight#,0);
+getpen;
+draw (mg*2,0) -- (mg*2,mg*12) & flex((mg*2,mg*12),(mg*7.5,mg*17.5),(mg*13,mg*12)) & (mg*13,mg*12) -- (mg*13,0);
+draw (mg*2,mg*12) -- (mg*2,mg*25) & flex((mg*2,mg*25),(mg*4.5,mg*27.5),(mg*7,mg*25)) .. (mg*7,mg*25) .. (mg*2,mg*20);
+endchar;
+
+beginchar(92,0.6lheight#,sheight#,uheight#);
+getpen;
+draw (mg*2,mg*17.5) -- (mg*2,mg*-4.5) & flex((mg*2,mg*-4.5),(mg*7.5,mg*-10),(mg*13,mg*-4.5)) &
+ flex((mg*13,mg*-4.5),(mg*9,mg*-1),(mg*5,0));
+draw flex((mg*5,0),(mg*13,mg*10),(mg*12,mg*12.5)) .. (mg*12,mg*12.5) -- (mg*2,mg*17.5);
+endchar;
+
+beginchar(93,0.6lheight#,sheight#,0);
+getpen;
+draw (mg*7.5,mg*27.5) .. (mg*13,mg*22.5) -- (mg*13,10) .. (mg*7.5,0) .. (mg*2,mg*10) .. (mg*7.5,mg*17.5) .. (mg*13,mg*16);
+endchar;
+
+beginchar(94,0.6lheight#,lheight#,uheight#);
+getpen;
+draw flex((mg*13,mg*24.25),(mg*10.25,mg*27.5),(mg*7.5,mg*24.25)) & flex((mg*7.5,mg*24.25),(mg*5.25,mg*27.25),(mg*2,mg*24.25))
+ .. (mg*2,mg*24.25) -- (mg*2,mg*-10) -- (mg*13,mg*10) & flex((mg*13,mg*10),(mg*7.5,mg*15.5),(mg*2,mg*10));
+endchar;
+
+beginchar(95,0.6lheight#,lheight#,uheight#);
+getpen;
+draw (mg*4,mg*24) -- (mg*7.5,mg*27.5) -- (mg*7.5,0) .. (mg*13,mg*-5) .. (mg*7.5,mg*-10) .. (mg*2,mg*-5);
+draw (mg*12,mg*4) -- (mg*3,mg*13) -- (mg*3,mg*4) -- (mg*12,mg*13);
+endchar;
+
+beginchar(96,0.6lheight#,lheight#,0);
+getpen;
+draw (mg*2,mg*27.5) .. (mg*2,mg*10) .. (mg*7.5,0) .. (mg*13,mg*10) .. (mg*7.5,mg*17.5) .. (mg*2,mg*16) -- (mg*8,mg*22);
+endchar;
+
+beginchar(97,0.6lheight#,sheight#,uheight#);
+getpen;
+draw flex((mg*12,mg*17.5),(mg*13,mg*16),(mg*4,mg*-5)) & flex((mg*4,mg*-5),(mg*5,mg*-7.5),(mg*2,mg*-10));
+draw flex((mg*2,mg*16),(mg*3,mg*17.5),(mg*12,mg*-10),(mg*13,mg*-9));
+endchar;
+
+beginchar(98,0.6lheight#,lheight#,0);
+getpen;
+draw (mg*2,mg*5) .. (mg*7.5,0) .. (mg*13,mg*5) .. (mg*11,mg*6) -- (mg*11,mg*25) -- (mg*2,mg*27.5);
+draw (mg*4,mg*22.5) -- (mg*11,mg*22.5);
+draw (mg*4,mg*17.5) -- (mg*11,mg*17.5);
+endchar;
+end
diff --git a/fonts/georgian/stanier/itgeorgian.README b/fonts/georgian/stanier/itgeorgian.README
new file mode 100644
index 0000000000..7b50012ea9
--- /dev/null
+++ b/fonts/georgian/stanier/itgeorgian.README
@@ -0,0 +1,4 @@
+ itgeorgian.mf is the metafont source for an italic version
+of the mxedruli alphabet. It is based on georgian.mf, but recoded
+to be consistent with Johannes Heinecke's mxed family.
+
diff --git a/fonts/georgian/stanier/itgeorgian.mf b/fonts/georgian/stanier/itgeorgian.mf
new file mode 100644
index 0000000000..0add032356
--- /dev/null
+++ b/fonts/georgian/stanier/itgeorgian.mf
@@ -0,0 +1,230 @@
+% itgeorgian.mf
+% This font was designed by me, Alan M Stanier ( alanessex.ac.uk ),
+% at Essex University Computer Service, Colchester, Essex CO4 3EA. England.
+% It isn't very good, but it serves the purpose for which I designed it.
+% I have the copyright, but please feel free to use in in any way you want.
+% No charge, but if you're really impressed, leave me an extremely large bequest in your will.
+% If you make significant additions or improvements to the font, please email me an updated version
+
+% The font is based on georgian, but recoded to match that of mxed10,
+% and characters given an italic slant.
+
+mg:=1.0; % CHANGE THIS TO GET DIFFERENT SIZES OF FONT (font size = 10*mg pt)
+
+mode_setup;
+xpensize#:=mg*0.8pt;
+ypensize#:=mg*0.2pt;
+lheight#:=mg*7.5pt#;
+sheight#:=mg*4.7pt#;
+uheight#:=mg*2.7pt#;
+define_pixels(lheight,sheight,uheight);
+def getpen = pickup pencircle xscaled xpensize# yscaled ypensize# rotated 30 enddef;
+
+beginchar(97,0.6lheight#,sheight#,0);
+getpen;
+draw flex((mg*10.83,mg*17.5),(mg*8.17,mg*14),(mg*11,mg*12)) & (mg*11,mg*12) .. (mg*13.67,mg*14) &
+ flex((mg*13.67,mg*14),(mg*16.33,mg*13),(mg*15.5,mg*7.5)) & flex((mg*15.5,mg*7.5),(mg*7.5,0),(mg*4.5,mg*7.5));
+endchar;
+
+beginchar(98,0.6lheight#,lheight#,0);
+getpen;
+draw (mg*11.33,mg*25) -- (mg*12.17,mg*27.5) -- (mg*21.17,mg*27.5) -- (mg*13.33,mg*17.5);
+draw (mg*13.33,mg*17.5) .. (mg*4.92,mg*8.75) .. (mg*7.5,0) .. (mg*15.92,mg*8.75) .. (mg*13.33,mg*17.5) .. cycle;
+endchar;
+
+beginchar(103,0.6lheight#,sheight#,uheight#);
+getpen;
+draw (mg*10,0) .. (mg*5,0) .. (mg*0.33,mg*-5) .. (mg*4.17,mg*-10) .. (mg*11.33,mg*-5) .. (mg*10,0) -- (mg*13.33,mg*10) &
+ flex((mg*13.33,mg*10),(mg*13.33,mg*17.5),(mg*8.33,mg*10));
+endchar;
+
+beginchar(100,0.8lheight#,sheight#,uheight#);
+getpen;
+draw (mg*12.33,mg*13) .. (mg*9.67,mg*5) .. (mg*13,0) .. (mg*20.67,mg*8) .. (mg*18.83,mg*17.5) .. (mg*12.33,mg*13) ..
+ flex((mg*12.33,mg*13),(mg*10.67,mg*17),(mg*6.33,mg*13)) & (mg*6.33,mg*13) -- (mg*2,0) -- (mg*11.67,mg*-10);
+endchar;
+
+beginchar(101,0.6lheight#,sheight#,uheight#);
+getpen;
+draw flex((mg*6.17,mg*12.5),(mg*13.33,mg*17.5),(mg*17.17,mg*12.5)) & (mg*17.17,mg*12.5) -- (mg*11.33,mg*-5) &
+ flex((mg*11.33,mg*-5),(mg*4.17,mg*-10),(mg*0.33,mg*-5));
+endchar;
+
+beginchar(118,0.6lheight#,sheight#,uheight#);
+getpen;
+draw (mg*6.17,mg*12.5) .. (mg*12.83,mg*17.5) & flex((mg*12.83,mg*17.5),(mg*13.67,mg*5),(mg*5,0)) & (mg*5,0) .. (mg*10,0) ..
+ (mg*6.67,mg*-10) .. (mg*1.67,mg*-10) .. (mg*0.33,mg*-5);
+endchar;
+
+beginchar(122,0.6lheight#,lheight#,0);
+getpen;
+draw (mg*17.5,mg*22.5) .. (mg*13.33,mg*25) .. (mg*16.67,mg*27.5) .. (mg*17.5,mg*22.5) .. cycle;
+draw (mg*17.5,mg*22.5) -- (mg*13.33,mg*17.5);
+draw (mg*13.33,mg*17.5) .. (mg*4.92,mg*8.75) .. (mg*7.5,0) .. (mg*15.92,mg*8.75) .. (mg*13.33,mg*17.5) .. cycle;
+endchar;
+
+beginchar(116,0.8lheight#,sheight#,0);
+getpen;
+draw (mg*15,mg*12) .. (mg*13.33,mg*17.5) .. (mg*4.67,mg*8) .. (mg*7.5,0) .. (mg*12.67,mg*5) .. (mg*15,mg*12) &
+ flex((mg*15,mg*12),(mg*20.67,mg*17),(mg*21.33,mg*10)) .. (mg*21.33,mg*10) .. (mg*18,0);
+endchar;
+
+beginchar(105,0.6lheight#,sheight#,0);
+getpen;
+draw (mg*2,0) -- (mg*6,mg*12) & flex((mg*6,mg*12),(mg*13.33,mg*17.5),(mg*17,mg*12)) & (mg*17,mg*12) -- (mg*13,0);
+endchar;
+
+beginchar(3,0.6lheight#,sheight#,uheight#);
+getpen;
+draw flex((mg*10.83,mg*17.5),(mg*13.67,mg*5),(mg*5,0)) & (mg*5,0) .. (mg*10,0) .. (mg*6.67,mg*-10) .. (mg*1.67,mg*-10)
+.. (mg*0.33,mg*-5);
+endchar;
+
+beginchar(108,1.1lheight#,lheight#,uheight#);
+getpen;
+draw (mg*28,0) -- (mg*32.33,mg*13) & flex((mg*32.33,mg*13),(mg*29.67,mg*17),(mg*22.67,mg*11)) &
+ flex((mg*22.67,mg*11),(mg*20.67,mg*17),(mg*14.67,mg*11)) & flex((mg*14.67,mg*11),(mg*12.67,mg*17),(mg*6.67,mg*11))
+ .. (mg*6.67,mg*11) -- (mg*3,0) -- (mg*16.67,mg*-10);
+endchar;
+
+beginchar(109,0.6lheight#,lheight#,0);
+getpen;
+draw flex((mg*9.5,mg*22.5),(mg*16.67,mg*27.5),(mg*20.5,mg*22.5)) & (mg*20.5,mg*22.5) -- (mg*16.33,mg*10) .. (mg*7.5,0)
+ .. (mg*5.33,mg*10) .. (mg*13.33,mg*17.5) .. (mg*18.33,mg*16);
+endchar;
+
+beginchar(110,0.6lheight#,lheight#,0);
+getpen;
+draw (mg*22.17,mg*27.5) -- (mg*11.17,mg*27.5) .. (mg*5.33,mg*10) .. (mg*7.5,0) .. (mg*16.33,mg*10) .. (mg*13.33,mg*17.5) ..
+ (mg*7.33,mg*16);
+endchar;
+
+beginchar(111,0.8lheight#,sheight#,0);
+getpen;
+draw (mg*2,0) -- (mg*6.17,mg*12.5) & flex((mg*6.17,mg*12.5),(mg*11.83,mg*17.5),(mg*14.17,mg*12.5)) &
+ flex((mg*14.17,mg*12.5),(mg*19.83,mg*17.5),(mg*22.17,mg*12.5)) & (mg*22.17,mg*12.5) .. (mg*18,0);
+endchar;
+
+beginchar(4,0.6lheight#,lheight#,0);
+getpen;
+draw (mg*3.33,mg*4) .. (mg*7.5,0) .. (mg*16.33,mg*10) ..
+ (mg*13.33,mg*17.5){left} & flex((mg*13.33,mg*17.5),(mg*18.5,mg*22.5),(mg*13.17,mg*27.5));
+endchar;
+
+beginchar(7,0.6lheight#,sheight#,uheight#);
+getpen;
+draw flex((mg*3.67,mg*5),(mg*3.5,0),(mg*6.67,mg*5)) .. (mg*6.67,mg*5) -- (mg*18.83,mg*17.5) -- (mg*11.33,mg*-5) &
+ flex((mg*11.33,mg*-5),(mg*4.17,mg*-10),(mg*0.33,mg*-5));
+endchar;
+
+beginchar(114,0.8lheight#,lheight#,0);
+getpen;
+draw (mg*2,0) -- (mg*6.17,mg*12.5) & flex((mg*6.17,mg*12.5),(mg*11.83,mg*17.5),(mg*14.17,mg*12.5)) &
+ flex((mg*14.17,mg*12.5),(mg*19.83,mg*17.5),(mg*22.17,mg*12.5)) & (mg*22.17,mg*12.5) .. (mg*18,0);
+draw (mg*11.83,mg*17.5) -- (mg*22.17,mg*27.5);
+endchar;
+
+beginchar(115,0.6lheight#,sheight#,0);
+getpen;
+draw (mg*11.17,mg*27.5) -- (mg*5.33,mg*10) .. (mg*7.5,0) .. (mg*16.33,mg*10) .. (mg*11.67,mg*14);
+endchar;
+
+beginchar(6,0.8lheight#,lheight#,uheight#);
+getpen;
+draw (mg*9.5,mg*22.5) -- (mg*2,0) & flex((mg*2,0),(mg*7.33,mg*-8),(mg*18,0)) & flex((mg*18,0),(mg*16.33,mg*10),(mg*8,0)) &
+ flex((mg*8,0),(mg*10,mg*-3),(mg*14,0));
+draw (mg*15.83,mg*10) .. (mg*23.42,mg*16.25) .. (mg*20,mg*22.5) .. (mg*12.42,mg*16.25) .. (mg*15.83,mg*10) .. cycle;
+endchar;
+
+beginchar(117,0.6lheight#,sheight#,uheight#);
+getpen;
+draw flex((mg*0.5,mg*-4.5),(mg*4.17,mg*-10),(mg*11.5,mg*-4.5)) & (mg*11.5,mg*-4.5) -- (mg*17.33,mg*13) &
+ flex((mg*17.33,mg*13),(mg*14.67,mg*17),(mg*9.33,mg*13)) & (mg*9.33,mg*13) -- (mg*6.67,mg*5);
+draw (mg*9.33,mg*13) -- (mg*7.33,mg*16);
+endchar;
+
+beginchar(112,0.8.lheight#,sheight#,uheight#);
+getpen;
+draw flex((mg*0.33,mg*-5),(mg*6.67,mg*-10),(mg*16.33,mg*-5)) & flex((mg*16.33,mg*-5),(mg*15.33,mg),(mg*12,0),(mg*10.33,mg*4))
+ .. (mg*10.33,mg*4) -- (mg*13.33,mg*13) & flex((mg*13.33,mg*13),(mg*19.33,mg*17.5),(mg*22.33,mg*13)) ..
+ (mg*22.33,mg*13) -- (mg*19.33,mg*4) .. (mg*12,0);
+draw flex((mg*13.33,mg*13),(mg*11,mg*16.5),(mg*6.33,mg*13)) .. (mg*6.33,mg*13) -- (mg*3.33,mg*4) &
+ flex((mg*3.33,mg*4),(mg*5.5,0),(mg*10.33,mg*4));
+endchar;
+
+beginchar(107,0.6lheight#,lheight#,uheight#);
+getpen;
+draw flex((mg*0.5,mg*-4.5),(mg*4.17,mg*-10),(mg*11.5,mg*-4.5)) .. (mg*14.5,mg*4.5) -- (mg*22.17,mg*27.5) -- (mg*16.33,mg*25);
+draw flex((mg*6,mg*12),(mg*13.33,mg*17.5),(mg*17,mg*12));
+endchar;
+
+beginchar(2,0.8lheight#,lheight#,uheight#);
+getpen;
+draw (mg*18,0) -- (mg*21.67,mg*11) & flex((mg*21.67,mg*11),(mg*19.67,mg*17),(mg*13.67,mg*11)) &
+ flex((mg*13.67,mg*11),(mg*11.67,mg*17),(mg*5.67,mg*11)) .. (mg*5.67,mg*11) -- (mg*2,0) -- (mg*11.67,mg*-10);
+endchar;
+
+beginchar(113,0.6lheight#,sheight#,uheight#);
+getpen;
+draw (mg*7.83,mg*17.5) -- (mg*3.5,mg*4.5) & flex((mg*3.5,mg*4.5),(mg*7.5,0),(mg*14.5,mg*4.5)) ..
+ (mg*14.5,mg*4.5) -- (mg*18.83,mg*17.5);
+draw (mg*14.5,mg*4.5) -- (mg*11.5,mg*-4.5) & flex((mg*11.5,mg*-4.5),(mg*4.17,mg*-10),(mg*0.5,mg*-4.5));
+endchar;
+
+beginchar(5,0.6lheight#,sheight#,0);
+getpen;
+draw (mg*15.17,mg*8) .. (mg*13.33,mg*17.5) .. (mg*4.67,mg*8) .. (mg*7.5,0) .. (mg*15.67,mg*8) -- (mg*20.5,mg*22.5) &
+ flex((mg*20.5,mg*22.5),(mg*19.42,mg*27.5),(mg*15,mg*22.5)) & flex((mg*15,mg*22.5),(mg*13.92,mg*27.5),(mg*9.5,mg*22.5));
+endchar;
+
+beginchar(1,0.6lheight#,lheight#,0);
+getpen;
+draw (mg*2,0) -- (mg*6,mg*12) & flex((mg*6,mg*12),(mg*13.33,mg*17.5),(mg*17,mg*12)) & (mg*17,mg*12) -- (mg*13,0);
+draw (mg*6,mg*12) -- (mg*10.33,mg*25) & flex((mg*10.33,mg*25),(mg*13.67,mg*27.5),(mg*15.33,mg*25)) .. (mg*15.33,mg*25)
+ .. (mg*8.67,mg*20);
+endchar;
+
+beginchar(99,0.6lheight#,sheight#,uheight#);
+getpen;
+draw (mg*7.83,mg*17.5) -- (mg*0.5,mg*-4.5) & flex((mg*0.5,mg*-4.5),(mg*4.17,mg*-10),(mg*11.5,mg*-4.5)) &
+ flex((mg*11.5,mg*-4.5),(mg*8.67,mg*-1),(mg*5,0));
+draw flex((mg*5,0),(mg*16.33,mg*10),(mg*16.17,mg*12.5)) .. (mg*16.17,mg*12.5) -- (mg*7.83,mg*17.5);
+endchar;
+
+beginchar(106,0.6lheight#,sheight#,0);
+getpen;
+draw (mg*27.5,mg*27.5) -- (mg*16.33,mg*10) .. (mg*7.5,0) .. (mg*5.33,mg*10) .. (mg*13.33,mg*17.5) .. (mg*18.33,mg*16);
+endchar;
+
+beginchar(0,0.6lheight#,lheight#,uheight#);
+getpen;
+draw flex((mg*21.08,mg*24.25),(mg*19.42,mg*27.5),(mg*15.58,mg*24.25)) &
+ flex((mg*15.58,mg*24.25),(mg*14.33,mg*27.25),(mg*10.08,mg*24.25)) .. (mg*10.08,mg*24.25) -- (mg*-1.33,mg*-10)
+ -- (mg*16.33,mg*10) & flex((mg*16.33,mg*10),(mg*12.67,mg*15.5),(mg*5.33,mg*10));
+endchar;
+
+beginchar(121,0.6lheight#,lheight#,uheight#);
+getpen;
+draw (mg*12,mg*24) -- (mg*16.67,mg*27.5) -- (mg*7.5,0) .. (mg*11.33,mg*-5) .. (mg*4.17,mg*-10) .. (mg*0.33,mg*-5);
+draw (mg*13.33,mg*4) -- (mg*7.33,mg*13) -- (mg*4.33,mg*4) -- (mg*16.33,mg*13);
+endchar;
+
+beginchar(120,0.6lheight#,lheight#,0);
+getpen;
+draw (mg*11.17,mg*27.5) .. (mg*5.33,mg*10) .. (mg*7.5,0) .. (mg*16.33,mg*10) .. (mg*13.33,mg*17.5) ..
+ (mg*7.33,mg*16) -- (mg*15.33,mg*22);
+endchar;
+
+beginchar(8,0.6lheight#,sheight#,uheight#);
+getpen;
+draw flex((mg*17.83,mg*17.5),(mg*18.33,mg*16),(mg*2.33,mg*-5)) & flex((mg*2.33,mg*-5),(mg*2.5,mg*-7.5),(mg*-1.33,mg*-10));
+draw flex((mg*7.33,mg*16),(mg*8.83,mg*17.5),(mg*8.67,mg*-10),(mg*10,mg*-9));
+endchar;
+
+beginchar(104,0.6lheight#,lheight#,0);
+getpen;
+draw (mg*3.67,mg*5) .. (mg*7.5,0) .. (mg*14.67,mg*5) .. (mg*13,mg*6) -- (mg*19.33,mg*25) -- (mg*11.17,mg*27.5);
+draw (mg*11.5,mg*22.5) -- (mg*18.5,mg*22.5);
+draw (mg*9.83,mg*17.5) -- (mg*16.83,mg*17.5);
+endchar;
+end