[comp.text.tex] AMS-TeX 2.0 fonts under LaTeX

tli@phakt.usc.edu (Tony Li) (08/14/90)

If you have been trying to use the new AMS-TeX fonts under LaTeX, this
may be of some assistance.

------------------------------amssymbols.sty------------------------------
% Adapted by Charles Karney (Karney%PPC.MFENET@NMFECC.ARPA) 1986/07/28.
% Updated to AMS-TeX 2.0 by Tony Li (tli@usc.edu)	    1990/08/10.
% This style option loads up the AMS symbol fonts and associated symbol
% definitions.  See the Nov 85 issue of TUGBoat for a listing of these
% symbols.  Only \textfont, \scriptfont, and \scriptscriptfont sizes are
% provided.  10pt, 11pt, 12pt styles are supported.

%% This is the LATEX version of AMSSYM.DEF and AMSSYM.TEX.
%% Changes:
%% (1) take out the \catcode`\@ business (LaTeX takes care of this)
%% (2) Set font sizes according to \@ptsize
%% (3) take out the \endinput business

%  AMSSYM.DEF                                           February 1990

%  This file contains definitions that perform the same functions as similar
%  ones in AMS-TeX, so that the file AMSSYM.TEX can be used outside of AMS-TeX.
%
%  American Mathematical Society, Technical Support Group, P. O. Box 6248,
%        Providence, RI 02940
%  800-321-4AMS or 401-455-4080;  Internet: Tech-Support@Math.AMS.com
%
%  Copyright (C) 1990, American Mathematical Society.
%  All rights reserved.  Copying of this file is authorized only if either:
%       (1) you make absolutely no changes to your copy including name; OR
%       (2) if you do make changes, you first rename it to some other name.
%
%  Instructions for using this file and the AMS symbol fonts are included in
%  the AMSFonts 2.0 User's Guide.
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%  Store the catcode of the @ in the csname so that it can be restored later.
%\expandafter\chardef\csname pre amssym.def at\endcsname=\the\catcode`\@
%  Set the catcode to 11 for use in private control sequence names.
%\catcode`\@=11

%  Include all definitions related to the fonts msam, msbm and eufm, so that
%  when this file is used by itself, the results with respect to those fonts
%  are equivalent to what they would have been using AMS-TeX.
%  Most symbols in fonts msam and msbm are defined using \newsymbol;
%  however, a few symbols that replace composites defined in plain must be
%  defined with \mathchardef.

\def\undefine#1{\let#1\undefined}
\def\newsymbol#1#2#3#4#5{\let\next@\relax
 \ifnum#2=\@ne\let\next@\msafam@\else
 \ifnum#2=\tw@\let\next@\msbfam@\fi\fi
 \mathchardef#1="#3\next@#4#5}
\def\mathhexbox@#1#2#3{\relax
 \ifmmode\mathpalette{}{\m@th\mathchar"#1#2#3}%
 \else\leavevmode\hbox{$\m@th\mathchar"#1#2#3$}\fi}
\def\hexnumber@#1{\ifcase#1 0\or 1\or 2\or 3\or 4\or 5\or 6\or 7\or 8\or
 9\or A\or B\or C\or D\or E\or F\fi}

%%\font\tenmsa=msam10
%%\font\sevenmsa=msam7
%%\font\fivemsa=msam5
%%\font\tenmsb=msbm10
%%\font\sevenmsb=msbm7
%%\font\fivemsb=msbm5
%%\font\teneufm=eufm10
%%\font\seveneufm=eufm7
%%\font\fiveeufm=eufm5

\ifcase\@ptsize
   \font\tenmsa=msam10
   \font\sevenmsa=msam7
   \font\fivemsa=msam5
   \font\tenmsb=msbm10
   \font\sevenmsb=msbm7
   \font\fivemsb=msbm5
   \font\teneufm=eufm10
   \font\seveneufm=eufm7
   \font\fiveeufm=eufm5
 \or
   \font\tenmsa=msam10		scaled \magstephalf
   \font\sevenmsa=msam7		scaled \magstephalf
   \font\fivemsa=msam5		scaled \magstephalf
   \font\tenmsb=msbm10		scaled \magstephalf
   \font\sevenmsb=msbm7		scaled \magstephalf
   \font\fivemsb=msbm5		scaled \magstephalf
   \font\teneufm=eufm10		scaled \magstephalf
   \font\seveneufm=eufm7	scaled \magstephalf
   \font\fiveeufm=eufm5		scaled \magstephalf
 \or
   \font\tenmsa=msam10		scaled \magstep1
   \font\sevenmsa=msam7		scaled \magstep1
   \font\fivemsa=msam5		scaled \magstep1
   \font\tenmsb=msbm10		scaled \magstep1
   \font\sevenmsb=msbm7		scaled \magstep1
   \font\fivemsb=msbm5		scaled \magstep1
   \font\teneufm=eufm10		scaled \magstep1
   \font\seveneufm=eufm7	scaled \magstep1
   \font\fiveeufm=eufm5		scaled \magstep1
\fi

\newfam\msafam
\textfont\msafam=\tenmsa
\scriptfont\msafam=\sevenmsa
\scriptscriptfont\msafam=\fivemsa
\edef\msafam@{\hexnumber@\msafam}
\mathchardef\dabar@"0\msafam@39
\def\dashrightarrow{\mathrel{\dabar@\dabar@\mathchar"0\msafam@4B}}
\def\dashleftarrow{\mathrel{\mathchar"0\msafam@4C\dabar@\dabar@}}
\let\dasharrow\dashrightarrow
\def\ulcorner{\delimiter"4\msafam@70\msafam@70 }
\def\urcorner{\delimiter"5\msafam@71\msafam@71 }
\def\llcorner{\delimiter"4\msafam@78\msafam@78 }
\def\lrcorner{\delimiter"5\msafam@79\msafam@79 }
\def\yen{{\mathhexbox@\msafam@55 }}
\def\checkmark{{\mathhexbox@\msafam@58 }}
\def\circledR{{\mathhexbox@\msafam@72 }}
\def\maltese{{\mathhexbox@\msafam@7A }}

\newfam\msbfam
\textfont\msbfam=\tenmsb
\scriptfont\msbfam=\sevenmsb
\scriptscriptfont\msbfam=\fivemsb
\edef\msbfam@{\hexnumber@\msbfam}
\def\Bbb#1{\fam\msbfam\relax#1}
\def\widehat#1{\setboxz@h{$\m@th#1$}%
 \ifdim\wdz@>\tw@ em\mathaccent"0\msbfam@5B{#1}%
 \else\mathaccent"0362{#1}\fi}
\def\widetilde#1{\setboxz@h{$\m@th#1$}%
 \ifdim\wdz@>\tw@ em\mathaccent"0\msbfam@5D{#1}%
 \else\mathaccent"0365{#1}\fi}

\newfam\eufmfam
\textfont\eufmfam=\teneufm
\scriptfont\eufmfam=\seveneufm
\scriptscriptfont\eufmfam=\fiveeufm
\def\frak#1{{\fam\eufmfam\relax#1}}
\let\goth\frak

%  Restore the catcode value for @ that was previously saved.
%\catcode`\@=\csname pre amssym.def at\endcsname

