\def\fileversion{4.2}
\def\filedate{94/11/11}
\def\docdate {94/11/06}
%
% \iffalse
%<*driver>
\documentclass{ltxdoc}
\begin{document}
 \title{The \textsf{psfonts} package\thanks{This file
        has version number \fileversion, last
        revised \filedate.}}
 \author{Sebastian Rahtz\\Sebastian.Rahtz@tex.ac.uk}
 \date{\filedate}
 \maketitle
 \DocInput{psfonts.dtx}
\end{document}
%</driver>
% \fi
% \CheckSum{572}
%
% \section{Introduction}
%
% This file contains suitable package files to load
% the standard PostScript fonts. The font definition files and
% font metrics are available in both T1 and OT1 form in the companion
% CTAN fonts/metrics collection.
%
% \StopEventually{}
%
% \section{The {\tt docstrip} modules}
%
% \subsection{Adobe Symbol font}
%    \begin{macrocode}
%<*Upsy>
\typeout{File \space Upsy.fd\space loading \space Adobe\space Symbol}%
\DeclareFontFamily{U}{psy}{}%
\DeclareFontShape{U}{psy}{m}{n}{<->psyr}{}%
\DeclareFontShape{U}{psy}{m}{i}{<->ssub * psy/m/n}{}%
%</Upsy>
%    \end{macrocode}
% \subsection{Adobe Zapf Dingbats}
%    \begin{macrocode}
%<*Upzd>
\typeout{File \space Upzd.fd\space loading \space Adobe\space ZapfDingbats}%
\DeclareFontFamily{U}{pzd}{}%
\DeclareFontShape{U}{pzd}{m}{n}{<->pzdr}{}%
%</Upzd>
%    \end{macrocode}
% \section{Package files for PostScript fonts}
%    \begin{macrocode}
%<*times>
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{times}[\filedate\space\fileversion\space
 Times PSNFSS2e package]
