summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/type1cm
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/type1cm
Initial commit
Diffstat (limited to 'macros/latex/contrib/type1cm')
-rw-r--r--macros/latex/contrib/type1cm/type1cm-doc.pdfbin0 -> 320601 bytes
-rw-r--r--macros/latex/contrib/type1cm/type1cm-doc.tex231
-rw-r--r--macros/latex/contrib/type1cm/type1cm.fdd410
-rw-r--r--macros/latex/contrib/type1cm/type1cm.ins76
-rw-r--r--macros/latex/contrib/type1cm/type1cm.txt160
5 files changed, 877 insertions, 0 deletions
diff --git a/macros/latex/contrib/type1cm/type1cm-doc.pdf b/macros/latex/contrib/type1cm/type1cm-doc.pdf
new file mode 100644
index 0000000000..07233d444d
--- /dev/null
+++ b/macros/latex/contrib/type1cm/type1cm-doc.pdf
Binary files differ
diff --git a/macros/latex/contrib/type1cm/type1cm-doc.tex b/macros/latex/contrib/type1cm/type1cm-doc.tex
new file mode 100644
index 0000000000..2451581c9f
--- /dev/null
+++ b/macros/latex/contrib/type1cm/type1cm-doc.tex
@@ -0,0 +1,231 @@
+\documentclass[pagesize=auto]{scrartcl}
+
+\usepackage{fixltx2e}
+\usepackage{etex}
+\usepackage{lmodern}
+\usepackage[T1]{fontenc}
+\usepackage{textcomp}
+\usepackage[svgnames]{xcolor}
+\usepackage{tikz}
+\usepackage{amsmath}
+\usepackage{mathtools}
+\usepackage{booktabs}
+\usepackage{listings}
+\usepackage{microtype}
+\usepackage{hyperref}
+
+\newcommand*{\mail}[1]{\href{mailto:#1}{\texttt{#1}}}
+\newcommand*{\pkg}[1]{\textsf{#1}}
+\newcommand*{\cs}[1]{\texttt{\textbackslash#1}}
+\makeatletter
+\newcommand*{\cmd}[1]{\cs{\expandafter\@gobble\string#1}}
+\makeatother
+\newcommand*{\opt}[1]{\texttt{#1}}
+
+\addtokomafont{title}{\rmfamily}
+
+\lstset{%
+ language=[LaTeX]TeX,%
+ columns=flexible,%
+ upquote=true,%
+ numbers=left,%
+ basicstyle=\ttfamily,%
+ keywordstyle=\color{Navy},%
+ commentstyle=\color{DimGray},%
+ stringstyle=\color{SeaGreen},%
+ numberstyle=\scriptsize\color{SlateGray}%
+}
+
+\title{The \pkg{type1cm} package for \LaTeX\thanks{This manual corresponds to \pkg{type1cm.sty}~v0.04, dated~2002/09/05.}}
+\author{David Carlisle\thanks{\mail{david@dcarlisle.demon.co.uk}}}
+\date{2002/09/05}
+
+
+\begin{document}
+
+\maketitle
+
+\noindent
+\LaTeX\ separates its internal notion of font specification
+from the external fonts available on the system by means of
+`Font Shape Specifications', that are normally held in
+`Font Descriptor' (\textsc{fd}) files.
+
+The \textsc{fd} files that come with \LaTeX\ that refer to the standard
+Computer Modern set (and the related \AmS\ set) are based on
+the classical bitmap fonts which are available in `magstep'
+sizes only. For instance The specification of the main roman font is
+%
+\begin{lstlisting}
+\DeclareFontShape{OT1}{cmr}{m}{n}
+ { <5> <6> <7> <8> <9> <10> <12> gen * cmr
+ <10.95> cmr10
+ <14.4> cmr12
+ <17.28><20.74><24.88>cmr17}{}
+\end{lstlisting}
+%
+which says for instance that no font is available at 10.5\,pt (\LaTeX\ %
+will substitute the nearest available size if you ask for this)
+and similarly the font is not available at all above 25\,pt.
+
+Such restrictions are essential with bitmap fonts to save generating
+huge numbers of bitmaps for any size that might be requested, however
+with scalable versions of the fonts these restrictions are not really
+needed. For instance the equivalent definition defined here is:
+%
+\begin{lstlisting}
+\DeclareFontShape{OT1}{cmr}{m}{n}{
+ <-6> cmr5
+ <6-7> cmr6
+ <7-8> cmr7
+ <8-9> cmr8
+ <9-10> cmr9
+ <10-12> cmr10
+ <12-17> cmr12
+ <17-> cmr17
+ }{}
+\end{lstlisting}
+%
+which means that you can (Although some may consider it bad style)
+go
+%
+\begin{verbatim}
+\fontsize{10.7pt}{12pt}\selectfont
+\end{verbatim}
+%
+and be given a suitably scaled
+version of \texttt{cmr10} and a baseline setting of 12\,pt. Similarly if you really
+want, you can go
+%
+\begin{verbatim}
+\fontsize{2cm}{2.5cm}\selectfont
+\end{verbatim}
+%
+and use \texttt{cmr17} scaled
+to 2\,cm height for a special display context.
+
+\begin{flushleft}
+ \begin{tikzpicture}
+ \node[draw=black, inner sep=2ex] (frame) {%
+ \parbox{\dimexpr\linewidth-4ex-1pt\relax}{%
+ If you use this setup and produce \textsc{dvi} files using these sizes, be very
+ careful if you give the \textsc{dvi} files so created to someone using classical
+ bitmap versions of the cm fonts. Depending on how their system is set up
+ they will either not be able to print the file at all, as they will not
+ have the fonts at the corrrect sizes, or the system will make all these
+ strange sizes `on demand' and fill the disk with bitmaps.
+ }%
+ };
+ \node[fill=white] at (frame.north) {\textbf{Warning}};
+ \end{tikzpicture}
+\end{flushleft}
+
+So the default way of using this package is as a \LaTeX\ package file.
+Install \texttt{type1cm.sty} as described below and then just add
+%
+\begin{verbatim}
+\usepackage{type1cm}
+\end{verbatim}
+%
+to your document. This will override the definitions for all the fonts
+and so the standard \textsc{fd} files are not used.
+The disadvantage of this method is all the definitions are then loaded
+into memory, even for fonts you don't use in the document. (However
+only the size specifications are so loaded, not the fonts themselves).
+However the advantage is that you can always choose not to specify
+\verb|\usepackage{type1cm}| and so use the same font sizes (and get the
+same line and page breaks) as everyone else.
+
+Alternatively you may use this package to produce a set of fd
+files that \emph{replace} the standard files (such as \texttt{ot1cmr.fd})
+You will then need to remake the \LaTeX\ format by running \texttt{initex} on
+\texttt{latex.ltx} (as some \textsc{fd} files are loaded into the format). Then you
+will not need to use \cmd{\usepackage}. All your documents will have the
+freedom of scalable font choices.
+
+
+\section{Installation instructions}
+
+\renewcommand*{\labelenumi}{\theenumi)}
+
+The installation is controlled by the file \texttt{type1cm.ins} which you may
+edit in two places.
+%
+\begin{enumerate}
+\item If you have not got the \AmS\ Font set available in scalable form
+ remove the `\verb|%|' from the line \verb|%\def\ams{}|\\
+ This will cause a more restricted font specification to be used.
+
+ If you have an extended \AmS\ font set available in scalable form
+ (\textsf{msam6}, \textsf{msam8} and \texttt{msam9} in addition to \textsf{msam5}, \textsf{msam7} and \textsf{msam10})
+ then remove the `\verb|%|' from the line \verb|%\def\ams{ams,extra}|
+
+\item If after reading the warning above you decide to make a set of fd
+ files, remove the `\verb|%|' from the line \verb|%\makefdtrue|
+\end{enumerate}
+
+Then run \texttt{tex} (or \texttt{latex}) on the file \texttt{type1cm.ins} and a package file
+\texttt{type1cm.sty} (and perhaps a set of \textsc{fd} files) will be produced
+which you should place in a directory where \TeX\ looks for input files.
+
+
+\section{Small technical note about the Font Shape specifications used.}
+
+I consistantly specified that given a requested size, the largest
+available font size smaller than the requested size should be used
+and then enlarged to the requested size. The exception being sizes
+smaller than the smallest available font, which use a reduced version
+of that font. The rationale for this is that enlarging a small font
+typically produces a rather `fat' font, but something readable, whereas
+shrinking a font may produce something unreadable quite quickly
+
+So for \textsf{msam} (if `\opt{extra}' is not specified) I used:
+%
+\begin{lstlisting}
+\DeclareFontShape{U}{msa}{m}{n}{
+ <-7> msam5
+ <7-10> msam7
+ <10-> msam10
+ }{}
+\end{lstlisting}
+%
+That is sizes strictly below 7\,pt use \textsf{msam5}, 7\,pt to (less than) 10\,pt
+use \textsf{msam7} and sizes 10\,pt and above use \textsf{msam10}.
+
+This differs from the Specification that the \AmS\ use for the scalable
+\AmS\ fonts (used by the \opt{psfonts} option to the \pkg{amsfonts} package)
+They use
+%
+\begin{lstlisting}
+\DeclareFontShape{U}{msa}{m}{n}{
+ <-6> msam5
+ <6-8> msam7
+ <8-> msam10
+ }{}
+\end{lstlisting}
+%
+This has the advantage of minimising the scaling used, so for instance
+a 9\,pt request is satisfied by \textsf{msam7} scaled up to~9 by this package, but
+by \textsf{msam10} scaled down to~9 by the \AmS\ package.
+
+In practice this is not likely to make a difference that anyone notices,
+but it could in principle affect line breaks etc, so I thought that
+I would mention it here.
+
+\clearpage
+
+
+\section{History}
+
+\begin{description}
+\item[1997/01/27 v0.02 BlueSky/Y\&Y Type1 CM font definitions (DPC)] \leavevmode \\
+ Possibly first public release? Maybe there was a 0.01..
+
+\item[2002/04/01 v0.03 BlueSky/Y\&Y Type1 CM font definitions (DPC)] \leavevmode \\
+ \textsf{cmdunhill} hasn't worked since the beginning: \cmd{\hyp\clap{\raisebox{-1.9ex}{\rmfamily\textuparrow}}enchar}
+
+ Reported by Brian Mays via the Debian bug tracking system.
+ Also, made distribution conditions LPPL (previously unspecified)
+\end{description}
+
+\end{document}
diff --git a/macros/latex/contrib/type1cm/type1cm.fdd b/macros/latex/contrib/type1cm/type1cm.fdd
new file mode 100644
index 0000000000..0aef1d355c
--- /dev/null
+++ b/macros/latex/contrib/type1cm/type1cm.fdd
@@ -0,0 +1,410 @@
+%%
+%% type1cm package for LaTeX
+%%
+%% Copyright 1997 2002 David Carlisle
+%% This file may be distributed under the terms of the LPPL.
+%% See type1cm.txt for details.
+%%
+%
+%
+%<package>\ProvidesPackage{type1cm}
+%
+%<*!package>
+%<*OT1>
+%<cmr, >\ProvidesFile{ot1cmr.fd}
+%<cmss, >\ProvidesFile{ot1cmss.fd}
+%<cmtt, >\ProvidesFile{ot1cmtt.fd}
+%<cmfr, >\ProvidesFile{ot1cmfr.fd}
+%<cmdh, >\ProvidesFile{ot1cmdh.fd}
+%<cmfib, >\ProvidesFile{ot1cmfib.fd}
+%</OT1>
+%
+%<*OML>
+%<cmm, >\ProvidesFile{omlcmm.fd}
+%<cmr, >\ProvidesFile{omlcmr.fd}
+%</OML>
+%<*OMS>
+%<cmsy, >\ProvidesFile{omscmsy.fd}
+%<cmr, >\ProvidesFile{omscmr.fd}
+%</OMS>
+%<*OMX>
+%<cmex, >\ProvidesFile{omxcmex.fd}
+%</OMX>
+%<*U>
+%<lasy, >\ProvidesFile{ulasy.fd}
+%<msa, >\ProvidesFile{umsa.fd}
+%<msb, >\ProvidesFile{umsb.fd}
+%<euex, >\ProvidesFile{ueuex.fd}
+%<euf, >\ProvidesFile{ueuf.fd}
+%<eur, >\ProvidesFile{ueur.fd}
+%<eus, >\ProvidesFile{ueus.fd}
+%</U>
+%</!package>
+%
+ [2002/09/05 v0.04 BlueSky/Y&Y Type1 CM font definitions (DPC,
+ patched RF)]
+%
+%
+%<*package>
+\begingroup
+\nfss@catcodes
+%</package>
+%
+%<*package,OT1>
+%<*package,cmr>
+\DeclareFontFamily{OT1}{cmr}{\hyphenchar\font=45}
+\DeclareFontShape{OT1}{cmr}{m}{n}{
+ <-6> cmr5
+ <6-7> cmr6
+ <7-8> cmr7
+ <8-9> cmr8
+ <9-10> cmr9
+ <10-12> cmr10
+ <12-17> cmr12
+ <17-> cmr17
+ }{}
+\DeclareFontShape{OT1}{cmr}{m}{sl}{
+ <-9> cmsl8
+ <9-10> cmsl9
+ <10-12> cmsl10
+ <12-> cmsl12
+ }{}
+\DeclareFontShape{OT1}{cmr}{m}{it}{
+ <-8> cmti7
+ <8-9> cmti8
+ <9-10> cmti9
+ <10-12> cmti10
+ <12-> cmti12
+ }{}
+\DeclareFontShape{OT1}{cmr}{m}{sc}{
+%<ams&!extra> <-10> cmcsc9
+%<ams&extra> <-9> cmcsc8
+%<ams&extra> <9-10> cmcsc9
+%<ams> <10-> cmcsc10
+%<!ams> <-> cmcsc10
+ }{}
+\DeclareFontShape{OT1}{cmr}{m}{ui}{
+ <-> cmu10
+ }{}
+\DeclareFontShape{OT1}{cmr}{b}{n}{
+ <-> cmb10
+ }{}
+\DeclareFontShape{OT1}{cmr}{bx}{n}{
+ <-6> cmbx5
+ <6-7> cmbx6
+ <7-8> cmbx7
+ <8-9> cmbx8
+ <9-10> cmbx9
+ <10-12> cmbx10
+ <12-> cmbx12
+ }{}
+\DeclareFontShape{OT1}{cmr}{bx}{sl}{
+ <-> cmbxsl10
+ }{}
+\DeclareFontShape{OT1}{cmr}{bx}{it}{
+ <-> cmbxti10
+ }{}
+\DeclareFontShape{OT1}{cmr}{bx}{ui}
+ {<->ssub * cmr/m/ui}{}
+%</package,cmr>
+%
+%<*package,cmss>
+\DeclareFontFamily{OT1}{cmss}{\hyphenchar\font=45}
+\DeclareFontShape{OT1}{cmss}{m}{n}{
+ <-9> cmss8
+ <9-10> cmss9
+ <10-12> cmss10
+ <12-17> cmss12
+ <17-> cmss17
+ }{}
+\DeclareFontShape{OT1}{cmss}{m}{it}
+ {<->sub*cmss/m/sl}{}
+\DeclareFontShape{OT1}{cmss}{m}{sl}{
+ <-9> cmssi8
+ <9-10> cmssi9
+ <10-12> cmssi10
+ <12-17> cmssi12
+ <17-> cmssi17
+ }{}
+\DeclareFontShape{OT1}{cmss}{m}{sc}
+ {<->sub*cmr/m/sc}{}
+\DeclareFontShape{OT1}{cmss}{m}{ui}
+ {<->sub*cmr/m/ui}{}
+\DeclareFontShape{OT1}{cmss}{sbc}{n}{
+ <-> cmssdc10
+ }{}
+\DeclareFontShape{OT1}{cmss}{bx}{n}{
+ <-> cmssbx10
+ }{}
+\DeclareFontShape{OT1}{cmss}{bx}{ui}
+ {<->sub*cmr/bx/ui}{}
+%</package,cmss>
+%
+%<*package,cmtt>
+\DeclareFontFamily{OT1}{cmtt}{\hyphenchar \font\m@ne}
+\DeclareFontShape{OT1}{cmtt}{m}{n}{
+ <-9> cmtt8
+ <9-10> cmtt9
+ <10-12> cmtt10
+ <12-> cmtt12
+ }{}
+\DeclareFontShape{OT1}{cmtt}{m}{it}{
+ <-> cmitt10
+ }{}
+\DeclareFontShape{OT1}{cmtt}{m}{sl}{
+ <-> cmsltt10
+ }{}
+\DeclareFontShape{OT1}{cmtt}{m}{sc}{
+ <-> cmtcsc10
+ }{}
+\DeclareFontShape{OT1}{cmtt}{m}{ui}
+ {<->sub * cmtt/m/it}{}
+\DeclareFontShape{OT1}{cmtt}{bx}{n}
+ {<->sub * cmtt/m/n}{}
+\DeclareFontShape{OT1}{cmtt}{bx}{it}
+ {<->sub * cmtt/m/it}{}
+\DeclareFontShape{OT1}{cmtt}{bx}{ui}
+ {<->sub * cmtt/m/it}{}
+%</package,cmtt>
+%
+%<*package,cmfr>
+\DeclareFontFamily{OT1}{cmfr}{\hyphenchar\font=45}
+\DeclareFontShape{OT1}{cmfr}{m}{n}{%
+ <-> cmff10
+ }{}
+\DeclareFontShape{OT1}{cmfr}{m}{it}{
+ <-> cmfi10
+ }{}
+%</package,cmfr>
+%
+%<*package,cmdh>
+\DeclareFontFamily{OT1}{cmdh}{\hyphenchar\font=45}
+\DeclareFontShape{OT1}{cmdh}{m}{n}{
+ <-> cmdunh10
+ }{}
+%</package,cmdh>
+%
+%<*package,cmfib>
+\DeclareFontFamily{OT1}{cmfib}{\hyphenchar\font=45}
+\DeclareFontShape{OT1}{cmfib}{m}{n}{
+ <-> cmfib8
+ }{}
+%</package,cmfib>
+%</package,OT1>
+%
+%<*package,OML>
+%<*package,cmm>
+\DeclareFontFamily{OML}{cmm}{\skewchar\font127 }
+\DeclareFontShape{OML}{cmm}{m}{it}{
+ <-6> cmmi5
+ <6-7> cmmi6
+ <7-8> cmmi7
+ <8-9> cmmi8
+ <9-10> cmmi9
+ <10-12> cmmi10
+ <12-> cmmi12
+ }{}
+\DeclareFontShape{OML}{cmm}{b}{it}{%
+%<*ams&!extra>
+ <-7> cmmib5
+ <7-10> cmmib7
+ <10-> cmmib10
+%</ams&!extra>
+%<*ams&extra>
+ <-6> cmmib5
+ <6-7> cmmib6
+ <7-8> cmmib7
+ <8-9> cmmib8
+ <9-10> cmmib9
+ <10-> cmmib10
+%</ams&extra>
+%<!ams> <-> cmmib10
+ }{}
+\DeclareFontShape{OML}{cmm}{bx}{it}
+ {<-> ssub * cmm/b/it}{}
+%</package,cmm>
+%
+%<*package,cmr>
+\DeclareFontFamily{OML}{cmr}{\skewchar\font127 }
+\DeclareFontShape{OML}{cmr}{m}{n}
+ {<-> ssub * cmm/m/it}{}
+\DeclareFontShape{OML}{cmr}{m}{it}
+ {<-> ssub * cmm/m/it}{}
+\DeclareFontShape{OML}{cmr}{m}{sl}
+ {<-> ssub * cmm/m/it}{}
+\DeclareFontShape{OML}{cmr}{m}{sc}
+ {<-> ssub * cmm/m/it}{}
+\DeclareFontShape{OML}{cmr}{bx}{n}
+ {<-> ssub * cmm/b/it}{}
+\DeclareFontShape{OML}{cmr}{bx}{it}
+ {<-> ssub * cmm/b/it}{}
+\DeclareFontShape{OML}{cmr}{bx}{sl}
+ {<-> ssub * cmm/b/it}{}
+\DeclareFontShape{OML}{cmr}{bx}{sc}
+ {<-> ssub * cmm/b/it}{}
+%</package,cmr>
+%</package,OML>
+%
+%<*package,OMS>
+%<*package,cmsy>
+\DeclareFontFamily{OMS}{cmsy}{\skewchar\font48 }
+\DeclareFontShape{OMS}{cmsy}{m}{n}{%
+ <-6> cmsy5
+ <6-7> cmsy6
+ <7-8> cmsy7
+ <8-9> cmsy8
+ <9-10> cmsy9
+ <10-> cmsy10
+ }{}
+\DeclareFontShape{OMS}{cmsy}{b}{n}{%
+%<*ams&!extra>
+ <-7> cmbsy5
+ <7-10> cmbsy7
+ <10-> cmbsy10
+%</ams&!extra>
+%<*ams&extra>
+ <-6> cmbsy5
+ <6-7> cmbsy6
+ <7-8> cmbsy7
+ <8-9> cmbsy8
+ <9-10> cmbsy9
+ <10-> cmbsy10
+%</ams&extra>
+%<!ams> <-> cmbsy10
+ }{}
+%</package,cmsy>
+%
+%<*package,cmr>
+\DeclareFontFamily{OMS}{cmr}{\skewchar\font48 }
+\DeclareFontShape{OMS}{cmr}{m}{n}
+ {<-> ssub * cmsy/m/n}{}
+\DeclareFontShape{OMS}{cmr}{m}{it}
+ {<-> ssub * cmsy/m/n}{}
+\DeclareFontShape{OMS}{cmr}{m}{sl}
+ {<-> ssub * cmsy/m/n}{}
+\DeclareFontShape{OMS}{cmr}{m}{sc}
+ {<-> ssub * cmsy/m/n}{}
+\DeclareFontShape{OMS}{cmr}{bx}{n}
+ {<-> ssub * cmsy/b/n}{}
+\DeclareFontShape{OMS}{cmr}{bx}{it}
+ {<-> ssub * cmsy/b/n}{}
+\DeclareFontShape{OMS}{cmr}{bx}{sl}
+ {<-> ssub * cmsy/b/n}{}
+\DeclareFontShape{OMS}{cmr}{bx}{sc}
+ {<-> ssub * cmsy/b/n}{}
+%</package,cmr>
+%</package,OMS>
+%
+%<*package,OMX>
+%<*package,cmex>
+\DeclareFontFamily{OMX}{cmex}{}{}
+\DeclareFontShape{OMX}{cmex}{m}{n}{
+%<*ams&extra>
+ <-8> cmex7
+ <8-9> cmex8
+ <9-10> cmex9
+ <10-> cmex10
+%</ams&extra>
+%<!extra><-> cmex10
+ }{}
+%</package,cmex>
+%</package,OMX>
+%
+%<*package,U>
+%<*package,lasy>
+\DeclareFontFamily{U}{lasy}{}
+\DeclareFontShape{U}{lasy}{m}{n}{
+ <-6> lasy5
+ <6-7> lasy6
+ <7-8> lasy7
+ <8-9> lasy8
+ <9-10> lasy9
+ <10-> lasy10
+ }{}
+\DeclareFontShape{U}{lasy}{b}{n}{
+ <-> lasyb10
+ }{}
+%</package,lasy>
+%<*package,ams>
+%<*package,msa>
+\DeclareFontFamily{U}{msa}{}
+\DeclareFontShape{U}{msa}{m}{n}{
+%<!extra> <-7> msam5
+%<!extra> <7-10> msam7
+%<extra> <-6> msam5
+%<extra> <6-7> msam6
+%<extra> <7-8> msam7
+%<extra> <8-9> msam8
+%<extra> <9-10> msam9
+ <10-> msam10
+ }{}
+%</package,msa>
+%
+%<*package,msb>
+\DeclareFontFamily{U}{msb}{}
+\DeclareFontShape{U}{msb}{m}{n}{
+%<!extra> <-7> msbm5
+%<!extra> <7-10> msbm7
+%<extra> <-6> msbm5
+%<extra> <6-7> msbm6
+%<extra> <7-8> msbm7
+%<extra> <8-9> msbm8
+%<extra> <9-10> msbm9
+ <10-> msbm10
+ }{}
+%</package,msb>
+%
+%<*package,euex>
+\DeclareFontFamily{U}{euex}{}
+\DeclareFontShape{U}{euex}{m}{n}{
+ <-> euex10 % AMS file refers to euex7 but I dont have it.
+ }{}
+%</package,euex>
+%
+%<*package,euf>
+\DeclareFontFamily{U}{euf}{}
+\DeclareFontShape{U}{euf}{m}{n}{
+ <-7> eufm5
+ <7-10> eufm7
+ <10-> eufm10
+ }{}
+\DeclareFontShape{U}{euf}{b}{n}{
+ <-7> eufb5
+ <7-10> eufb7
+ <10-> eufb10
+ }{}
+%</package,euf>
+%
+%<*package,eur>
+\DeclareFontFamily{U}{eur}{\skewchar\font'177}
+\DeclareFontShape{U}{eur}{m}{n}{
+ <-7> eurm5
+ <7-10> eurm7
+ <10-> eurm10
+ }{}
+\DeclareFontShape{U}{eur}{b}{n}{
+ <-7> eurb5
+ <7-10> eurb7
+ <10-> eurb10
+ }{}
+%</package,eur>
+%
+%<*package,eus>
+\DeclareFontFamily{U}{eus}{\skewchar\font'60}
+\DeclareFontShape{U}{eus}{m}{n}{
+ <-7> eusm5
+ <7-10> eusm7
+ <10-> eusm10
+ }{}
+\DeclareFontShape{U}{eus}{b}{n}{
+ <-7> eusb5
+ <7-10> eusb7
+ <10-> eusb10
+ }{}
+%</package,eus>
+%</package,ams>
+%</package,U>
+%<*package>
+\endgroup
+%</package>
+%
diff --git a/macros/latex/contrib/type1cm/type1cm.ins b/macros/latex/contrib/type1cm/type1cm.ins
new file mode 100644
index 0000000000..12a6089874
--- /dev/null
+++ b/macros/latex/contrib/type1cm/type1cm.ins
@@ -0,0 +1,76 @@
+
+%% type1cm package Copyright 1997 2002 David Carlisle
+%% This file may be distributed under the terms of the LPPL.
+%% See type1cm.txt for details.
+%%
+%% Please see type1cm.txt for instructions.
+%%
+
+% Assume AMS fontset by default
+\def\ams{ams}
+
+% IF you have not got the AMS FONT SET
+% remove the % on the next line.
+%\def\ams{}
+
+% Conversely IF you have the `AMS Extra' font set available
+% that is you have msam6 as well as msam5 msam7 and msam10
+% then remove the % on the next line.
+%\def\ams{ams,extra}
+
+
+% Assume you do not want to make fd files.
+\newif\ifmakefd
+\makefdfalse
+
+% IF you want to make fd files replacing the standard LaTeX and AMS
+% ones, remove the % on the next line.
+%\makefdtrue
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% DO NOT EDIT BELOW THIS POINT
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+
+\def\batchfile{type1cm.ins}
+
+\input docstrip
+\keepsilent
+
+\preamble
+\endpreamble
+
+\generate{
+ \file{type1cm.sty}{\from{type1cm.fdd}{package,\ams}}}
+
+{\ifmakefd
+
+\generate{
+ \file{ot1cmr.fd}{\from{type1cm.fdd}{OT1,cmr,\ams}}
+ \file{ot1cmss.fd}{\from{type1cm.fdd}{OT1,cmss,\ams}}
+ \file{ot1cmtt.fd}{\from{type1cm.fdd}{OT1,cmtt,\ams}}
+ \file{ot1cmfr.fd}{\from{type1cm.fdd}{OT1,cmfr,\ams}}
+ \file{ot1cmdh.fd}{\from{type1cm.fdd}{OT1,cmdh,\ams}}
+ \file{omlcmm.fd}{\from{type1cm.fdd}{OML,cmm,\ams}}
+ \file{omlcmr.fd}{\from{type1cm.fdd}{OML,cmr,\ams}}
+ \file{omscmsy.fd}{\from{type1cm.fdd}{OMS,cmsy,\ams}}
+ \file{omscmr.fd}{\from{type1cm.fdd}{OMS,cmr,\ams}}
+ \file{omxcmex.fd}{\from{type1cm.fdd}{OMX,cmex,\ams}}
+ \file{ulasy.fd}{\from{type1cm.fdd}{U,lasy,\ams}}
+ }
+
+
+
+\ifx\ams\empty\else
+
+\generate{
+ \file{ueuex.fd}{\from{type1cm.fdd}{U,euex,ams}}
+ \file{ueuf.fd}{\from{type1cm.fdd}{U,euf,ams}}
+ \file{ueur.fd}{\from{type1cm.fdd}{U,eur,ams}}
+ \file{ueus.fd}{\from{type1cm.fdd}{U,eus,ams}}
+ }
+
+\fi
+\fi
+}
diff --git a/macros/latex/contrib/type1cm/type1cm.txt b/macros/latex/contrib/type1cm/type1cm.txt
new file mode 100644
index 0000000000..5018bf77c5
--- /dev/null
+++ b/macros/latex/contrib/type1cm/type1cm.txt
@@ -0,0 +1,160 @@
+
+ type1cm package for LaTeX
+ ==========================
+ Copyright 1997 2002 David Carlisle
+
+
+
+ All the files in this directory, and the LaTeX packages
+ that can be extracted from the source files in this directory
+ may be redistributed and/or modified under the terms
+ of the LaTeX Project Public License Distributed from CTAN
+ archives in directory macros/latex/base/lppl.txt; either
+ version 1 of the License, or (at your option) any later version.
+
+ David Carlisle david@dcarlisle.demon.co.uk
+
+
+
+
+LaTeX separates its internal notion of font specification
+from the external fonts available on the system by means of
+`Font Shape Specifications', that are normally held in
+`Font Descriptor' (fd) files.
+
+The fd files that come with LaTeX that refer to the standard
+Computer Modern set (and the related AMS set) are based on
+the classical bitmap fonts which are available in `magstep'
+sizes only. For instance The specification of the main roman font is
+ \DeclareFontShape{OT1}{cmr}{m}{n}
+ { <5> <6> <7> <8> <9> <10> <12> gen * cmr
+ <10.95> cmr10
+ <14.4> cmr12
+ <17.28><20.74><24.88>cmr17}{}
+which says for instance that no font is available at 10.5pt (LaTeX
+will substitute the nearest available size if you ask for this)
+and similarly the font is not available at all above 25pt.
+
+Such restrictions are essential with bitmap fonts to save generating
+huge numbers of bitmaps for any size that might be requested, however
+with scalable versions of the fonts these restrictions are not really
+needed. For instance the equivalent definition defined here is:
+\DeclareFontShape{OT1}{cmr}{m}{n}{
+ <-6> cmr5
+ <6-7> cmr6
+ <7-8> cmr7
+ <8-9> cmr8
+ <9-10> cmr9
+ <10-12> cmr10
+ <12-17> cmr12
+ <17-> cmr17
+ }{}
+
+which means that you can (Although some may consider it bad style)
+go \fontsize{10.7pt}{12pt}\selectfont and be given a suitably scaled
+version of cmr10 and a baseline setting of 12pt. Similarly if you really
+want, you can go \fontsize{2cm}{2.5cm}\selectfont and use cmr17 scaled
+to 2cm height for a special display context.
+
+**** Warning****
+If you use this setup and produce dvi files using these sizes, be very
+careful if you give the dvi files so created to someone using classical
+bitmap versions of the cm fonts. Depending on how their system is set up
+they will either not be able to print the file at all, as they will not
+have the fonts at the corrrect sizes, or the system will make all these
+strange sizes `on demand' and fill the disk with bitmaps.
+****************
+
+So the default way of using this package is as a LaTeX package file.
+Install type1cm.sty as described below and then just add
+\usepackage{type1cm}
+to your document. This will override the definitions for all the fonts
+and so the standard fd files are not used.
+The disadvantage of this method is all the definitions are then loaded
+into memory, even for fonts you don't use in the document. (However
+only the size specifications are so loaded, not the fonts themselves).
+However the advantage is that you can always choose not to specify
+\usepackage{type1cm} and so use the same font sizes (and get the
+same line and page breaks) as everyone else.
+
+Alternatively you may use this package to produce a set of fd
+files that *replace* the standard files (such as ot1cmr.fd)
+You will then need to remake the LaTeX format by running initex on
+latex.ltx (as some fd files are loaded into the format). Then you
+will not need to use \usepackage. All your documents will have the
+freedom of scalable font choices.
+
+ INSTALLATION INSTRUCTIONS
+ ==========================
+
+The installation is controlled by the file type1cm.ins which you may
+edit in two places.
+
+
+1) If you have not got the AMS Font set available in scalable form
+ remove the `%' from the line %\def\ams{}
+ This will cause a more restricted font specification to be used.
+
+ If you have an extended AMS font set available in scalable form
+ (msam6, msam8 and msam9 in addition to msam5, msam7 and msam10)
+ then remove the `%' from the line %\def\ams{ams,extra}
+
+
+2) If after reading the warning above you decide to make a set of fd
+ files, remove the `%'from the line %\makefdtrue
+
+
+Then run tex (or latex) on the file type1cm.ins and a package file
+type1cm.sty (and perhaps a set of fd files) will be produced
+which you should place in a directory where TeX looks for input files.
+
+=========================================================================
+
+Small technical note about the Font Shape specifications used.
+I consistantly specified that given a requested size, the largest
+available font size smaller than the requested size should be used
+and then enlarged to the requested size. The exception being sizes
+smaller than the smallest available font, which use a reduced version
+of that font. The rationale for this is that enlarging a small font
+typically produces a rather `fat' font, but something readable, whereas
+shrinking a font may produce something unreadable quite quickly
+
+So for msam (if `extra' is not specified) I used:
+
+\DeclareFontShape{U}{msa}{m}{n}{
+ <-7> msam5
+ <7-10> msam7
+ <10-> msam10
+ }{}
+
+That is sizes strictly below 7pt use msam5, 7pt to (less than) 10pt
+use msam7 and sizes 10pt and above use msam10.
+
+This differs from the Specification that the AMS use for the scalable
+AMS fonts (used by the psfonts option to the amsfonts package)
+They use
+
+\DeclareFontShape{U}{msa}{m}{n}{
+ <-6> msam5
+ <6-8> msam7
+ <8-> msam10
+ }{}
+
+This has the advantage of minimising the scaling used, so for instance
+a 9pt request is satisfied by msam7 scaled up to 9 by this package, but
+by msam10 scaled down to 9 by the AMS package.
+
+In practice this is not likely to make a difference that anyone notices,
+but it could in principle affect line breaks etc, so I thought that
+I would mention it here.
+
+
+
+[1997/01/27 v0.02 BlueSky/Y&Y Type1 CM font definitions (DPC)]
+ Possibly first public release? Maybe there was a 0.01..
+
+[2002/04/01 v0.03 BlueSky/Y&Y Type1 CM font definitions (DPC)]
+ cmdunhill hasn't worked since the beginning: \hypenchar
+ ^
+ Reported by Brian Mays via the Debian bug tracking system.
+ Also, made distribution conditions LPPL (previously unspecified)