summaryrefslogtreecommitdiff
path: root/fonts/archaic/viking
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/archaic/viking
Initial commit
Diffstat (limited to 'fonts/archaic/viking')
-rw-r--r--fonts/archaic/viking/README38
-rw-r--r--fonts/archaic/viking/try_vik.tex58
-rw-r--r--fonts/archaic/viking/viking.dtx1041
-rw-r--r--fonts/archaic/viking/viking.ins85
4 files changed, 1222 insertions, 0 deletions
diff --git a/fonts/archaic/viking/README b/fonts/archaic/viking/README
new file mode 100644
index 0000000000..8b4d1acf3e
--- /dev/null
+++ b/fonts/archaic/viking/README
@@ -0,0 +1,38 @@
+ The viking package provides fonts for the runic script used by the vikings
+in Scandinavia from about 700 AD to about 1200 AD. It is based on and meant as
+adn addition to Peter Wilsons collection of ancient fonts.
+
+ The distribution consists of the following files:
+README.txt (this file)
+viking.ins
+viking.dtx
+try_vik.tex
+
+ The distribution is provided under the terms of the LaTeX
+Project Public License (LPPL).
+
+ To install the package:
+o run: latex viking.ins, which will generate:
+ vik*.mf files
+ *.fd files
+ viking.sty
+o run: latex viking.dtx or: pdflatex viking.dtx
+o run: makeindex -s gind.ist viking
+o run: latex viking.dtx or: pdflatex viking.dtx
+o Print viking.dvi (or viking.pdf) for a hardcopy of the package manual
+o Move the generated files to locations where LaTeX will find them.
+ For example: the vik*.mf files to .../texmf/fonts/source/public/viking
+ the *.fd and .sty files to /texmf/tex/latex/local/viking
+ On a teTeX distribution you might also have to add the following
+ line to texmf/fontname/special.map:
+ fut10.mf public viking
+ On a teTeX distribution remember to run texhash after moving the files.
+
+ On a MikTeX distribution you will have to refresh the filename database
+ from the MikTeX options program.
+o run: latex try_vik or pdflatex try_vik
+ for a testpage of this Runic font
+
+2003/08/12
+Uwe Zimmermann
+Uwe.Zimmermann@sciencetronics.com
diff --git a/fonts/archaic/viking/try_vik.tex b/fonts/archaic/viking/try_vik.tex
new file mode 100644
index 0000000000..4de6f31ffe
--- /dev/null
+++ b/fonts/archaic/viking/try_vik.tex
@@ -0,0 +1,58 @@
+\documentclass{article}
+\usepackage{viking}
+\newcommand{\AD}{\textsc{ad}}
+\newcommand{\VIK}{:FUDORKG.HNIEASZ.TBMLY:}
+\newcommand{\vik}{:fudork.hnias.tbmly:}
+\pagestyle{empty}
+
+\title{Try Viking Runic Fonts}
+\author{Uwe Zimmermann \\ \texttt{uwe.zimmermann@sciencetronics.com}}
+\date{}
+\begin{document}
+\maketitle\thispagestyle{empty}
+
+\begin{center}
+The Viking Futhark font its normal size \\
+\textvik{\VIK} \\
+\textvik{\vik} \\[1ex]
+and here is a runic inscription (U112) near Ed in Uppland/Sweden dating back to about 1000~\AD: \\
+{\vikfamily .RAHNUALTR.LIT.RISTA.RUNAR.EFY.FASTUI.MODUR.SINA.ONEMS.\\
+.TOTY.TOI.AIDI.KUD.HIALBI.ANT.HENA.}\\
+{\ttfamily RAHNUALTR LIT RISTA RUNAR EFY FASTUI MODUR SINA ONEMS \\
+ TOTY TOI AIDI KUD HIALBI ANT HENA }\\
+{\itshape Raghnvaldr let carve runes after Fastvi, mother his, Onem's\\
+daughter, (who) died in Ed. God help soul hers.}
+\end{center}
+
+
+\begin{center}
+\begin{tabular}{|cc|l|l|c|} \hline
+\multicolumn{2}{|c|}{Runic letter} & \multicolumn{1}{|c|}{Name} & \multicolumn{1}{|c|}{Meaning} & Command \\
+long-arm & short-arm &&&\\
+ \hline
+\textvik{F} &\textvik{f} & fe, fiu & wealth & F \\
+\textvik{U} &\textvik{u} & ur, urR & auroch & U \\
+\textvik{D} &\textvik{d} & thurs, thhurs & troll, giant & D \\
+\textvik{O} &\textvik{o} & ass & asa-god & O \\
+\textvik{R} &\textvik{r} & reidh, raithu & riding & R \\
+\textvik{K} &\textvik{k} & kaun & wound & K \\
+\textvik{G} & & & & G \\[1ex]
+\textvik{H} &\textvik{h} & hagal & hail & H \\
+\textvik{N} &\textvik{n} & naudhr, nauthR& need & N \\
+\textvik{I} &\textvik{i} & is & ice & I \\
+\textvik{E} & & & & E \\
+\textvik{A} &\textvik{a} & ar & year & A \\
+\textvik{S},\textvik{Z} &\textvik{s} & sol, sulu & sun & S, Z \\[1ex]
+%&&&&\\
+\textvik{T} &\textvik{t} & Tyr, tiuR & god Tyr & T \\
+\textvik{B} &\textvik{b} & biarkan & birch tree & B \\
+\textvik{M} &\textvik{m} & madhr, manR & man & M \\
+\textvik{L} &\textvik{l} & laukr, laugr & water & L \\
+\textvik{Y} &\textvik{y} & yR & bow & Y \\
+\textvik{:} &\textvik{:} & & & : \\
+\textvik{.} &\textvik{.} & & & . \\
+\hline
+\end{tabular}
+\end{center}
+
+\end{document}
diff --git a/fonts/archaic/viking/viking.dtx b/fonts/archaic/viking/viking.dtx
new file mode 100644
index 0000000000..b27cce0526
--- /dev/null
+++ b/fonts/archaic/viking/viking.dtx
@@ -0,0 +1,1041 @@
+% \iffalse meta-comment
+%
+% viking.dtx
+% Copyright Uwe Zimmermann
+% based on runic.dtx by Peter R. Wilson (c)1999
+%
+% This program is provided under the terms of the
+% LaTeX Project Public License distributed from CTAN
+% archives in directory macros/latex/base/lppl.txt.
+%
+% Author: Uwe Zimmermann, uwe.zimmermann@sciencetronics.com
+%
+%
+%<*driver>
+\documentclass{ltxdoc}
+\EnableCrossrefs
+\CodelineIndex
+\setcounter{StandardModuleDepth}{1}
+\begin{document}
+ \DocInput{viking.dtx}
+\end{document}
+%</driver>
+%
+% \fi
+%
+% \CheckSum{21}
+%
+% \DoNotIndex{\',\.,\@M,\@@input,\@addtoreset,\@arabic,\@badmath}
+% \DoNotIndex{\@centercr,\@cite}
+% \DoNotIndex{\@dotsep,\@empty,\@float,\@gobble,\@gobbletwo,\@ignoretrue}
+% \DoNotIndex{\@input,\@ixpt,\@m}
+% \DoNotIndex{\@minus,\@mkboth,\@ne,\@nil,\@nomath,\@plus,\@set@topoint}
+% \DoNotIndex{\@tempboxa,\@tempcnta,\@tempdima,\@tempdimb}
+% \DoNotIndex{\@tempswafalse,\@tempswatrue,\@viipt,\@viiipt,\@vipt}
+% \DoNotIndex{\@vpt,\@warning,\@xiipt,\@xipt,\@xivpt,\@xpt,\@xviipt}
+% \DoNotIndex{\@xxpt,\@xxvpt,\\,\ ,\addpenalty,\addtolength,\addvspace}
+% \DoNotIndex{\advance,\Alph,\alph}
+% \DoNotIndex{\arabic,\ast,\begin,\begingroup,\bfseries,\bgroup,\box}
+% \DoNotIndex{\bullet}
+% \DoNotIndex{\cdot,\cite,\CodelineIndex,\cr,\day,\DeclareOption}
+% \DoNotIndex{\def,\DisableCrossrefs,\divide,\DocInput,\documentclass}
+% \DoNotIndex{\DoNotIndex,\egroup,\ifdim,\else,\fi,\em,\endtrivlist}
+% \DoNotIndex{\EnableCrossrefs,\end,\end@dblfloat,\end@float,\endgroup}
+% \DoNotIndex{\endlist,\everycr,\everypar,\ExecuteOptions,\expandafter}
+% \DoNotIndex{\fbox}
+% \DoNotIndex{\filedate,\filename,\fileversion,\fontsize,\framebox,\gdef}
+% \DoNotIndex{\global,\halign,\hangindent,\hbox,\hfil,\hfill,\hrule}
+% \DoNotIndex{\hsize,\hskip,\hspace,\hss,\if@tempswa,\ifcase,\or,\fi,\fi}
+% \DoNotIndex{\ifhmode,\ifvmode,\ifnum,\iftrue,\ifx,\fi,\fi,\fi,\fi,\fi}
+% \DoNotIndex{\input}
+% \DoNotIndex{\jobname,\kern,\leavevmode,\let,\leftmark}
+% \DoNotIndex{\list,\llap,\long,\m@ne,\m@th,\mark,\markboth,\markright}
+% \DoNotIndex{\month,\newcommand,\newcounter,\newenvironment}
+% \DoNotIndex{\NeedsTeXFormat,\newdimen}
+% \DoNotIndex{\newlength,\newpage,\nobreak,\noindent,\null,\number}
+% \DoNotIndex{\numberline,\OldMakeindex,\OnlyDescription,\p@}
+% \DoNotIndex{\pagestyle,\par,\paragraph,\paragraphmark,\parfillskip}
+% \DoNotIndex{\penalty,\PrintChanges,\PrintIndex,\ProcessOptions}
+% \DoNotIndex{\protect,\ProvidesClass,\raggedbottom,\raggedright}
+% \DoNotIndex{\refstepcounter,\relax,\renewcommand,\reset@font}
+% \DoNotIndex{\rightmargin,\rightmark,\rightskip,\rlap,\rmfamily,\roman}
+% \DoNotIndex{\roman,\secdef,\selectfont,\setbox,\setcounter,\setlength}
+% \DoNotIndex{\settowidth,\sfcode,\skip,\sloppy,\slshape,\space}
+% \DoNotIndex{\symbol,\the,\trivlist,\typeout,\tw@,\undefined,\uppercase}
+% \DoNotIndex{\usecounter,\usefont,\usepackage,\vfil,\vfill,\viiipt}
+% \DoNotIndex{\viipt,\vipt,\vskip,\vspace}
+% \DoNotIndex{\wd,\xiipt,\year,\z@}
+%
+% \changes{v1.0}{2003/08/12}{First public release}
+%
+% \def\fileversion{v1.0}
+% \def\filedate{2003/08/12}
+% \newcommand*{\Lpack}[1]{\textsf {#1}} ^^A typeset a package
+% \newcommand*{\Lopt}[1]{\textsf {#1}} ^^A typeset an option
+% \newcommand*{\file}[1]{\texttt {#1}} ^^A typeset a file
+% \newcommand*{\Lcount}[1]{\textsl {\small#1}} ^^A typeset a counter
+% \newcommand*{\pstyle}[1]{\textsl {#1}} ^^A typeset a pagestyle
+% \newcommand*{\Lenv}[1]{\texttt {#1}} ^^A typeset an environment
+% \newcommand{\BC}{\textsc{bc}}
+% \newcommand{\AD}{\textsc{ad}}
+%
+% \title{The \Lpack{Viking} fonts\thanks{This
+% file has version number \fileversion, last revised
+% \filedate.}}
+%
+% \author{%
+% Uwe Zimmermann\\
+% Sciencetronics \\
+% {\tt uwe.zimmermann@sciencetronics.com}
+% }
+% \date{\filedate}
+% \maketitle
+% \begin{abstract}
+% The \Lpack{viking} package provides two sets of Runic letters in
+% the form used by the Scandinavian vikings around 1000~\AD. It is a
+% ``modernized'' set of 16 characters some of which are assigned several
+% pronunciations.
+% \end{abstract}
+% \tableofcontents
+%
+% \StopEventually{}
+%
+%
+%
+% \section{Introduction}
+%
+% This package is based on the \Lpack{runic} package by Peter Wilson,
+% but was modified to represent the Runic alphabet as it was used by the
+% Scandinavian vikings. The original 24 letter \textit{Futhark} had
+% at that time been simplified to a 16 letter alphabet, which existed
+% in two forms: one form with shorter and one form with longer branches.
+%
+% This package accommodates both sets of runic characters in the place
+% of the upper and lower case latin characters, respectively.
+%
+% This manual is typeset according to the conventions of the
+% \LaTeX{} \textsc{docstrip} utility which enables the automatic
+% extraction of the \LaTeX{} macro source files~\cite{GOOSSENS94}.
+%
+% Section~\ref{sec:usc} describes the usage of the package.
+% Commented code for the fonts is in Sections~\ref{sec:mf} and~\ref{sec:fd}
+% and source code for the package is in Section~\ref{sec:code}.
+%
+% \section{The \Lpack{runic} package} \label{sec:usc}
+%
+% The font in this package represents the later runic alphabet used
+% by the Scandinavian vikings from about 700~\AD\ until about 1200~\AD\
+% when the runes were replaced by both the medieval runic alphabet and the
+% roman (latin) alphabet. Originally this runic alphabet was developed
+% from the older versions with 24 letters, represented in the Lpack{runic}
+% package by Peter Wilson. The shape of the runes had been simplified and the
+% number was reduced from 24 to 16 characters.
+%
+% The font presented here is based on information from Enoksen~\cite{ENOKSEN98},
+% Jansson~\cite{JANSSON84}, Brink~\cite{BRINK83} and
+% Gustavson~\cite{GUSTAVSON91}.
+%
+% Many of the Runic characters
+% have a direct correspondence with the modern Latin alphabet.
+% The \textit{S} rune is allowed in a second mirrored form,
+% which was mapped as \textit{Z}. The \textit{yR} rune changed
+% their pronunciation towards \textit{Y} during the viking ages,
+% which allowed me to map it at this character position. Unlike
+% Wilson I chose to avoid a command for the \textit{thurs} (\textit{thorn})
+% rune and placed it as the letter \textit{D} instead. Since it
+% also represents the sound \textit{dh} this does not appear unreasonable
+% and eases the writing of texts and the reading of the source code.
+%
+% The uppercase letters will produce the long-armed form of the
+% runes, while the lowercase letters correspond to the somewhat
+% shorter alternative form (Swedish: \textit{kortkvist runor}).
+%
+% The letter sequence
+% for the viking futhark abecedary mapping is:\\
+% |F U D O R K H N I A S T B M L Y : .| \\
+% with the two punctuation marks |:| and |.| commonly found
+% in runic inscriptions.
+%
+%
+% \DescribeMacro{\futfamily}
+% This command selects the Runic font family. The family name is |vik|.
+%
+% \DescribeMacro{\textfut}
+% The command |\textfut{|\meta{text}|}| typesets \meta{text} in the
+% Runic font.
+%
+%
+% \section{The Metafont code} \label{sec:mf}
+%
+% \subsection{The parameter file}
+%
+% We deal with the parameter file first, and start by announcing
+% what it is for.
+% \begin{macrocode}
+%<*up>
+%%% VIK10.MF Computer Runic font 10 point design size.
+
+% \end{macrocode}
+% Specify the font size.
+% \begin{macrocode}
+
+font_identifier:="Viking"; font_size 10pt#;
+
+% \end{macrocode}
+%
+%
+% \begin{macro}{u}
+% \begin{macro}{ht}
+% \begin{macro}{s}
+% \begin{macro}{o}
+% \begin{macro}{px}
+% \begin{macro}{font-normal-space}
+% \begin{macro}{font-normal-shrink}
+% \begin{macro}{font-x-height}
+% \begin{macro}{font-quad}
+% Define the very simple font parameters.
+% \begin{macrocode}
+u#:=.2pt#; % unit width
+ht#:=7pt#; % height of characters (CM cap-height is approx 6.8pt)
+s#:=1.5pt#; % width correction (right and left)
+o#:=1/20pt#; % overshoot
+px#:=.7pt#; % horizontal width of pen
+font_normal_space:=7pt#; % width of a blank space
+font_normal_shrink:=.9pt#; % width correction for blank space
+font_x_height:=4.5pt#; % height of one ex
+font_quad:=10pt#; % an em
+
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+%
+% Finally, call the driver file for the Runic font.
+% \begin{macrocode}
+input viktitle %% switch to the driver file---Runic title
+
+end
+
+%</up>
+% \end{macrocode}
+%
+%
+% \subsection{The driver file}
+%
+% Announce the file and switch into Metafont mode
+%
+% \begin{macrocode}
+%<*mfd>
+% This is VIKTITLE.MF. It makes the short Runic font.
+
+font_coding_scheme:="Runic glyphs";
+mode_setup;
+
+% \end{macrocode}
+%
+% \begin{macro}{ho}
+% \begin{macro}{leftloc}
+% \begin{macro}{py}
+% Perform additional setup.
+% \begin{macrocode}
+ho#:=o#; % horizontal overshoot
+leftloc#:=s#; % leftmost xcoord of character
+py#:=.9px#; % vertical thickness of the pen
+
+define_pixels(s,u);
+define_blacker_pixels(px,py);
+define_good_x_pixels(leftloc);
+define_corrected_pixels(o); % turn on overshoot correction
+define_horizontal_corrected_pixels(ho);
+
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{midloc}
+% \begin{macro}{rightloc}
+% Variables for the middle xcoord and rightmost xcoord of a character.
+% \begin{macrocode}
+numeric midloc, rightloc;
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{stylus}
+% Define the pen.
+% \begin{macrocode}
+pickup pencircle xscaled px yscaled py;
+stylus:=savepen;
+
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{stugna}
+% Define the thicker pen for the E rune.
+% \begin{macrocode}
+pickup pencircle xscaled 2px yscaled 2px;
+stugna:=savepen;
+
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{beginglyph}
+% A macro to save some typing of beginchar arguments.
+% \begin{macrocode}
+def beginglyph(expr code, unit_width) =
+ beginchar(code, unit_width*ht#+2s#, ht#, 0);
+ midloc:=1/2w; rightloc:=(w-s);
+ pickup stylus enddef;
+
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{cmchar}
+% |cmchar| should precede each character
+% \begin{macrocode}
+let cmchar=\;
+
+% \end{macrocode}
+% \end{macro}
+%
+% Finally, input the file that does all the work.
+% \begin{macrocode}
+
+input vikglyph; % Runic glyphs
+
+end
+
+%</mfd>
+% \end{macrocode}
+%
+% \subsection{The glyph code}
+%
+% The following code generates the glyphs for the Runic font. The characters
+% are defined in the futhark ordering.
+%
+% \begin{macrocode}
+%<*maj>
+% VIKGLYPH.MF Program file for Runic font.
+%
+%
+% \end{macrocode}
+%
+% \begin{macro}{F}
+% The long-armed F
+% \begin{macrocode}
+cmchar "Runic letter F";
+beginglyph("F",0.6);
+z1 = (leftloc, 0.0h);
+z2 = (leftloc, 0.4h);
+z3 = (leftloc, 0.7h);
+z4 = (leftloc, 1.0h);
+z5 = (midloc, 1.0h);
+z6 = (rightloc, 1.0h);
+draw z1--z4;
+draw z2--z6;
+draw z3--z5;
+labels(1,2,3,4,5,6);
+endchar;
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{U}
+% The long-armed U
+% \begin{macrocode}
+cmchar "Runic letter U";
+beginglyph("U",0.6);
+z1 = (leftloc, 0.0h);
+z2 = (leftloc, 1.0h);
+z3 = (0.75rightloc, 0.65h);
+z4 = (rightloc, 0.0h);
+draw z1--z2--z3--z4;
+labels(1,2,3,4);
+endchar;
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{D}
+% The long-armed TH
+% \begin{macrocode}
+cmchar "Runic letter TH";
+beginglyph("D",0.4);
+z1 = (leftloc, 0.0h);
+z2 = (leftloc, 0.2h);
+z3 = (leftloc, 0.8h);
+z4 = (leftloc, 1.0h);
+z5 = (rightloc, 0.5h);
+draw z1--z4;
+draw z2--z5;
+draw z3--z5;
+labels(1,2,3,4,5);
+endchar;
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{O}
+% The long-armed O
+% \begin{macrocode}
+cmchar "Runic letter O";
+beginglyph("O",0.4);
+z1 = (leftloc, 0.0h);
+z2 = (leftloc, 0.4h);
+z3 = (leftloc, 0.7h);
+z4 = (leftloc, 1.0h);
+z5 = (rightloc, 0.5h);
+z6 = (rightloc, 0.2h);
+draw z1--z4;
+draw z2--z6;
+draw z3--z5;
+labels(1,2,3,4,5,6);
+endchar;
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{R}
+% The long-armed R
+% \begin{macrocode}
+cmchar "Runic letter R";
+beginglyph("R",0.6);
+z1 = (leftloc, 0.0h);
+z2 = (leftloc, 1.0h);
+z3 = (0.7(leftloc+rightloc), 0.75h);
+z4 = (0.3(leftloc+rightloc), 0.5h);
+z5 = (rightloc, 0.0h);
+draw z1--z2--z3--z4--z5;
+labels(1,2,3,4,5);
+endchar;
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{K}
+% The long-armed K
+% \begin{macrocode}
+cmchar "Runic letter K";
+beginglyph("K",0.4);
+z1 = (leftloc, 0.0h);
+z2 = (leftloc, 0.5h);
+z3 = (leftloc, 1.0h);
+z4 = (rightloc, 1.0h);
+draw z1--z3;
+draw z2--z4;
+labels(1,2,3,4);
+endchar;
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{G}
+% The long-armed G
+% \begin{macrocode}
+cmchar "Runic letter G";
+beginglyph("G",0.4);
+z1 = (leftloc, 0.0h);
+z2 = (leftloc, 0.5h);
+z3 = (leftloc, 1.0h);
+z4 = (rightloc, 1.0h);
+z5 = (midloc, 0.95h);
+draw z1--z3;
+draw z2--z4;
+draw z5;
+labels(1,2,3,4,5);
+endchar;
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{H}
+% The long-armed H
+% \begin{macrocode}
+cmchar "Runic letter H";
+beginglyph("H",0.4);
+z1 = (midloc, 0.0h);
+z2 = (midloc, 1.0h);
+z3 = (leftloc, 0.3h);
+z4 = (leftloc, 0.7h);
+z5 = (rightloc, 0.7h);
+z6 = (rightloc, 0.3h);
+draw z1--z2;
+draw z3--z5;
+draw z4--z6;
+labels(1,2,3,4,5,6);
+endchar;
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{N}
+% The long-armed N
+% \begin{macrocode}
+cmchar "Runic letter N";
+beginglyph("N",0.4);
+z1 = (midloc, 0.0h);
+z2 = (midloc, 1.0h);
+z4 = (leftloc, 0.7h);
+z6 = (rightloc, 0.3h);
+draw z1--z2;
+draw z4--z6;
+labels(1,2,4,6);
+endchar;
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{I}
+% The long-armed I
+% \begin{macrocode}
+cmchar "Runic letter I";
+beginglyph("I",0.4);
+z1 = (midloc, 0.0h);
+z2 = (midloc, 1.0h);
+draw z1--z2;
+labels(1,2);
+endchar;
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{E}
+% The long-armed E
+% \begin{macrocode}
+cmchar "Runic letter E";
+beginglyph("E",0.4);
+z1 = (midloc, 0.0h);
+z2 = (midloc, 1.0h);
+z3 = (midloc, 0.5h);
+draw z1--z2;
+pickup stugna
+draw z3;
+labels(1,2,3);
+endchar;
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{A}
+% The long-armed A
+% \begin{macrocode}
+cmchar "Runic letter A";
+beginglyph("A",0.4);
+z1 = (midloc, 0.0h);
+z2 = (midloc, 1.0h);
+z4 = (leftloc, 0.3h);
+z6 = (rightloc, 0.7h);
+draw z1--z2;
+draw z4--z6;
+labels(1,2,4,6);
+endchar;
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{S}
+% The long-armed S
+% \begin{macrocode}
+cmchar "Runic letter S";
+beginglyph("S",0.4);
+z1 = (rightloc, 0.0h);
+z2 = (rightloc, 0.7h);
+z3 = (leftloc, 0.3h);
+z4 = (leftloc, 1.0h);
+draw z1--z2--z3--z4;
+labels(1,2,3,4);
+endchar;
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{Z}
+% The long-armed mirrored S
+% \begin{macrocode}
+cmchar "Runic letter Z";
+beginglyph("Z",0.4);
+z1 = (leftloc, 0.0h);
+z2 = (leftloc, 0.7h);
+z3 = (rightloc, 0.3h);
+z4 = (rightloc, 1.0h);
+draw z1--z2--z3--z4;
+labels(1,2,3,4);
+endchar;
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{T}
+% The long-armed T
+% \begin{macrocode}
+cmchar "Runic letter T";
+beginglyph("T",0.4);
+z1 = (midloc, 0.0h);
+z2 = (midloc, 1.0h);
+z3 = (leftloc, 0.8h);
+z4 = (rightloc, 0.8h);
+draw z1--z2;
+draw z2--z3;
+draw z2--z4;
+labels(1,2,3,4);
+endchar;
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{B}
+% The long-armed B
+% \begin{macrocode}
+cmchar "Runic letter B";
+beginglyph("B",0.4);
+z1 = (leftloc, 0.0h);
+z2 = (leftloc, 0.5h);
+z3 = (leftloc, 1.0h);
+z4 = (rightloc, 0.75h);
+z5 = (rightloc, 0.25h);
+draw z1--z3;
+draw z3--z4--z2;
+draw z2--z5--z1;
+labels(1,2,3,4,5);
+endchar;
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{M}
+% The long-armed M
+% \begin{macrocode}
+cmchar "Runic letter M";
+beginglyph("M",0.6);
+z1 = (midloc, 0.0h);
+z2 = (midloc, 0.7h);
+z3 = (midloc, 1.0h);
+z4 = (leftloc, 1.0h);
+z5 = (rightloc, 1.0h);
+draw z1--z3;
+draw z2--z4;
+draw z2--z5;
+labels(1,2,3,4,5);
+endchar;
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{L}
+% The long-armed L
+% \begin{macrocode}
+cmchar "Runic letter L";
+beginglyph("L",0.4);
+z1 = (leftloc, 0.0h);
+z2 = (leftloc, 1.0h);
+z3 = (rightloc, 0.8h);
+draw z1--z2--z3;
+labels(1,2,3);
+endchar;
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{Y}
+% The long-armed Y
+% \begin{macrocode}
+cmchar "Runic letter Y";
+beginglyph("Y",0.6);
+z1 = (midloc, 0.0h);
+z2 = (midloc, 0.3h);
+z3 = (midloc, 1.0h);
+z4 = (leftloc, 0.0h);
+z5 = (rightloc, 0.0h);
+draw z1--z3;
+draw z2--z4;
+draw z2--z5;
+labels(1,2,3,4,5);
+endchar;
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{:}
+% The punctuation :
+% \begin{macrocode}
+cmchar "Runic letter :";
+beginglyph(":",0.2);
+z3 = (leftloc, 0.4h);
+z4 = (leftloc, 0.6h);
+z5 = (rightloc, 0.6h);
+z6 = (rightloc, 0.4h);
+draw z3--z5;
+draw z4--z6;
+labels(3,4,5,6);
+endchar;
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{.}
+% The punctuation .
+% \begin{macrocode}
+cmchar "Runic letter .";
+beginglyph(".",0.2);
+z3 = (midloc, 0.5h);
+draw z3;
+labels(3);
+endchar;
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{f}
+% The short-armed F
+% \begin{macrocode}
+cmchar "Runic letter F";
+beginglyph("f",0.3);
+z1 = (leftloc, 0.0h);
+z2 = (leftloc, 0.5h);
+z3 = (leftloc, 0.75h);
+z4 = (leftloc, 1.0h);
+z5 = (rightloc, 1.0h);
+z6 = (rightloc, 0.75h);
+draw z1--z4;
+draw z2--z6;
+draw z3--z5;
+labels(1,2,3,4,5,6);
+endchar;
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{u}
+% The short-armed U
+% \begin{macrocode}
+cmchar "Runic letter U";
+beginglyph("u",0.3);
+z1 = (leftloc, 0.0h);
+z2 = (leftloc, 1.0h);
+z4 = (rightloc, 0.0h);
+draw z1--z2--z4;
+labels(1,2,4);
+endchar;
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{d}
+% The short-armed TH
+% \begin{macrocode}
+cmchar "Runic letter TH";
+beginglyph("d",0.3);
+z1 = (leftloc, 0.0h);
+z2 = (leftloc, 0.2h);
+z3 = (leftloc, 0.8h);
+z4 = (leftloc, 1.0h);
+z5 = (rightloc, 0.5h);
+draw z1--z4;
+draw z2--z5;
+draw z3--z5;
+labels(1,2,3,4,5);
+endchar;
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{o}
+% The short-armed O
+% \begin{macrocode}
+cmchar "Runic letter O";
+beginglyph("o",0.3);
+z1 = (leftloc, 0.0h);
+z2 = (leftloc, 0.4h);
+z3 = (leftloc, 0.7h);
+z4 = (leftloc, 1.0h);
+z5 = (rightloc, 0.5h);
+z6 = (rightloc, 0.2h);
+draw z1--z4;
+draw z2--z6;
+draw z3--z5;
+labels(1,2,3,4,5,6);
+endchar;
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{r}
+% The short-armed R
+% \begin{macrocode}
+cmchar "Runic letter R";
+beginglyph("r",0.3);
+z1 = (leftloc, 0.0h);
+z2 = (leftloc, 1.0h);
+z3 = (0.7(leftloc+rightloc), 0.75h);
+z4 = (0.3(leftloc+rightloc), 0.5h);
+z5 = (rightloc, 0.0h);
+draw z1--z2--z3--z4--z5;
+labels(1,2,3,4,5);
+endchar;
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{k}
+% The short-armed K
+% \begin{macrocode}
+cmchar "Runic letter K";
+beginglyph("k",0.3);
+z1 = (leftloc, 0.0h);
+z2 = (leftloc, 0.5h);
+z3 = (leftloc, 1.0h);
+z4 = (rightloc, 1.0h);
+draw z1--z3;
+draw z2--z4;
+labels(1,2,3,4);
+endchar;
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{h}
+% The short-armed H
+% \begin{macrocode}
+cmchar "Runic letter H";
+beginglyph("h",0.2);
+z1 = (midloc, 0.0h);
+z2 = (midloc, 1.0h);
+z3 = (leftloc, 0.5h);
+z5 = (rightloc, 0.5h);
+draw z1--z2;
+draw z3--z5;
+labels(1,2,3,5);
+endchar;
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{n}
+% The short-armed N
+% \begin{macrocode}
+cmchar "Runic letter N";
+beginglyph("n",0.3);
+z1 = (leftloc, 0.0h);
+z2 = (leftloc, 1.0h);
+z4 = (leftloc, 0.6h);
+z6 = (rightloc, 0.3h);
+draw z1--z2;
+draw z4--z6;
+labels(1,2,4,6);
+endchar;
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{i}
+% The short-armed I
+% \begin{macrocode}
+cmchar "Runic letter I";
+beginglyph("i",0.2);
+z1 = (midloc, 0.0h);
+z2 = (midloc, 1.0h);
+draw z1--z2;
+labels(1,2);
+endchar;
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{a}
+% The short-armed A
+% \begin{macrocode}
+cmchar "Runic letter A";
+beginglyph("a",0.3);
+z1 = (leftloc, 0.0h);
+z2 = (leftloc, 1.0h);
+z4 = (leftloc, 0.4h);
+z6 = (rightloc, 0.7h);
+draw z1--z2;
+draw z4--z6;
+labels(1,2,4,6);
+endchar;
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{s}
+% The short-armed S
+% \begin{macrocode}
+cmchar "Runic letter S";
+beginglyph("s",0.2);
+z1 = (midloc, 0.5h);
+z2 = (midloc, 1.0h);
+draw z1--z2;
+labels(1,2);
+endchar;
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{t}
+% The short-armed T
+% \begin{macrocode}
+cmchar "Runic letter T";
+beginglyph("t",0.3);
+z1 = (rightloc, 0.0h);
+z2 = (rightloc, 1.0h);
+z3 = (leftloc, 0.8h);
+draw z1--z2;
+draw z2--z3;
+labels(1,2,3);
+endchar;
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{b}
+% The short-armed B
+% \begin{macrocode}
+cmchar "Runic letter B";
+beginglyph("b",0.3);
+z1 = (leftloc, 0.0h);
+z2 = (leftloc, 0.3h);
+z3 = (leftloc, 0.6h);
+z4 = (leftloc, 1.0h);
+z5 = (rightloc, 0.8h);
+z6 = (rightloc, 0.5h);
+draw z1--z4;
+draw z2--z6;
+draw z3--z5;
+labels(1,2,3,4,5,6);
+endchar;
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{m}
+% The short-armed M
+% \begin{macrocode}
+cmchar "Runic letter M";
+beginglyph("m",0.3);
+z1 = (midloc, 0.0h);
+z2 = (midloc, 1.0h);
+z3 = (leftloc, 1.0h);
+z4 = (rightloc, 1.0h);
+draw z1--z2;
+draw z3--z4;
+labels(1,2,3,4);
+endchar;
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{l}
+% The short-armed L
+% \begin{macrocode}
+cmchar "Runic letter L";
+beginglyph("l",0.3);
+z1 = (leftloc, 0.0h);
+z2 = (leftloc, 1.0h);
+z3 = (rightloc, 0.8h);
+draw z1--z2--z3;
+labels(1,2,3);
+endchar;
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{y}
+% The short-armed Y
+% \begin{macrocode}
+cmchar "Runic letter Y";
+beginglyph("y",0.2);
+z1 = (midloc, 0.0h);
+z2 = (midloc, 0.5h);
+draw z1--z2;
+labels(1,2);
+endchar;
+%</maj>
+% \end{macrocode}
+% \end{macro}
+%
+% \section{The font definition files} \label{sec:fd}
+%
+% \begin{macrocode}
+%<*fdot1>
+\DeclareFontFamily{OT1}{vik}{}
+ \DeclareFontShape{OT1}{vik}{m}{n}{ <-> vik10 }{}
+ \DeclareFontShape{OT1}{vik}{bx}{n}{ <-> sub vik/m/n }{}
+ \DeclareFontShape{OT1}{vik}{b}{n}{ <-> sub vik/m/n }{}
+ \DeclareFontShape{OT1}{vik}{m}{sl}{ <-> sub vik/m/n }{}
+ \DeclareFontShape{OT1}{vik}{m}{it}{ <-> sub vik/m/n }{}
+%</fdot1>
+% \end{macrocode}
+%
+%
+% \begin{macrocode}
+%<*fdt1>
+\DeclareFontFamily{T1}{vik}{}
+ \DeclareFontShape{T1}{vik}{m}{n}{ <-> vik10 }{}
+ \DeclareFontShape{T1}{vik}{bx}{n}{ <-> sub vik/m/n }{}
+ \DeclareFontShape{T1}{vik}{b}{n}{ <-> sub vik/m/n }{}
+ \DeclareFontShape{T1}{vik}{m}{sl}{ <-> sub vik/m/n }{}
+ \DeclareFontShape{T1}{vik}{m}{it}{ <-> sub vik/m/n }{}
+%</fdt1>
+% \end{macrocode}
+%
+% \section{The \Lpack{viking} package code} \label{sec:code}
+%
+% Announce the name and version of the package, which requires
+% \LaTeXe{}.
+% \begin{macrocode}
+%<*usc>
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{viking}[2003/08/12 v1.0 package for Runic fonts]
+% \end{macrocode}
+%
+%
+% \begin{macro}{\vikfamily}
+% Selects the futharc (Runic) font family in the OT1 encoding.
+% \begin{macrocode}
+\newcommand{\vikfamily}{\usefont{OT1}{vik}{m}{n}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\textvik}
+% Text command for the viking (Runic) font family.
+% \begin{macrocode}
+\DeclareTextFontCommand{\textvik}{\vikfamily}
+% \end{macrocode}
+% \end{macro}
+%
+% The end of this package.
+% \begin{macrocode}
+%</usc>
+% \end{macrocode}
+%
+%
+% \bibliographystyle{alpha}
+%
+% \begin{thebibliography}{GMS94}
+%
+% \bibitem[Eno98]{ENOKSEN98}
+% Lars Magnus Enoksen.
+% \newblock {\em Runor}.
+% \newblock Historiska Media, 1998.
+% \newblock ISBN 91-89442-55-5
+%
+% \bibitem[Bri83]{BRINK83}
+% Thorgunn Sn{\ae}dal Brink.
+% \newblock {\em Runstenar och runinskrifter i Sigtuna kommun}.
+% \newblock Bohusl{\"a}ningens Boktryckeri, 1983.
+% \newblock ISSN 0280-8439
+%
+% \bibitem[Jan84]{JANSSON84}
+% Sven B.\ F.\ Jansson.
+% \newblock {\em Runinskrifter i Sverige}.
+% \newblock Almqvist \& Wiksell, 1984.
+% \newblock ISBN 91-20-07030-6
+%
+% \bibitem[Gus91]{GUSTAVSON91}
+% Helmer Gustavson.
+% \newblock {\em Runstenar i Vallentuna}.
+% \newblock CEWE, 1991.
+% \newblock ISBN 91-971070-6-9
+%
+% \bibitem[GMS94]{GOOSSENS94}
+% Michel Goossens, Frank Mittelbach, and Alexander Samarin.
+% \newblock {\em The LaTeX Companion}.
+% \newblock Addison-Wesley Publishing Company, 1994.
+% \newblock ISBN 0-201-54199-8
+%
+%
+% \end{thebibliography}
+%
+%
+% \Finale
+% \PrintIndex
+%
+\endinput
+
+%% \CharacterTable
+%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
+%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
+%% Digits \0\1\2\3\4\5\6\7\8\9
+%% Exclamation \! Double quote \" Hash (number) \#
+%% Dollar \$ Percent \% Ampersand \&
+%% Acute accent \' Left paren \( Right paren \)
+%% Asterisk \* Plus \+ Comma \,
+%% Minus \- Point \. Solidus \/
+%% Colon \: Semicolon \; Less than \<
+%% Equals \= Greater than \> Question mark \?
+%% Commercial at \@ Left bracket \[ Backslash \\
+%% Right bracket \] Circumflex \^ Underscore \_
+%% Grave accent \` Left brace \{ Vertical bar \|
+%% Right brace \} Tilde \~}
diff --git a/fonts/archaic/viking/viking.ins b/fonts/archaic/viking/viking.ins
new file mode 100644
index 0000000000..399ae958fd
--- /dev/null
+++ b/fonts/archaic/viking/viking.ins
@@ -0,0 +1,85 @@
+%%
+%% viking.ins
+%% Copyright 2003 Uwe Zimmermann
+%%
+%% This program is provided under the terms of the
+%% LaTeX Project Public License distributed from CTAN
+%% archives in directory macros/latex/base/lppl.txt.
+%%
+%% Author: Uwe Zimmermann
+%% uwe.zimmermann@sciencetronics.com
+%%
+%% based on runic.ins by Peter R. Wilson
+%%
+%% This file will generate fast loadable files and documentation
+%% driver files from the doc files in this package when run through
+%% LaTeX or TeX.
+%%
+%% --------------- start of docstrip commands ------------------
+%%
+\def\batchfile{viking.ins}
+\input docstrip.tex
+\preamble
+
+ Copyright 2003 Uwe Zimmermann
+
+ This program is provided under the terms of the
+ LaTeX Project Public License distributed from CTAN
+ archives in directory macros/latex/base/lppl.txt.
+
+ Author: Uwe Zimmermann
+ uwe.zimmermann@sciencetronics.com
+
+ based on runic.ins by Peter R. Wilson
+
+\endpreamble
+
+\keepsilent
+
+%%% \Msg{*** Generating the driver file ***}
+%%% \generateFile{viking.drv}{t}{\from{viking.dtx}{driver}}
+
+\Msg{*** Generating the Metafont files ***}
+
+\usepostamble\empty
+\generateFile{vik10.mf}{t}{\from{viking.dtx}{up}}
+\generateFile{vikglyph.mf}{t}{\from{viking.dtx}{maj}}
+\generateFile{viktitle.mf}{t}{\from{viking.dtx}{mfd}}
+
+\Msg{*** Generating the Font Definition files ***}
+\usepostamble\defaultpostamble
+
+\generateFile{ot1vik.fd}{t}{\from{viking.dtx}{fdot1}}
+\generateFile{t1vik.fd}{t}{\from{viking.dtx}{fdt1}}
+
+\Msg{*** Generating the LaTeX2e package files ***}
+
+\generateFile{viking.sty}{t}{\from{viking.dtx}{usc}}
+
+\Msg{***********************************************************}
+\Msg{*}
+\Msg{* To finish the installation you have to move the following}
+\Msg{* files into directories searched by TeX:}
+\Msg{*}
+\Msg{* Move these into the font source area:}
+\Msg{* \space\space vik10.mf}
+\Msg{* \space\space vikglyph.mf}
+\Msg{* \space\space viktitle.mf}
+\Msg{*}
+\Msg{* Move these into the LaTeX macro area:}
+\Msg{* \space\space ot1vik.fd}
+\Msg{* \space\space t1vik.fd}
+\Msg{* \space\space viking.sty}
+\Msg{*}
+\Msg{*}
+\Msg{* To produce the documentation run the files ending with}
+\Msg{* `.dtx' through LaTeX.}
+\Msg{* Process any name.idx file by:}
+\Msg{* \space\space\space\space makeindex -s gind.ist name}
+\Msg{* Process any name.glo file by:}
+\Msg{* \space\space\space\space makeindex -s gglo.ist -o name.gls name.glo}
+\Msg{*}
+\Msg{* Happy TeXing}
+\Msg{***********************************************************}
+
+\endinput