amssym.def 4.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119
  1. %%% ====================================================================
  2. %%% @TeX-file{
  3. %%% filename = "amssym.def",
  4. %%% version = "2.2",
  5. %%% date = "22-Dec-1994",
  6. %%% time = "10:14:01 EST",
  7. %%% checksum = "28096 117 438 4924",
  8. %%% author = "American Mathematical Society",
  9. %%% copyright = "Copyright (C) 1994 American Mathematical Society,
  10. %%% all rights reserved. Copying of this file is
  11. %%% authorized only if either:
  12. %%% (1) you make absolutely no changes to your copy,
  13. %%% including name; OR
  14. %%% (2) if you do make changes, you first rename it
  15. %%% to some other name.",
  16. %%% address = "American Mathematical Society,
  17. %%% Technical Support,
  18. %%% Electronic Products and Services,
  19. %%% P. O. Box 6248,
  20. %%% Providence, RI 02940,
  21. %%% USA",
  22. %%% telephone = "401-455-4080 or (in the USA and Canada)
  23. %%% 800-321-4AMS (321-4267)",
  24. %%% FAX = "401-331-3842",
  25. %%% email = "[email protected] (Internet)",
  26. %%% codetable = "ISO/ASCII",
  27. %%% keywords = "amsfonts, msam, msbm, math symbols",
  28. %%% supported = "yes",
  29. %%% abstract = "This is part of the AMSFonts distribution,
  30. %%% It is the plain TeX source file for the
  31. %%% AMSFonts user's guide.",
  32. %%% docstring = "The checksum field above contains a CRC-16
  33. %%% checksum as the first value, followed by the
  34. %%% equivalent of the standard UNIX wc (word
  35. %%% count) utility output of lines, words, and
  36. %%% characters. This is produced by Robert
  37. %%% Solovay's checksum utility.",
  38. %%% }
  39. %%% ====================================================================
  40. \expandafter\ifx\csname amssym.def\endcsname\relax \else\endinput\fi
  41. %
  42. % Store the catcode of the @ in the csname so that it can be restored later.
  43. \expandafter\edef\csname amssym.def\endcsname{%
  44. \catcode`\noexpand\@=\the\catcode`\@\space}
  45. % Set the catcode to 11 for use in private control sequence names.
  46. \catcode`\@=11
  47. %
  48. % Include all definitions related to the fonts msam, msbm and eufm, so that
  49. % when this file is used by itself, the results with respect to those fonts
  50. % are equivalent to what they would have been using AMS-TeX.
  51. % Most symbols in fonts msam and msbm are defined using \newsymbol;
  52. % however, a few symbols that replace composites defined in plain must be
  53. % defined with \mathchardef.
  54. \def\undefine#1{\let#1\undefined}
  55. \def\newsymbol#1#2#3#4#5{\let\next@\relax
  56. \ifnum#2=\@ne\let\next@\msafam@\else
  57. \ifnum#2=\tw@\let\next@\msbfam@\fi\fi
  58. \mathchardef#1="#3\next@#4#5}
  59. \def\mathhexbox@#1#2#3{\relax
  60. \ifmmode\mathpalette{}{\m@th\mathchar"#1#2#3}%
  61. \else\leavevmode\hbox{$\m@th\mathchar"#1#2#3$}\fi}
  62. \def\hexnumber@#1{\ifcase#1 0\or 1\or 2\or 3\or 4\or 5\or 6\or 7\or 8\or
  63. 9\or A\or B\or C\or D\or E\or F\fi}
  64. \font\tenmsa=msam10
  65. \font\sevenmsa=msam7
  66. \font\fivemsa=msam5
  67. \newfam\msafam
  68. \textfont\msafam=\tenmsa
  69. \scriptfont\msafam=\sevenmsa
  70. \scriptscriptfont\msafam=\fivemsa
  71. \edef\msafam@{\hexnumber@\msafam}
  72. \mathchardef\dabar@"0\msafam@39
  73. \def\dashrightarrow{\mathrel{\dabar@\dabar@\mathchar"0\msafam@4B}}
  74. \def\dashleftarrow{\mathrel{\mathchar"0\msafam@4C\dabar@\dabar@}}
  75. \let\dasharrow\dashrightarrow
  76. \def\ulcorner{\delimiter"4\msafam@70\msafam@70 }
  77. \def\urcorner{\delimiter"5\msafam@71\msafam@71 }
  78. \def\llcorner{\delimiter"4\msafam@78\msafam@78 }
  79. \def\lrcorner{\delimiter"5\msafam@79\msafam@79 }
  80. % Note that there should not be a final space after the digits for a
  81. % \mathhexbox@.
  82. \def\yen{{\mathhexbox@\msafam@55}}
  83. \def\checkmark{{\mathhexbox@\msafam@58}}
  84. \def\circledR{{\mathhexbox@\msafam@72}}
  85. \def\maltese{{\mathhexbox@\msafam@7A}}
  86. \font\tenmsb=msbm10
  87. \font\sevenmsb=msbm7
  88. \font\fivemsb=msbm5
  89. \newfam\msbfam
  90. \textfont\msbfam=\tenmsb
  91. \scriptfont\msbfam=\sevenmsb
  92. \scriptscriptfont\msbfam=\fivemsb
  93. \edef\msbfam@{\hexnumber@\msbfam}
  94. \def\Bbb#1{{\fam\msbfam\relax#1}}
  95. \def\widehat#1{\setbox\z@\hbox{$\m@th#1$}%
  96. \ifdim\wd\z@>\tw@ em\mathaccent"0\msbfam@5B{#1}%
  97. \else\mathaccent"0362{#1}\fi}
  98. \def\widetilde#1{\setbox\z@\hbox{$\m@th#1$}%
  99. \ifdim\wd\z@>\tw@ em\mathaccent"0\msbfam@5D{#1}%
  100. \else\mathaccent"0365{#1}\fi}
  101. \font\teneufm=eufm10
  102. \font\seveneufm=eufm7
  103. \font\fiveeufm=eufm5
  104. \newfam\eufmfam
  105. \textfont\eufmfam=\teneufm
  106. \scriptfont\eufmfam=\seveneufm
  107. \scriptscriptfont\eufmfam=\fiveeufm
  108. \def\frak#1{{\fam\eufmfam\relax#1}}
  109. \let\goth\frak
  110. % Restore the catcode value for @ that was previously saved.
  111. \csname amssym.def\endcsname
  112. \endinput