summaryrefslogtreecommitdiff
path: root/fonts/cirth
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/cirth
Initial commit
Diffstat (limited to 'fonts/cirth')
-rw-r--r--fonts/cirth/Changelog27
-rw-r--r--fonts/cirth/README43
-rw-r--r--fonts/cirth/cirbf.mf65
-rw-r--r--fonts/cirth/cirsl.mf67
-rw-r--r--fonts/cirth/cirss.mf64
-rw-r--r--fonts/cirth/cirth.mf65
-rw-r--r--fonts/cirth/cirth.pdfbin0 -> 137101 bytes
-rw-r--r--fonts/cirth/cirth.tex223
-rw-r--r--fonts/cirth/ligs.mf35
-rw-r--r--fonts/cirth/macros.mf69
-rw-r--r--fonts/cirth/num.tex76
-rw-r--r--fonts/cirth/runes.mf927
12 files changed, 1661 insertions, 0 deletions
diff --git a/fonts/cirth/Changelog b/fonts/cirth/Changelog
new file mode 100644
index 0000000000..33ef934384
--- /dev/null
+++ b/fonts/cirth/Changelog
@@ -0,0 +1,27 @@
+Version 2.0 (Nov 2004) mhabets@users.sourceforge.net:
+
+- Fixed a & A to close gap.
+- Split up graphics for 55 and 56 to separate the reduced version.
+ The stroke-only version of 55 is ` (back-tick, ascii 96).
+ The stroke-only version of 56 is ' (tick, ascii 39).
+- Assigned character values to all numerical runes:
+ Value Sequence
+ 33 x
+ 37 xo
+ 38b M
+ 45a uu
+ 45b UU
+ 52a oo
+ 52b OO
+ 53 Y
+ 55a er
+ 55b `
+ 56a el
+ 56b '
+- Added new runes for:
+ . Single dot in the middle of the character.
+ : Two vertical dots.
+ , Three vertical dots.
+ ; Four vertical dots.
+- Updated cirth.tex and added examples section.
+- Added version number to runes.mf.
diff --git a/fonts/cirth/README b/fonts/cirth/README
new file mode 100644
index 0000000000..a558fdbf97
--- /dev/null
+++ b/fonts/cirth/README
@@ -0,0 +1,43 @@
+ Tolkien Cirth font for TeX/LaTeX
+
+
+Contents:
+ cirth.pdf PDF file showing use
+ cirth.tex Latex file showing use
+ num.tex La/TeX macros for using fonts
+ Changelog Summary of changes between versions
+ README This file
+
+ cirth.mf Standard cirth font
+ cirbf.mf Boldface cirth font
+ cirsl.mf Slanted cirth font
+ cirss.mf Sans-serif cirth font
+
+ macros.mf Macro file
+ runes.mf Letter definition file
+ ligs.mf Ligature table file
+
+Windows users:
+ Find out from your local guru what settings to use for
+running Metafont and where to install the fonts. On my PC for my
+HP laserjet printer I use
+ mf &plain \mode=hplaser; mag=1; input cirth
+ For the other fonts just substitute cirbf (say) for cirth. For
+more information on its use see cirth.tex.
+
+Linux users:
+ As root, install these files in a new directory
+ $TEXMF/fonts/source/public/cirth
+ ($TEXMF is usually set to /usr/local/share/texmf or
+ /usr/share/texmf).
+ Next, execute 'mktexlsr'. Make sure the $TEXMF directory is
+ listed in the output.
+
+ Test the font as a normal user by copying both .tex files to
+ a directory, and execute 'latex cirth'.
+ To test DVI configuration use xdvi or dvips.
+
+Version 2.0 is Copyright 2004 by
+ Martin Habets mhabets@users.sourceforge.net
+Version 1.0 is Copyright 1992 by
+ Jo Grant jaymin@maths.tcd.ie
diff --git a/fonts/cirth/cirbf.mf b/fonts/cirth/cirbf.mf
new file mode 100644
index 0000000000..196286273a
--- /dev/null
+++ b/fonts/cirth/cirbf.mf
@@ -0,0 +1,65 @@
+% Copyright 1992 Jo Grant jaymin@maths.tcd.ie
+% c/o 44 Bancroft Avenue, Tallaght, Dublin 24, Ireland.
+% Everyone is granted permission to copy, and redistribute
+% this file, provided that a currently-dated copy of this
+% copyright notice is included in the copy.
+% License is granted to produce fonts based on the information
+% in this file, provided that such fonts are redistributed
+% without charge to any third party and not used for
+% monetary gain. To use them in a commercially related environment
+% you must first acquire a liscence from Jo Grant at the
+% above address.
+
+
+mode_def testing=
+ pixels_per_inch:=300*4;
+ blacker:=.1;
+ o_correction:=1;
+ fillin:=.01;
+ proofing:=2;
+ fontmaking:=0;
+ tracingtitles:=1;
+ enddef;
+if unknown mode:
+mode:=testing; fi
+mode_setup;
+
+if mode=testing: screenstrokes; fi
+
+% parameters that control what things looks like.
+u# = 1/384in#;
+pw# := 4u#; % normal pen width
+runew# := 1.2*4pw#; % normal width of a rune
+runeh# := 10pw#; % normal height of a rune
+letter_fit# := 1.2pw#; % normal space to left and right of a rune
+serwid#:= 1.2*.5pw#; % serif width
+dotwid#:= 1.2*.75pw#; % dot radius
+
+pen_xthick# := 1.5pw#; % pen proportions
+pen_ythick# := 1.5*.5pw#; %
+dotpen_xthick# := .75pw#; % dot pen proportions
+dotpen_ythick# := .375pw#; %
+
+ASC:= 1.20;
+HH := 1.00;
+H := 0.75;
+M := 0.50;
+L := 0.25;
+LL := 0.00;
+DSC:= -.20;
+
+boolean serifs;
+serifs := true;
+
+define_pixels(pw, runew, runeh, pen_xthick, pen_ythick, letter_fit, serwid)
+define_pixels(dotwid, dotpen_xthick, dotpen_ythick)
+
+input macros;
+input runes;
+input ligs;
+
+font_normal_space 2runew#;
+font_normal_stretch 2runew#/3;
+font_normal_shrink 4runew#/3;
+
+end;
diff --git a/fonts/cirth/cirsl.mf b/fonts/cirth/cirsl.mf
new file mode 100644
index 0000000000..9f5d3ae89c
--- /dev/null
+++ b/fonts/cirth/cirsl.mf
@@ -0,0 +1,67 @@
+% Copyright 1992 Jo Grant jaymin@maths.tcd.ie
+% c/o 44 Bancroft Avenue, Tallaght, Dublin 24, Ireland.
+% Everyone is granted permission to copy, and redistribute
+% this file, provided that a currently-dated copy of this
+% copyright notice is included in the copy.
+% License is granted to produce fonts based on the information
+% in this file, provided that such fonts are redistributed
+% without charge to any third party and not used for
+% monetary gain. To use them in a commercially related environment
+% you must first acquire a liscence from Jo Grant at the
+% above address.
+
+
+mode_def testing=
+ pixels_per_inch:=300*4;
+ blacker:=.1;
+ o_correction:=1;
+ fillin:=.01;
+ proofing:=2;
+ fontmaking:=0;
+ tracingtitles:=1;
+ enddef;
+if unknown mode:
+mode:=testing; fi
+mode_setup;
+
+if mode=testing: screenstrokes; fi
+
+% parameters that control what things looks like.
+u# = 1/384in#;
+pw# := 4u#; % normal pen width
+runew# := 4pw#; % normal width of a rune
+runeh# := 10pw#; % normal height of a rune
+letter_fit# := 1.2pw#; % normal space to left and right of a rune
+serwid#:= .5pw#; % serief width
+dotwid#:= .75pw#; % dot radius
+
+pen_xthick# := pw#; % pen proportions
+pen_ythick# := .5pw#; %
+dotpen_xthick# := .75pw#; % dot pen proportions
+dotpen_ythick# := .375pw#; %
+
+ASC:= 1.20;
+HH := 1.00;
+H := 0.75;
+M := 0.50;
+L := 0.25;
+LL := 0.00;
+DSC:= -.20;
+
+boolean serifs;
+serifs := true;
+
+currenttransform := identity slanted 1/4;
+
+define_pixels(pw, runew, runeh, pen_xthick, pen_ythick, letter_fit, serwid)
+define_pixels(dotwid, dotpen_xthick, dotpen_ythick)
+
+input macros;
+input runes;
+input ligs;
+
+font_normal_space 2runew#;
+font_normal_stretch 2runew#/3;
+font_normal_shrink 4runew#/3;
+
+end;
diff --git a/fonts/cirth/cirss.mf b/fonts/cirth/cirss.mf
new file mode 100644
index 0000000000..f9e9a3fa00
--- /dev/null
+++ b/fonts/cirth/cirss.mf
@@ -0,0 +1,64 @@
+% Copyright 1992 Jo Grant jaymin@maths.tcd.ie
+% c/o 44 Bancroft Avenue, Tallaght, Dublin 24, Ireland.
+% Everyone is granted permission to copy, and redistribute
+% this file, provided that a currently-dated copy of this
+% copyright notice is included in the copy.
+% License is granted to produce fonts based on the information
+% in this file, provided that such fonts are redistributed
+% without charge to any third party and not used for
+% monetary gain. To use them in a commercially related environment
+% you must first acquire a liscence from Jo Grant at the
+% above address.
+
+mode_def testing=
+ pixels_per_inch:=300*4;
+ blacker:=.1;
+ o_correction:=1;
+ fillin:=.01;
+ proofing:=2;
+ fontmaking:=0;
+ tracingtitles:=1;
+ enddef;
+if unknown mode:
+mode:=testing; fi
+mode_setup;
+
+if mode=testing: screenstrokes; fi
+
+% parameters that control what things looks like.
+u# = 1/384in#;
+pw# := 4u#; % normal pen width
+runew# := 4pw#; % normal width of a rune
+runeh# := 10pw#; % normal height of a rune
+letter_fit# := 1.2pw#; % normal space to left and right of a rune
+serwid#:= .5pw#; % serif width
+dotwid#:= .75pw#; % dot radius
+
+pen_xthick# := .9pw#; % pen proportions
+pen_ythick# := .9pw#; %
+dotpen_xthick# := .5pw#; % dot pen proportions
+dotpen_ythick# := .5pw#; %
+
+ASC:= 1.20;
+HH := 1.00;
+H := 0.75;
+M := 0.50;
+L := 0.25;
+LL := 0.00;
+DSC:= -.20;
+
+boolean serifs;
+serifs := false;
+
+define_pixels(pw, runew, runeh, pen_xthick, pen_ythick, letter_fit, serwid)
+define_pixels(dotwid, dotpen_xthick, dotpen_ythick)
+
+input macros;
+input runes;
+input ligs;
+
+font_normal_space 2runew#;
+font_normal_stretch 2runew#/3;
+font_normal_shrink 4runew#/3;
+
+end;
diff --git a/fonts/cirth/cirth.mf b/fonts/cirth/cirth.mf
new file mode 100644
index 0000000000..f3dff984d3
--- /dev/null
+++ b/fonts/cirth/cirth.mf
@@ -0,0 +1,65 @@
+% Copyright 1992 Jo Grant jaymin@maths.tcd.ie
+% c/o 44 Bancroft Avenue, Tallaght, Dublin 24, Ireland.
+% Everyone is granted permission to copy, and redistribute
+% this file, provided that a currently-dated copy of this
+% copyright notice is included in the copy.
+% License is granted to produce fonts based on the information
+% in this file, provided that such fonts are redistributed
+% without charge to any third party and not used for
+% monetary gain. To use them in a commercially related environment
+% you must first acquire a liscence from Jo Grant at the
+% above address.
+
+
+mode_def testing=
+ pixels_per_inch:=300*4;
+ blacker:=.1;
+ o_correction:=1;
+ fillin:=.01;
+ proofing:=2;
+ fontmaking:=0;
+ tracingtitles:=1;
+ enddef;
+if unknown mode:
+mode:=testing; fi
+mode_setup;
+
+if mode=testing: screenstrokes; fi
+
+% parameters that control what things looks like.
+u# = 1/384in#;
+pw# := 4u#; % normal pen width
+runew# := 4pw#; % normal width of a rune
+runeh# := 10pw#; % normal height of a rune
+letter_fit# := 1.2pw#; % normal space to left and right of a rune
+serwid#:= .5pw#; % serif width
+dotwid#:= .75pw#; % dot radius
+
+pen_xthick# := pw#; % pen proportions
+pen_ythick# := .5pw#; %
+dotpen_xthick# := .75pw#; % dot pen proportions
+dotpen_ythick# := .375pw#; %
+
+ASC:= 1.20;
+HH := 1.00;
+H := 0.75;
+M := 0.50;
+L := 0.25;
+LL := 0.00;
+DSC:= -.20;
+
+boolean serifs;
+serifs := true;
+
+define_pixels(pw, runew, runeh, pen_xthick, pen_ythick, letter_fit, serwid)
+define_pixels(dotwid, dotpen_xthick, dotpen_ythick)
+
+input macros;
+input runes;
+input ligs;
+
+font_normal_space 2runew#;
+font_normal_stretch 2runew#/3;
+font_normal_shrink 4runew#/3;
+
+end;
diff --git a/fonts/cirth/cirth.pdf b/fonts/cirth/cirth.pdf
new file mode 100644
index 0000000000..400f110b0f
--- /dev/null
+++ b/fonts/cirth/cirth.pdf
Binary files differ
diff --git a/fonts/cirth/cirth.tex b/fonts/cirth/cirth.tex
new file mode 100644
index 0000000000..ab1bbff5e6
--- /dev/null
+++ b/fonts/cirth/cirth.tex
@@ -0,0 +1,223 @@
+\documentclass{article}
+\font\cirth=cirbf
+\input num
+\def\nj{n$\!\!$\j}
+\def\C#1{\c{#1}$_{_{#1}}$}
+\def\bs{$\backslash$}
+\baselineskip=18pt
+\begin{document}
+\begin{center}
+\section*{THE CIRTH}
+\end{center}
+
+\noindent
+The {\sl Certhas Daeron} was originally devised to represent the sounds
+of Sindarin only. The oldest {\sl cirth} were \C{1}, \C{2}, \C{5}, \C{6};
+\C{8}, \C{9}, \C{12}; \C{18}, \C{19}, \C{22}; \C{29}, \C{31}; \C{35},
+\C{36}; \C{39}, \C{42}, \C{46}, \C{50}; and a {\sl certh} varying
+between \C{13} and \C{15}. The assignment of values was unsystematic.
+\C{39}, \C{42}, \C{46} and \C{50} were vowels and remained so in all later
+developments. \C{13} and \C{15} were used for {\sl h} or {\sl s}, according
+as \C{35} was used for {\sl s} or {\sl h}. This tendency to hesitate
+in the assignment of values for {\sl s} and {\sl h} continued in
+later arangements. In those characters that consisted of a
+`stem' and a `branch', \C{1}--\C{31}, the attachment of the branch was,
+if on one side only, usually made on the right side.
+The reverse was not infrequent, but had no phonetic significance.
+
+The extension and elaboration of this {\sl certhas} was called in its older
+form the {\sl Angerthas Daeron}, since the additions to the old {\sl cirth}
+and their re-organization was attributed to Daeron. The principal additions,
+however, the introductions of two new series, \C{13}--\C{17}, and
+\C{23}--\C{28}, were actually most probably inventions of the Noldor of
+Eregion, since they were used for the representation of sounds not found
+in Sindarin.
+
+In the rearrangement of the {\sl Angerthas} the following principles
+are observable (evidently inspired by the F\"eanorian system):
+(1) adding a stroke to a brance added a `voice';
+(2) reversing the {\sl certh} indicated opening to a `spirant';
+(3) placing the branch on both sides of the stem added voice and
+nasality.
+These principles were regularly carried out, except in one point.
+For (archaic) Sindarin a sign for a spirant {\sl m} (or nasal {\sl v})
+was required, and since this could best be provided by a reversal of the sign
+for {\sl m}, the reversible \C{6} was given the value {\sl m}, but \C{5}
+was given the value {\sl hw}.
+
+\C{36}, the theoretic value of which was {\sl z} was used, in spelling
+Sindarin or Quenya, for {\sl ss}: cf.\ F\"eanorian 31. \C{39} was used for
+either {\sl i} or {\sl y} consonant); \C{34}, \C{35} were used indifferently
+for {\sl s}; and \C{38} was used for the frequent sequence {\sl nd}, although
+it was not clearly related in shape to the dentals.
+
+\bigskip
+
+In the Table of Values those on the left are, when seperated by --, the
+values of the older {\sl Angerthas}. Those on the right are the
+value of the Dwarvish {\sl Angerthas Moria}\footnote{Those in (\ ) are
+values only found in Elvish use: $\star$ marks}.
+The Dwarves of Moria, as can be seen, introduced a number of unsystematic
+changes in value, as well as certain new {\sl cirth}:
+\C{37}, \C{40}, \C{41}, \C{53}, \C{55}, \C{56}. The dislocation in
+values was due to mainly two causes:
+(1) the alteration in the values of \C{34}, \C{35}, \C{54} respectively to
+{\sl h}, (the clear or glottal beginning of a work with an initial vowel
+that appeared in Khuzdul), and {\sl s};
+(2) the abandonment of the \C{14}, \C{16} for which the Dwarves substitutde
+\C{29}, \C{30}. The consequent use of 12 for {\sl r},
+the invention of \C{53} for {\sl n} (and its confusion with \C{22});
+the use of \C{17} as {\sl z}, to go with \C{54} in its value {\sl s}, and
+the consequent use of \C{36} as \nj\ and the new {\sl certh} \C{37} for {\sl ng}
+may also be observed. The new \C{55}, \C{56} were in origin a halved form
+of \C{46}, and were used for vowels like those heard in English {\sl butter},
+which were frequent in Dwarvish and in the Westron. When weak or evanescent
+they were often reduced to a mere stroke ({\cirth `} and {\cirth '}) without a stem.
+This {\sl Angerthas Moria} is represented in the tomb-inscription.
+
+The Dwarves of Erebor used a further modification of
+this system, known as the mode or Erebor, and exmplified in the Book or
+Mazarbul. Its chief characteristics were: the use of \C{43} as {\sl z};
+of \C{17} as {\sl ks} ({\sl x}); and the invention of two new {\sl cirth},
+\C{57}, \C{58} for {\sl ps} and {\sl ts}. They also reintroduced \C{14},
+\C{16} for the values {\sl j}, {\sl zh}; but used \C{29}, \C{30} for
+{\sl g}, {\sl gh}, or as mere variants of \C{19}, \C{21}. These peculiarities
+are not included in the table, except for the special Ereborian {\sl cirth},
+\C{57}, \C{58}.
+
+\begin{center}
+{\sc the angerthas}\\
+{\sc table of values}\\
+\begin{tabular}{|lc|lc|lc|lc|}
+\hline
+\small 1&\cirth p&\small 16&\cirth zh&\small 31&\cirth l&\small 46&\cirth e\\
+\small 2&\cirth b&\small 17&\cirth nj&\small 32&\cirth lh&\small 47&\cirth E\\
+\small 3&\cirth f&\small 18&\cirth k&\small 33&\cirth x&\small 48&\cirth a\\
+\small 4&\cirth v&\small 19&\cirth g&\small 34&\cirth s&\small 49&\cirth A\\
+\small 5&\cirth hw&\small 20&\cirth kh&\small 35&\cirth S&\small 50&\cirth o\\
+\small 6&\cirth m&\small 21&\cirth gh&\small 36&\cirth z&\small 51&\cirth O \char25\\
+\small 7&\cirth mb&\small 22&\cirth N&\small 37&\cirth xo&\small 52&\cirth \char26 \char27\\
+\small 8&\cirth t&\small 23&\cirth kw&\small 38&\cirth nd M&\small 53&\cirth Y\\
+\small 9&\cirth d&\small 24&\cirth gw&\small 39&\cirth i&\small 54&\cirth h\\
+\small 10&\cirth th&\small 25&\cirth \char12&\small 40&\cirth y&\small 55&\cirth \char28 `\\
+\small 11&\cirth dh&\small 26&\cirth \char13&\small 41&\cirth hy&\small 56&\cirth \char29 '\\
+\small 12&\cirth n&\small 27&\cirth ngw&\small 42&\cirth u&\small 57&\cirth ps\\
+\small 13&\cirth ch&\small 28&\cirth nw&\small 43&\cirth U&\small 58&\cirth ts\\
+\small 14&\cirth j&\small 29&\cirth r&\small 44&\cirth w& &\cirth c\\
+\small 15&\cirth sh&\small 30&\cirth rh&\small 45&\cirth \char23 \char24&\&&\cirth \&\\
+\hline
+\end{tabular}\\
+\bigskip
+{\sc phonetic values}\\
+\begin{tabular}{|lc|lc|lc|lc|}
+\hline
+\small 1&\rm p&\small 16&\rm zh&\small 31&\rm l&\small 46&\rm e\\
+\small 2&\rm b&\small 17&\rm nj--z&\small 32&\rm lh&\small 47&\rm \=e\\
+\small 3&\rm f&\small 18&\rm k&\small 33&\rm ng--nd&\small 48&\rm a\\
+\small 4&\rm v&\small 19&\rm g&\small 34&\rm s--h&\small 49&\rm \=a\\
+\small 5&\rm hw&\small 20&\rm kh&\small 35&\rm s--'&\small 50&\rm o\\
+\small 6&\rm m&\small 21&\rm gh&\small 36&\rm z--\nj&\small 51&\rm \=o\\
+\small 7&\rm (mh)mb&\small 22&\rm \nj--n&\small 37&\rm ng$^\star$&\small 52&\rm \"o\\
+\small 8&\rm t&\small 23&\rm kw&\small 38&\rm nd--nj&\small 53&\rm n$^\star$\\
+\small 9&\rm d&\small 24&\rm gw&\small 39&\rm i(y)&\small 54&\rm h--s\\
+\small 10&\rm th&\small 25&\rm khw&\small 40&\rm y$^\star$&\small 55&\rm `$\star$\\
+\small 11&\rm dh&\small 26&\rm ghw,w&\small 41&\rm hy$^\star$&\small 56&\rm '$\star$\\
+\small 12&\rm n--r&\small 27&\rm ngw&\small 42&\rm u&\small 57&\rm ps$^\star$\\
+\small 13&\rm ch&\small 28&\rm nw&\small 43&\rm \=u&\small 58&\rm ts$^\star$\\
+\small 14&\rm j&\small 29&\rm r--j&\small 44&\rm w& &\rm $+$h\\
+\small 15&\rm sh&\small 30&\rm rh--zh&\small 45&\rm \"u& &\rm \&\\
+\hline
+\end{tabular}
+\end{center}
+
+\noindent
+\section*{USING THE CIRTH FROM \TeX}
+
+\noindent
+The name of the font, as distributed, is {\tt cirth} and can be simply
+accessed by {\tt \bs font\bs cirth=cirth}\footnote{In \LaTeX\ use {\tt
+\bs newfont\{\bs cirth\}\{cirth scaled\bs magstep2\}} for a scalable
+font.}.
+The normal letters are mapped according to the older {\sl Angerthas}
+where possible. The letter values and ligatures are indicated on the
+table below.
+Additionally the file {\tt num.tex} is provided that allows the
+characters to be accesses by referenced to their numeric entry point
+in Tolkien's Table of Values.
+There are two interfaces for this.
+Firstly the macro {\tt \bs c} takes a single paramer which should
+be a number and coresponds to the table entry. (for example {\tt \bs c\{24\}}
+produces \c{24}.)
+Alternatively you can type the english for the number preceded by a
+`c' (e.g. {\tt \bs ctwentyfour} produces \ctwentyfour). In the case
+where there are two {\sl cirth} for a single entry {\tt \bs c} takes
+the first and the english macros are suffixed by either an
+`a' or a `b'. For example {\tt \bs c\{38\}} produces \c{38} and
+you must use {\tt \bs cthirtyeighta} for {\cirth \cthirtyeighta} and
+{\tt \bs cthirtyeightb} for {\cirth \cthirtyeightb}.
+
+\begin{center}
+{\sc the angerthas to keycode mappings}\\
+\begin{tabular}{|cc|cc|cc|cc|}
+\hline
+\cirth p&\tt p&\cirth zh&\tt zh&\cirth l&\tt l&\cirth e&\tt e\\
+\cirth b&\tt b&\cirth nj&\tt nj&\cirth lh&\tt lh&\cirth E&\tt E\\
+\cirth f&\tt f&\cirth k&\tt k&\cirth x&\tt x&\cirth a&\tt a\\
+\cirth v&\tt v&\cirth g&\tt g&\cirth s&\tt s&\cirth A&\tt A\\
+\cirth hw&\tt hw&\cirth kh&\tt kh&\cirth S&\tt S&\cirth o&\tt o\\
+\cirth m&\tt m&\cirth gh&\tt gh&\cirth z&\tt z&\cirth O&\tt O\\
+\cirth mb&\tt mb&\cirth N&\tt N&\cirth xo&\tt xo&\cirth oo OO&\tt oo,OO\\
+\cirth t&\tt t&\cirth kw&\tt kw&\cirth nd M&\tt nd,M&\cirth Y&\tt Y\\
+\cirth d&\tt d&\cirth gw&\tt gw&\cirth i&\tt i&\cirth h&\tt h\\
+\cirth th&\tt th&\cirth khw&\tt khw&\cirth y&\tt y&\cirth er` &\tt er,`\\
+\cirth dh&\tt dh&\cirth ghw&\tt ghw&\cirth hy&\tt hy&\cirth el' &\tt el,'\\
+\cirth n&\tt n&\cirth ngw&\tt ngw&\cirth u&\tt u&\cirth ps&\tt ps\\
+\cirth ch&\tt ch&\cirth nw&\tt nw&\cirth U&\tt U&\cirth ts&\tt ts\\
+\cirth j&\tt j&\cirth r&\tt r&\cirth w&\tt w&\cirth c&\tt c\\
+\cirth sh&\tt sh&\cirth rh&\tt rh&\cirth uu UU&\tt uu,UU&\cirth \&&\tt \&\\
+\cirth .&\tt .&\cirth :&\tt :&\cirth ,&\tt ,&\cirth ;&\tt ;\\
+\hline
+\end{tabular}\\
+\end{center}
+The last line in the table contains the extra typesetting runes provided.
+
+The files {\tt cirbf.mf}, {\tt cirsl.mf}, and {\tt cirss.mf} have
+also been provided that produce (respectively) boldface, slanted,
+and sans-serif Cirth fonts. The boldface fonts stands out well
+and can be used when inserting Cirth into normal text. For Cirth
+on its own I reccomend the normal font at 12 point. The Sans-serif
+font eliminates the serifs (as expected) and makes the pen round,
+giving very clear characters. (With the normal slanted pen the
+slanted strokes to the left are darker than to the right.) I can
+think of no use for the slanted font (but it was easy to do!).
+MetaFont hacks can easily combine the options and produce a
+slanted bold font without serifs if they so chose.
+
+\section*{EXAMPLES}
+
+\noindent
+\begin{tabular}{l|c}
+\bf English text &\bf TeX code \& result \\ \hline
+The Lord of the rings &\tt\verb+{\cirth dher lon-d ov dher nizS}+ \\
+ & {\cirth dher lon-d ov dher nizS} \\
+translated from the red book &\tt\verb+{\cirth tnaNSlat`d fnom dher ned bOk}+ \\
+ & {\cirth tnaNSlat`d fnom dher ned bOk} \\ \hline
+There and back again &\tt\verb+{\cirth dhener ax bak agaiN}+ \\
+ & {\cirth dhener ax bak agaiN} \\
+a hobbits tale &\tt\verb+{\cirth a hobbitS taler}+ \\
+ & {\cirth a hobbitS taler} \\ \hline
+Balin son of Fundin &\tt\verb+{\cirth baliN SelN ov fuxiN}+ \\
+ & {\cirth baliN SelN ov fuxiN} \\
+Lord of Moria &\tt\verb+{\cirth lon-d ov monia}+ \\
+ & {\cirth lon-d ov monia} \\ \hline
+Glamdring (foe-hammer) &\tt\verb+{\cirth glamdriN}+ \\
+ & {\cirth glamdriN} \\
+Orc-rist (goblin-cleaver) &\tt\verb+{\cirth orkriSt}+ \\
+ & {\cirth orkriSt} \\
+\end{tabular}
+
+\bigskip\noindent
+Please send all comments, criticisms or improvements to
+me. e-mail: jaymin@maths.tcd.ie, or by mail to
+Jo Jaquinta, 44 Bancroft Avenue, Tallaght, Dublin 24, Ireland.
+\end{document}
diff --git a/fonts/cirth/ligs.mf b/fonts/cirth/ligs.mf
new file mode 100644
index 0000000000..cb215f58cf
--- /dev/null
+++ b/fonts/cirth/ligs.mf
@@ -0,0 +1,35 @@
+% Copyright 1992 Jo Grant jaymin@maths.tcd.ie
+% c/o 44 Bancroft Avenue, Tallaght, Dublin 24, Ireland.
+% Everyone is granted permission to copy, and redistribute
+% this file, provided that a currently-dated copy of this
+% copyright notice is included in the copy.
+% License is granted to produce fonts based on the information
+% in this file, provided that such fonts are redistributed
+% without charge to any third party and not used for
+% monetary gain. To use them in a commercially related environment
+% you must first acquire a liscence from Jo Grant at the
+% above address.
+
+% the ligatures
+ligtable "c": "h" =: char 4;
+ligtable "d": "h" =: char 3;
+ligtable "g": "w" =: char 11, "h" =: char 9;
+ligtable char 9: "w" =: char 13;
+ligtable "h": "w" =: char 0, "y" =: char 22;
+ligtable "k": "w" =: char 10, "h" =: char 8;
+ligtable char 8: "w" =: char 12;
+ligtable "l": "h" =: char 17;
+ligtable "m": "b" =: char 1;
+ligtable "n": "j" =: char 7, "w" =: char 15, "d" =: char 20, "g" =: char 120;
+ligtable char 120: "w" =: char 14, "o" =: char 19;
+%ligtable "n": "g" =: char 19;
+ligtable "p": "s" =: char 30;
+ligtable "r": "h" =: char 16;
+ligtable "s": "h" =: char 5;
+ligtable "t": "h" =: char 2, "s" =: char 31;
+ligtable "z": "h" =: char 6;
+ligtable "e": "r" =: char 28, "l" =: char 29;
+ligtable "u": "u" =: char 23;
+ligtable "U": "U" =: char 24;
+ligtable "o": "o" =: char 26;
+ligtable "O": "O" =: char 27;
diff --git a/fonts/cirth/macros.mf b/fonts/cirth/macros.mf
new file mode 100644
index 0000000000..7ae00442a2
--- /dev/null
+++ b/fonts/cirth/macros.mf
@@ -0,0 +1,69 @@
+% Copyright 1992 Jo Grant jaymin@maths.tcd.ie
+% c/o 44 Bancroft Avenue, Tallaght, Dublin 24, Ireland.
+% Everyone is granted permission to copy, and redistribute
+% this file, provided that a currently-dated copy of this
+% copyright notice is included in the copy.
+% License is granted to produce fonts based on the information
+% in this file, provided that such fonts are redistributed
+% without charge to any third party and not used for
+% monetary gain. To use them in a commercially related environment
+% you must first acquire a liscence from Jo Grant at the
+% above address.
+
+def runepen =
+ pickup pencircle xscaled pen_xthick yscaled pen_ythick rotated 40;
+ enddef;
+def dotpen =
+ pickup pencircle xscaled dotpen_xthick yscaled dotpen_ythick rotated 40;
+ enddef;
+def runedot (expr p) =
+ dotpen;
+ draw (p + (dotwid, 0)){up}..{left}(p + (0, dotwid))..
+ {down}(p + (-dotwid, 0))..{right}(p + (0, -dotwid))..cycle;
+ enddef;
+def filldot (expr p) =
+ dotpen;
+ filldraw (p + (dotwid, 0)){up}..{left}(p + (0, dotwid))..
+ {down}(p + (-dotwid, 0))..{right}(p + (0, -dotwid))..cycle;
+ enddef;
+def serif (expr p) =
+ if serifs:
+ runepen;
+ draw (p - (serwid, 0))--(p + (serwid, 0));
+ fi;
+ enddef;
+def leftserif (expr p) =
+ if serifs:
+ runepen;
+ draw (p - (serwid, 0))--p;
+ fi;
+ enddef;
+def rightserif (expr p) =
+ if serifs:
+ runepen;
+ draw p--(p + (serwid, 0));
+ fi;
+ enddef;
+
+def adjust_fit(expr left_adj, right_adj) =
+ l := -hround(left_adj*hppp)-letter_fit;
+ interim xoffset := -l;
+ charwd := charwd+2letter_fit# + left_adj + right_adj;
+ r := l+hround(charwd*hppp);
+ w := r-hround(right_adj*hppp) - letter_fit;
+ enddef;
+
+extra_beginchar := extra_beginchar & "runepen;adjust_fit(0,0);";
+
+def makebox(text r) =
+ r((-letter_fit,0), (w+letter_fit,0));
+ r((-letter_fit,h), (w+letter_fit,h));
+ r((-letter_fit,0), (-letter_fit,h));
+ r((w+letter_fit,0), (w+letter_fit,h));
+ r((0,0), (0,h));
+ r((w,0), (w,h));
+ if charic<>0:
+ r((w+charic*hppp,h.o_),(w+charic*hppp,.5h.o_));
+ fi
+ enddef;
+
diff --git a/fonts/cirth/num.tex b/fonts/cirth/num.tex
new file mode 100644
index 0000000000..b464659a41
--- /dev/null
+++ b/fonts/cirth/num.tex
@@ -0,0 +1,76 @@
+\def\cone{\char112}
+\def\ctwo{\char98}
+\def\cthree{\char102}
+\def\cfour{\char118}
+\def\cfive{\char0}
+\def\csix{\char109}
+\def\cseven{\char2}
+\def\ceight{\char116}
+\def\cnine{\char100}
+\def\cten{\char2}
+\def\celeven{\char3}
+\def\ctwelve{\char110}
+\def\cthirteen{\char4}
+\def\cfourteen{\char106}
+\def\cfifteen{\char5}
+\def\csixteen{\char6}
+\def\cseventeen{\char7}
+\def\ceighteen{\char107}
+\def\cninteen{\char103}
+\def\ctwenty{\char8}
+\def\ctwentyone{\char9}
+\def\ctwentytwo{\char78}
+\def\ctwentythree{\char10}
+\def\ctwentyfour{\char11}
+\def\ctwentyfive{\char12}
+\def\ctwentysix{\char13}
+\def\ctwentyseven{\char14}
+\def\ctwentyeight{\char15}
+\def\ctwentynine{\char114}
+\def\cthirty{\char16}
+\def\cthirtyone{\char108}
+\def\cthirtytwo{\char17}
+\def\cthirtythree{\char120}
+\def\cthirtyfour{\char115}
+\def\cthirtyfive{\char83}
+\def\cthirtysix{\char122}
+\def\cthirtyseven{\char19}
+\def\cthirtyeighta{\char20}
+\def\cthirtyeightb{\char77}
+\def\cthirtynine{\char105}
+\def\cforty{\char121}
+\def\cfortyone{\char22}
+\def\cfortytwo{\char117}
+\def\cfortythree{\char85}
+\def\cfortyfour{\char119}
+\def\cfortyfivea{\char23}
+\def\cfortyfiveb{\char24}
+\def\cfortysix{\char101}
+\def\cfortyseven{\char69}
+\def\cfortyeight{\char97}
+\def\cfortynine{\char65}
+\def\cfifty{\char111}
+\def\cfiftyonea{\char79}
+\def\cfiftyoneb{\char25}
+\def\cfiftytwoa{\char26}
+\def\cfiftytwob{\char27}
+\def\cfiftythree{\char89}
+\def\cfiftyfour{\char104}
+\def\cfiftyfive{\char28}
+\def\cfiftysix{\char29}
+\def\cfiftyseven{\char30}
+\def\cfiftyeight{\char31}
+\def\c#1{{\cirth\ifcase#1 \or\cone\or \ctwo\or \cthree\or \cfour\or \cfive\or
+ \csix\or \cseven\or \ceight\or \cnine\or \cten\or \celeven\or
+ \ctwelve\or \cthirteen\or \cfourteen\or \cfifteen\or \csixteen\or
+ \cseventeen\or \ceighteen\or \cninteen\or \ctwenty\or \ctwentyone\or
+ \ctwentytwo\or \ctwentythree\or \ctwentyfour\or \ctwentyfive\or
+ \ctwentysix\or \ctwentyseven\or \ctwentyeight\or \ctwentynine\or
+ \cthirty\or \cthirtyone\or \cthirtytwo\or \cthirtythree\or
+ \cthirtyfour\or \cthirtyfive\or \cthirtysix\or \cthirtyseven\or
+ \cthirtyeighta\or \cthirtynine\or \cforty\or \cfortyone\or
+ \cfortytwo\or \cfortythree\or \cfortyfour\or \cfortyfivea\or
+ \cfortysix\or \cfortyseven\or \cfortyeight\or \cfortynine\or
+ \cfifty\or \cfiftyonea\or \cfiftytwoa\or \cfiftythree\or
+ \cfiftyfour\or \cfiftyfive\or \cfiftysix\or \cfiftyseven\or
+ \cfiftyeight\else\fi}}
diff --git a/fonts/cirth/runes.mf b/fonts/cirth/runes.mf
new file mode 100644
index 0000000000..355f1655e5
--- /dev/null
+++ b/fonts/cirth/runes.mf
@@ -0,0 +1,927 @@
+% Version 2.0 Copyright 2004 Martin Habets mhabets@users.sourceforge.net
+% Version 1.0 Copyright 1992 Jo Grant jaymin@maths.tcd.ie
+% c/o 44 Bancroft Avenue, Tallaght, Dublin 24, Ireland.
+%
+% Everyone is granted permission to copy, and redistribute
+% this file, provided that a currently-dated copy of this
+% copyright notice is included in the copy.
+% License is granted to produce fonts based on the information
+% in this file, provided that such fonts are redistributed
+% without charge to any third party and not used for
+% monetary gain. To use them in a commercially related environment
+% you must first acquire a liscence from Jo Grant at the
+% above address.
+
+beginchar("&",runew#,runeh#,0); "&";
+z1 = (w, L*h);
+z2 = (w/2, LL*h);
+z3 = (w/2, HH*h);
+z4 = (0, H*h);
+draw z1--z2--z3--z4;
+rightserif(z1);
+leftserif(z4);
+endchar;
+
+beginchar(".",.5runew#,runeh#,0); ".";
+z1 = (w/2, M*h);
+filldot(z1);
+endchar;
+
+beginchar(":",.5runew#,runeh#,0); ":";
+z1 = (w/2, .33*h);
+z2 = (w/2, .66*h);
+filldot(z1);
+filldot(z2);
+endchar;
+
+beginchar(",",.5runew#,runeh#,0); ",";
+z1 = (w/2, .2*h);
+z2 = (w/2, M*h);
+z3 = (w/2, .8*h);
+filldot(z1);
+filldot(z2);
+filldot(z3);
+endchar;
+
+beginchar(";",.5runew#,runeh#,0); ";";
+z1 = (w/2, LL*h+dotwid#);
+z2 = (w/2, .33*h+dotwid#);
+z3 = (w/2, .66*h-dotwid#);
+z4 = (w/2, HH*h-dotwid#);
+filldot(z1);
+filldot(z2);
+filldot(z3);
+filldot(z4);
+endchar;
+
+% we place this in the "c" position so that ligatures work
+beginchar("c",2pw#,runeh#,0); "+h";
+z1 = (w/2, LL*h);
+z2 = (w/2, M*h);
+draw z1--z2;
+serif(z1);
+serif(z2);
+endchar;
+
+beginchar(31,runew#,runeh#,0); "58";
+%ts
+z1 = (w, LL*h);
+z2 = (w, HH*h);
+z3 = (w, H*h);
+z4 = (0, M*h);
+z5 = (w, L*h);
+draw z1--z2;
+draw z3--z4--z5;
+serif(z1);
+serif(z2);
+endchar;
+
+beginchar(30,runew#,runeh#,0); "57";
+%ps
+z1 = (0, LL*h);
+z2 = (0, HH*h);
+z3 = (0, H*h);
+z4 = (w, M*h);
+z5 = (0, L*h);
+draw z1--z2;
+draw z3--z4--z5;
+serif(z1);
+serif(z2);
+endchar;
+
+beginchar("'",.5runew#,runeh#,0); "56b";
+z5 = (w-.5runew, .5[M,L]*h);
+z6 = (w, .5[H,M]*h);
+%draw z5{right}..{right}z6;
+draw z5..z6;
+endchar;
+
+beginchar(29,.5runew#,runeh#,0); "56";
+z1 = (.5runew, LL*h);
+z2 = (.5runew, HH*h);
+z3 = (.5runew, .5[H,M]*h);
+z4 = (0, .5[M,L]*h);
+z7 = (.25runew, DSC*h);
+z8 = (.75runew, DSC*h);
+draw z1--z2;
+draw z3--z4;
+serif(z1);
+serif(z2);
+leftserif(z4);
+runedot(z7);
+runedot(z8);
+endchar;
+
+beginchar("`",.5runew#,runeh#,0); "55b";
+z5 = (w-.5runew, .5[H,M]*h);
+z6 = (w, .5[M,L]*h);
+%draw z5{right}..{right}z6;
+draw z5..z6;
+endchar;
+
+beginchar(28,.5runew#,runeh#,0); "55";
+z1 = (0, LL*h);
+z2 = (0, HH*h);
+z3 = (0, .5[H,M]*h);
+z4 = (.5runew, .5[M,L]*h);
+draw z1--z2;
+draw z3--z4;
+serif(z1);
+serif(z2);
+rightserif(z4);
+endchar;
+
+beginchar("h",1.5runew#,runeh#,0); "54";
+z1 = (0, LL*h);
+z2 = (w/2, M*h);
+z3 = (w, LL*h);
+z4 = (w/2, HH*h);
+draw z1--z2--z3;
+draw z2--z4;
+leftserif(z1);
+serif(z4);
+rightserif(z3);
+endchar;
+
+beginchar("Y",1.5runew#,runeh#,0); "53";
+z1 = (0, HH*h);
+z2 = (w/2, M*h);
+z3 = (w, HH*h);
+z4 = (w/2, LL*h);
+x6 - x5 = runew/2; .5[x5, x6] = w/2;
+y5 = y6 = ASC*h;
+draw z1--z2--z3;
+draw z2--z4;
+leftserif(z1);
+serif(z4);
+rightserif(z3);
+runedot(z5);
+runedot(z6);
+endchar;
+
+beginchar(27,1.5runew#,runeh#,0); "52b";
+z1 = (0, LL*h);
+z2 = (w/2, HH*h);
+z3 = (w, LL*h);
+z4 = (w/2, M*h);
+z5 = (w/2, LL*h);
+draw z1--z2--z3;
+draw z5--z4;
+leftserif(z1);
+serif(z2);
+rightserif(z3);
+endchar;
+
+beginchar(26,1.5runew#,runeh#,0); "52a";
+z1 = (0, LL*h);
+z2 = (w/2, HH*h);
+z3 = (w, LL*h);
+z4 = (w/2, LL*h);
+draw z1--z2--z3;
+draw z2--z4;
+leftserif(z1);
+serif(z2);
+serif(z4);
+rightserif(z3);
+endchar;
+
+beginchar(25,1.4runew#,runeh#,0); "51b";
+z1 = (0, LL*h);
+z2 = (0, HH*h);
+z3 = (w/2, LL*h);
+z4 = (w, HH*h);
+z5 = (w, LL*h);
+draw z1--z2--z3--z4--z5;
+leftserif(z1);
+serif(z2);
+serif(z3);
+serif(z4);
+rightserif(z5);
+endchar;
+
+beginchar("O",1.6runew#,runeh#,0); "51a";
+z1 = (0, LL*h);
+z2 = (.5runew, HH*h);
+z3 = (runew, LL*h);
+z4 = (w-runew, LL*h);
+z5 = (w-.5runew, HH*h);
+z6 = (w, LL*h);
+draw z1--z2--z3;
+draw z4--z5--z6;
+leftserif(z1);
+serif(z2);
+rightserif(z3);
+leftserif(z4);
+serif(z5);
+rightserif(z6);
+endchar;
+
+beginchar("o",1.2runew#,runeh#,0); "50";
+z1 = (0, LL*h);
+z2 = (w/2, HH*h);
+z3 = (w, LL*h);
+draw z1--z2--z3;
+leftserif(z1);
+serif(z2);
+rightserif(z3);
+endchar;
+
+beginchar("A",runew#,runeh#,0); "49";
+z1 = (0, LL*h);
+z2 = (0, HH*h);
+z3 = (w, H*h);
+z4 = (w, LL*h);
+z5 = (0, H*h);
+z6 = (w, M*h);
+draw z1--z2--z3--z4;
+draw z5--z6;
+serif(z1);
+serif(z2);
+serif(z4);
+endchar;
+
+beginchar("a",runew#,runeh#,0); "48";
+z1 = (0, LL*h);
+z2 = (0, HH*h);
+z3 = (w, H*h);
+z4 = (w, LL*h);
+draw z1--z2--z3--z4;
+serif(z1);
+serif(z2);
+serif(z4);
+endchar;
+
+beginchar("E",runew#,runeh#,0); "47";
+z1 = (0, HH*h);
+z2 = (0, LL*h);
+z3 = (w, HH*h);
+z4 = (w, LL*h);
+z5 = (0, H*h);
+z6 = (w, M*h);
+z7 = (0, M*h);
+z8 = (w, L*h);
+draw z1--z2;
+draw z3--z4;
+draw z5--z6;
+draw z7--z8;
+serif(z1);
+serif(z2);
+serif(z3);
+serif(z4);
+endchar;
+
+beginchar("e",runew#,runeh#,0); "46";
+z1 = (0, HH*h);
+z2 = (0, LL*h);
+z3 = (w, HH*h);
+z4 = (w, LL*h);
+z5 = (0, H*h);
+z6 = (w, M*h);
+draw z1--z2;
+draw z3--z4;
+draw z5--z6;
+serif(z1);
+serif(z2);
+serif(z3);
+serif(z4);
+endchar;
+
+beginchar(24,runew#,runeh#,0); "45b";
+% u"
+z1 = (w/2, LL*h);
+z2 = (w/2, M*h);
+z3 = (0, H*h);
+z4 = (w/2, HH*h);
+z5 = (w, H*h);
+z6 = (0, M*h);
+z7 = (w, M*h);
+draw z1--z4;
+draw z2--z3--z4--z5--z2;
+draw z6--z7;
+serif(z1);
+endchar;
+
+beginchar(23,runew#,runeh#,0); "45a";
+% u"
+z1 = (w/2, LL*h);
+z2 = (w/2, M*h);
+z3 = (0, H*h);
+z4 = (w/2, HH*h);
+z5 = (w, H*h);
+z6 = (0, M*h);
+z7 = (w, M*h);
+draw z1--z2--z3--z4--z5--z2;
+draw z6--z7;
+serif(z1);
+endchar;
+
+beginchar("w",1.2runew#,runeh#,0); "44";
+z1 = (w/2, LL*h);
+z2 = (w/2, M*h);
+z3 = (0, H*h);
+z4 = (w/2, HH*h);
+z5 = (w, H*h);
+draw z1--z2--z3--z4--z5--z2;
+serif(z1);
+endchar;
+
+beginchar("U",1.2runew#,runeh#,0); "43";
+z1 = (0, HH*h);
+z2 = (w, M*h);
+z3 = (0, LL*h);
+z4 = (w, HH*h);
+z5 = (0, M*h);
+z6 = (w, LL*h);
+draw z1--z2--z3;
+draw z4--z5--z6;
+leftserif(z1);
+leftserif(z3);
+rightserif(z4);
+rightserif(z6);
+endchar;
+
+beginchar("u",runew#,runeh#,0); "42";
+z1 = (0, LL*h);
+z2 = (w, .33*h);
+z3 = (w/2, HH*h);
+z4 = (0, .33M*h);
+z5 = (w, LL*h);
+draw z1--z2--z3--z4--z5;
+serif(z1);
+serif(z5);
+endchar;
+
+beginchar(22,.75runew#,runeh#,0); "41";
+z1 = (w, HH*h);
+z2 = (w, L*h);
+z3 = (0, H*h);
+z4 = (0, LL*h);
+draw z1--z2--z3--z4;
+serif(z1);
+serif(z4);
+endchar;
+
+beginchar("y",.75runew#,runeh#,0); "40";
+z1 = (0, HH*h);
+z2 = (0, L*h);
+z3 = (w, H*h);
+z4 = (w, LL*h);
+draw z1--z2--z3--z4;
+serif(z1);
+serif(z4);
+endchar;
+
+beginchar("i",.5runew#,runeh#,0); "39";
+z1 = (0, HH*h);
+z2 = (0, LL*h);
+z3 = (0, ASC*h);
+z4 = (w, ASC*h);
+draw z1--z2;
+serif(z1);
+serif(z2);
+runedot(z3);
+runedot(z4);
+endchar;
+
+beginchar("M",1.2runew#,runeh#,0); "38b";
+% nd version 2
+z1 = (0, HH*h);
+z2 = (w, LL*h);
+z3 = (w, HH*h);
+z4 = (0, LL*h);
+z5 = (w, M*h);
+z6 = (0, M*h);
+draw z4--z1--z5;
+draw z2--z3--z6;
+serif(z4);
+serif(z2);
+endchar;
+
+beginchar(20,2runew#,runeh#,0); "38a";
+% nd version 1
+z1 = (0, HH*h);
+z2 = (w, LL*h);
+z3 = (w, HH*h);
+z4 = (0, LL*h);
+draw z1--z2--z3--z4--cycle;
+endchar;
+
+beginchar(19,1.6runew#,runeh#,0); "37";
+% ng
+z1 = (0, HH*h);
+z2 = (w, LL*h);
+z3 = (w, HH*h);
+z4 = (0, LL*h);
+z5 = (w/2, H*h);
+z6 = (w, M*h);
+z7 = (w/2, L*h);
+z8 = (0, M*h);
+draw z1--z2;
+draw z3--z4;
+draw z5--z6--z7--z8--cycle;
+leftserif(z1);
+rightserif(z2);
+rightserif(z3);
+leftserif(z4);
+endchar;
+
+beginchar("z",2runew#,runeh#,0); "36";
+z1 = (0, HH*h);
+z2 = (w, LL*h);
+z3 = (w, HH*h);
+z4 = (0, LL*h);
+draw z1--z2;
+draw z3--z4;
+leftserif(z1);
+rightserif(z2);
+rightserif(z3);
+leftserif(z4);
+endchar;
+
+beginchar("S",1.2runew#,runeh#,0); "35";
+z1 = (w, HH*h);
+z2 = (0, M*h);
+z3 = (w, LL*h);
+draw z1--z2--z3;
+serif(z1);
+serif(z3);
+endchar;
+
+beginchar("s",1.2runew#,runeh#,0); "34";
+z1 = (0, HH*h);
+z2 = (w, M*h);
+z3 = (0, LL*h);
+z4 = (0, ASC*h);
+z5 = (.5runew, ASC*h);
+draw z1--z2--z3;
+serif(z1);
+serif(z3);
+runedot(z4);
+runedot(z5);
+endchar;
+
+beginchar("x",1.5runew#,runeh#,0); "33";
+% ng
+z1 = (w/2, HH*h);
+z2 = (w/2, LL*h);
+z3 = (0, HH*h);
+z4 = (w, LL*h);
+z5 = (0, LL*h);
+z6 = (w, HH*h);
+draw z1--z2;
+draw z3{down}..{down}z4;
+draw z5{up}..{up}z6;
+serif(z1);
+serif(z2);
+serif(z3);
+serif(z4);
+serif(z5);
+serif(z6);
+endchar;
+
+beginchar(17,runew#,runeh#,0); "32";
+% lh
+z1 = (w/2, HH*h);
+z2 = (w/2, LL*h);
+z3 = (0, .5[H,HH]*h);
+z4 = (w, .5[L,LL]*h);
+draw z1--z2;
+draw z3{down}..{down}z4;
+serif(z1);
+serif(z2);
+serif(z3);
+serif(z4);
+endchar;
+
+beginchar("l",runew#,runeh#,0); "31";
+z1 = (w/2, HH*h);
+z2 = (w/2, LL*h);
+z3 = (0, .5[L,LL]*h);
+z4 = (w, .5[H,HH]*h);
+draw z1--z2;
+draw z3{up}..{up}z4;
+serif(z1);
+serif(z2);
+serif(z3);
+serif(z4);
+endchar;
+
+beginchar(16,runew#,runeh#,0); "30";
+% rh
+z1 = (w, HH*h);
+z2 = (w, LL*h);
+z3 = (0, HH*h);
+z4 = (w, M*h);
+z5 = (0, LL*h);
+draw z1--z2;
+draw z3{down}..{right}z4;
+draw z5{up}..{right}z4;
+serif(z1);
+serif(z2);
+leftserif(z3);
+leftserif(z5);
+endchar;
+
+beginchar("r",runew#,runeh#,0); "29";
+z1 = (0, HH*h);
+z2 = (0, LL*h);
+z3 = (w, HH*h);
+z4 = (0, M*h);
+z5 = (w, LL*h);
+draw z1--z2;
+draw z3{down}..{left}z4;
+draw z5{up}..{left}z4;
+serif(z1);
+serif(z2);
+rightserif(z3);
+rightserif(z5);
+endchar;
+
+beginchar(15,1.5runew#,runeh#,0); "28";
+% ngw
+z1 = (w, HH*h);
+z2 = (w/2, H*h);
+z3 = (0, HH*h);
+z4 = (0, LL*h);
+z5 = (w/2, L*h);
+z6 = (w, LL*h);
+z7 = (.5[x4,x5], DSC*h);
+z8 = (.5[x5,x6], DSC*h);
+draw z1--z2--z3--z4--z5--z6;
+runedot(z7);
+runedot(z8);
+endchar;
+
+beginchar(14,2runew#,runeh#,0); "27";
+% ngw
+z1 = (w/2, LL*h);
+z2 = (w/2, HH*h);
+z3 = (0,HH*h);
+z4 = (.5runew, H*h);
+z5 = (w-.5runew, H*h);
+z6 = (w, HH*h);
+draw z1--z2;
+draw z3--z4--z2--z5--z6;
+serif(z1);
+leftserif(z3);
+rightserif(z6);
+endchar;
+
+beginchar(13,1.5runew#,runeh#,0); "26";
+% ghw
+z1 = (w, LL*h);
+z2 = (w, HH*h);
+z3 = (w/2,H*h);
+z4 = (0, HH*h);
+z5 = (w, M*h);
+z6 = (w/2,L*h);
+z7 = (0, M*h);
+draw z1--z2--z3--z4;
+draw z5--z6--z7;
+serif(z1);
+leftserif(z4);
+leftserif(z7);
+rightserif(z2);
+endchar;
+
+beginchar(12,1.5runew#,runeh#,0); "25";
+% khw
+z1 = (w, LL*h);
+z2 = (w, HH*h);
+z3 = (w/2,H*h);
+z4 = (0, HH*h);
+draw z1--z2--z3--z4;
+serif(z1);
+leftserif(z4);
+rightserif(z2);
+endchar;
+
+beginchar(11,1.5runew#,runeh#,0); "24";
+% gw
+z1 = (0, LL*h);
+z2 = (0, HH*h);
+z3 = (w/2,H*h);
+z4 = (w, HH*h);
+z5 = (0, M*h);
+z6 = (w/2,L*h);
+z7 = (w, M*h);
+draw z1--z2--z3--z4;
+draw z5--z6--z7;
+serif(z1);
+rightserif(z4);
+rightserif(z7);
+leftserif(z2);
+endchar;
+
+beginchar(10,1.5runew#,runeh#,0); "23";
+% kw
+z1 = (0, LL*h);
+z2 = (0, HH*h);
+z3 = (w/2,M*h);
+z4 = (w, HH*h);
+z5 = (0, ASC*h);
+z6 = (.5runew, ASC*h);
+draw z1--z2--z3--z4;
+serif(z1);
+rightserif(z4);
+leftserif(z2);
+runedot(z5);
+runedot(z6);
+endchar;
+
+beginchar("N",1.5runew#,runeh#,0); "22";
+% ligatured nj
+z1 = (w/2, LL*h);
+z2 = (w/2, HH*h);
+z3 = (0,HH*h);
+z4 = (w/2, M*h);
+z5 = (w, HH*h);
+draw z1--z2;
+draw z3{down}..z4{right}..{up}z5;
+serif(z1);
+serif(z2);
+serif(z3);
+serif(z5);
+endchar;
+
+beginchar(9,runew#,runeh#,0); "21";
+% gh
+z1 = (w, LL*h);
+z2 = (w, HH*h);
+z3 = (w,M*h);
+z4 = (0, HH*h);
+z5 = (w,H*h);
+z6 = (w/2, HH*h);
+draw z1--z2;
+draw z3{left}..{up}z4;
+draw z5{left}..{up}z6;
+serif(z1);
+serif(z2);
+serif(z4);
+serif(z6);
+endchar;
+
+beginchar(8,.9runew#,runeh#,0); "20";
+% kh
+z1 = (w, LL*h);
+z2 = (w, HH*h);
+z3 = (w,M*h);
+z4 = (0, HH*h);
+draw z1--z2;
+draw z3{left}..{up}z4;
+serif(z1);
+serif(z2);
+serif(z4);
+endchar;
+
+beginchar("g",runew#,runeh#,0); "19";
+z1 = (0, LL*h);
+z2 = (0, HH*h);
+z3 = (0,M*h);
+z4 = (w, HH*h);
+z5 = (0,H*h);
+z6 = (w/2, HH*h);
+draw z1--z2;
+draw z3{right}..{up}z4;
+draw z5{right}..{up}z6;
+serif(z1);
+serif(z2);
+serif(z4);
+serif(z6);
+endchar;
+
+beginchar("k",.9runew#,runeh#,0); "18";
+z1 = (0, LL*h);
+z2 = (0, HH*h);
+z3 = (0,M*h);
+z4 = (w, HH*h);
+z5 = (0, ASC*h);
+z6 = (w/2, ASC*h);
+draw z1--z2;
+draw z3{right}..{up}z4;
+serif(z1);
+serif(z2);
+serif(z4);
+runedot(z5);
+runedot(z6);
+endchar;
+
+beginchar(7,1.5runew#,runeh#,0); "17";
+% nj
+z1 = (w/2, LL*h);
+z2 = (w/2, HH*h);
+z3 = (0,LL*h);
+z4 = (w/2, M*h);
+z5 = (w, LL*h);
+draw z1--z2;
+draw z3--z4--z5;
+serif(z1);
+rightserif(z5);
+leftserif(z3);
+endchar;
+
+beginchar(6,1.2runew#,runeh#,0); "16";
+% zh
+z1 = (w, LL*h);
+z2 = (w, HH*h);
+z3 = (w,M*h);
+z4 = (0, LL*h);
+z5 = (w, L*h);
+z6 = (w/2, LL*h);
+draw z1--z2;
+draw z3--z4;
+draw z5--z6;
+serif(z1);
+serif(z2);
+leftserif(z4);
+leftserif(z6);
+endchar;
+
+beginchar(5,1.2runew#,runeh#,0); "15";
+% zh
+z1 = (w, LL*h);
+z2 = (w, HH*h);
+z3 = (w,M*h);
+z4 = (0, LL*h);
+draw z1--z2;
+draw z3--z4;
+serif(z1);
+serif(z2);
+leftserif(z4);
+endchar;
+
+beginchar("j",1.2runew#,runeh#,0); "14";
+z1 = (0, LL*h);
+z2 = (0, HH*h);
+z3 = (0,M*h);
+z4 = (w, LL*h);
+z5 = (0, L*h);
+z6 = (w/2, LL*h);
+draw z1--z2;
+draw z3--z4;
+draw z5--z6;
+serif(z1);
+serif(z2);
+rightserif(z4);
+rightserif(z6);
+endchar;
+
+beginchar(4,1.2runew#,runeh#,0); "13";
+% ch
+z1 = (0, LL*h);
+z2 = (0, HH*h);
+z3 = (0,M*h);
+z4 = (w, LL*h);
+z5 = (0, ASC*h);
+z6 = (w/2, ASC*h);
+draw z1--z2;
+draw z3--z4;
+serif(z1);
+serif(z2);
+rightserif(z4);
+runedot(z5);
+runedot(z6);
+endchar;
+
+beginchar("n",1.5runew#,runeh#,0); "12";
+z1 = (w/2, LL*h);
+z2 = (w/2, HH*h);
+z3 = (0,.5[M,H]*h);
+z4 = (w,.5[M,H]*h);
+draw z1--z2;
+draw z3--z2--z4;
+serif(z1);
+rightserif(z4);
+leftserif(z3);
+endchar;
+
+beginchar(3,runew#,runeh#,0); "11";
+% dh
+z1 = (w, LL*h);
+z2 = (w, HH*h);
+z3 = (0,H*h);
+z4 = (w, M*h);
+z5 = (0,L*h);
+draw z1--z2--z3;
+draw z4--z5;
+serif(z1);
+rightserif(z2);
+leftserif(z3);
+leftserif(z5);
+endchar;
+
+beginchar(2,runew#,runeh#,0); "10";
+% th
+z1 = (w, LL*h);
+z2 = (w, HH*h);
+z3 = (0,M*h);
+draw z1--z2--z3;
+serif(z1);
+rightserif(z3);
+endchar;
+
+beginchar("d",runew#,runeh#,0); "9";
+z1 = (0, LL*h);
+z2 = (0, HH*h);
+z3 = (w,H*h);
+z4 = (0, M*h);
+z5 = (w,L*h);
+draw z1--z2--z3;
+draw z4--z5;
+serif(z1);
+leftserif(z2);
+rightserif(z3);
+rightserif(z5);
+endchar;
+
+beginchar("t",runew#,runeh#,0); "8";
+z1 = (0, LL*h);
+z2 = (0, HH*h);
+z3 = (w,M*h);
+z4 = (w/2, ASC*h);
+z5 = (w,ASC*h);
+draw z1--z2--z3;
+serif(z1);
+leftserif(z2);
+rightserif(z3);
+runedot(z4);
+runedot(z5);
+endchar;
+
+beginchar(1,runew#,runeh#,0); "7";
+% mb
+z1 = (w, LL*h);
+z2 = (w, HH*h);
+z3 = (0,H*h);
+z4 = (w, M*h);
+z5 = (0,L*h);
+draw z1--z2--z3--z4--z5--z1;
+rightserif(z1);
+rightserif(z2);
+endchar;
+
+beginchar("m",runew#,runeh#,0); "6";
+z1 = (0, LL*h);
+z2 = (0, HH*h);
+z3 = (w,H*h);
+z4 = (0, M*h);
+z5 = (w,L*h);
+draw z1--z2--z3--z4--z5--z1;
+leftserif(z1);
+leftserif(z2);
+endchar;
+
+beginchar(0,1.5runew#,runeh#,0); "5";
+% hw
+z1 = (w/2, LL*h);
+z2 = (w/2, HH*h);
+z3 = (w,H*h);
+z4 = (w/2, M*h);
+z5 = (0,H*h);
+draw z1--z2--z3--z4--z5--z2;
+serif(z1);
+endchar;
+
+beginchar("v",1.2runew#,runeh#,0); "4";
+z1 = (w, LL*h);
+z2 = (w, HH*h);
+z3 = (w-.9runew,H*h);
+z4 = (w, M*h);
+z5 = (w-1.2runew,.5[L,LL]*h);
+draw z1--z2--z3--z4--z5;
+serif(z1);
+rightserif(z2);
+leftserif(z5);
+endchar;
+
+beginchar("f",runew#,runeh#,0); "3";
+z1 = (w, LL*h);
+z2 = (w, HH*h);
+z3 = (0,H*h);
+z4 = (w, M*h);
+draw z1--z2--z3--z4;
+serif(z1);
+rightserif(z2);
+endchar;
+
+beginchar("b",1.2runew#,runeh#,0); "2";
+z1 = (0, LL*h);
+z2 = (0, HH*h);
+z3 = (.9runew,H*h);
+z4 = (0, M*h);
+z5 = (1.2runew,.5[L,LL]*h);
+draw z1--z2--z3--z4--z5;
+serif(z1);
+leftserif(z2);
+rightserif(z5);
+endchar;
+
+beginchar("p",runew#,runeh#,0); "1";
+z1 = (0, LL*h);
+z2 = (0, HH*h);
+z3 = (w,H*h);
+z4 = (0, M*h);
+draw z1--z2--z3--z4;
+serif(z1);
+leftserif(z2);
+endchar;