%\endinput

%  AMSSYM.TEX                                           February 1990
%  version 2.0, for use with AMSTEX.TEX version 2.0 or with AMSSYM.DEF

%  This file contains the name definitions for the symbols in the fonts
%  MSAM* and MSBM*, using the \newsymbol notation of AMS-TeX.
%
%  American Mathematical Society, Technical Support Group, P. O. Box 6248,
%        Providence, RI 02940
%  800-321-4AMS or 401-455-4080;  Internet: Tech-Support@Math.AMS.com
%
%  Copyright (C) 1990, American Mathematical Society.
%  All rights reserved.  Copying of this file is authorized only if either:
%       (1) you make absolutely no changes to your copy including name; OR
%       (2) if you do make changes, you first rename it to some other name.
%
%  This file is required when \UseAMSsymbols is called in an AMS-TeX job.
%  To use this file without AMS-TeX, the file AMSSYM.DEF should be input.
%
%  Instructions for using the AMS symbol fonts are included in the following:
%       AMS-TeX 2.0 User's Guide
%       AMSFonts 2.0 User's Guide
%       The Joy of TeX, editions dated 1990 or later
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%  Save the current value of the @-sign catcode so that it can be restored
%  afterwards.  This allows us to call amssym.tex either within an AMS-TeX
%  document style file or by itself, in addition to providing a means
%  of testing whether the file has been previously loaded.  We want to
%  avoid inputting this file twice because when AMSTeX is being used
%  \newsymbol will give an error message if used to define a control
%  sequence name that is already defined.

