summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/tpcmfont/tpcmfont.fdd
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
committerNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
commite0c6872cf40896c7be36b11dcc744620f10adf1d (patch)
tree60335e10d2f4354b0674ec22d7b53f0f8abee672 /macros/latex/contrib/tpcmfont/tpcmfont.fdd
Initial commit
Diffstat (limited to 'macros/latex/contrib/tpcmfont/tpcmfont.fdd')
-rw-r--r--macros/latex/contrib/tpcmfont/tpcmfont.fdd445
1 files changed, 445 insertions, 0 deletions
diff --git a/macros/latex/contrib/tpcmfont/tpcmfont.fdd b/macros/latex/contrib/tpcmfont/tpcmfont.fdd
new file mode 100644
index 0000000000..67b8df1386
--- /dev/null
+++ b/macros/latex/contrib/tpcmfont/tpcmfont.fdd
@@ -0,0 +1,445 @@
+% \CheckSum{170}
+%\iffalse This is a META comment
+%
+% File `tpcmfont.fdd' by Timo Knuutila (knuutila@cs.utu.fi).
+%
+% Please do not change this file: if you feel it should be changed,
+% contact the author.
+%
+%<T1cmdh, >\ProvidesFile{T1cmdh.fd}
+%<T1cmfib, >\ProvidesFile{T1cmfib.fd}
+%<T1cmfr, >\ProvidesFile{T1cmfr.fd}
+%<T1cmr, >\ProvidesFile{T1cmr.fd}
+%<T1cmss, >\ProvidesFile{T1cmss.fd}
+%<T1cmtt, >\ProvidesFile{T1cmtt.fd}
+%<T1ccr, >\ProvidesFile{T1ccr.fd}
+%<OT1cmdh, >\ProvidesFile{OT1cmdh.fd}
+%<OT1cmfib, >\ProvidesFile{OT1cmfib.fd}
+%<OT1cmfr, >\ProvidesFile{OT1cmfr.fd}
+%<OT1cmr, >\ProvidesFile{OT1cmr.fd}
+%<OT1cmss, >\ProvidesFile{OT1cmss.fd}
+%<OT1cmtt, >\ProvidesFile{OT1cmtt.fd}
+%<Ucmr, >\ProvidesFile{Ucmr.fd}
+%<Ucmss, >\ProvidesFile{Ucmss.fd}
+%<Ucmtt, >\ProvidesFile{Ucmtt.fd}
+%<OMLcmm, >\ProvidesFile{OMLcmm.fd}
+%<OMScmsy, >\ProvidesFile{OMScmsy.fd}
+%<OMXcmex, >\ProvidesFile{OMXcmex.fd}
+%<*driver, >
+ \ProvidesFile{tpcmfont.drv}
+%</driver, >
+ [1995/08/21 v1.1 LaTeX font definitions with true point sizes]
+%
+%<*driver>
+\documentclass{ltxdoc}
+\usepackage{texnames}
+\GetFileInfo{tpcmfont.drv}
+\providecommand\dst{\expandafter{\normalfont\scshape docstrip}}
+\title{The file \texttt{tpcmfont.fdd} for use with
+ \LaTeXe.\thanks{This file has version
+ number \fileversion, dated \filedate.}}
+\date{\filedate}
+\author{Timo Knuutila}
+\begin{document}
+\maketitle
+ \DocInput{tpcmfont.fdd}
+\end{document}
+%</driver>
+%
+%\fi
+%
+% \section{Introduction}
+%
+% This file contains the external font information needed to load
+% those of the Computer Modern fonts that are also found from the
+% |sauter| package and all the DC fonts. Fontshapes are declared
+% in true point sizes instead of the traditional scaled versions.
+%
+% Lot of the suff here has been copied
+% from Mittelbach's and Schoepf's original |cmfonts.fdd|.
+% The structure of this file follows the original, and the discussion
+% occurring in |cmfonts.fdd| applies unless otherwise stated (it has been
+% mostly omitted here). The lines that have been copied are preceded by M\&S
+% (for Mittelbach and Schoepf).
+%
+% \section{The \texttt{docstrip} modules}
+%
+% The following modules are used to direct \texttt{docstrip} in
+% generating external files.
+% \begin{center}
+% \begin{tabular}{ll}
+% driver & produce a documentation driver file \\
+% fd & produce a font definition file \\[2pt]
+% OMLcmm & make Computer Modern Math italic\\
+% OMScmsy & make Computer Modern Symbols \\
+% OMXcmex & make Computer Modern large Symbols\\
+% OT1cmdh & make Computer Modern Dunhill (old encoding)\\
+% OT1cmfib & make Computer Modern Fibonacci (old encoding)\\
+% OT1cmfr & make Computer Modern Funny (old encoding)\\
+% OT1cmr & make Computer Modern Roman (old encoding)\\
+% OT1cmss & make Computer Modern Sans (old encoding)\\
+% OT1cmtt & make Computer Modern Typewriter (old encoding)\\
+% T1ccr & make Concrete Roman (Cork encoding)\\
+% T1cmdh & make Computer Modern Dunhill (Cork encoding)\\
+% T1cmfib & make Computer Modern Fibonacci (Cork encoding)\\
+% T1cmfr & make Computer Modern Funny (Cork encoding)\\
+% T1cmr & make Computer Modern Roman (Cork encoding)\\
+% T1cmss & make Computer Modern Sans (Cork encoding)\\
+% T1cmtt & make Computer Modern Typewriter (Cork encoding)\\
+% Ucmr & make Computer Modern Roman (unknown encoding)\\
+% Ucmss & make Computer Modern Sans (unknown encoding)\\
+% Ucmtt & make Computer Modern Typewriter (unknown encoding)\\
+% \end{tabular}
+% \end{center}
+%Note that the following modules (contained in the standard \LaTeX\
+% distribution) are \emph{not}
+% replaced: |OMLcmr|, |OMScmr|, |OMLccm|, |OT1ccr|, |OT2cmr|, and |OT2cmss|.
+%
+% \section{Installation}
+%
+% \subsection{\LaTeX\ files}
+%
+% Just replace the original |.fd| -files with the ones produced by
+% running \LaTeX\ on |tpcmfont.ins| and recreate the \LaTeX\ format.
+% Make a backup copy of the originals before making the replacement.
+% For example, in |unix| machines supposing that your
+%\begin{itemize}
+%\item |base| stuff is in directory |latexdir|
+% (like |/usr/local/lib/texmf/tex/latex2e/base|),
+%\item format files are in directory |fmtdir|
+%(like |/usr/local/lib/texmf/ini|), and
+%\item this package
+% has been unpacked to |distdir| (like |~/tmp|)):
+%\end{itemize}
+%\begin{verbatim}
+%cd latexdir
+%mkdir backup
+%mv *.fd backup
+%cp distdir/*.fd .
+%initex latex
+%...
+%cd fmtdir
+%mv latex.fmt latex.fmt.backup
+%mv latexdir/latex.fmt .
+%\end{verbatim}
+%
+% If you want to use this package
+% only for the Cork encoded fonts, replace only the files beginning with
+% T1. If you choose to use only the old encoding, you must replace
+% both OT1- and U- prefixed |.fd| files.
+%
+% \subsection{\MF\ files}
+% Run \TeX\ on |dcxtedt.tex| to create the necessary |.mf| sources
+% and place them into \MF{}'s input directory
+% (like |/usr/local/lib/texmf/fonts/public/dc/src|).
+%
+% \section{The font definition files}
+%
+% The basic macro below is used whenever a full set of fonts
+% (point sizes 5--12, 14, 17, 20, and 25) is
+% available. For some strange reason only the ugly code below
+% seems to work appropriately. The macro is copied to all |.fd|
+% files created.
+% \begin{macrocode}
+%<*fd>
+\providecommand*{\TPFamily}[5]{%
+\DeclareFontShape{#1}{#2}{#4}{#5}{%
+ <5> #35 <6> #36 <7> #37 <8> #38 <9> #39 <10> #310
+ <10.95> #311 <12> #312 <14.4> #314 <17.28> #317 <20.74> #320 <24.88> #325
+ }{}%
+}
+%</fd>
+% \end{macrocode}
+%
+% \subsection{Fonts with Cork encoding (\texttt{T1})}
+%
+% The DC-fonts are Computer Modern fonts
+% reimplemented by Norbert Schwarz and currently developed further by
+% Joerg Knappen. You can get them from \TeX{}
+% archives and from \TeX{} organizations.
+% The implementation allows one to easily create fonts for
+% all point sizes ever needed (package |mfnfss| contains the metafont
+% sources for Computer Concrete). With the conventional CM-fonts
+% one needs the |sauter| fonts (found from CTAN, too).
+%
+% \subsubsection{The Computer Modern Roman}
+%
+% Available in the shapes |n|, |sl|, |it|, |sc|, and |u|. Also bold
+% series |b| (with normal shape only), and bold extended |bx| with shapes
+% |n|, |sl|, and |it|.
+% \begin{macrocode}
+%<*T1cmr>
+\DeclareFontFamily{T1}{cmr}{}{}
+\TPFamily{T1}{cmr}{dcr}{m}{n}
+\TPFamily{T1}{cmr}{dcsl}{m}{sl}
+\TPFamily{T1}{cmr}{dcti}{m}{it}
+\TPFamily{T1}{cmr}{dccsc}{m}{sc}
+\TPFamily{T1}{cmr}{dcu}{m}{u}
+\TPFamily{T1}{cmr}{dcb}{b}{n}
+\TPFamily{T1}{cmr}{dcbx}{bx}{n}
+\TPFamily{T1}{cmr}{dcbxsl}{bx}{sl}
+\TPFamily{T1}{cmr}{dcbxti}{bx}{it}
+%</T1cmr>
+% \end{macrocode}
+%
+% \subsubsection{Computer Modern Fibonacci}
+%
+% Don Knuth's experiment.
+% \begin{macrocode}
+%<*T1cmfib>
+\DeclareFontFamily{T1}{cmfib}{}
+\TPFamily{T1}{cmfib}{dcfib}{m}{n}
+%</T1cmfib>
+% \end{macrocode}
+%
+% \subsubsection{Computer Modern Funny (Roman)}
+%
+% Another Don Knuth's experiment.
+% \begin{macrocode}
+%<*T1cmfr>
+\DeclareFontFamily{T1}{cmfr}{}
+\TPFamily{T1}{cmfr}{dcff}{m}{n}
+\TPFamily{T1}{cmfr}{dcfi}{m}{it}
+%</T1cmfr>
+% \end{macrocode}
+%
+% \subsubsection{Computer Modern Sans}
+%
+% Don Knuth's sans serif font (normal, semibold and bold extended series).
+% \begin{macrocode}
+%<*T1cmss>
+\DeclareFontFamily{T1}{cmss}{}
+\TPFamily{T1}{cmss}{dcss}{m}{n}
+\DeclareFontShape{T1}{cmss}{m}{it}
+ {<->sub*cmss/m/sl}{}
+\TPFamily{T1}{cmss}{dcssi}{m}{sl}
+\DeclareFontShape{T1}{cmss}{m}{sc}
+ {<->sub*cmr/m/sc}{}
+\TPFamily{T1}{cmss}{dcssdc}{sbc}{n}
+\TPFamily{T1}{cmss}{dcssbx}{bx}{n}
+%</T1cmss>
+% \end{macrocode}
+%
+% \subsubsection{Computer Modern Typewriter}
+%
+% \begin{macrocode}
+%<*T1cmtt>
+\DeclareFontFamily{T1}{cmtt}{\hyphenchar \font\m@ne}
+\TPFamily{T1}{cmtt}{dctt}{m}{n}
+\TPFamily{T1}{cmtt}{dcitt}{m}{it}
+\TPFamily{T1}{cmtt}{dcsltt}{m}{sl}
+\TPFamily{T1}{cmtt}{dctcsc}{m}{sc}
+%</T1cmtt>
+% \end{macrocode}
+%
+% \subsubsection{Computer Modern Dunhill}
+%
+% \begin{macrocode}
+%<*T1cmdh>
+\DeclareFontFamily{T1}{cmdh}{}
+\TPFamily{T1}{cmdh}{dcdunh}{m}{n}
+%</T1cmdh>
+% \end{macrocode}
+%
+% \subsubsection{Concrete Roman}
+%
+% \begin{macrocode}
+%<*T1ccr>
+\DeclareFontFamily{T1}{ccr}{}{}
+\TPFamily{T1}{ccr}{dccr}{m}{n}
+\TPFamily{T1}{ccr}{dcti}{m}{it}
+\TPFamily{T1}{ccr}{dccsc}{m}{sc}
+\TPFamily{T1}{ccr}{dcslc}{c}{sl}
+\DeclareFontShape{T1}{ccr}{bx}{sl}{
+%<-nowarn> <->sub * cmr/bx/it
+%<+nowarn> <->ssub * cmr/bx/it
+}{}
+\DeclareFontShape{T1}{ccr}{bx}{n}{
+%<-nowarn> <->sub * cmr/bx/n
+%<+nowarn> <->ssub * cmr/bx/n
+}{}
+\DeclareFontShape{T1}{ccr}{bx}{it}{
+%<-nowarn> <->sub * cmr/bx/it
+%<+nowarn> <->ssub * cmr/bx/it
+}{}
+%</T1ccr>
+% \end{macrocode}
+%
+% \subsection{Fonts with the old \TeX{} text encoding (\texttt{OT1})}
+%
+% \subsubsection{Computer Modern Roman (\texttt{OT1})}
+%
+% M\&S: Beside the |OT1| encoding we also define the same family as |U|
+% encoded which is used for accepting old sources with stuff like
+% |\newmathalphabet| in it.
+% \begin{macrocode}
+%<*OT1cmr,Ucmr>
+%<+OT1cmr>\DeclareFontFamily{OT1}{cmr}{}
+%<+Ucmr>\DeclareFontFamily{U}{cmr}{}
+%<+OT1cmr>\TPFamily{OT1}{cmr}{cmr}{m}{n}
+%<+Ucmr>\TPFamily{U}{cmr}{cmr}{m}{n}
+%<+OT1cmr>\TPFamily{OT1}{cmr}{cmsl}{m}{sl}
+%<+Ucmr>\TPFamily{U}{cmr}{cmsl}{m}{sl}
+%<+OT1cmr>\TPFamily{OT1}{cmr}{cmti}{m}{it}
+%<+Ucmr>\TPFamily{U}{cmr}{cmti}{m}{it}
+%<+OT1cmr>\TPFamily{OT1}{cmr}{cmcsc}{m}{sc}
+%<+Ucmr>\TPFamily{U}{cmr}{cmcsc}{m}{sc}
+% \end{macrocode}
+% M\&S: Here we try to cure the famous \$ $\to$ \pounds{} bug:
+% \begin{macrocode}
+%<+OT1cmr>\TPFamily{OT1}{cmr}{cmu}{m}{ui}
+%<+Ucmr>\TPFamily{U}{cmr}{cmu}{m}{ui}
+%<+OT1cmr,Ucmr>%%%%%%% bold series
+%<+OT1cmr>\TPFamily{OT1}{cmr}{cmb}{b}{n}
+%<+Ucmr>\TPFamily{U}{cmr}{cmb}{b}{n}
+%<+OT1cmr,Ucmr>%%%%%%%% bold extended series
+%<+OT1cmr>\TPFamily{OT1}{cmr}{cmbx}{bx}{n}
+%<+Ucmr>\TPFamily{U}{cmr}{cmbx}{bx}{n}
+%<+OT1cmr>\TPFamily{OT1}{cmr}{cmbxsl}{bx}{sl}
+%<+Ucmr>\TPFamily{U}{cmr}{cmbxsl}{bx}{sl}
+%<+OT1cmr>\TPFamily{OT1}{cmr}{cmbxti}{bx}{it}
+%<+Ucmr>\TPFamily{U}{cmr}{cmbxti}{bx}{it}
+%<+OT1cmr>\DeclareFontShape{OT1}{cmr}{bx}{ui}
+%<+Ucmr>\DeclareFontShape{U}{cmr}{bx}{ui}
+%<+nowarn> {<->sub * cmr/m/ui}{}
+%<-nowarn> {<->ssub * cmr/m/ui}{}
+%</OT1cmr,Ucmr>
+% \end{macrocode}
+%
+% \subsubsection{Computer Modern Sans (\texttt{OT1})}
+%
+% \begin{macrocode}
+%<*OT1cmss,Ucmss>
+%<+OT1cmss>\DeclareFontFamily{OT1}{cmss}{}
+%<+Ucmss>\DeclareFontFamily{U}{cmss}{}
+%<+OT1cmss>\TPFamily{OT1}{cmss}{cmss}{m}{n}
+%<+Ucmss>\TPFamily{U}{cmss}{cmss}{m}{n}
+%<+OT1cmss,Ucmss>% Font undefined, therefore substituted
+%<+OT1cmss>\DeclareFontShape{OT1}{cmss}{m}{it}
+%<+Ucmss>\DeclareFontShape{U}{cmss}{m}{it}
+%<-nowarn> {<->sub*cmss/m/sl}{}
+%<+nowarn> {<->ssub*cmss/m/sl}{}
+%<+OT1cmss>\TPFamily{OT1}{cmss}{cmssi}{m}{sl}
+%<+Ucmss>\TPFamily{U}{cmss}{cmssi}{m}{sl}
+%<+OT1cmss,Ucmss>%%%%%%% Font/shape undefined, therefore substituted
+%<+OT1cmss>\DeclareFontShape{OT1}{cmss}{m}{sc}
+%<+Ucmss>\DeclareFontShape{U}{cmss}{m}{sc}
+ {<->sub*cmr/m/sc}{}
+%<+OT1cmss,Ucmss>%%%%%%% Font/shape undefined, therefore substituted
+%<+OT1cmss>\DeclareFontShape{OT1}{cmss}{m}{ui}
+%<+Ucmss>\DeclareFontShape{U}{cmss}{m}{ui}
+ {<->sub*cmr/m/ui}{}
+%<+OT1cmss,Ucmss>%%%%%%%% semibold condensed series
+%<+OT1cmss>\TPFamily{OT1}{cmss}{cmssdc}{sbc}{n}
+%<+Ucmss>\TPFamily{U}{cmss}{cmssdc}{sbc}{n}
+%<+OT1cmss,Ucmss>%%%%%%%%% bold extended series
+%<+OT1cmss>\TPFamily{OT1}{cmss}{cmssbx}{bx}{n}
+%<+Ucmss>\TPFamily{U}{cmss}{cmssbx}{bx}{n}
+%<+OT1cmss,Ucmss>%%%%%%% Font/shape undefined, therefore substituted
+%<+OT1cmss>\DeclareFontShape{OT1}{cmss}{bx}{ui}
+%<+Ucmss>\DeclareFontShape{U}{cmss}{bx}{ui}
+ {<->sub*cmr/bx/ui}{}
+%</OT1cmss,Ucmss>
+% \end{macrocode}
+%
+% \subsubsection{Computer Modern Typewriter (\texttt{OT1})}
+%
+% We use here no substitutions (outside the |cmtt| family), so the
+% discussion in the original |cmfonts.fdd| can be forgotten.
+% \begin{macrocode}
+%<*OT1cmtt,Ucmtt>
+%<+OT1cmtt>\DeclareFontFamily{OT1}{cmtt}{\hyphenchar \font\m@ne}
+%<+Ucmtt>\DeclareFontFamily{U}{cmtt}{\hyphenchar \font\m@ne}
+%<+OT1cmtt>\TPFamily{OT1}{cmtt}{cmtt}{m}{n}
+%<+Ucmtt>\TPFamily{U}{cmtt}{cmtt}{m}{n}
+%<+OT1cmtt,Ucmtt>%%%%%% make sure subst shapes are available
+%<+OT1cmtt>\TPFamily{OT1}{cmtt}{cmitt}{m}{it}
+%<+Ucmtt>\TPFamily{U}{cmtt}{cmitt}{m}{it}
+%<+OT1cmtt>\TPFamily{OT1}{cmtt}{cmsltt}{m}{sl}
+%<+Ucmtt>\TPFamily{U}{cmtt}{cmsltt}{m}{sl}
+%<+OT1cmtt>\TPFamily{OT1}{cmtt}{cmtcsc}{m}{sc}
+%<+Ucmtt>\TPFamily{U}{cmtt}{cmtcsc}{m}{sc}
+%<+OT1cmtt>\DeclareFontShape{OT1}{cmtt}{m}{ui}
+%<+Ucmtt>\DeclareFontShape{U}{cmtt}{m}{ui}
+%<-nowarn> {<->sub * cmtt/m/it}{}
+%<+nowarn> {<->ssub * cmtt/m/it}{}
+%<+OT1cmtt>\DeclareFontShape{OT1}{cmtt}{bx}{n}
+%<+Ucmtt>\DeclareFontShape{U}{cmtt}{bx}{n}
+%<-nowarn> {<->sub * cmtt/m/n}{}
+%<+nowarn> {<->ssub * cmtt/m/n}{}
+%<+OT1cmtt>\DeclareFontShape{OT1}{cmtt}{bx}{it}
+%<+Ucmtt>\DeclareFontShape{U}{cmtt}{bx}{it}
+%<-nowarn> {<->sub * cmtt/m/it}{}
+%<+nowarn> {<->ssub * cmtt/m/it}{}
+%<+OT1cmtt>\DeclareFontShape{OT1}{cmtt}{bx}{ui}
+%<+Ucmtt>\DeclareFontShape{U}{cmtt}{bx}{ui}
+%<-nowarn> {<->sub * cmtt/m/it}{}
+%<+nowarn> {<->ssub * cmtt/m/it}{}
+%</OT1cmtt,Ucmtt>
+% \end{macrocode}
+%
+% \subsubsection{Computer Modern Funny (\texttt{OT1})}
+%
+% \begin{macrocode}
+%<*OT1cmfr>
+\DeclareFontFamily{OT1}{cmfr}{}
+\TPFamily{OT1}{cmfr}{cmff}{m}{n}
+\TPFamily{OT1}{cmfr}{cmfi}{m}{it}
+%</OT1cmfr>
+% \end{macrocode}
+%
+% \subsubsection{Computer Modern Dunhill (\texttt{OT1})}
+%
+% \begin{macrocode}
+%<*OT1cmdh>
+\DeclareFontFamily{OT1}{cmdh}{}
+\TPFamily{OT1}{cmdh}{cmdunh}{m}{n}
+%</OT1cmdh>
+% \end{macrocode}
+%
+% \subsubsection{Computer Modern Fibonacci (\texttt{OT1})}
+%
+% \begin{macrocode}
+%<*OT1cmfib>
+\DeclareFontFamily{OT1}{cmfib}{}
+\TPFamily{OT1}{cmfib}{cmfib}{m}{n}
+%</OT1cmfib>
+% \end{macrocode}
+%
+% \subsection{Math fonts}
+%
+% \subsubsection{Computer Modern Math italics}
+% \begin{macrocode}
+%<*OMLcmm>
+\DeclareFontFamily{OML}{cmm}{\skewchar\font'177}
+\TPFamily{OML}{cmm}{cmmi}{m}{it}
+\TPFamily{OML}{cmm}{cmmib}{b}{it}
+\DeclareFontShape{OML}{cmm}{bx}{it}
+ {<-> ssub * cmm/b/it}{}
+%</OMLcmm>
+% \end{macrocode}
+%
+% \subsubsection{Computer Modern Math symbols}
+%
+% \begin{macrocode}
+%<*OMScmsy>
+\DeclareFontFamily{OMS}{cmsy}{\skewchar\font'60}
+\TPFamily{OMS}{cmsy}{cmsy}{m}{n}
+\TPFamily{OMS}{cmsy}{cmbsy}{b}{n}
+%</OMScmsy>
+% \end{macrocode}
+%
+% \subsubsection{Computer Modern large symbols}
+%
+% \begin{macrocode}
+%<*OMXcmex>
+\DeclareFontFamily{OMX}{cmex}{}{}
+\TPFamily{OMX}{cmex}{cmex}{m}{n}
+%</OMXcmex>
+% \end{macrocode}
+% \begin{macrocode}
+\endinput
+% \end{macrocode}
+%
+% \Finale
+%