%% %% This is file `engord.sty', %% generated with the docstrip utility. %% %% The original source files were: %% %% engord.dtx (with options: `package') %% %% This is a generated file. %% %% Copyright (C) 2000, 2003, 2006-2008 by %% Heiko Oberdiek %% %% 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 this license is in %% http://www.latex-project.org/lppl.txt %% and version 1.3 or later is part of all distributions of %% LaTeX version 2005/12/01 or later. %% %% This work has the LPPL maintenance status "maintained". %% %% This Current Maintainer of this work is Heiko Oberdiek. %% %% This work consists of the main source file engord.dtx %% and the derived files %% engord.sty, engord.pdf, engord.ins, engord.drv, engord-test1.tex. %% \begingroup \catcode44 12 % , \catcode45 12 % - \catcode46 12 % . \catcode58 12 % : \catcode64 11 % @ \expandafter\let\expandafter\x\csname ver@engord.sty\endcsname \ifcase 0% \ifx\x\relax % plain \else \ifx\x\empty % LaTeX \else 1% \fi \fi \else \catcode35 6 % # \catcode123 1 % { \catcode125 2 % } \expandafter\ifx\csname PackageInfo\endcsname\relax \def\x#1#2{% \immediate\write-1{Package #1 Info: #2.}% }% \else \def\x#1#2{\PackageInfo{#1}{#2, stopped}}% \fi \x{engord}{The package is already loaded}% \endgroup \expandafter\endinput \fi \endgroup \begingroup \catcode35 6 % # \catcode40 12 % ( \catcode41 12 % ) \catcode44 12 % , \catcode45 12 % - \catcode46 12 % . \catcode47 12 % / \catcode58 12 % : \catcode64 11 % @ \catcode123 1 % { \catcode125 2 % } \expandafter\ifx\csname ProvidesPackage\endcsname\relax \def\x#1#2#3[#4]{\endgroup \immediate\write-1{Package: #3 #4}% \xdef#1{#4}% }% \else \def\x#1#2[#3]{\endgroup #2[{#3}]% \ifx#1\@undefined \xdef#1{#3}% \fi \ifx#1\relax \xdef#1{#3}% \fi }% \fi \expandafter\x\csname ver@engord.sty\endcsname \ProvidesPackage{engord}% [2008/08/11 v1.7 Provides English ordinal numbers (HO)] \begingroup \catcode123 1 % { \catcode125 2 % } \def\x{\endgroup \expandafter\edef\csname EO@AtEnd\endcsname{% \catcode35 \the\catcode35\relax \catcode64 \the\catcode64\relax \catcode123 \the\catcode123\relax \catcode125 \the\catcode125\relax }% }% \x \catcode35 6 % # \catcode64 11 % @ \catcode123 1 % { \catcode125 2 % } \def\TMP@EnsureCode#1#2{% \edef\EO@AtEnd{% \EO@AtEnd \catcode#1 \the\catcode#1\relax }% \catcode#1 #2\relax } \TMP@EnsureCode{33}{12}% ! \TMP@EnsureCode{36}{3}% $ \TMP@EnsureCode{39}{12}% ' \TMP@EnsureCode{42}{12}% * \TMP@EnsureCode{46}{12}% . \TMP@EnsureCode{47}{12}% / \TMP@EnsureCode{60}{12}% < \TMP@EnsureCode{94}{7}% ^(superscript) \TMP@EnsureCode{96}{12}% ` \begingroup\expandafter\expandafter\expandafter\endgroup \expandafter\ifx\csname newcommand\endcsname\relax \def\EO@def{\def}% \else \def\EO@def#1{% \newcommand*{#1}{}% \def#1% }% \fi \begingroup\expandafter\expandafter\expandafter\endgroup \expandafter\ifx\csname RequirePackage\endcsname\relax \input infwarerr.sty\relax \else \RequirePackage{infwarerr}[2007/09/09]% \fi \newif\ifengordraise \engordraisetrue \begingroup\expandafter\expandafter\expandafter\endgroup \expandafter\ifx\csname DeclareOption\endcsname\relax \else \DeclareOption{normal}{\engordraisefalse}% \DeclareOption{raise}{\engordraisetrue}% \ProcessOptions*\relax \fi \expandafter\ifx\csname engordletters\endcsname\relax \EO@def\engordletters{% \ifengordraise \expandafter\engordtextsuperscript \fi }% \fi \expandafter\ifx\csname engordtextsuperscript\endcsname\relax \begingroup\expandafter\expandafter\expandafter\endgroup \expandafter\ifx\csname textsuperscript\endcsname\relax \def\engordtextsuperscript#1{% \relax \ifmmode ^{\rm#1}% \else $^{\rm#1}$% \fi }% \else \def\engordtextsuperscript{\textsuperscript}% \fi \fi \expandafter\ifx\csname engorderror\endcsname\relax \EO@def\engorderror#1{% #1\engordletters{!ERROR!}% \@PackageWarning{engord}{% `#1' is not an ordinal number% }% }% \fi \begingroup\expandafter\expandafter\expandafter\endgroup \expandafter\ifx\csname newcounter\endcsname\relax \else \EO@def\engord#1{% \engordnumber{\value{#1}}% }% \fi \EO@def\engordnumber#1{% \expandafter\EO@number\expandafter{\number#1}% } \def\EO@number#1{% \ifnum#1<1 % handle the error case \engorderror{#1}% \else \ifnum#1<21 % \EO@ord{#1}% \else \ifnum#1<100 % \EO@twodigits#1% \else \@ReturnAfterFi{% \EO@reverse#1\@nil{}\EO@afterreverse }% \fi \fi \fi } \long\def\@ReturnAfterFi#1\fi{\fi#1} \def\EO@ord#1{% #1% \expandafter\engordletters \ifcase#1{th}\or {st}\or {nd}\or {rd}\else {th}% \fi } \def\EO@twodigits#1#2{% #1\EO@ord{#2}% } \def\EO@reverse#1#2\@nil#3#4{% \ifx\\#2\\% #4{#1#3}% \else \@ReturnAfterFi{% \EO@reverse#2\@nil{#1#3}{#4}% }% \fi } \def\EO@afterreverse#1{% \EO@reverseback#1\@nil } \def\EO@reverseback#1#2#3\@nil{% \EO@reverse#3\@nil{}\@firstofone \ifnum#2#1<21 % \EO@ord{#2#1}% \else #2\EO@ord{#1}% \fi } \EO@AtEnd \endinput %% %% End of file `engord.sty'.