%  If the csname is not equal to \relax, we assume this file has already
%  been loaded and \endinput immediately.
%\expandafter\ifx\csname pre amssym.tex at\endcsname\relax \else \endinput\fi
%  Otherwise we store the catcode of the @ in the csname.
%\expandafter\chardef\csname pre amssym.tex at\endcsname=\the\catcode`\@
%  Set the catcode to 11 for use in private control sequence names.
%\catcode`\@=11
%  Most symbols in fonts msam and msbm are defined using \newsymbol.  A few
%  that are delimiters or otherwise require special treatment have already
%  been defined as soon as the fonts were loaded.  Finally, a few symbols
%  that replace composites defined in plain must be undefined first.
\newsymbol\boxdot 1200
\newsymbol\boxplus 1201
\newsymbol\boxtimes 1202
\newsymbol\square 1003
\newsymbol\blacksquare 1004
\newsymbol\centerdot 1205
\newsymbol\lozenge 1006
\newsymbol\blacklozenge 1007
\newsymbol\circlearrowright 1308
\newsymbol\circlearrowleft 1309
\undefine\rightleftharpoons
\newsymbol\rightleftharpoons 130A
\newsymbol\leftrightharpoons 130B
\newsymbol\boxminus 120C
\newsymbol\Vdash 130D
\newsymbol\Vvdash 130E
\newsymbol\vDash 130F
\newsymbol\twoheadrightarrow 1310
\newsymbol\twoheadleftarrow 1311
\newsymbol\leftleftarrows 1312
\newsymbol\rightrightarrows 1313
\newsymbol\upuparrows 1314
\newsymbol\downdownarrows 1315
\newsymbol\upharpoonright 1316
 \let\restriction\upharpoonright
\newsymbol\downharpoonright 1317
\newsymbol\upharpoonleft 1318
\newsymbol\downharpoonleft 1319
\newsymbol\rightarrowtail 131A
\newsymbol\leftarrowtail 131B
\newsymbol\leftrightarrows 131C
\newsymbol\rightleftarrows 131D
\newsymbol\Lsh 131E
\newsymbol\Rsh 131F
\newsymbol\rightsquigarrow 1320
\newsymbol\leftrightsquigarrow 1321
\newsymbol\looparrowleft 1322
\newsymbol\looparrowright 1323
\newsymbol\circeq 1324
\newsymbol\succsim 1325
\newsymbol\gtrsim 1326
\newsymbol\gtrapprox 1327
\newsymbol\multimap 1328
\newsymbol\therefore 1329
\newsymbol\because 132A
\newsymbol\doteqdot 132B
 \let\Doteq\doteqdot
