From e0c6872cf40896c7be36b11dcc744620f10adf1d Mon Sep 17 00:00:00 2001
From: Norbert Preining <norbert@preining.info>
Date: Mon, 2 Sep 2019 13:46:59 +0900
Subject: Initial commit

---
 fonts/archaic/sarabian/sarabian.dtx | 1046 +++++++++++++++++++++++++++++++++++
 1 file changed, 1046 insertions(+)
 create mode 100644 fonts/archaic/sarabian/sarabian.dtx

(limited to 'fonts/archaic/sarabian/sarabian.dtx')

diff --git a/fonts/archaic/sarabian/sarabian.dtx b/fonts/archaic/sarabian/sarabian.dtx
new file mode 100644
index 0000000000..95d89748c4
--- /dev/null
+++ b/fonts/archaic/sarabian/sarabian.dtx
@@ -0,0 +1,1046 @@
+% \iffalse meta-comment
+%
+% sarabian.dtx
+%
+%  Author: Peter Wilson (Herries Press) herries dot press at earthlink dot net
+%  Copyright 1999--2005 Peter R. Wilson
+%
+%  This work may be distributed and/or modified under the
+%  conditions of the Latex Project Public License, either
+%  version 1.3 of this license or (at your option) any
+%  later version.
+%  The latest version of the license is in
+%    http://www.latex-project.org/lppl.txt
+%  and version 1.3 or later is part of all distributions of
+%  LaTeX version 2003/06/01 or later.
+%
+%  This work has the LPPL maintenance status "author-maintained".
+%
+%  This work consists of the files listed in the README file.
+%
+%<*driver>
+\documentclass[twoside]{ltxdoc}
+\usepackage{url}
+\usepackage[draft=false,
+            plainpages=false,
+            pdfpagelabels,
+            bookmarksnumbered,
+            hyperindex=false
+           ]{hyperref}
+\providecommand{\phantomsection}{}
+\OnlyDescription %% comment this out for the full glory
+\EnableCrossrefs
+\CodelineIndex
+\setcounter{StandardModuleDepth}{1}
+\makeatletter
+  \@mparswitchfalse
+  \DeclareTextCommand{\SAunder}{OT1}[1]%
+    {{\o@lign{\relax#1\crcr\hidewidth\sh@ft{29}%
+      \vbox to.2ex{\hbox{\char21}\vss}\hidewidth}}}
+\makeatother
+\renewcommand{\MakeUppercase}[1]{#1}
+\pagestyle{headings}
+\newenvironment{addtomargins}[1]{%
+  \begin{list}{}{%
+    \topsep 0pt%
+    \addtolength{\leftmargin}{#1}%
+    \addtolength{\rightmargin}{#1}%
+    \listparindent \parindent
+    \itemindent \parindent
+    \parsep \parskip}%
+  \item[]}{\end{list}}
+\begin{document}
+  \raggedbottom
+  \DocInput{sarabian.dtx}
+\end{document}
+%</driver>
+%
+% \fi
+%
+% \CheckSum{177}
+%
+% \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}{2000/09/30}{First public release}
+% \changes{v1.1}{2005/11/12}{Added map file}
+%
+% \def\fileversion{v1.0}
+% \def\filedate{2000/09/30}
+% \def\fileversion{v1.1}
+% \def\filedate{2005/11/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}}
+% \newcommand{\thisfont}{South Arabian}
+%
+% \title{The \Lpack{South Arabian} fonts\thanks{This
+%        file has version number \fileversion, last revised
+%        \filedate.}}
+%
+% \author{%
+% Peter Wilson\thanks{\texttt{herries dot press at earthlink dot net}}\\
+% Herries Press}
+%
+% \date{\filedate}
+% \maketitle
+% \begin{abstract}
+%    The \Lpack{sarabian} package provides a set of fonts, created by
+% Alan Stanier, and LaTeX files for typesetting the 
+% \thisfont{} alphabet which was used around 600~\BC{} in some of the
+% ancient kingdoms of Southern Arabia.
+% \end{abstract}
+% \tableofcontents
+%
+% 
+%
+% \section{Introduction}
+%
+% The Phoenician alphabet and characters is a direct ancestor of our modern day
+% Latin alphabet and fonts. 
+% The font presented here is one of a series of fonts intended to show how
+% the modern Latin alphabet has evolved from its original Phoenician form
+% to its present day appearance.
+% 
+% 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}.
+%
+% \subsection{An alphabetic tree}
+%
+%    Scholars are reasonably agreed that all the world's alphabets are descended
+% from a Semitic alphabet invented about 1600~\BC{} in the Middle 
+% East~\cite{DRUCKER95}. The word `Semitic' refers
+% to the family of languages used in the geographical area from
+% Sinai in the south, up the Mediterranean coast to Asia Minor in the north and
+% west to the valley of the Euphrates.
+%
+%    The Phoenician alphabet was stable by about 1100~\BC{} and the script was
+% written right to left. In earlier times the writing direction was variable, 
+% and so were
+% the shapes and orientation of the characters. The alphabet consisted of
+% 22 letters and they were named after things. For example, their first two 
+% letters were called \textit{aleph} (ox), and \textit{beth} (house). 
+% The Phoenician script had
+% only one case --- unlike our modern fonts which have both upper- and 
+% lower-cases. In modern terms the Phoenician abecedary was: \\
+% A B G D E Y Z H $\Theta$ I K L M N X O P ts Q R S T \\
+% where the `Y' (\textit{vau}) character was sometimes written as `F', and
+% `ts' stands for the \textit{tsade} character.
+%
+%    The Greek alphabet is one of the descendants of the Phoenician alphabet;
+% another was Aramaic which is the ancestor of the Arabic, Persian and Indian 
+% scripts.
+% Initially Greek was written right to left but around the 6th C~\BC{} became 
+% \textit{boustrophedron}, meaning that the lines 
+% alternated in direction. At about 500~\BC{} the writing direction stabilised 
+% as left to 
+% right. The Greeks modified the Phoenician alphabet to match the vocalisation
+% of their language. They kept the Phoenician names of the letters, suitably
+% `greekified', so \textit{aleph} became the familar \textit{alpha} and 
+% \textit{beth} became \textit{beta}. At this
+% point the names of the letters had no meaning. Their were several variants
+% of the Greek character glyphs until they were finally fixed in Athens in
+% 403~\BC.
+% The Greeks did not develop a lower-case 
+% script until about 600--700~\AD.
+%
+%    The Etruscans based their alphabet on the Greek one, and again modified it.
+% However, the Etruscans wrote right to left, so their borrowed characters are 
+% mirror images of the original Greek ones. Like the Phoenicians, the Etruscan
+% script consisted of only one case; they died out before ever needing a
+% lower-case script. The Etruscan script was used up until the first century 
+% \AD, even though the Etruscans themselves had dissapeared by that time.
+% 
+%
+%    In turn, the Romans based their alphabet on the Etruscan one, but as they 
+% wrote left to right, the characters were again mirrored (although the early
+% Roman inscriptions are boustrophedron). 
+%
+%    As the English alphabet is descended from the Roman alphabet
+% it has a pedigree of some three and a half thousand years.
+%
+% \section{The \Lpack{sarabian} package} \label{sec:usc}
+%
+%    The \thisfont{} alphabet provided by this package is a descendent
+% of the Proto-Siniatic or Proto-Canaanite scripts~\cite{HEALEY90}.
+% It was used for about 1000 years, from roughly 600~\BC, in Southern
+% Arabia.
+%
+%    The alphabet consisted of 29 letters, but the ordering has no
+% relationship to either the Semitic alphabets nor our modern day one.
+% Table~\ref{tab} lists, in \thisfont{} alphabetic order, the transliterated
+% values of the script. Note that there are many consonontal sounds
+% represented that we no longer use. These are the letters with diacritics.
+%
+% \begin{table} 
+% \centering
+% \caption{The \thisfont{} alphabet}\label{tab}
+% \begin{tabular}{ccl} \hline
+%  Value & ASCII & Command \\ \hline
+% \textit{h}     & h & |\SAh| \\
+% \textit{l}     & l & |\SAl| \\
+% \textit{\d{h}} & H & |\SAhd| \\
+% \textit{m}     & m & |\SAm| \\
+% \textit{q}     & q & |\SAq| \\
+% \textit{w}     & w & |\SAw| \\
+% \textit{\v{s}} & S & |\SAsv| \\
+% \textit{r}     & r & |\SAr| \\
+% \textit{b}     & b & |\SAb| \\
+% \textit{t}     & t & |\SAt| \\
+% \textit{s}     & s & |\SAs| \\
+% \textit{k}     & k & |\SAk| \\
+% \textit{n}     & n & |\SAn| \\
+% \textit{\SAunder{h}}& I  & |\SAhu| \\
+% \textit{\'{s}} & X & |\SAsa| \\
+% \textit{f}     & f & |\SAf| \\
+% \textit{'}     & ' a  & |\SArq| |\SAa| \\
+% \textit{`}     & ` o  & |\SAlq| |\SAo| \\
+% \textit{\d{d}} & B & |\SAdd| \\
+% \textit{g}     & g & |\SAg| \\
+% \textit{d}     & d & |\SAd| \\
+% \textit{\'{g}} & G & |\SAga| \\
+% \textit{\d{t}} & T & |\SA|td \\
+% \textit{z}     & z & |\SAz| \\
+% \textit{\b{d}} & D & |\SAdb| \\
+% \textit{y}     & y & |\SAy| \\
+% \textit{\b{t}} & J & |\SAtb| \\
+% \textit{\d{s}} & x & |\SAsd| \\
+% \textit{\d{z}} & Z & |\SAzd| \\
+% \hline
+% \end{tabular}
+% \end{table}
+% 
+%    The font provided was developed originally by Alan Stanier of
+% Essex University. I have made very minor alterations to make it
+% easier to use with the LaTeX font selection system.
+%
+%
+% \DescribeMacro{\sarabfamily}
+%    This command selects the \thisfont{} font family. The family name is |sarab|.
+%
+% \DescribeMacro{\textsarab}
+% The command |\textsarab{|\meta{text}|}| typesets \meta{text} in the
+% \thisfont{} font.
+%
+%    I have provided two means of accessing the \thisfont{} glyphs:
+% (a) by ASCII characters, and (b) via commands. These are shown
+% in Table~\ref{tab}.
+%
+% \DescribeMacro{\translitsarab}
+% The command |\translitsarab{|\meta{commands}|}| will typeset the transliteration
+% of the \thisfont{} character commands (those in the third column of
+% Table~\ref{tab}).
+%
+% \DescribeMacro{\translitsarabfont}
+%     The font used for the transliteration is defined by this macro,
+% which is initialised to an italic font (i.e., |\itshape|).
+%     
+% \StopEventually{
+% \bibliographystyle{alpha}
+% \begin{thebibliography}{GMS94}
+%
+% \bibitem[Dav97]{DAVIES97}
+% W. V. Davies.
+% \newblock \emph{Reading the Past: Egyptian Hieroglyphs}.
+% \newblock University of California Press/British Museum, 1997.
+% \newblock (ISBN 0-520-06287-6)
+%
+% \bibitem[Dru95]{DRUCKER95}
+% Johanna Drucker.
+% \newblock \emph{The Alphabetic Labyrinth}.
+% \newblock Thames and Hudson, 1995.
+%
+% \bibitem[Fir93]{FIRMAGE93}
+% Richard A.~Firmage.
+% \newblock \emph{The Alphabet Abecedarium}.
+% \newblock David R.~Goodine, 1993.
+%
+%
+% \bibitem[GMS94]{GOOSSENS94}
+% Michel Goossens, Frank Mittelbach, and Alexander Samarin.
+% \newblock \emph{The LaTeX Companion}.
+% \newblock Addison-Wesley Publishing Company, 1994.
+%
+% \bibitem[Hea90]{HEALEY90}
+% John F.~Healey.
+% \newblock \emph{Reading the Past: The Early Alphabet}.
+% \newblock University of California Press/British Museum, 1990.
+% \newblock (ISBN 0-520-07309-6)
+%
+% \end{thebibliography}
+% \PrintIndex
+% }
+%
+%
+% \section{The Metafont code} \label{sec:mf}
+%
+%    The code is all in a single file. It is principally Alan Stanier's code, except
+% that I have made a few slight modifications to make it easier to use with
+% the automatic font generation usually employed by modern LaTeX systems.
+%
+%    Start off by naming the file and including Stanier's comments.
+% 
+%    \begin{macrocode}
+%<*up>
+%%% SARAB10.MF  South Arabian font 10 point design size.
+
+%%% This font was designed by Alan M Stanier      ( alan@essex.ac.uk ),
+%%% at Essex University Computer Service, Colchester, Essex CO4 3EA. England.
+%%%
+%%% If you make significant additions or improvements to the font,
+%%% please email me an updated version
+%%%
+%%% This font was used for several languages in Southern Arabia in the
+%%% second millenium BC
+%%%
+
+%    \end{macrocode}
+%
+%    The next part of the original file looked like this:
+% \begin{verbatim}
+% 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;
+% height#:=mg*10pt#;
+% width#:=mg*7pt#;
+% narrow#:=mg*5.3pt#;
+% \end{verbatim}
+% but this didn't seem to appeal to MetaFont very much, so I replaced it with:
+%    \begin{macrocode}
+mode_setup;
+font_identifier:="sarabian"; 
+font_size:= 10pt#;           % nominally, a 10pt font
+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
+
+numeric pmg; pmg:=0.8;            % a scale factor
+
+xpensize#:=pmg*0.8pt;
+ypensize#:=pmg*0.2pt;
+height#:=pmg*10pt#;
+width#:=pmg*7pt#;
+narrow#:=pmg*5.3pt#;
+
+mg#:= pmg*0.3pt#;
+define_pixels(mg);
+
+numeric cscale;                   % scale factor for original circles
+cscale# := mg#;
+define_pixels(cscale);
+let cmchar=\;
+
+%    \end{macrocode}
+% Now continue with the original code.
+%    \begin{macrocode}
+
+define_pixels(height,width,narrow);
+def getpen = pickup pencircle xscaled xpensize# yscaled ypensize# rotated 30 enddef;
+
+%    \end{macrocode}
+% That finishes the simple set up. The rest of the code is for creating
+% the character glyphs. It is Stanier's code, except that where he had a
+% statement like: \\
+% |draw fullcircle scaled 10 shifted(...);| \\
+% I modifed it to: \\
+% |draw fullcircle scaled(10cscale) shifted(...);| \\
+% I also put a |cmchar "comment";| before each glyph code. 
+
+% Note that the
+% encoding I use is not the same as Stanier's but does match the encoding
+% I use for my other archaic fonts.
+%
+% \begin{macro}{h}
+% The \thisfont{} letter \textit{h}.
+%    \begin{macrocode}
+ 
+cmchar "letter h";
+beginchar("h",width#,height#,0);
+ getpen;
+  draw (0,mg*30){down} .. (mg*7.5,mg*15){right} .. (mg*15,mg*30){up};
+  draw (mg*7.5,mg*15) -- (mg*7.5,0);
+endchar;
+
+%    \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{l}
+% The \thisfont{} letter \textit{l}.
+%    \begin{macrocode}
+
+cmchar "letter l";
+beginchar("l",width#,height#,0);
+ getpen;
+ draw (0,mg*15) -- (mg*15,mg*30) -- (mg*15,0);
+endchar;
+
+%    \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{H}
+% The \thisfont{} letter \textit{\d{h}}.
+%    \begin{macrocode}
+
+cmchar "letter h sub dot (coded as H)";
+beginchar("H",width#,height#,0);
+ getpen;
+ draw (0,mg*30){down} .. (mg*7.5,mg*15){right} .. (mg*15,mg*30){up};
+ draw (mg*7.5,mg*30) -- (mg*7.5,0);
+endchar;
+
+%    \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{m}
+% The \thisfont{} letter \textit{m}.
+%    \begin{macrocode}
+
+cmchar "letter m";
+beginchar("m",width#,height#,0);
+ getpen;
+ draw (mg*15,mg*30) -- (mg*15,0) -- (0,mg*7.5) -- (mg*15,mg*15) --
+	(0,mg*22.5) -- (mg*15,mg*30);
+endchar;
+
+%    \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{q}
+% The \thisfont{} letter \textit{q}.
+%    \begin{macrocode}
+
+cmchar "letter q";
+beginchar("q",narrow#,height#,0);
+ getpen;
+ draw fullcircle scaled (10cscale) shifted(mg*5,mg*15);
+ draw (mg*5,mg*20) -- (mg*5,mg*30);
+ draw (mg*5,mg*10) -- (mg*5,0);
+endchar;
+
+%    \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{w}
+% The \thisfont{} letter \textit{w}.
+%    \begin{macrocode}
+
+cmchar "letter w";
+beginchar("w",width#,height#,0);
+ getpen;
+ draw fullcircle scaled (15cscale) shifted(mg*7.5,mg*15);
+ draw (mg*7.5,mg*7.5) -- (mg*7.5,mg*22.5);
+endchar;
+
+%    \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{S}
+% The \thisfont{} letter \textit{\v{s}}.
+%    \begin{macrocode}
+
+cmchar "letter s sup v (coded as S)";
+beginchar("S",width#,height#,0);
+ getpen;
+ draw (0,0) -- (0,mg*15) -- (mg*15,mg*15) -- (mg*15,0);
+ draw (mg*7.5,mg*15) -- (mg*7.5,mg*30);
+endchar;
+
+%    \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{r}
+% The \thisfont{} letter \textit{r}.
+%    \begin{macrocode}
+
+cmchar "letter r";
+beginchar("r",width#,height#,0);
+ getpen;
+ draw (0,mg*30){right} .. (mg*15,mg*15){down} .. (0,0){left};
+endchar;
+
+%    \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{b}
+% The \thisfont{} letter \textit{b}.
+%    \begin{macrocode}
+
+cmchar "letter b";
+beginchar("b",width#,height#,0);
+ getpen;
+ draw (0,0) -- (0,mg*30) -- (mg*15,mg*30) -- (mg*15,0);
+endchar;
+
+%    \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{t}
+% The \thisfont{} letter \textit{t}.
+%    \begin{macrocode}
+
+cmchar "letter t";
+beginchar("t",width#,height#,0);
+ getpen;
+ draw (0,0) -- (mg*15,mg*30);
+ draw (0,mg*30) -- (mg*15,0);
+endchar;
+
+%    \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{s}
+% The \thisfont{} letter \textit{s}.
+%    \begin{macrocode}
+
+cmchar "letter s";
+beginchar("s",width#,height#,0);
+ getpen;
+ draw (0,0) -- (mg*15,mg*15) -- (0,mg*30);
+ draw (mg*15,0) -- (0,mg*15) -- (mg*15,mg*30);
+endchar;
+
+%    \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{k}
+% The \thisfont{} letter \textit{k}.
+%    \begin{macrocode}
+
+cmchar "letter k";
+beginchar("k",width#,height#,0);
+ getpen;
+ draw (0,0) -- (0,mg*15) -- (mg*15,mg*15) -- (mg*15,0);
+ draw (0,mg*15) -- (mg*7.5,mg*30);
+endchar;
+
+%    \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{n}
+% The \thisfont{} letter \textit{n}.
+%    \begin{macrocode}
+
+cmchar "letter n";
+beginchar("n",width#,height#,0);
+ getpen;
+ draw (0,mg*30) -- (0,mg*15) -- (mg*15,mg*15) -- (mg*15,0);
+endchar;
+
+%    \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{I}
+% The \thisfont{} letter \textit{$h_u$}.
+%    \begin{macrocode}
+
+cmchar "letter h sub u (coded as H)";
+%%beginchar("1",width#,height#,0);
+beginchar("I",width#,height#,0);
+ getpen;
+ draw (0,mg*30){down} .. (mg*7.5,mg*15){right} .. (mg*15,mg*30){up};
+ draw (mg*7.5,mg*15) -- (mg*7.5,mg*7.5) -- (mg*15,mg*7.5) -- (mg*15,0);
+endchar;
+
+%    \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{X}
+% The \thisfont{} letter \textit{\'{s}}.
+%    \begin{macrocode}
+
+cmchar "letter s acute (coded as X)";
+%%beginchar("2",width#,height#,0);
+beginchar("X",width#,height#,0);
+ getpen;
+ draw (0,0) -- (mg*15,mg*7.5) -- (0,mg*15) --
+	(mg*15,mg*22.5) -- (0,mg*30);
+endchar;
+
+%    \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{f}
+% The \thisfont{} letter \textit{f}.
+%    \begin{macrocode}
+
+cmchar "letter f";
+beginchar("f",width#,height#,0);
+ getpen;
+ draw (0,mg*15) -- (mg*7.5,0) -- (mg*15,mg*15) -- (mg*7.5,mg*30)
+	-- (0,mg*15);
+endchar;
+
+%    \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{`}
+% The \thisfont{} letter \textit{`} (semitic ayin).
+%    \begin{macrocode}
+
+cmchar "letter `";
+beginchar("`",width#,height#,0);
+ getpen;
+ draw (0,0) -- (0,mg*15) -- (mg*15,mg*15) -- (mg*15,0);
+ draw (mg*7.5,mg*15) -- (mg*7.5,mg*22.5) -- (0,mg*22.5) -- (0,mg*30);
+endchar;
+
+%    \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{o}
+% The \thisfont{} letter \textit{`} (semitic ayin).
+%    \begin{macrocode}
+
+cmchar "letter ` (coded as o)";
+beginchar("o",width#,height#,0);
+ getpen;
+ draw (0,0) -- (0,mg*15) -- (mg*15,mg*15) -- (mg*15,0);
+ draw (mg*7.5,mg*15) -- (mg*7.5,mg*22.5) -- (0,mg*22.5) -- (0,mg*30);
+endchar;
+
+%    \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{'}
+% The \thisfont{} letter \textit{'} (semitic aleph).
+%    \begin{macrocode}
+
+cmchar "letter '";
+beginchar("'",narrow#,height#,0);
+ getpen;
+ draw fullcircle scaled (10cscale) shifted(mg*5,mg*10);
+endchar;
+
+%    \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{a}
+% The \thisfont{} letter \textit{'} (semitic aleph).
+%    \begin{macrocode}
+
+cmchar "letter ' (coded as a)";
+beginchar("a",narrow#,height#,0);
+ getpen;
+ draw fullcircle scaled (10cscale) shifted(mg*5,mg*10);
+endchar;
+
+%    \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{B}
+% The \thisfont{} letter \textit{\d{d}}.
+%    \begin{macrocode}
+
+cmchar "letter d sub dot (coded as B)";
+%%beginchar("D",width#,height#,0);
+beginchar("B",width#,height#,0);
+ getpen;
+ draw (0,0) -- (mg*15,0) -- (mg*15,mg*30) -- (0,mg*30) -- (0,0);
+ draw (0,mg*15) -- (mg*15,mg*15);
+endchar;
+
+%    \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{g}
+% The \thisfont{} letter \textit{g}.
+%    \begin{macrocode}
+
+cmchar "letter g";
+beginchar("g",width#,height#,0);
+ getpen;
+ draw (0,mg*30) -- (mg*15,mg*30) -- (mg*15,0);
+endchar;
+
+%    \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{d}
+% The \thisfont{} letter \textit{d}.
+%    \begin{macrocode}
+
+cmchar "letter d";
+beginchar("d",narrow#,height#,0);
+ getpen;
+ draw (0,mg*10) -- (0,mg*20) -- (mg*10,mg*15) -- (0,mg*10);
+ draw (mg*10,0) -- (mg*10,mg*30);
+endchar;
+
+%    \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{G}
+% The \thisfont{} letter \textit{\'{g}}.
+%    \begin{macrocode}
+
+cmchar "letter g acute (coded as G)";
+beginchar("G",width#,height#,0);
+ getpen;
+ draw (0,mg*25) -- (mg*5,mg*30) -- (mg*15,mg*30) -- (mg*15,0);
+ draw (mg*5,0) -- (mg*5,mg*30);
+endchar;
+
+%    \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{T}
+% The \thisfont{} letter \textit{\d{t}}.
+%    \begin{macrocode}
+
+cmchar "letter t sub dot (coded as T)";
+beginchar("T",width#,height#,0);
+ getpen;
+ draw (0,0) -- (mg*15,0) -- (mg*15,mg*30) -- (0,mg*30) -- (0,0);
+ draw (mg*7.5,0) -- (mg*7.5,mg*30);
+endchar;
+
+%    \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{z}
+% The \thisfont{} letter \textit{z}.
+%    \begin{macrocode}
+
+cmchar "letter z";
+beginchar("z",width#,height#,0);
+ getpen;
+ draw (0,0) -- (mg*15,mg*30) -- (0,mg*30) --
+	(mg*15,0) -- (0,0);
+endchar;
+
+%    \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{D}
+% The \thisfont{} letter \textit{\b{d}}.
+%    \begin{macrocode}
+
+cmchar "letter d sub bar (coded as D)";
+%%beginchar("5",width#,height#,0);
+beginchar("D",width#,height#,0);
+ getpen;
+ draw (0,0) -- (0,mg*30);
+ draw (mg*15,0) -- (mg*15,mg*30);
+ draw (0,mg*12.5) -- (mg*15,mg*12.5);
+ draw (0,mg*17.5) -- (mg*15,mg*17.5);
+endchar;
+
+%    \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{y}
+% The \thisfont{} letter \textit{y}.
+%    \begin{macrocode}
+
+cmchar "letter y";
+beginchar("y",narrow#,height#,0);
+ getpen;
+ draw fullcircle scaled (10cscale) shifted(mg*5,mg*25);
+ draw (mg*5,mg*20) -- (mg*5,0);
+endchar;
+
+%    \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{J}
+% The \thisfont{} letter \textit{\b{t}}.
+%    \begin{macrocode}
+
+cmchar "letter t sub bar (coded as J)";
+%%beginchar("4",narrow#,height#,0);
+beginchar("J",narrow#,height#,0);
+ getpen;
+ draw fullcircle scaled (10cscale) shifted(mg*5,mg*25);
+ draw (mg*5,mg*20) -- (mg*5,mg*10);
+ draw fullcircle scaled (10cscale) shifted(mg*5,mg*5);
+endchar;
+
+%    \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{x}
+% The \thisfont{} letter \textit{\d{s}}.
+%    \begin{macrocode}
+
+cmchar "letter s sub dot (coded as x)";
+%%beginchar("3",narrow#,height#,0);
+beginchar("x",narrow#,height#,0);
+ getpen;
+ draw fullcircle scaled (10cscale) shifted(mg*5,mg*25);
+ draw (mg*5,mg*20) -- (mg*5,mg*10);
+ draw (0,0){up} .. (mg*5,mg*10){right} .. (mg*10,0){down};
+endchar;
+
+%    \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{Z}
+% The \thisfont{} letter \textit{\d{z}}.
+%    \begin{macrocode}
+
+cmchar "letter z sub dot (coded as Z)";
+beginchar("Z",narrow#,height#,0);
+ getpen;
+ draw fullcircle scaled (10cscale) shifted(mg*5,mg*25);
+ draw (mg*5,mg*20) -- (mg*5,0);
+ draw (mg*5,mg*10){right} .. (mg*10,0){down};
+endchar;
+
+%    \end{macrocode}
+% \end{macro}
+%
+% The end of the glyphs, and file.
+%    \begin{macrocode}
+
+end
+
+%</up>
+%    \end{macrocode}
+%
+%
+%
+%
+% \section{The font definition files} \label{sec:fd}
+%
+%    \begin{macrocode}
+%<*fdot1>
+\DeclareFontFamily{OT1}{sarab}{}
+  \DeclareFontShape{OT1}{sarab}{m}{n}{ <-> sarab10 }{}
+  \DeclareFontShape{OT1}{sarab}{bx}{n}{ <-> sub sarab/m/n }{}
+  \DeclareFontShape{OT1}{sarab}{b}{n}{ <-> sub sarab/m/n }{}
+  \DeclareFontShape{OT1}{sarab}{m}{sl}{ <-> sub sarab/m/n }{}
+  \DeclareFontShape{OT1}{sarab}{m}{it}{ <-> sub sarab/m/n }{}
+%</fdot1>
+%    \end{macrocode}
+%
+%
+%    \begin{macrocode}
+%<*fdt1>
+\DeclareFontFamily{T1}{sarab}{}
+  \DeclareFontShape{T1}{sarab}{m}{n}{ <-> sarab10 }{}
+  \DeclareFontShape{T1}{sarab}{bx}{n}{ <-> sub sarab/m/n }{}
+  \DeclareFontShape{T1}{sarab}{b}{n}{ <-> sub sarab/m/n }{}
+  \DeclareFontShape{T1}{sarab}{m}{sl}{ <-> sub sarab/m/n }{}
+  \DeclareFontShape{T1}{sarab}{m}{it}{ <-> sub sarab/m/n }{}
+%</fdt1>
+%    \end{macrocode}
+%
+% \section{The \Lpack{sarabian} package code} \label{sec:code}
+%
+%    Announce the name and version of the package, which requires
+% \LaTeXe{}.
+%    \begin{macrocode}
+%<*usc>
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{sarabian}[2005/11/12 v1.1 package for South Arabian fonts]
+%    \end{macrocode}
+%
+%
+% \begin{macro}{\sarabfamily}
+%    Selects the font family in the T1 encoding.
+% \changes{v1.1}{2005/11/12}{Changed default encoding from OT1 to T1}
+%    \begin{macrocode}
+\newcommand{\sarabfamily}{\usefont{T1}{sarab}{m}{n}}
+%    \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\textsarab}
+%    Text command for the font family.
+%    \begin{macrocode}
+\DeclareTextFontCommand{\textsarab}{\sarabfamily}
+
+%    \end{macrocode}
+% \end{macro}
+%
+%    The commands for the signs.
+%    \begin{macrocode}
+\chardef\SArq=`'
+\chardef\SAa=`a
+\chardef\SAb=`b
+\chardef\SAg=`g
+\chardef\SAd=`d
+\chardef\SAh=`h
+\chardef\SAw=`w
+\chardef\SAz=`z
+\chardef\SAhd=`H
+\chardef\SAtd=`T
+\chardef\SAy=`y
+\chardef\SAk=`k
+\chardef\SAl=`l
+\chardef\SAm=`m
+\chardef\SAn=`n
+\chardef\SAs=`s
+\chardef\SAf=`f
+\chardef\SAlq=``
+\chardef\SAo=`o
+\chardef\SAsd=`x
+\chardef\SAq=`q
+\chardef\SAr=`r
+\chardef\SAsv=`S
+\chardef\SAt=`t
+\chardef\SAhu=`I
+\chardef\SAdb=`D
+\chardef\SAtb=`J
+\chardef\SAga=`G
+\chardef\SAzd=`Z
+\chardef\SAsa=`X
+\chardef\SAdd=`B
+
+%    \end{macrocode}
+%
+% \begin{macro}{translitsarab}
+% \begin{macro}{translitsarabfont}
+%  |\translitsarab{|\meta{char-commands}|}| typesets a transliteration
+% of the \thisfont{} character commands in the |\translisarabfont| font.
+%    \begin{macrocode}
+\newcommand{\translitsarab}[1]{{%
+  \@translitSA\translitsarabfont #1}}
+\newcommand{\translitsarabfont}{\itshape}
+
+%    \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\SAunder}
+%  We need a copmmand to put a small U shaped cup under a letter.
+%    \begin{macrocode}
+\DeclareTextCommand{\SAunder}{OT1}[1]%
+  {{\o@lign{\relax#1\crcr\hidewidth\sh@ft{29}%
+    \vbox to.2ex{\hbox{\char21}\vss}\hidewidth}}}
+
+%    \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\@translitSA}
+%  This command redefines all the character producing commands for 
+% use within |\translitsarab|. There must be no spaces in the
+% definition.
+%    \begin{macrocode}
+\newcommand{\@translitSA}{%
+\def\SArq{'}%
+\def\SAa{'}%
+\def\SAb{b}%
+\def\SAg{g}%
+\def\SAd{d}%
+\def\SAh{h}%
+\def\SAw{w}%
+\def\SAz{z}%
+\def\SAhd{\d{h}}%
+\def\SAtd{\d{t}}%
+\def\SAy{y}%
+\def\SAk{k}%
+\def\SAl{l}%
+\def\SAm{m}%
+\def\SAn{n}%
+\def\SAs{s}%
+\def\SAf{f}%
+\def\SAlq{`}%
+\def\SAo{`}%
+\def\SAsd{\d{s}}%
+\def\SAq{q}%
+\def\SAr{r}%
+\def\SAsv{\v{s}}%
+\def\SAt{t}
+\def\SAhu{\SAunder{h}}%
+\def\SAdb{\b{d}}%
+\def\SAtb{\b{t}}%
+\def\SAga{\'{g}}%
+\def\SAzd{\d{z}}%
+\def\SAsa{\'{s}}%
+\def\SAdd{\d{d}}%
+}
+
+%    \end{macrocode}
+% \end{macro}
+%
+%
+%
+%    The end of this package.
+%    \begin{macrocode}
+%</usc>
+%    \end{macrocode}
+%
+% \section{Map file}
+%
+% A very short map file.
+% \changes{v1.1}{2005/11/12}{Added map file}
+%
+%    \begin{macrocode}
+%<*map>
+sarab10      Archaic-South-Arabian    <sarab10.pfb
+%</map>
+%    \end{macrocode}  
+%
+%
+% \Finale
+%
+\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         \~}
+
+
-- 
cgit v1.2.3

