% \iffalse meta-comment % % Copyright (C) 1997 University of Hamburg. This file may be distributed % according to the GNU GPL. See file COPYING for details. % % The Babel package and the file language.skeleton on which this file % is based is Copyright (C) 1989 -- 1997 by Johannes Braams % % This file is part of the Ethiopian language package. % ---------------------------------------------------- % This system is distributed in the hope that it will be useful, % but WITHOUT ANY WARRANTY; without even the implied warranty of % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. % % Please do not request updates from us directly. Primary % distribution is through the CTAN archives. % The Ethiopian language style for the Babel system was designed % by a project team at the University of Hamburg. % % Please report errors to ethiop@informatik.uni-hamburg.de by % email. % % Universitaet Hamburg % FB Informatik, AB TGI % - Ethiopian Language Project Team - % Vogt-Koelln-Strasse 30 % 22527 Hamburg % Germany % % \fi % \CheckSum{1537} % % \iffalse % Tell the \LaTeX\ system who we are and write an entry on the % transcript. %<*dtx> \ProvidesFile{ethiop.dtx} % %\ProvidesFile{ethiop.ldf} % % \end{macrocode} % % We need two new font families for the Ethiopian language, % because there are more than 256 different characters. % Luckily we do not need a new font encoding, the existing % encoding \texttt{U} will do fine. % % \changes{v0.3}{1997/04/24}{Added support for 5 point fonts.} % % \begin{macrocode} %<*etha> \DeclareFontFamily{U}{etha}{} % Ethiopic A \DeclareFontShape{U}{etha}{m}{n}{ <5> etha6 <6> <7> <8> gen * etha <9> <10> <10.95> <12> <14.4> <17.28> <20.74> <24.88> etha10}{} % Ethiopic A Slanted \DeclareFontShape{U}{etha}{m}{sl}{ <-> ethas10}{} % Ethiopic A Italics \DeclareFontShape{U}{etha}{m}{it}{ <-> ssub * etha/m/sl}{} % Ethiopic A Bold \DeclareFontShape{U}{etha}{bx}{n}{ <5> <6> <7> <8> <9> ethab9 <10> ethab10 <10.95> ethab11 <12> ethab12 <14.4> ethab14 <17.28> <20.74> ethab18 <24.88> ethab24 <36> ethab36}{} % Ethiopic A Slanted Bold \DeclareFontShape{U}{etha}{bx}{sl}{ <5> <6> <7> <8> <9> ethasb9 <10> ethasb10 <10.95> ethasb11 <12> ethasb12 <14.4> ethasb14 <17.28> <20.74> ethasb18 <24.88> ethasb24 <36> ethasb36}{} % Ethiopic A Italics Bold \DeclareFontShape{U}{etha}{bx}{it}{ <-> ssub * etha/bx/sl}{} % % \end{macrocode} % % That was \file{uetha.fd}, now we have a look at \file{uethb.fd} where % only some minor changes are applied. % % \begin{macrocode} %<*ethb> \DeclareFontFamily{U}{ethb}{} % Ethiopic B \DeclareFontShape{U}{ethb}{m}{n}{ <5> ethb6 <6> <7> <8> gen * ethb <9> <10> <10.95> <12> <14.4> <17.28> <20.74> <24.88> ethb10}{} % Ethiopic B Slanted \DeclareFontShape{U}{ethb}{m}{sl}{ <-> ethbs10}{} % Ethiopic B Italics \DeclareFontShape{U}{ethb}{m}{it}{ <-> ssub * ethb/m/sl}{} % Ethiopic B Bold \DeclareFontShape{U}{ethb}{bx}{n}{ <5> <6> <7> <8> <9> ethbb9 <10> ethbb10 <10.95> ethbb11 <12> ethbb12 <14.4> ethbb14 <17.28> <20.74> ethbb18 <24.88> ethbb24 <36> ethbb36}{} % Ethiopic B Slanted Bold \DeclareFontShape{U}{ethb}{bx}{sl}{ <5> <6> <7> <8> <9> ethbsb9 <10> ethbsb10 <10.95> ethbsb11 <12> ethbsb12 <14.4> ethbsb14 <17.28> <20.74> ethbsb18 <24.88> ethbsb24 <36> ethbsb36}{} % Ethiopic B Italics Bold \DeclareFontShape{U}{ethb}{bx}{it}{ <-> ssub * ethb/bx/sl}{} % % \end{macrocode} % % If we want to use $\Omega$, we need an additional % font family for the 16-bit fonts. At the moment % we will only provide a rudimentary set of fonts. % % \changes{v0.7}{1998/03/30}{Added support for $\Omega$.} % % \begin{macrocode} %<*etho> \DeclareFontFamily{U}{etho}{} % Ethiopic B \DeclareFontShape{U}{etho}{m}{n}{ <-> etho10}{} % Ethiopic B Slanted \DeclareFontShape{U}{etho}{m}{sl}{ <-> ethos10}{} % Ethiopic B Italics \DeclareFontShape{U}{etho}{m}{it}{ <-> ssub * etho/m/sl}{} % Ethiopic B Bold \DeclareFontShape{U}{etho}{bx}{n}{ <-> ethob10}{} % Ethiopic B Slanted Bold \DeclareFontShape{U}{etho}{bx}{sl}{ <-> ethosb10}{} % Ethiopic B Italics Bold \DeclareFontShape{U}{etho}{bx}{it}{ <-> ssub * etho/bx/sl}{} % % \end{macrocode} % % We would like compatibility with Arab\TeX, but Arab\TeX\ cannot % handle our active characters. % \begin{macrocode} %<*arab> \def\noethiop{% \catcode`\^=7 \catcode`\_=8 \catcode`\.=12 \catcode`\:=12 \catcode`\'=12 } % \end{macrocode} % We save the current category codes of the offending % characters before changing them. % We might save some time and space by assuming that % these characters are always active, but we do not take % any chances. % \begin{macrocode} \def\eth@arab@codes{% \chardef\eth@hat@de=\catcode`\^% \chardef\eth@bar@de=\catcode`\_% \chardef\eth@dot@de=\catcode`\.% \chardef\eth@col@de=\catcode`\:% \chardef\eth@bkq@de=\catcode`\'% \noethiop } \def\eth@unarab@codes{% \catcode`\^=\eth@hat@de \catcode`\_=\eth@bar@de \catcode`\.=\eth@dot@de \catcode`\:=\eth@col@de \catcode`\'=\eth@bkq@de } % \end{macrocode} % We must patch the two internal % macros |\arab@codes| and |\unarab@codes|. % % The original definitions of the redefined macros are % inserted into the new definition by means of the % |\expandafter| primitive. This way we are less dependent on % the actual definition, so that we might survive a few % version changes of Arab\TeX. % \begin{macrocode} \expandafter\def\expandafter\arab@codes\expandafter{% \expandafter\eth@arab@codes \arab@codes } \expandafter\def\expandafter\unarab@codes\expandafter{% \unarab@codes \eth@unarab@codes } % % \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 \~} %%