\newsymbol\triangleq 132C
\newsymbol\precsim 132D
\newsymbol\lesssim 132E
\newsymbol\lessapprox 132F
\newsymbol\eqslantless 1330
\newsymbol\eqslantgtr 1331
\newsymbol\curlyeqprec 1332
\newsymbol\curlyeqsucc 1333
\newsymbol\preccurlyeq 1334
\newsymbol\leqq 1335
\newsymbol\leqslant 1336
\newsymbol\lessgtr 1337
\newsymbol\backprime 1038
\newsymbol\risingdotseq 133A
\newsymbol\fallingdotseq 133B
\newsymbol\succcurlyeq 133C
\newsymbol\geqq 133D
\newsymbol\geqslant 133E
\newsymbol\gtrless 133F
\newsymbol\sqsubset 1340
\newsymbol\sqsupset 1341
\newsymbol\vartriangleright 1342
\newsymbol\vartriangleleft 1343
\newsymbol\trianglerighteq 1344
\newsymbol\trianglelefteq 1345
\newsymbol\bigstar 1046
\newsymbol\between 1347
\newsymbol\blacktriangledown 1048
\newsymbol\blacktriangleright 1349
\newsymbol\blacktriangleleft 134A
\newsymbol\vartriangle 134D
\newsymbol\blacktriangle 104E
\newsymbol\triangledown 104F
\newsymbol\eqcirc 1350
\newsymbol\lesseqgtr 1351
\newsymbol\gtreqless 1352
\newsymbol\lesseqqgtr 1353
\newsymbol\gtreqqless 1354
\newsymbol\Rrightarrow 1356
\newsymbol\Lleftarrow 1357
\newsymbol\veebar 1259
\newsymbol\barwedge 125A
\newsymbol\doublebarwedge 125B
\undefine\angle
\newsymbol\angle 105C
\newsymbol\measuredangle 105D
\newsymbol\sphericalangle 105E
\newsymbol\varpropto 135F
\newsymbol\smallsmile 1360
\newsymbol\smallfrown 1361
\newsymbol\Subset 1362
\newsymbol\Supset 1363
\newsymbol\Cup 1264
 \let\doublecup\Cup
\newsymbol\Cap 1265
 \let\doublecap\Cap
\newsymbol\curlywedge 1266
\newsymbol\curlyvee 1267
\newsymbol\leftthreetimes 1268
\newsymbol\rightthreetimes 1269
\newsymbol\subseteqq 136A
\newsymbol\supseteqq 136B
\newsymbol\bumpeq 136C
\newsymbol\Bumpeq 136D
\newsymbol\lll 136E
 \let\llless\lll
\newsymbol\ggg 136F
 \let\gggtr\ggg
