% \iffalse meta-comment % % phoenician.dtx % Copyright 1999 Peter R. Wilson % % 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: Peter Wilson (CUA and NIST) (now at: peter.r.wilson@boeing.com) % % %<*driver> \documentclass{ltxdoc} \EnableCrossrefs \CodelineIndex \setcounter{StandardModuleDepth}{1} \begin{document} \DocInput{phoenician.dtx} \end{document} % % % \fi % % \CheckSum{33} % % \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}{1999/03/14}{First public release} % % \def\fileversion{v1.0} % \def\filedate{1999/03/14} % \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{Phoenician} fonts\thanks{This % file has version number \fileversion, last revised % \filedate.}} % % \author{% % Peter Wilson\\ % Catholic University of America \\ % Now at {\tt peter.r.wilson@boeing.com} % } % \date{\filedate} % \maketitle % \begin{abstract} % The \Lpack{phoenician} package provides a set of fonts for the Phoenician % alphabet. % \end{abstract} % \tableofcontents % % \StopEventually{} % % % % \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{phoenician} package} \label{sec:usc} % % The Phoenician alphabet consisted of 22 letters. % The Phoenician font as provided here consists of 23 letter shapes % as there appears to be two forms of the letter \textit{vau}. % I have used infromation from Johanna Drucker~\cite{DRUCKER95} and % Richard Firmage~\cite{FIRMAGE93}, as well as the % \textit{Encyclopedia Brittanica}, in deciding on the letter shapes. % % % \DescribeMacro{\TTheta} % \DescribeMacro{\TXi} % \DescribeMacro{\Tsade} % Many of the Phoenician characters % have a direct correspondence with the modern Latin alphabet. % For those characters that have a direct correspondance I have mapped % the Phoenician letter to the uppercase Latin letter. % For those Phoenician characters % have no Latin parallel but do have a Greek parallel, I have provided commands % similar to the normal \LaTeX{} commands for greek, but with a `T' prefix. % For example, |\TTheta| for the Phoenician version of the Greek Theta % ($\Theta$). (The initial `T' stands for `Text' as the commands can be % used outside math mode). The Phoenician \textit{tsade} is accessed via % the |\Tsade| command. % % The letter sequence % for the Phoenician alphabet in this mapping is:\\ % |A B G D E F (or V) Z H \TTheta I K L M N \TXi O P \Tsade Q R S T|. % % \DescribeMacro{\tTheta} % \DescribeMacro{\tXi} % \DescribeMacro{\tsade} % I have also provided a font for right-to-left writing, where the characters % appear as mirror images. This reversed font is accessible by typing the % lower-case Latin characters rather than the upper-case ones (or the other % commands as for the left-to-right font, but starting with a lower-case version % of the initial letter of the command). % The abecedary as the Phoenicians would have written it (right to left) % in this form is: \\ % |t s r q \tsade p o \tXi n m l k i \tTheta h z f (or v) e d g b a|. % % % \DescribeMacro{\phncfamily} % This command selects the Phoenician font family. The family name is |phnc|. % % \DescribeMacro{\textphnc} % The command |\textphnc{|\meta{text}|}| typesets \meta{text} in the % Phoenician 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> %%% PHNC10.MF Computer Phoenician font 10 point design size. % \end{macrocode} % Specify the font size. % \begin{macrocode} font_identifier:="phoenician"; 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 Phoenician font. % \begin{macrocode} input phnctitle %% switch to the driver file---Phoenician title end % % \end{macrocode} % % % \subsection{The driver file} % % Announce the file and switch into Metafont mode % % \begin{macrocode} %<*mfd> % This is PHNCTITLE.MF. It makes the short Phoenician font. font_coding_scheme:="Phoenician 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}{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 phncglyph; % Phoenician glyphs end % % \end{macrocode} % % \subsection{The glyph code} % % The following code generates the glyphs for the Phoenician font. The characters % are defined in the Phoenician alphabetic ordering. % % \begin{macrocode} %<*maj> % PHNCGLYPH.MF Program file for Phoenician font. % % % \end{macrocode} % % \begin{macro}{A} % The Phoenician \textit{alpeh} (ox), which is like our A but tilted. % \begin{macrocode} cmchar "Phoenician letter A"; beginglyph("A",0.6); x3=rightloc; y3=0.5h; % apex x1=0.1[leftloc, rightloc]; y1=0.1h; % bottom leg end z2=(leftloc,0.9h); % top leg end x7= 0.7[leftloc, rightloc]; y7=0; % construction points x6= 0.2[leftloc, rightloc]; y6=h; z4'= whatever[z1,z3] = whatever[z7,z6]; % bottom leg intersection z5'= whatever[z2,z3] = whatever[z7,z6]; % top leg intersection z4 = 1.2[z5', z4']; z5 = 1.1[z4', z5']; draw z1--z3--z2; % the legs draw z4--z5; % the bar labels(1,2,3,4,4',5,5',6,7); endchar; % \end{macrocode} % \end{macro} % % \begin{macro}{B} % The Phoenician \textit{beth} (house), somewhat like a modern P. % \begin{macrocode} cmchar "Phoenician letter B"; beginglyph("B",0.6); x1=x3=0.2[leftloc, rightloc]; rt x4=rightloc; y4= 0.75h; x2=leftloc; bot y1=-o; top y3=h; y2=0.5h; draw z1..z2..z3; % the upright draw z3--z4--z2; % upper bowl labels(1,2,3,4); endchar; % \end{macrocode} % \end{macro} % % \begin{macro}{G} % The Phoenician \textit{gimel} (camel). Like a broken topped T. % \begin{macrocode} cmchar "Phoenician letter G"; beginglyph("G", 0.6); x3=leftloc; x1=x2=midloc; x4=rightloc; bot y1=-o; y2=y3=h; y4=0.8h; draw z1--z2; % the stem draw z3--z2--z4; % the top bar labels(1,2,3,4); endchar; % \end{macrocode} % \end{macro} % % \begin{macro}{D} % The Phoenician \textit{daleth} (door); it's like the Greek \textit{delta} ($\Delta$). % \begin{macrocode} cmchar "Phoenician letter D"; beginglyph("D",0.6); x1=leftloc; x2=rightloc; x3=midloc; bot y1= bot y2= 0; top y3=h; draw z1--z2--z3--cycle; labels(1,2,3); endchar; % \end{macrocode} % \end{macro} % % \begin{macro}{E} % The Phoenician \textit{he} (window?), like a droopy E. % \begin{macrocode} cmchar "Phoenician letter E"; beginglyph("E",0.6); numeric alpha; alpha:=0.1; x4=x5=x6=x7=leftloc; x1=x2=x3=rightloc; bot y4=-o; y7=h; y6=.7h; y5=.4h; y1=y5-alpha*h; y2=y6-alpha*h; y3=y7-alpha*h; draw z4--z7; % the upright draw z1--z5; draw z2--z6; draw z3--z7; % the arms labels(1,2,3,4,5,6,7); endchar; % \end{macrocode} % \end{macro} % % \begin{macro}{F} % This is one of forms of the Phoenician \textit{vau} (nail). % It's like a 2-armed E. % \begin{macrocode} cmchar "Phoenician letter F"; beginglyph("F",0.6); numeric alpha; alpha:=0.1; x4=x5=x6=x7=leftloc; x1=x2=x3=rightloc; bot y4=-o; y7=h; y6=.6h; y5=.4h; y1=y5-alpha*h; y2=y6-alpha*h; y3=y7-alpha*h; draw z4--z7; % the upright draw z2--z6; draw z3--z7; % the arms labels(1,2,3,4,5,6,7); endchar; % \end{macrocode} % \end{macro} % % \begin{macro}{Z} % The Phoenician \textit{zayin} (dagger?). It looks like a modern seriffed I. % \begin{macrocode} cmchar "Phoenician letter Z"; beginglyph("Z",0.2); x1=x2=midloc; bot y1=-o; top y2=h; draw z1--z2; % the upright x3=x5=leftloc; x4=x6=rightloc; y3=y4=y1; y5=y6=y2; draw z3--z4; % lower bar draw z5--z6; % upper bar labels(1,2); endchar; % \end{macrocode} % \end{macro} % % % % % \begin{macro}{H} % The Phoenician \textit{cheth} (fence?). It looks like a rectangle with two horizontal % internal bars. % \begin{macrocode} cmchar "Phoenician letter H"; beginglyph("H", 0.6); numeric alpha; alpha:=0.1; x4=x6=leftloc; x1=x3=rightloc; bot y1=-o; top y6=h; y3=y6-alpha*h; y4=y1+alpha*h; z2=0.35[z1,z3]; z5=0.35[z4,z6]; % ends of one bar z7=0.65[z1,z3]; z8=0.65[z4,z6]; % other bar draw z1--z3--z6--z4--cycle; % outer boundary draw z2--z5; draw z7--z8; % the bars labels(1,2,3,4,5,6); endchar; % \end{macrocode} % \end{macro} % % \begin{macro}{Thet} % The Phoenician \textit{thet}. It's a precursor of the Greek \textit{theta} ($\Theta$). % \begin{macrocode} cmchar "Phoenician letter thet"; beginglyph(oct"002",1.0); path p; x1=leftloc; x3=rightloc; y2=h; y4=0; x2=x4=midloc; y1=y3=h/2; z100=(x2,y3); % circle center p = z1..z2..z3..z4..cycle; z11= (z100--(leftloc,h)) intersectionpoint p; z12= (z100--(rightloc,h)) intersectionpoint p; z13= (z100--(rightloc,0)) intersectionpoint p; z14= (z100--(leftloc,0)) intersectionpoint p; draw p; draw z11--z13; draw z12--z14; % the cross labels(1,2,3,4,11,12,13,14); endchar; % \end{macrocode} % \end{macro} % % % \begin{macro}{I} % The Phoenician \textit{yod} (hand). % \begin{macrocode} cmchar "Phoenician letter I"; beginglyph("I",0.2); x1=x2=midloc; bot y1=-o; top y2=h; draw z1--z2; labels(1,2); endchar; % \end{macrocode} % \end{macro} % % % \begin{macro}{K} % The Phoenician \textit{kaph} (palm of the hand). % \begin{macrocode} cmchar "Phoenician letter K"; beginglyph("K",0.6); numeric alpha; alpha:=0.8; z1=(rightloc,0); z3=(rightloc,h); z5=(leftloc,h); z4=alpha[z1,z5]; z2=alpha[z1,z3]; draw z1--z5; % the stem draw z3--z4--z2; % arms labels(1,2,3,4,5); endchar; % \end{macrocode} % \end{macro} % % \begin{macro}{L} % The Phoenician \textit{lamed} (ox goad). % \begin{macrocode} cmchar "Phoenician letter L"; beginglyph("L",0.4); x2=x3=leftloc; x1=rightloc; bot y2=-o; y1=.3h; y3=h; draw z2--z3; % the upright draw z2--z1; % the arms labels(1,2,3); endchar; % \end{macrocode} % \end{macro} % % \begin{macro}{M} % The Phoenician \textit{mem} (water). % \begin{macrocode} cmchar"Phoenician letter M"; beginglyph("M",1.0); x1=rightloc; x5=x6=leftloc; x2=3/4[x5,x1]; x3=1/2[x5,x1]; x4=1/4[x5,x1]; bot y6= -o; top y5= top y3 = h; top y1=.8h; y2=.6h; y4=.7h; draw z6--z5; draw z1--z2--z3--z4--z5; labels(1,2,3,4,5,6); endchar; % \end{macrocode} % \end{macro} % % \begin{macro}{N} % The Phoenician \textit{nun} (fish). % \begin{macrocode} cmchar "Phoenician letter N"; beginglyph("N",0.6); x1=rightloc; x3=midloc; x2=x4=leftloc; bot y2=-o; top y1= top y4= h; y3=.7h; draw z2--z4; draw z1--z3--z4; labels(1,2,3,4); endchar; % \end{macrocode} % \end{macro} % % % \begin{macro}{Xi} % The Phoenician \textit{samech} (post). % It is a progenitor of the Greek \textit{xi} ($\Xi$). % \begin{macrocode} cmchar "Phoenician letter Xi"; beginglyph(oct"004", 0.6); x1= x2 = midloc; x3=x4=x5=leftloc; x6=x7=x8=rightloc; y1=0; y3=y6=0.4h; y4=y7=0.7h; y5=y2=y8=h; draw z1--z2; % upright draw z3--z6; draw z4--z7; draw z5--z8; % arms labels(1,2,3,4,5,6,7,8); endchar; % \end{macrocode} % \end{macro} % % \begin{macro}{O} % The Phoenician \textit{ayin} (eye). % \begin{macrocode} cmchar "Phoenician letter O"; beginglyph("O",1.0); x1=leftloc; x3=rightloc; y2=h; y4=0; x2=x4=midloc; y1=y3=h/2; draw z1..z2..z3..z4..cycle; labels(1,2,3,4); endchar; % \end{macrocode} % \end{macro} % % \begin{macro}{P} % The Phoenician \textit{pe} (mouth). % \begin{macrocode} cmchar "Phoenician letter P"; beginglyph("P", 0.4); x1=rightloc; x2=x3=leftloc; bot y3=-o; y2=h; y1=0.8h; draw z1..z2{left}--z3; labels(1,2,3); endchar; % \end{macrocode} % \end{macro} % % \begin{macro}{Tsade} % The Phoenician \textit{tsade}. I'll map this to W. % \begin{macrocode} cmchar "Phoenician letter tsade"; beginglyph("W", 0.6); x1=x2=rightloc; x3=0.4[leftloc, rightloc]; x4=0.6[leftloc, rightloc]; x5=leftloc; y1=0; y2=y3=h; y4=y5=0.8h; draw z1--z2--z3--z4--z5; labels(1,2,3,4,5); endchar; % \end{macrocode} % \end{macro} % % % \begin{macro}{Q} % The Phoenician \textit{qoph} (knot?). % \begin{macrocode} cmchar "Phoenician letter Q"; beginglyph("Q",0.6); numeric alpha; x1=leftloc; x3=rightloc; alpha=0.5(x3-x1); % circle radius y2=h; y4=y2-2alpha; bot y5=-o; x2=x4=x5=midloc; y1=y3=h-alpha; draw z1..z2..z3..z4..cycle; % the circle draw z5--z2; % the upright labels(1,2,3,4,5); endchar; % \end{macrocode} % \end{macro} % % \begin{macro}{R} % The Phoenician \textit{resh} (head). It looks a little like a P. % \begin{macrocode} cmchar "Phoenician letter R"; beginglyph("R", 0.4); x1=x2=x3=leftloc; x4=rightloc; bot y1=-o; top y2=h; y3=y4=0.5h; draw z1--z2--z4--z3; labels(1,2,3,4); endchar; % \end{macrocode} % \end{macro} % % \begin{macro}{S} % The Phoenician \textit{shin} (teeth). It's like a Greek \textit{sigma} ($\Sigma$) % lying on its side. % \begin{macrocode} cmchar "Phoenician letter S"; beginglyph("S", 0.6); z1=(leftloc,h); z5=(rightloc,h); x2 = 0.2[leftloc, rightloc]; x4 = 0.8[leftloc, rightloc]; x3=midloc; y2=y4=0; y3 = 0.4h; draw z1--z2--z3--z4--z5; labels(1,2,3,4,5); endchar; % \end{macrocode} % \end{macro} % % \begin{macro}{T} % The Phoenician \textit{tav} (mark). % \begin{macrocode} cmchar "Phoenician letter T"; beginglyph("T", 0.5); x1=x2=midloc; x3=leftloc; x4=rightloc; bot y1=0; y2=h; y3=y4=0.6h; draw z1--z2; % the stem draw z3--z4; % the crossbar labels(1,2,3,4); endchar; % \end{macrocode} % \end{macro} % % \begin{macro}{V} % Another form of the Phoenician \textit{vau}. % \begin{macrocode} cmchar "Phoenician letter V"; beginglyph("V", 0.6); x1=x2=midloc; x3=leftloc; x4=rightloc; bot y1=0; y2=0.6h; y3=y4=h; draw z1--z2; % the stem draw z3--z2--z4; % the crossbar labels(1,2,3,4); endchar; % \end{macrocode} % \end{macro} % % % % The following characters are for the normal Phoenician writing mode % of right to left. The characters are mirror images of the ASCII uppercase % counterparts. Symmetric characters that are called by \LaTeX{} commands % need not be coded. % % \begin{macro}{a} % The letter A. This is symmetrical. % \begin{macrocode} cmchar "Phoenician letter a"; beginglyph("a",0.6); x3=leftloc; y3=0.5h; % apex x1=0.9[leftloc, rightloc]; y1=0.1h; % bottom leg end z2=(rightloc,0.9h); % top leg end x7= 0.3[leftloc, rightloc]; y7=0; % construction points x6= 0.8[leftloc, rightloc]; y6=h; z4'= whatever[z1,z3] = whatever[z7,z6]; % bottom leg intersection z5'= whatever[z2,z3] = whatever[z7,z6]; % top leg intersection z4 = 1.2[z5', z4']; z5 = 1.1[z4', z5']; draw z1--z3--z2; % the legs draw z4--z5; % the bar labels(1,2,3,4,4',5,5',6,7); endchar; % \end{macrocode} % \end{macro} % % \begin{macro}{b} % The letter B, which is asymmetrical. % \begin{macrocode} cmchar "Phoenician letter b"; beginglyph("b",0.6); x1=x3=0.2[rightloc, leftloc]; lft x4=leftloc; y4= 0.75h; x2=rightloc; bot y1=-o; top y3=h; y2=0.5h; draw z1..z2..z3; % the upright draw z3--z4--z2; % the bowl labels(1,2,3,4); endchar; % \end{macrocode} % \end{macro} % % \begin{macro}{g} % The letter G which is asymmetrical. % \begin{macrocode} cmchar "Phoenician letter g"; beginglyph("g", 0.6); x3=rightloc; x1=x2=midloc; x4=leftloc; bot y1=-o; y2=y3=h; y4=0.8h; draw z1--z2; % the stem draw z3--z2--z4; % top bar labels(1,2,3,4); endchar; % \end{macrocode} % \end{macro} % % \begin{macro}{d} % The letter D which is symmetrical. % \begin{macrocode} cmchar "Phoenician letter d"; beginglyph("d",0.6); x1=leftloc; x2=rightloc; x3=midloc; bot y1= bot y2= 0; top y3=h; draw z1--z2--z3--cycle; labels(1,2,3); endchar; % \end{macrocode} % \end{macro} % % \begin{macro}{e} % The letter E which is asymmetrical. % \begin{macrocode} cmchar "Phoenician letter e"; beginglyph("e",0.6); numeric alpha; alpha:=0.1; x1=x2=x3=leftloc; x4=x5=x6=x7=rightloc; bot y4=-o; y7=h; y6=.7h; y5=.4h; y1=y5-alpha*h; y2=y6-alpha*h; y3=y7-alpha*h; draw z4--z7; % the upright draw z1--z5; draw z2--z6; draw z3--z7; % the arms labels(1,2,3,4,5,6,7); endchar; % \end{macrocode} % \end{macro} % % \begin{macro}{f} % The letter F which is asymmetrical. % \begin{macrocode} cmchar "Phoenician letter f"; beginglyph("f",0.6); numeric alpha; alpha:=0.1; x1=x2=x3=leftloc; x4=x5=x6=x7=rightloc; bot y4=-o; y7=h; y6=.6h; y5=.4h; y1=y5-alpha*h; y2=y6-alpha*h; y3=y7-alpha*h; draw z4--z7; % the upright draw z2--z6; draw z3--z7; % the arms labels(1,2,3,4,5,6,7); endchar; % \end{macrocode} % \end{macro} % % % \begin{macro}{z} % The letter Z. This is symmetrical. % \begin{macrocode} cmchar "Phoenician letter z"; beginglyph("z",0.2); x1=x2=midloc; bot y1=-o; top y2=h; draw z1--z2; % the upright x3=x5=leftloc; x4=x6=rightloc; y3=y4=y1; y5=y6=y2; draw z3--z4; % lower bar draw z5--z6; % upper bar labels(1,2); endchar; % \end{macrocode} % \end{macro} % % \begin{macro}{h} % The letter H which is asymmetrical. % \begin{macrocode} cmchar "Phoenician letter h"; beginglyph("h", 0.6); numeric alpha; alpha:=0.1; x1=x3=leftloc; x4=x6=rightloc; bot y1=-o; top y6=h; y3=y6-alpha*h; y4=y1+alpha*h; z2=0.35[z1,z3]; z5=0.35[z4,z6]; z7=0.65[z1,z3]; z8=0.65[z4,z6]; draw z1--z3--z6--z4--cycle; % outer boundary draw z2--z5; draw z7--z8; % bars labels(1,2,3,4,5,6,7,8); endchar; % \end{macrocode} % \end{macro} % % \begin{macro}{i} % The letter I which is symmetrical. % \begin{macrocode} cmchar "Phoenician letter i"; beginglyph("i",0.2); x1=x2=midloc; bot y1=-o; top y2=h; draw z1--z2; labels(1,2); endchar; % \end{macrocode} % \end{macro} % % % \begin{macro}{k} % The letter K which is asymmetrical. % \begin{macrocode} cmchar "Phoenician letter k"; beginglyph("k",0.6); numeric alpha; alpha:=0.8; z1=(leftloc,0); z3=(leftloc,h); z5=(rightloc,h); z4=alpha[z1,z5]; z2=alpha[z1,z3]; draw z1--z5; % the stem draw z3--z4--z2; % the arms labels(1,2,3,4,5); endchar; % \end{macrocode} % \end{macro} % % \begin{macro}{l} % The letter L which is asymmetrical. % \begin{macrocode} cmchar "Phoenician letter l"; beginglyph("l",0.4); x1=leftloc; x2=x3=rightloc; bot y2=-o; y1=.3h; y3=h; draw z2--z3; % the upright draw z2--z1; % the arms labels(1,2,3); endchar; % \end{macrocode} % \end{macro} % % \begin{macro}{m} % The letter M which is asymmetrical. % \begin{macrocode} cmchar"Phoenician letter m"; beginglyph("m",1.0); x1=leftloc; x5=x6=rightloc; x2=1/4[x1,x5]; x3=1/2[x1,x5]; x4=3/4[x1,x5]; bot y6= -o; top y5= top y3 = h; top y1=.8h; y2=.6h; y4=.7h; draw z6--z5; draw z1--z2--z3--z4--z5; labels(1,2,3,4,5,6); endchar; % \end{macrocode} % \end{macro} % % \begin{macro}{n} % The letter N which is asymmetrical. % \begin{macrocode} cmchar "Phoenician letter n"; beginglyph("n",0.6); x1=leftloc; x3=midloc; x2=x4=rightloc; bot y2=-o; top y1= top y4= h; y3=.7h; draw z2--z4; draw z1--z3--z4; labels(1,2,3,4); endchar; % \end{macrocode} % \end{macro} % % % \begin{macro}{o} % The letter O which is symmetrical. % \begin{macrocode} cmchar "Phoenician letter o"; beginglyph("o",1.0); x1=leftloc; x3=rightloc; top y2=h; bot y4=-o; x2=x4=midloc; y1=y3=h/2; draw z1..z2..z3..z4..cycle; labels(1,2,3,4); endchar; % \end{macrocode} % \end{macro} % % \begin{macro}{p} % The letter P which is asymmetrical. % \begin{macrocode} cmchar "Phoenician letter p"; beginglyph("p", 0.4); x1=leftloc; x2=x3=rightloc; bot y3=-o; y2=h; y1=0.8h; draw z1..z2{right}--z3; labels(1,2,3); endchar; % \end{macrocode} % \end{macro} % % % \begin{macro}{tsade} % The Phoenician \textit{tsade}. I'll map it to w. % \begin{macrocode} cmchar "Phoenician letter tsade (w)"; beginglyph("w", 0.6); x1=x2=leftloc; x3=0.6[leftloc, rightloc]; x4=0.4[leftloc, rightloc]; x5=rightloc; y1=0; y2=y3=h; y4=y5=0.8h; draw z1--z2--z3--z4--z5; labels(1,2,3,4,5); endchar; % \end{macrocode} % \end{macro} % % \begin{macro}{Q} % The letter Q which is symmetrical. % \begin{macrocode} cmchar "Phoenician letter q"; beginglyph("q",0.6); numeric alpha; x1=leftloc; x3=rightloc; alpha=0.5*(x3-x1); % circle radius y2=h; y4=y2-2*alpha; bot y5=-o; x2=x4=x5=midloc; y1=y3=h-alpha; draw z1..z2..z3..z4..cycle; % the circle draw z5--z2; % the upright labels(1,2,3,4,5); endchar; % \end{macrocode} % \end{macro} % % \begin{macro}{r} % The letter R which is asymmetrical. % \begin{macrocode} cmchar "Phoenician letter r"; beginglyph("r", 0.4); x1=x2=x3=rightloc; x4=leftloc; bot y1=-o; top y2=h; y3=y4=0.5h; draw z1--z2--z4--z3; labels(1,2,3,4); endchar; % \end{macrocode} % \end{macro} % % \begin{macro}{s} % The letter S which is symmetrical. % \begin{macrocode} cmchar "Phoenician letter s"; beginglyph("s", 0.6); z1=(leftloc,h); z5=(rightloc,h); x2=0.2[leftloc, rightloc]; x4=0.8[leftloc, rightloc]; x3=midloc; y2=y4=0; y3=0.4h; draw z1--z2--z3--z4--z5; labels(1,2,3,4,5); endchar; % \end{macrocode} % \end{macro} % % \begin{macro}{t} % The letter T which is symmetrical. % \begin{macrocode} cmchar "Phoenician letter t"; beginglyph("t", 0.5); x1=x2=midloc; x3=leftloc; x4=rightloc; bot y1=0; y2=h; y3=y4=0.6h; draw z1--z2; % the stem draw z3--z4; % the bar labels(1,2,3,4); endchar; % \end{macrocode} % \end{macro} % % \begin{macro}{v} % Another form of \textit{vau} which is symmetrical. % \begin{macrocode} cmchar "Phoenician letter v"; beginglyph("v", 0.6); x1=x2=midloc; x3=leftloc; x4=rightloc; bot y1=0; y2=0.6h; y3=y4=h; draw z1--z2; % the stem draw z3--z2--z4; % the V crossbar labels(1,2,3,4); endchar; % % \end{macrocode} % \end{macro} % % % % \section{The font definition files} \label{sec:fd} % % \begin{macrocode} %<*fdot1> \DeclareFontFamily{OT1}{phnc}{} \DeclareFontShape{OT1}{phnc}{m}{n}{ <-> phnc10 }{} \DeclareFontShape{OT1}{phnc}{bx}{n}{ <-> sub phnc/m/n }{} \DeclareFontShape{OT1}{phnc}{b}{n}{ <-> sub phnc/m/n }{} \DeclareFontShape{OT1}{phnc}{m}{sl}{ <-> sub phnc/m/n }{} \DeclareFontShape{OT1}{phnc}{m}{it}{ <-> sub phnc/m/n }{} % % \end{macrocode} % % % \begin{macrocode} %<*fdt1> \DeclareFontFamily{T1}{phnc}{} \DeclareFontShape{T1}{phnc}{m}{n}{ <-> phnc10 }{} \DeclareFontShape{T1}{phnc}{bx}{n}{ <-> sub phnc/m/n }{} \DeclareFontShape{T1}{phnc}{b}{n}{ <-> sub phnc/m/n }{} \DeclareFontShape{T1}{phnc}{m}{sl}{ <-> sub phnc/m/n }{} \DeclareFontShape{T1}{phnc}{m}{it}{ <-> sub phnc/m/n }{} % % \end{macrocode} % % \section{The \Lpack{phoenician} package code} \label{sec:code} % % Announce the name and version of the package, which requires % \LaTeXe{}. % \begin{macrocode} %<*usc> \NeedsTeXFormat{LaTeX2e} \ProvidesPackage{phoenician}[1999/03/14 v1.0 package for Phoenician fonts] % \end{macrocode} % % % \begin{macro}{\phncfamily} % Selects the Phoenician font family in the OT1 encoding. % \begin{macrocode} \newcommand{\phncfamily}{\usefont{OT1}{phnc}{m}{n}} % \end{macrocode} % \end{macro} % % \begin{macro}{\textphnc} % Text command for the Phoenician font family. % \begin{macrocode} \DeclareTextFontCommand{\textphnc}{\phncfamily} % \end{macrocode} % \end{macro} % % \begin{macro}{\TTheta} % \begin{macro}{\TXi} % \begin{macro}{\Tsade} % The Phoenician \textit{thet}, \textit{samech} and \textit{tsade} characters. % \begin{macrocode} \chardef\TTheta='002 \chardef\TXi='004 \chardef\Tsade=`W % \end{macrocode} % \end{macro} % \end{macro} % \end{macro} % % \begin{macro}{\tTheta} % \begin{macro}{\tXi} % \begin{macro}{\tsade} % The Phoenician \textit{thet}, \textit{samech} and \textit{tsade} characters % called as lowercase commands. % \begin{macrocode} \chardef\tTheta='002 \chardef\tXi='004 \chardef\tsade=`w % \end{macrocode} % \end{macro} % \end{macro} % \end{macro} % % The end of this package. % \begin{macrocode} % % \end{macrocode} % % % \bibliographystyle{alpha} % % \begin{thebibliography}{GMS94} % % \bibitem[Dru95]{DRUCKER95} % Johanna Drucker. % \newblock {\em The Alphabetic Labyrinth}. % \newblock Thames and Hudson, 1995. % % \bibitem[Fir93]{FIRMAGE93} % Richard A.~Firmage. % \newblock {\em The Alphabet Abecedarium}. % \newblock David R.~Goodine, 1993. % % % \bibitem[GMS94]{GOOSSENS94} % Michel Goossens, Frank Mittelbach, and Alexander Samarin. % \newblock {\em The LaTeX Companion}. % \newblock Addison-Wesley Publishing Company, 1994. % % % \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 \~}