% \iffalse meta-comment
%
% Copyright 1995 The University of Cambridge and Robin Fairbairns.
% All rights reserved.
% 
%  This file 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.
% 
% 
% IMPORTANT NOTICE:
% 
% You are NOT ALLOWED to take money for the distribution or use of
% either this file or a changed version, except for a nominal charge
% for copying etc.
% \fi
% \CheckSum{32767}
%
%\iffalse        This is a META comment
%
% File `oldstyle.dtx'.
%
%<Ucmm>    \ProvidesFile{Ucmm.fd}
%<oldstyle>\ProvidesFile{oldstyle.sty}
%<*driver>
           \ProvidesFile{oldstyle.drv}
%</driver>
           [1995/05/04 v0.1 Oldstyle numerals font definitions\typeout{!!!}]
%
%<*driver>
\documentclass{ltxdoc}
\GetFileInfo{oldstyle.drv}
\usepackage{oldstyle}
\providecommand\dst{\expandafter{\normalfont\scshape docstrip}}
\title{The file \texttt{oldstyle.dtx} for use with
      \LaTeXe.\thanks{This file has version
           number \fileversion, dated \filedate.}}
\date{\filedate}
\author{Robin Fairbairns}
\begin{document}
\maketitle
 \DocInput{oldstyle.dtx}
\end{document}
%</driver>
%
%\fi
%
% \section{Introduction}
%
% This file contains the external font information needed to load the
% |cmmi| and |cmmib| fonts for use to produce oldstyle numbers in
% \LaTeX{} text, together with a trivial \LaTeXe{} package to
% enable them to be used in LaTeX text.
%
% The package |oldstyle| implements two commands (one in \LaTeX~2.09
% style~--- |\oldstyle|~--- and one in \LaTeXe{} style~--- |\textos|).
%
% The numbers look like this:
%
% \begin{center}\sf
%   \begin{tabular}{ll}
%   Command & Typeset text \\
%   \hline
%   |0123456789| & \textrm{0123456789} \\
%                & (normal numbers) \\
%   |\textos{0123456789}| & \textos{0123456789} \\
%   |\textbf{0123456789}| & \textbf{\textrm{0123456789}} \\
%                         & (normal boldface) \\
%   |\textbf{%|           &                   \\
%   |  \textos{0123456789}}| & \textbf{\textos{0123456789}}
%   \end{tabular}
% \end{center}
%
% I've not (yet) addressed the problems of using the oldstyle numbers
% in PostScript expert font sets; since there's a lot of work going on
% in the area of PostScript use\footnote{The betatest revised
% \textsf{fontinst} work, and Alan Jeffrey's proposed update of
% \textsf{fontinst} itself}, I don't believe that's a suitable area
% for jiffy work such as this.
%
% \section{The \texttt{.fd} file}
%
% The |.fd| file specifies a version of the font family |cmm| in |U|
% encoding.  This is the best I could think of (only the digits are
% oldstyle numbers, after all).
%
% I have done what I believe to be the \emph{proper}, and made
% oldstyle a new font shape, but I'm not (yet) sure about the `name'
% (|os|) I've given it.  Hence, this release is still only preliminary.
% 
%    \begin{macrocode}
%<*Ucmm>
\DeclareFontFamily{U}{cmm}{\skewchar\font'177}
\DeclareFontShape{U}{cmm}{m}{os}
    { <5> <6> <7> <8> <9> gen * cmmi
      <10><10.95>cmmi10
      <12><14.4><17.28><20.74><24.88>cmmi12
      }{}
\DeclareFontShape{U}{cmm}{b}{os}{%
      <5> <6> <7> <8> <9> gen * cmmib
      <10> <10.95> <12> <14.4> <17.28> <20.74> <24.88> cmmib10
      }{}
\DeclareFontShape{U}{cmm}{bx}{os}
   {<-> ssub * cmm/b/os}{}
%</Ucmm>
%    \end{macrocode}
%
% \section{The \texttt{.sty} file}
%
% The package is also trivial.  It defines an oldstyle family and then
% declares commands to use it.
%
%    \begin{macrocode}
%<*oldstyle>
\DeclareOldFontCommand {\oldstyle}{\usefont{U}{cmm}{m}{os}}%
                                  {\mathos}
\DeclareTextFontCommand{\textos}{\oldstylefamily}
\DeclareMathAlphabet   {\mathos}{U}{cmm}{m}{os}
%    \end{macrocode}
%
% A series of constructs follows that enable the above to work; the
% constructs are mostly copied from the source of \LaTeXe{} itself.
%    \begin{macrocode}
\DeclareRobustCommand\oldstylefamily{%
            \not@math@alphabet\osshape\mathos
            \usefont{U}{cmm}\f@series{os}}
%</oldstyle>
%    \end{macrocode}
%
% 
% \end{document}