\newsymbol\circledS 1073
\newsymbol\pitchfork 1374
\newsymbol\dotplus 1275
\newsymbol\backsim 1376
\newsymbol\backsimeq 1377
\newsymbol\complement 107B
\newsymbol\intercal 127C
\newsymbol\circledcirc 127D
\newsymbol\circledast 127E
\newsymbol\circleddash 127F
\newsymbol\lvertneqq 2300
\newsymbol\gvertneqq 2301
\newsymbol\nleq 2302
\newsymbol\ngeq 2303
\newsymbol\nless 2304
\newsymbol\ngtr 2305
\newsymbol\nprec 2306
\newsymbol\nsucc 2307
\newsymbol\lneqq 2308
\newsymbol\gneqq 2309
\newsymbol\nleqslant 230A
\newsymbol\ngeqslant 230B
\newsymbol\lneq 230C
\newsymbol\gneq 230D
\newsymbol\npreceq 230E
\newsymbol\nsucceq 230F
\newsymbol\precnsim 2310
\newsymbol\succnsim 2311
\newsymbol\lnsim 2312
\newsymbol\gnsim 2313
\newsymbol\nleqq 2314
\newsymbol\ngeqq 2315
\newsymbol\precneqq 2316
\newsymbol\succneqq 2317
\newsymbol\precnapprox 2318
\newsymbol\succnapprox 2319
\newsymbol\lnapprox 231A
\newsymbol\gnapprox 231B
\newsymbol\nsim 231C
\newsymbol\ncong 231D
\newsymbol\diagup 231E
\newsymbol\diagdown 231F
\newsymbol\varsubsetneq 2320
\newsymbol\varsupsetneq 2321
\newsymbol\nsubseteqq 2322
\newsymbol\nsupseteqq 2323
\newsymbol\subsetneqq 2324
\newsymbol\supsetneqq 2325
\newsymbol\varsubsetneqq 2326
\newsymbol\varsupsetneqq 2327
\newsymbol\subsetneq 2328
\newsymbol\supsetneq 2329
\newsymbol\nsubseteq 232A
\newsymbol\nsupseteq 232B
\newsymbol\nparallel 232C
\newsymbol\nmid 232D
\newsymbol\nshortmid 232E
\newsymbol\nshortparallel 232F
\newsymbol\nvdash 2330
\newsymbol\nVdash 2331
\newsymbol\nvDash 2332
\newsymbol\nVDash 2333
\newsymbol\ntrianglerighteq 2334
\newsymbol\ntrianglelefteq 2335
\newsymbol\ntriangleleft 2336
\newsymbol\ntriangleright 2337
\newsymbol\nleftarrow 2338
\newsymbol\nrightarrow 2339
\newsymbol\nLeftarrow 233A
\newsymbol\nRightarrow 233B
\newsymbol\nLeftrightarrow 233C
\newsymbol\nleftrightarrow 233D
\newsymbol\divideontimes 223E
\newsymbol\varnothing 203F
\newsymbol\nexists 2040
\newsymbol\Finv 2060
\newsymbol\Game 2061
\newsymbol\mho 2066
\newsymbol\eth 2067
\newsymbol\eqsim 2368
\newsymbol\beth 2069
\newsymbol\gimel 206A
\newsymbol\daleth 206B
\newsymbol\lessdot 236C
\newsymbol\gtrdot 236D
\newsymbol\ltimes 226E
\newsymbol\rtimes 226F
\newsymbol\shortmid 2370
\newsymbol\shortparallel 2371
\newsymbol\smallsetminus 2272
\newsymbol\thicksim 2373
\newsymbol\thickapprox 2374
\newsymbol\approxeq 2375
\newsymbol\succapprox 2376
\newsymbol\precapprox 2377
\newsymbol\curvearrowleft 2378
\newsymbol\curvearrowright 2379
\newsymbol\digamma 207A
\newsymbol\varkappa 207B
\newsymbol\Bbbk 207C
\newsymbol\hslash 207D
\undefine\hbar
\newsymbol\hbar 207E
\newsymbol\backepsilon 237F
%  Restore the catcode value for @ that was previously saved.
%\catcode`\@=\csname pre amssym.tex at\endcsname

%\endinput
-- 
Tony Li - USC Computer Science Department
Internet: tli@usc.edu Uucp: usc!tli
Thus spake the master programmer: "A well written program is its own
heaven; a poorly-written program its own hell."

dhosek@sif.claremont.edu (Hosek, Donald A.) (08/14/90)

In article <11386@chaph.usc.edu>, tli@phakt.usc.edu (Tony Li) writes...

>If you have been trying to use the new AMS-TeX fonts under LaTeX, this
>may be of some assistance.

Actually there's a far better way of dealing with the AMS fonts
(or any other extra fonts for that matter): use the new font
selection scheme for LaTeX. I believe that the new amstex.sty and
AMS LaTeX document styles *require* this anyway so you might as
well upgrade.

To find out what files you need, get the file fontsel.readme (FTP
from ymir.claremont.edu in [anonymous.tex.inputs.latex-mainz] or
send the command send [tex.inputs.latex-mainz]fontsel.readme to
mailserv@ymir.claremont.edu).

-dh

---
Don Hosek                       TeX, LaTeX, and Metafont support, consulting 
dhosek@ymir.claremont.edu       installation and production work. 
dhosek@ymir.bitnet              Free Estimates.
uunet!jarthur!ymir              Phone: 714-625-0147
                                finger dhosek@ymir.claremont.edu for more info