%% \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 \~} %\iffalse % % (c) Copyright 2003 Apostolos Syropoulos % This program can be redistributed and/or modified under the terms % of the LaTeX Project Public License Distributed from CTAN % archives in directory macros/latex/base/lppl.txt; either % version 1 of the License, or any later version. % % Please report errors or suggestions for improvement to % % Apostolos Syropoulos % 366, 28th October Str. % GR-671 00 Xanthi, GREECE % apostolo@ocean1.ee.duth.gr or apostolo@obelix.ee.duth.gr % %\fi % \CheckSum{859} % \iffalse This is a Metacomment % %\ProvidesFile{epiolmec.sty} % [2003/11/05 v1.0 Package `epiolmec.sty'] % % \begin{macrocode} %<*driver> \documentclass{ltxdoc} \usepackage{url} \GetFileInfo{epiolmec.drv} \begin{document} \DocInput{epiolmec.dtx} \end{document} % % \end{macrocode} % \fi % % \title{The \textsf{epiolmec} package} % \author{Apostolos Syropoulos\\366, 28th October Str.\\ % GR-671 00 Xanthi, HELLAS\\ % Email:\texttt{apostolo@obelix.ee.duth.gr}} % \date{2003/11/05} % \maketitle % %\MakeShortVerb{\|} %\StopEventually{} % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % \section{Introduction} % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % The \textsf{epiolmec} package defines the necessary \LaTeX\ interface to % the Epi-Olmec font, which consists of all known glyphs of the Epi-Olmec % script. The Epi-Olmec script is an ancient Mesoamerican logosyllabic % script, which has been recently deciphered by Terrence Kaufman and John % Justeson. A complete description of the script can be found in % {\em Epi-Olmec Hieroglyphic Writing and Texts} (by Kaufman and Justeson) % available from \url{http://www.albany.edu/anthro/maldp/EOTEXTS.pdf}. % In addition, the reader is refereed to the article {\em Replicating Archaic % Documents: A Typographic Challenge} (which was presented by the author of % this package at the Euro\TeX2003 conference in Brest, France and will appear % in TUGboat) for more information regarding the Epi-Olmec script and the % Epi-Olmec font. % % Although, it is a common practice to have different files for the % font encoding, the glyph access commands and the various support commands, % we opted to put everything in just one file. Initially, we describe the % source code of the package, then we provide some usage information and % we conclude with some notes concerning our future plans. % % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % \section{The Source Code} % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % The first thing we need to define is a new local font encoding. The % following code is not much of a font encoding, nevertheless it is % required to have these minimum declarations in order to use the % ``font encoding.'' % \begin{macrocode} %<*epiolmec> \DeclareFontEncoding{LEO}{}{} \DeclareFontSubstitution{LEO}{cmr}{m}{n} \DeclareFontFamily{LEO}{cmr}{\hyphenchar\font=-1} % \end{macrocode} % Clearly, it makes no sense to have any series other than normal. So all % of the following definitions default to the first case. % \begin{macrocode} \DeclareFontShape{LEO}{cmr}{m}{n}{% <-> EpiOlmec }{} \DeclareFontShape{LEO}{cmr}{m}{sc}{% <-> ssub * EO/m/n}{} \DeclareFontShape{LEO}{cmr}{m}{sl}{% <-> ssub * cmr/m/n}{} \DeclareFontShape{LEO}{cmr}{m}{it}{% <-> ssub * cmr/m/n}{} \DeclareFontShape{LEO}{cmr}{bx}{n}{% <-> ssub * cmr/m/n}{} \DeclareFontShape{LEO}{cmr}{bx}{sc}{% <-> ssub * cmr/m/n}{} \DeclareFontShape{LEO}{cmr}{bx}{sl}{% <-> ssub * cmr/m/n}{} \DeclareFontShape{LEO}{cmr}{bx}{it}{% <-> ssub * cmr/m/n}{} % \end{macrocode} % Let us now proceed with the definition of the various glyph access % commands. First, we define the commands that can be used to access % the various digits. Note that there is written evidence that the % Epi-Olmec used the digit zero. However, since their numbering system % is identical to the numbering system of the Maya people, we have % ``borrowed'' the most common form of the Maya zero digit. % \begin{macrocode} \DeclareTextSymbol{\EOi}{LEO}{'00} \DeclareTextSymbolDefault{\EOi}{LEO} \DeclareTextSymbol{\EOii}{LEO}{'01} \DeclareTextSymbolDefault{\EOii}{LEO} \DeclareTextSymbol{\EOiii}{LEO}{'02} \DeclareTextSymbolDefault{\EOiii}{LEO} \DeclareTextSymbol{\EOiv}{LEO}{'03} \DeclareTextSymbolDefault{\EOiv}{LEO} \DeclareTextSymbol{\EOv}{LEO}{'04} \DeclareTextSymbolDefault{\EOv}{LEO} \DeclareTextSymbol{\EOvi}{LEO}{'05} \DeclareTextSymbolDefault{\EOvi}{LEO} \DeclareTextSymbol{\EOvii}{LEO}{'06} \DeclareTextSymbolDefault{\EOvii}{LEO} \DeclareTextSymbol{\EOviii}{LEO}{'07} \DeclareTextSymbolDefault{\EOviii}{LEO} \DeclareTextSymbol{\EOix}{LEO}{'10} \DeclareTextSymbolDefault{\EOix}{LEO} \DeclareTextSymbol{\EOx}{LEO}{'11} \DeclareTextSymbolDefault{\EOx}{LEO} \DeclareTextSymbol{\EOxi}{LEO}{'12} \DeclareTextSymbolDefault{\EOxi}{LEO} \DeclareTextSymbol{\EOxii}{LEO}{'13} \DeclareTextSymbolDefault{\EOxii}{LEO} \DeclareTextSymbol{\EOxiii}{LEO}{'14} \DeclareTextSymbolDefault{\EOxiii}{LEO} \DeclareTextSymbol{\EOxiv}{LEO}{'15} \DeclareTextSymbolDefault{\EOxiv}{LEO} \DeclareTextSymbol{\EOxv}{LEO}{'16} \DeclareTextSymbolDefault{\EOxv}{LEO} \DeclareTextSymbol{\EOxvi}{LEO}{'17} \DeclareTextSymbolDefault{\EOxvi}{LEO} \DeclareTextSymbol{\EOxvii}{LEO}{'20} \DeclareTextSymbolDefault{\EOxvii}{LEO} \DeclareTextSymbol{\EOxviii}{LEO}{'21} \DeclareTextSymbolDefault{\EOxviii}{LEO} \DeclareTextSymbol{\EOxix}{LEO}{'22} \DeclareTextSymbolDefault{\EOxix}{LEO} \DeclareTextSymbol{\EOxx}{LEO}{'23} \DeclareTextSymbolDefault{\EOxx}{LEO} \DeclareTextSymbol{\EOzero}{LEO}{'24} \DeclareTextSymbolDefault{\EOzero}{LEO} % \end{macrocode} % % The commands that follow can be used to access the glyphs that are shown % in Figure~4 on page~5 of the text by Kaufman and Justeson. Somehow, we % can claim that this is the basic set of glyphs of the Epi-Olmec script. % % \begin{macrocode} \DeclareTextSymbol{\EOpi}{LEO}{'60} \DeclareTextSymbolDefault{\EOpi}{LEO} \DeclareTextSymbol{\EOpe}{LEO}{'61} \DeclareTextSymbolDefault{\EOpe}{LEO} \DeclareTextSymbol{\EOpuu}{LEO}{'62} \DeclareTextSymbolDefault{\EOpuu}{LEO} \DeclareTextSymbol{\EOpa}{LEO}{'63} \DeclareTextSymbolDefault{\EOpa}{LEO} \DeclareTextSymbol{\EOvarpa}{LEO}{'64} \DeclareTextSymbolDefault{\EOvarpa}{LEO} \DeclareTextSymbol{\EOpu}{LEO}{'65} \DeclareTextSymbolDefault{\EOpu}{LEO} \DeclareTextSymbol{\EOpo}{LEO}{'66} \DeclareTextSymbolDefault{\EOpo}{LEO} \DeclareTextSymbol{\EOti}{LEO}{'67} \DeclareTextSymbolDefault{\EOti}{LEO} \DeclareTextSymbol{\EOte}{LEO}{'70} \DeclareTextSymbolDefault{\EOte}{LEO} \DeclareTextSymbol{\EOtuu}{LEO}{'71} \DeclareTextSymbolDefault{\EOtuu}{LEO} \DeclareTextSymbol{\EOta}{LEO}{'72} \DeclareTextSymbolDefault{\EOta}{LEO} \DeclareTextSymbol{\EOtu}{LEO}{'73} \DeclareTextSymbolDefault{\EOtu}{LEO} \DeclareTextSymbol{\EOto}{LEO}{'74} \DeclareTextSymbolDefault{\EOto}{LEO} \DeclareTextSymbol{\EOtzi}{LEO}{'75} \DeclareTextSymbolDefault{\EOtzi}{LEO} \DeclareTextSymbol{\EOtze}{LEO}{'76} \DeclareTextSymbolDefault{\EOtze}{LEO} \DeclareTextSymbol{\EOtzuu}{LEO}{'77} \DeclareTextSymbolDefault{\EOtzuu}{LEO} \DeclareTextSymbol{\EOtza}{LEO}{'100} \DeclareTextSymbolDefault{\EOtza}{LEO} \DeclareTextSymbol{\EOvartza}{LEO}{'101} \DeclareTextSymbolDefault{\EOvartza}{LEO} \DeclareTextSymbol{\EOtzu}{LEO}{'102} \DeclareTextSymbolDefault{\EOtzu}{LEO} \DeclareTextSymbol{\EOki}{LEO}{'103} \DeclareTextSymbolDefault{\EOki}{LEO} \DeclareTextSymbol{\EOke}{LEO}{'104} \DeclareTextSymbolDefault{\EOke}{LEO} \DeclareTextSymbol{\EOkuu}{LEO}{'105} \DeclareTextSymbolDefault{\EOkuu}{LEO} \DeclareTextSymbol{\EOvarkuu}{LEO}{'106} \DeclareTextSymbolDefault{\EOvarkuu}{LEO} \DeclareTextSymbol{\EOku}{LEO}{'107} \DeclareTextSymbolDefault{\EOku}{LEO} \DeclareTextSymbol{\EOko}{LEO}{'110} \DeclareTextSymbolDefault{\EOko}{LEO} \DeclareTextSymbol{\EOSi}{LEO}{'111} \DeclareTextSymbolDefault{\EOSi}{LEO} \DeclareTextSymbol{\EOvarSi}{LEO}{'112} \DeclareTextSymbolDefault{\EOvarSi}{LEO} \DeclareTextSymbol{\EOSuu}{LEO}{'113} \DeclareTextSymbolDefault{\EOSuu}{LEO} \DeclareTextSymbol{\EOSa}{LEO}{'114} \DeclareTextSymbolDefault{\EOSa}{LEO} \DeclareTextSymbol{\EOSu}{LEO}{'115} \DeclareTextSymbolDefault{\EOSu}{LEO} \DeclareTextSymbol{\EOSo}{LEO}{'116} \DeclareTextSymbolDefault{\EOSo}{LEO} \DeclareTextSymbol{\EOsi}{LEO}{'117} \DeclareTextSymbolDefault{\EOsi}{LEO} \DeclareTextSymbol{\EOvarsi}{LEO}{'120} \DeclareTextSymbolDefault{\EOvarsi}{LEO} \DeclareTextSymbol{\EOsuu}{LEO}{'121} \DeclareTextSymbolDefault{\EOsuu}{LEO} \DeclareTextSymbol{\EOsa}{LEO}{'122} \DeclareTextSymbolDefault{\EOsa}{LEO} \DeclareTextSymbol{\EOsu}{LEO}{'123} \DeclareTextSymbolDefault{\EOsu}{LEO} \DeclareTextSymbol{\EOji}{LEO}{'124} \DeclareTextSymbolDefault{\EOji}{LEO} \DeclareTextSymbol{\EOje}{LEO}{'125} \DeclareTextSymbolDefault{\EOje}{LEO} \DeclareTextSymbol{\EOja}{LEO}{'126} \DeclareTextSymbolDefault{\EOja}{LEO} \DeclareTextSymbol{\EOvarja}{LEO}{'127} \DeclareTextSymbolDefault{\EOvarja}{LEO} \DeclareTextSymbol{\EOju}{LEO}{'130} \DeclareTextSymbolDefault{\EOju}{LEO} \DeclareTextSymbol{\EOjo}{LEO}{'131} \DeclareTextSymbolDefault{\EOjo}{LEO} \DeclareTextSymbol{\EOmi}{LEO}{'132} \DeclareTextSymbolDefault{\EOmi}{LEO} \DeclareTextSymbol{\EOme}{LEO}{'133} \DeclareTextSymbolDefault{\EOme}{LEO} \DeclareTextSymbol{\EOmuu}{LEO}{'134} \DeclareTextSymbolDefault{\EOmuu}{LEO} \DeclareTextSymbol{\EOma}{LEO}{'135} \DeclareTextSymbolDefault{\EOma}{LEO} \DeclareTextSymbol{\EOni}{LEO}{'136} \DeclareTextSymbolDefault{\EOni}{LEO} \DeclareTextSymbol{\EOvarni}{LEO}{'137} \DeclareTextSymbolDefault{\EOvarni}{LEO} \DeclareTextSymbol{\EOne}{LEO}{'140} \DeclareTextSymbolDefault{\EOne}{LEO} \DeclareTextSymbol{\EOnuu}{LEO}{'141} \DeclareTextSymbolDefault{\EOnuu}{LEO} \DeclareTextSymbol{\EOna}{LEO}{'142} \DeclareTextSymbolDefault{\EOna}{LEO} \DeclareTextSymbol{\EOnu}{LEO}{'143} \DeclareTextSymbolDefault{\EOnu}{LEO} \DeclareTextSymbol{\EOwi}{LEO}{'144} \DeclareTextSymbolDefault{\EOwi}{LEO} \DeclareTextSymbol{\EOwe}{LEO}{'145} \DeclareTextSymbolDefault{\EOwe}{LEO} \DeclareTextSymbol{\EOwuu}{LEO}{'146} \DeclareTextSymbolDefault{\EOwuu}{LEO} \DeclareTextSymbol{\EOvarwuu}{LEO}{'147} \DeclareTextSymbolDefault{\EOvarwuu}{LEO} \DeclareTextSymbol{\EOwa}{LEO}{'150} \DeclareTextSymbolDefault{\EOwa}{LEO} \DeclareTextSymbol{\EOwo}{LEO}{'151} \DeclareTextSymbolDefault{\EOwo}{LEO} \DeclareTextSymbol{\EOye}{LEO}{'152} \DeclareTextSymbolDefault{\EOye}{LEO} \DeclareTextSymbol{\EOyuu}{LEO}{'153} \DeclareTextSymbolDefault{\EOyuu}{LEO} \DeclareTextSymbol{\EOya}{LEO}{'154} \DeclareTextSymbolDefault{\EOya}{LEO} % \end{macrocode} % % The commands that follow can be used to access glyphs that are unusual or % alternative forms of common glyphs. % % \begin{macrocode} \DeclareTextSymbol{\EOSpan}{LEO}{'54} \DeclareTextSymbolDefault{\EOSpan}{LEO} \DeclareTextSymbol{\EOJI}{LEO}{'55} \DeclareTextSymbolDefault{\EOJI}{LEO} \DeclareTextSymbol{\EOvarji}{LEO}{'56} \DeclareTextSymbolDefault{\EOvarji}{LEO} \DeclareTextSymbol{\EOvarki}{LEO}{'57} \DeclareTextSymbolDefault{\EOvarki}{LEO} \DeclareTextSymbol{\EOkak}{LEO}{'155} \DeclareTextSymbolDefault{\EOkak}{LEO} \DeclareTextSymbol{\EOpak}{LEO}{'156} \DeclareTextSymbolDefault{\EOpak}{LEO} \DeclareTextSymbol{\EOpuuk}{LEO}{'157} \DeclareTextSymbolDefault{\EOpuuk}{LEO} \DeclareTextSymbol{\EOyaj}{LEO}{'160} \DeclareTextSymbolDefault{\EOyaj}{LEO} \DeclareTextSymbol{\EOScorpius}{LEO}{'161} \DeclareTextSymbolDefault{\EOScorpius}{LEO} \DeclareTextSymbol{\EODealWith}{LEO}{'162} \DeclareTextSymbolDefault{\EODealWith}{LEO} \DeclareTextSymbol{\EOYear}{LEO}{'163} \DeclareTextSymbolDefault{\EOYear}{LEO} \DeclareTextSymbol{\EOBeardMask}{LEO}{'164} \DeclareTextSymbolDefault{\EOBeardMask}{LEO} \DeclareTextSymbol{\EOBlood}{LEO}{'165} \DeclareTextSymbolDefault{\EOBlood}{LEO} \DeclareTextSymbol{\EOBundle}{LEO}{'166} \DeclareTextSymbolDefault{\EOBundle}{LEO} \DeclareTextSymbol{\EOChop}{LEO}{'167} \DeclareTextSymbolDefault{\EOChop}{LEO} \DeclareTextSymbol{\EOCloth}{LEO}{'170} \DeclareTextSymbolDefault{\EOCloth}{LEO} \DeclareTextSymbol{\EOSaw}{LEO}{'171} \DeclareTextSymbolDefault{\EOSaw}{LEO} \DeclareTextSymbol{\EOGuise}{LEO}{'172} \DeclareTextSymbolDefault{\EOGuise}{LEO} \DeclareTextSymbol{\EOofficerI}{LEO}{'173} \DeclareTextSymbolDefault{\EOofficerI}{LEO} \DeclareTextSymbol{\EOofficerII}{LEO}{'174} \DeclareTextSymbolDefault{\EOofficerII}{LEO} \DeclareTextSymbol{\EOofficerIII}{LEO}{'175} \DeclareTextSymbolDefault{\EOofficerIII}{LEO} \DeclareTextSymbol{\EOofficerIV}{LEO}{'176} \DeclareTextSymbolDefault{\EOofficerIV}{LEO} \DeclareTextSymbol{\EOKing}{LEO}{'200} \DeclareTextSymbolDefault{\EOKing}{LEO} \DeclareTextSymbol{\EOloinCloth}{LEO}{'201} \DeclareTextSymbolDefault{\EOloinCloth}{LEO} \DeclareTextSymbol{\EOlongLipII}{LEO}{'202} \DeclareTextSymbolDefault{\EOlongLipII}{LEO} \DeclareTextSymbol{\EOLose}{LEO}{'203} \DeclareTextSymbolDefault{\EOLose}{LEO} \DeclareTextSymbol{\EOmexNew}{LEO}{'204} \DeclareTextSymbolDefault{\EOmexNew}{LEO} \DeclareTextSymbol{\EOMiddle}{LEO}{'205} \DeclareTextSymbolDefault{\EOMiddle}{LEO} \DeclareTextSymbol{\EOPlant}{LEO}{'206} \DeclareTextSymbolDefault{\EOPlant}{LEO} \DeclareTextSymbol{\EOPlay}{LEO}{'207} \DeclareTextSymbolDefault{\EOPlay}{LEO} \DeclareTextSymbol{\EOPrince}{LEO}{'210} \DeclareTextSymbolDefault{\EOPrince}{LEO} \DeclareTextSymbol{\EOSky}{LEO}{'211} \DeclareTextSymbolDefault{\EOSky}{LEO} \DeclareTextSymbol{\EOskyPillar}{LEO}{'212} \DeclareTextSymbolDefault{\EOskyPillar}{LEO} \DeclareTextSymbol{\EOSprinkle}{LEO}{'213} \DeclareTextSymbolDefault{\EOSprinkle}{LEO} \DeclareTextSymbol{\EOstarWarrior}{LEO}{'214} \DeclareTextSymbolDefault{\EOstarWarrior}{LEO} \DeclareTextSymbol{\EOTitleII}{LEO}{'215} \DeclareTextSymbolDefault{\EOTitleII}{LEO} \DeclareTextSymbol{\EOtuki}{LEO}{'216} \DeclareTextSymbolDefault{\EOtuki}{LEO} \DeclareTextSymbol{\EOtzetze}{LEO}{'217} \DeclareTextSymbolDefault{\EOtzetze}{LEO} \DeclareTextSymbol{\EOChronI}{LEO}{'220} \DeclareTextSymbolDefault{\EOChronI}{LEO} \DeclareTextSymbol{\EOPatron}{LEO}{'221} \DeclareTextSymbolDefault{\EOPatron}{LEO} \DeclareTextSymbol{\EOandThen}{LEO}{'222} \DeclareTextSymbolDefault{\EOandThen}{LEO} \DeclareTextSymbol{\EOAppear}{LEO}{'223} \DeclareTextSymbolDefault{\EOAppear}{LEO} \DeclareTextSymbol{\EODeer}{LEO}{'224} \DeclareTextSymbolDefault{\EODeer}{LEO} \DeclareTextSymbol{\EOeat}{LEO}{'225} \DeclareTextSymbolDefault{\EOeat}{LEO} \DeclareTextSymbol{\EOPatronII}{LEO}{'226} \DeclareTextSymbolDefault{\EOPatronII}{LEO} \DeclareTextSymbol{\EOPierce}{LEO}{'227} \DeclareTextSymbolDefault{\EOPierce}{LEO} \DeclareTextSymbol{\EOkij}{LEO}{'230} \DeclareTextSymbolDefault{\EOkij}{LEO} \DeclareTextSymbol{\EOstar}{LEO}{'231} \DeclareTextSymbolDefault{\EOstar}{LEO} \DeclareTextSymbol{\EOsnake}{LEO}{'232} \DeclareTextSymbolDefault{\EOsnake}{LEO} \DeclareTextSymbol{\EOtime}{LEO}{'233} \DeclareTextSymbolDefault{\EOtime}{LEO} \DeclareTextSymbol{\EOtukpa}{LEO}{'234} \DeclareTextSymbolDefault{\EOtukpa}{LEO} \DeclareTextSymbol{\EOflint}{LEO}{'235} \DeclareTextSymbolDefault{\EOflint}{LEO} \DeclareTextSymbol{\EOafter}{LEO}{'236} \DeclareTextSymbolDefault{\EOafter}{LEO} \DeclareTextSymbol{\EOvarBeardMask}{LEO}{'237} \DeclareTextSymbolDefault{\EOvarBeardMask}{LEO} \DeclareTextSymbol{\EOBedeck}{LEO}{'240} \DeclareTextSymbolDefault{\EOBedeck}{LEO} \DeclareTextSymbol{\EObrace}{LEO}{'241} \DeclareTextSymbolDefault{\EObrace}{LEO} \DeclareTextSymbol{\EOflower}{LEO}{'242} \DeclareTextSymbolDefault{\EOflower}{LEO} \DeclareTextSymbol{\EOGod}{LEO}{'243} \DeclareTextSymbolDefault{\EOGod}{LEO} \DeclareTextSymbol{\EOMountain}{LEO}{'244} \DeclareTextSymbolDefault{\EOMountain}{LEO} \DeclareTextSymbol{\EOgovernor}{LEO}{'245} \DeclareTextSymbolDefault{\EOgovernor}{LEO} \DeclareTextSymbol{\EOHallow}{LEO}{'246} \DeclareTextSymbolDefault{\EOHallow}{LEO} \DeclareTextSymbol{\EOjaguar}{LEO}{'247} \DeclareTextSymbolDefault{\EOjaguar}{LEO} \DeclareTextSymbol{\EOSini}{LEO}{'250} \DeclareTextSymbolDefault{\EOSini}{LEO} \DeclareTextSymbol{\EOknottedCloth}{LEO}{'251} \DeclareTextSymbolDefault{\EOknottedCloth}{LEO} \DeclareTextSymbol{\EOknottedClothStraps}{LEO}{'252} \DeclareTextSymbolDefault{\EOknottedClothStraps}{LEO} \DeclareTextSymbol{\EOLord}{LEO}{'253} \DeclareTextSymbolDefault{\EOLord}{LEO} \DeclareTextSymbol{\EOmacaw}{LEO}{'254} \DeclareTextSymbolDefault{\EOmacaw}{LEO} \DeclareTextSymbol{\EOmonster}{LEO}{'255} \DeclareTextSymbolDefault{\EOmonster}{LEO} \DeclareTextSymbol{\EOmacawI}{LEO}{'256} \DeclareTextSymbolDefault{\EOmacawI}{LEO} \DeclareTextSymbol{\EOskyAnimal}{LEO}{'257} \DeclareTextSymbolDefault{\EOskyAnimal}{LEO} \DeclareTextSymbol{\EOnow}{LEO}{'260} \DeclareTextSymbolDefault{\EOnow}{LEO} \DeclareTextSymbol{\EOTitleIV}{LEO}{'261} \DeclareTextSymbolDefault{\EOTitleIV}{LEO} \DeclareTextSymbol{\EOpenis}{LEO}{'262} \DeclareTextSymbolDefault{\EOpenis}{LEO} \DeclareTextSymbol{\EOpriest}{LEO}{'263} \DeclareTextSymbolDefault{\EOpriest}{LEO} \DeclareTextSymbol{\EOstep}{LEO}{'264} \DeclareTextSymbolDefault{\EOstep}{LEO} \DeclareTextSymbol{\EOsing}{LEO}{'265} \DeclareTextSymbolDefault{\EOsing}{LEO} \DeclareTextSymbol{\EOskin}{LEO}{'266} \DeclareTextSymbolDefault{\EOskin}{LEO} \DeclareTextSymbol{\EOStarWarrior}{LEO}{'267} \DeclareTextSymbolDefault{\EOStarWarrior}{LEO} \DeclareTextSymbol{\EOsun}{LEO}{'270} \DeclareTextSymbolDefault{\EOsun}{LEO} \DeclareTextSymbol{\EOthrone}{LEO}{'271} \DeclareTextSymbolDefault{\EOthrone}{LEO} \DeclareTextSymbol{\EOTime}{LEO}{'272} \DeclareTextSymbolDefault{\EOTime}{LEO} \DeclareTextSymbol{\EOHallow}{LEO}{'273} \DeclareTextSymbolDefault{\EOHallow}{LEO} \DeclareTextSymbol{\EOTitle}{LEO}{'274} \DeclareTextSymbolDefault{\EOTitle}{LEO} \DeclareTextSymbol{\EOturtle}{LEO}{'275} \DeclareTextSymbolDefault{\EOturtle}{LEO} \DeclareTextSymbol{\EOundef}{LEO}{'276} \DeclareTextSymbolDefault{\EOundef}{LEO} \DeclareTextSymbol{\EOGoUp}{LEO}{'277} \DeclareTextSymbolDefault{\EOGoUp}{LEO} \DeclareTextSymbol{\EOLetBlood}{LEO}{'300} \DeclareTextSymbolDefault{\EOLetBlood}{LEO} \DeclareTextSymbol{\EORain}{LEO}{'301} \DeclareTextSymbolDefault{\EORain}{LEO} \DeclareTextSymbol{\EOset}{LEO}{'302} \DeclareTextSymbolDefault{\EOset}{LEO} \DeclareTextSymbol{\EOvarYear}{LEO}{'303} \DeclareTextSymbolDefault{\EOvarYear}{LEO} \DeclareTextSymbol{\EOFold}{LEO}{'304} \DeclareTextSymbolDefault{\EOFold}{LEO} \DeclareTextSymbol{\EOsacrifice}{LEO}{'305} \DeclareTextSymbolDefault{\EOsacrifice}{LEO} \DeclareTextSymbol{\EObuilding}{LEO}{'306} \DeclareTextSymbolDefault{\EObuilding}{LEO} % \end{macrocode} % As we mentioned above, the Epi-Olmec people used the same numbering system % as the Maya people did. Their numbering system was a vigesimal system and % the digits were written in a top-down fashion. Thus, we need a macro % that will typeset numbers in this fashion when it is used with \LaTeX\ % (actually $\epsilon$-\LaTeX). In addition, we need a macro that will % just output the vigesimal digits. Such a macro could be used with % $\Lambda$ with the |LTL| text and paragraph directions. To recapitulate, % we need to define two macros that will basically typeset vigesimal numbers % in either horizontal or vertical mode. % % For the various calculations that are performed, we need at least three % counter variables. The fourth is needed for the macro that typesets the % vigesimal numbers vertically and its usage is explained below. % \begin{macrocode} \newcount\EO@n \newcount\EO@m \newcount\EO@k \newcount\EO@l % \end{macrocode} % Although we do not foresee any complicated usage of these macros, we opted % to design them in such a way that they can have as argument either a % counter or a number. For this reason, we need to make sure the argument % is stored to one of our counter variables. Next, we pass the counter % to an auxiliary macro, described below. % \begin{macrocode} \def\vigesimal#1{% \EO@n#1\relax \@vigesimal{\EO@n}} % \end{macrocode} % The macro |\@vigesimal| is just an auxiliary macro that is used to % set the correct value to the counter |\EO@n|. % \begin{macrocode} \def\@vigesimal#1{% \EO@n\expandafter=\the#1\relax \@vig} % \end{macrocode} % The following macro is based on the macro |\hex|, whose definition % can be found on page~219 of the \TeX{book}. Therefore, the reader should % consult his/her copy of the \TeX{book} for more information regarding % the functionality of the following macro. % \begin{macrocode} \def\@vig{{\EO@m=\EO@n \divide\EO@n by20 \ifnum\EO@n>0 \@vig\fi \EO@k=\EO@n \multiply\EO@k by-20 \advance\EO@m by \EO@k \@vigdigit}} % \end{macrocode} % The macro that follows is used to get the name of the digit. Note % that all digits greater than one can be accessed with a command of % the form |\EOzz|, where |zz| is the Roman numeral that corresponds % the current value of counter |\EO@m|. % \begin{macrocode} \def\@vigdigit{\ifnum\EO@m=0\EOzero% \else \csname EO\@roman{\EO@m}\endcsname\fi} % \end{macrocode} % The macro |\StackedVigesimal| takes the same argument as the macro % |\vigesimal| and operates similarly. However, this macro should be used % when we want the ``stacked'' version of the number (i.e., the % typographically correct version). % \begin{macrocode} \def\StackedVigesimal#1{% \EO@n#1\relax \s@vigesimal{\EO@n}} % \end{macrocode} % The macro |\s@vigesimal| assigns to counter |\EO@n| the value of the % number or counter that the user has supplied. In order to typeset the % number in a top-down fashion, we use a list structure, which is initially % set to empty. The number will be typeset inside a vertical box that has % a rather strange baseline skip. The macro |\s@vig| constructs the list % of digits, which, in turn, will be typeset inside a horizontal % alignment command. % \begin{macrocode} \def\s@vigesimal#1{% \EO@n\expandafter=\the#1\relax \global\let\epi@lmecDigits\empty \vbox{\baselineskip=-1000\p@\lineskip=3\p@ \let\\=\cr% \s@vig% \halign{\hfil##\hfil\cr \epi@lmecDigits\cr}}} % \end{macrocode} % Now let us see how we construct the list that contains the various digits. % First we need some auxiliary macros that can be used to append elements % to a list. The two macros that follow have been designed after two macros % that are part of the PiC\TeX\ distribution. The second argument of the first % macro is the list and the first argument is the element that will be % appended to the list. Note that the list is actually augmented by calling % the second macro. This macro creates a new global macro that expands to % the list element and the list itself separated by the |\\| token. % \begin{macrocode} \def\@rightappend#1\t@#2{\expandafter\@@rightappend#2\t@{#1}#2} \def\@@rightappend#1\t@#2#3{\gdef#3{#1\\{#2}}} % \end{macrocode} % The macro |\s@vig| is the crux of the package! This macro builds the % list that contains the Epi-Olmec digits of the vigesimal representation % of the number. Each digit is ``stored'' in a global macro the name of which % has the form \texttt{\char`\\EO@d\textit{i}}, where \texttt{\textit{i}} % is a roman numeral that corresponds to the current value of the counter % |\EO@l|. Note that this counter is increased each time we execute this % macro. Each of the \texttt{\char`\\EO@d\textit{i}} macros is constructed % in a rather peculiar way: not only its expansion is constructed % ``on-the-fly'' but its name too! Clearly, if the reader is not a somehow % advanced \TeX\ programmer, he should not make any attempt to study the % code that follows as it is particularly complex, but not tricky at all. % \begin{macrocode} \def\s@vig{{\EO@m=\EO@n% \divide\EO@n by20 \ifnum\EO@n>0\s@vig\fi% \EO@k=\EO@n\relax \multiply\EO@k by-20\relax \advance\EO@m by \EO@k\relax \global\advance\EO@l by \@ne% \expandafter\xdef\csname EO@d\@roman{\EO@l}\endcsname{% \ifnum\EO@m=0\noexpand\noexpand\EOzero% \else\expandafter\noexpand% \expandafter\csname EO\@roman{\EO@m}\endcsname\fi} \expandafter\@rightappend\csname EO@d\@roman{\EO@l}\endcsname \t@\epi@lmecDigits}} % % \end{macrocode} % % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % \section{Usage Examples} % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % If one wishes to use the package with $\Lambda$, then the easiest way to % correctly typeset Epi-Olmec text is to have a minipage and set % accordingly the text and paragraph directions: % \begin{center} % \verb|\begin{minipage}{80pt} |\\ % \verb| \textdir LTL\pardir LTL|\\ % \verb|\EOku \EOji \EOkuu |\\ % \verb|\EOtze\\ \EOstep |\\ % \verb|\end{minipage} |\\ % \end{center} % With \LaTeX\ one can typeset Epi-Olmec text using a construct like the % following one: % \begin{center} % \verb| \begin{minipage}{80pt}|\\ % \verb| \begin{multicols}{3}|\\ % \verb| \EOku\\ \EOji\\ |\\ % \verb| \EOtze\\ \EOstep |\\ % \verb| \end{multicols} |\\ % \verb|\end{minipage} |\\ % \end{center} % Note that one cannot correctly typeset numbers using thse constructs. One % has to redefine the macro |\@vigdigit| so that it appends the |\\| token % to each digit that it computes. %\Finale