\renewcommand{\sfdefault}{phv}
\renewcommand{\rmdefault}{ptm}
\renewcommand{\ttdefault}{pcr}
%</times>
%<*palatino>
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{palatino}[\filedate\space\fileversion\space
Palatino PSNFSS2e package]
\renewcommand{\rmdefault}{ppl}
\renewcommand{\sfdefault}{phv}
\renewcommand{\ttdefault}{pcr}
%</palatino>
%<*helvet>
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{helvet}[\filedate\space\fileversion\space
Helvetica PSNFSS2e package]
\renewcommand{\sfdefault}{phv}
%</helvet>
%<*avant>
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{avant}[\filedate\space\fileversion\space
AvantGarde PSNFSS2e package]
\renewcommand{\sfdefault}{pag}
%</avant>
%<*newcent>
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{newcent}[\filedate\space\fileversion\space
NewCenturySchoolbook PSNFSS2e package]
\renewcommand{\rmdefault}{pnc}
\renewcommand{\sfdefault}{pag}
\renewcommand{\ttdefault}{pcr}
%</newcent>
%<*bookman>
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{bookman}[\filedate\space\fileversion\space
Bookman PSNFSS2e package]
\renewcommand{\rmdefault}{pbk}
\renewcommand{\sfdefault}{pag}
\renewcommand{\ttdefault}{pcr}
%</bookman>
%<*garamond>
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{garamond}[\filedate\space\fileversion\space
Garamond PSNFSS2e package]
\renewcommand{\rmdefault}{pgm}
\renewcommand{\sfdefault}{pop}
\renewcommand{\ttdefault}{pcr}
%</garamond>
%<*basker>
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{basker}[\filedate\space\fileversion\space
Baskerville PSNFSS2e package]
\renewcommand{\rmdefault}{pnb}
%</basker>
%<*mtimes>
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{mtimes}[\filedate\space\fileversion\space
Monotype Times PSNFSS2e package]
\renewcommand{\rmdefault}{mnt}
%</mtimes>
%<*bembo>
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{bembo}[\filedate\space\fileversion\space
Bembo PSNFSS2e package]
\renewcommand{\rmdefault}{pbb}
\renewcommand{\sfdefault}{pop}
\renewcommand{\ttdefault}{pcr}
%</bembo>
%<*pifont>
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{pifont}[\filedate\space\fileversion\space
Pi font PSNFSS2e package]
%    \end{macrocode}
% Now some useful commands for Pi fonts (Dingbats, Symbol etc); they
% all assume you know the character number of the (unmapped) font
%    \begin{macrocode}
\newcommand{\Pifont}[1]{\fontfamily{#1}\fontencoding{U}%
\fontseries{m}\fontshape{n}\selectfont}
\newcommand{\Pisymbol}[2]{{\Pifont{#1}\char#2}}
\newcommand{\Pifill}[2]{\leaders\hbox{\makebox[0.2in]{%
       \Pisymbol{#1}{#2}}}\hfill\kern\z@}
\newcommand{\Piline}[2]{\par\noindent\hspace{0.5in}\Pifill{#1}{#2}%
       \hspace{0.5in}\kern\z@\par}
\newenvironment{Pilist}[2]%
{\begin{list}{\Pisymbol{#1}{#2}}{}}%
{\end{list}}%
%    \end{macrocode}
% A Pi number generator (from ideas by David Carlisle), for use in
% lists where items are suffixed by symbols taken in sequence from a
% Pi font. Usage is in lists just like enumerate.
%
% |\Pinumber| outputs the appropriate symbol, where |#2| is the name of a
% \LaTeX\ counter  and |#1| is the font family.
%    \begin{macrocode}
\def\Pinumber#1#2{\protect\Pisymbol{#1}{\arabic{#2}}}
\newenvironment{Piautolist}[2]{%
\ifnum \@enumdepth >3 \@toodeep\else
      \advance\@enumdepth \@ne
%    \end{macrocode}
% We force the labels and cross-references into a very plain style (eg
% no brackets around `numbers', or dots after them).
%    \begin{macrocode}
      \edef\@enumctr{enum\romannumeral\the\@enumdepth}%
  \expandafter\def\csname p@enum\romannumeral\the\@enumdepth\endcsname{}%
  \expandafter\def\csname labelenum\romannumeral\the\@enumdepth\endcsname{%
     \csname theenum\romannumeral\the\@enumdepth\endcsname}%
  \expandafter\def\csname theenum\romannumeral\the\@enumdepth\endcsname{%
     \Pinumber{#1}{enum\romannumeral\the\@enumdepth}}%
  \list{\csname label\@enumctr\endcsname}{
        \@nmbrlisttrue\def\@listctr{\@enumctr}\setcounter{\@enumctr}{#2}
        \addtocounter{\@enumctr}{-1}%
        \def\makelabel##1{\hss\llap{##1}}}
\fi}{\endlist}
%    \end{macrocode}
% All the old Dingbat commands still work.
%    \begin{macrocode}
\newcommand{\ding}{\Pisymbol{pzd}}
\def\dingfill#1{\leaders\hbox{\makebox[0.2in]{\Pisymbol{pzd}{#1}}}\hfill}
\def\dingline#1{\Piline{pzd}{#1}}
\newenvironment{dinglist}[1]{\begin{Pilist}{pzd}{#1}}%
  {\end{Pilist}}
\newenvironment{dingautolist}[1]{\begin{Piautolist}{pzd}{#1}}%
  {\end{Piautolist}}
{\Pifont{pzd}}
{\Pifont{psy}}
%</pifont>
%<*chancery>
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{chancery}[\filedate\space\fileversion\space
Zapf Chancery PSNFSS2e package]
\renewcommand{\rmdefault}{pzc}
%</chancery>
%<*OT1var>
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{ot1var}[\filedate\space\fileversion\space
OT1var PSNFSS2e package]
\def\TexturesExtras{% by Constantin Kahn (kahn@math.uni-hannover.de)
\chardef\pounds='243
\def\H##1{{\accent"07D ##1}}%
\def\.##1{{\accent"05F ##1}}%
\chardef\aa='214
\chardef\AA='201
\chardef\ae='032
\chardef\oe='033
\chardef\o='034
\chardef\AE='035
\chardef\OE='036
\chardef\O='037
\chardef\ss='031
\chardef\copyright='251
\let\l=\undefined % missing from Macintosh character set
\let\L=\undefined % missing from Macintosh character set
\let\j=\undefined % missing from PS fonts
\def\pldots{\relax\ifmmode\@ldots\else\char'311 \fi}%
\def\@lb{\relax\ifmmode\lbrace\else\char`\{\fi}%
\def\@rb{\relax\ifmmode\rbrace\else\char`\}\fi}%
\def\ps@mathhexbox##1##2##3##4##5##6{\ifmmode\mathhexbox##1##2##3\else
  \leavevmode\char'##4##5##6 \fi}%
\def\S{\protect\ps@mathhexbox278244}%
\def\P{\protect\ps@mathhexbox27B246}%
\def\dag{\protect\ps@mathhexbox279240}%
\def\ddag{\protect\ps@mathhexbox27A340}%
\chardef\cent="0A2
\chardef\yen="0B4
\chardef\currency="0DB
\chardef\quotesingle="00D
\chardef\guillemotleft="0C7
\chardef\guilsinglleft="0DC
\chardef\guilsinglright="0DD
\chardef\quotesinglbase="0E2
\chardef\quotedblbase="0E3
\chardef\guillemotright="0C8
\def\backslash{\protect\b@ckslash}%
\def\b@ckslash{\ifmmode \delimiter"26E30F \else \char`\\\fi}%
\chardef\perthousand='344
\chardef\ordfeminine='273
\chardef\ordmasculine='274
}
\def\RokickiExtras{%
\chardef\pounds='243
\def\H##1{{\accent"0CD ##1}}%
\def\.##1{{\accent"0C7 ##1}}%
\chardef\aa='230
\chardef\AA='310
\chardef\ae='032
\chardef\oe='033
\chardef\o='034
\chardef\AE='035
\chardef\OE='036
\chardef\O='037
\chardef\ss='031
\chardef\l='370
\chardef\L='350
\let\j=\undefined % missing from PS fonts
\def\pldots{\relax\ifmmode\@ldots\else\char'274 \fi}%
\def\@lb{\relax\ifmmode\lbrace\else\char`\{\fi}%
\def\@rb{\relax\ifmmode\rbrace\else\char`\}\fi}%
\def\ps@mathhexbox##1##2##3##4##5##6{\ifmmode\mathhexbox##1##2##3\else
  \leavevmode\char'##4##5##6 \fi}%
\def\S{\protect\ps@mathhexbox278247}%
\def\P{\protect\ps@mathhexbox27B266}%
\def\dag{\protect\ps@mathhexbox279262}%
\def\ddag{\protect\ps@mathhexbox27A263}%
\chardef\cent="0A2
\chardef\yen="0A5
\chardef\currency="0A8
\chardef\quotesingle="00D
\chardef\guillemotleft="0AB
\chardef\guilsinglleft="0AC
\chardef\guilsinglright="0AD
\chardef\quotesinglbase="0B8
\chardef\quotedblbase="0B9
\chardef\guillemotright="0BB
\chardef\<=`<%
\chardef\>=`>%
\def\backslash{\protect\b@ckslash}%
\def\b@ckslash{\ifmmode \delimiter"26E30F \else \char`\\\fi}%
\chardef\vbar=`\|%
\chardef\perthousand='275
\chardef\ordfeminine='343
\chardef\ordmasculine='353
\chardef\asciitilde=`~%
\chardef\underscore=`_%
}
\DeclareOption{dvips}{%
  \AtBeginDocument{\RokickiExtras}%
}
\DeclareOption{textures}{%
  \AtBeginDocument{\TexturesExtras}%
}
\ExecuteOptions{dvips} 
\ProcessOptions
%</OT1var>
%<*mathptm>
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{mathptm}[1994/04/06 Times + math package from fontinst]
%    \end{macrocode}
%This package loads the Adobe Times fonts and
%the mathptm fonts;
%The virtual fonts are produced by fontinst; the fonts 
%can be built by running tex on
%fontptcm.tex from the fontinst package.
%    \begin{macrocode}
% The family is Times Roman
\def\rmdefault{ptm}
\DeclareSymbolFont{operators}   {OT1}{ptmcm}{m}{n}
\DeclareSymbolFont{letters}     {OML}{ptmcm}{m}{it}
\DeclareSymbolFont{symbols}     {OMS}{pzccm}{m}{n}
\DeclareSymbolFont{largesymbols}{OMX}{psycm}{m}{n}
\DeclareSymbolFont{bold}        {OT1}{ptm}{bx}{n}
\DeclareSymbolFont{italic}      {OT1}{ptm}{m}{it}
%    \end{macrocode}
% If we're in compatibility mode, defined |\mathbf| and |\mathit|.
%    \begin{macrocode}
\@ifundefined{mathbf}{}{\DeclareMathAlphabet{\mathbf}{OT1}{ptm}{bx}{n}}
\@ifundefined{mathit}{}{\DeclareMathAlphabet{\mathit}{OT1}{ptm}{m}{it}}
%    \end{macrocode}
% An |\omicron| command, to fill the gap.
%    \begin{macrocode}
\DeclareMathSymbol{\omicron}{0}{operators}{`\o}
%    \end{macrocode}
% Reduce the space around math operators
%    \begin{macrocode}
\thinmuskip=2mu
\medmuskip=2.5mu plus 1mu minus 1mu
\thickmuskip=4mu plus 1.5mu minus 1mu
%    \end{macrocode}
% No bold math.
%    \begin{macrocode}
\def\boldmath{%
   \@warning{there is no bold Symbol font}%
   \global\let\boldmath=\relax
}
\DeclareMathSizes{5}{5}{5}{5}
\DeclareMathSizes{6}{6}{5}{5}
\DeclareMathSizes{7}{7}{5}{5}
\DeclareMathSizes{8}{8}{6}{5}
\DeclareMathSizes{9}{9}{7}{5}
\DeclareMathSizes{10}{10}{7.4}{6}
\DeclareMathSizes{10.95}{10.95}{8}{6}
\DeclareMathSizes{12}{12}{9}{7}
\DeclareMathSizes{14.4}{14.4}{10.95}{8}
\DeclareMathSizes{17.28}{17.28}{12}{10}
\DeclareMathSizes{20.74}{20.74}{14.4}{12}
\DeclareMathSizes{24.88}{24.88}{17.28}{14.4}
%</mathptm>
%    \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         \~}
