]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWGPP/doc/comparison/amscd.sty
Moving PWG1 to PWGPP
[u/mrichter/AliRoot.git] / PWGPP / doc / comparison / amscd.sty
CommitLineData
20552425 1%%
2%% This is file `amscd.sty',
3%% generated with the docstrip utility.
4%%
5%% The original source files were:
6%%
7%% amscd.dtx
8%%
9%%% ====================================================================
10%%% @LaTeX-file{
11%%% filename = "amscd.dtx",
12%%% version = "2.0",
13%%% date = "1999/11/29",
14%%% time = "14:30:07 EST",
15%%% author = "American Mathematical Society",
16%%% copyright = "Copyright 1995, 1999 American Mathematical Society,
17%%% all rights reserved. Copying of this file is
18%%% authorized only if either:
19%%% (1) you make absolutely no changes to your copy,
20%%% including name; OR
21%%% (2) if you do make changes, you first rename it
22%%% to some other name.",
23%%% address = "American Mathematical Society,
24%%% Technical Support,
25%%% Electronic Products and Services,
26%%% P. O. Box 6248,
27%%% Providence, RI 02940,
28%%% USA",
29%%% telephone = "401-455-4080 or (in the USA and Canada)
30%%% 800-321-4AMS (321-4267)",
31%%% FAX = "401-331-3842",
32%%% checksum = "07428 333 1152 12117",
33%%% email = "tech-support@ams.org (Internet)",
34%%% codetable = "ISO/ASCII",
35%%% keywords = "latex, commutative diagram",
36%%% supported = "yes",
37%%% abstract = "This is a \LaTeX{} package that adapts the
38%%% commutative diagram macros of AMS-\TeX{} for
39%%% use in \LaTeX{}",
40%%% docstring = "The checksum field above contains a CRC-16
41%%% checksum as the first value, followed by the
42%%% equivalent of the standard UNIX wc (word
43%%% count) utility output of lines, words, and
44%%% characters. This is produced by Robert
45%%% Solovay's checksum utility.",
46%%% }
47%%% ====================================================================
48\NeedsTeXFormat{LaTeX2e}% LaTeX 2.09 can't be used (nor non-LaTeX)
49[1994/12/01]% LaTeX date must December 1994 or later
50\ProvidesPackage{amscd}[1999/11/29 v2.0]
51\RequirePackage{amsgen}
52\@ifundefined{math@cr}{%
53 \def\math@cr{{\ifnum0=`}\fi
54 \@ifstar{\global\@eqpen\@M\math@cr@}%
55 {\global\@eqpen\interdisplaylinepenalty \math@cr@}}
56 \def\math@cr@{\new@ifnextchar[\math@cr@@{\math@cr@@[\z@]}}
57 \def\math@cr@@[#1]{\ifnum0=`{\fi}\math@cr@@@
58 \noalign{\vskip#1\relax}}
59 \def\restore@math@cr{\def\math@cr@@@{\cr}}
60}{}
61\restore@math@cr
62\@ifundefined{rightarrowfill@}{
63 \def\rightarrowfill@#1{\m@th\setboxz@h{$#1-$}\ht\z@\z@
64 $#1\copy\z@\mkern-6mu\cleaders
65 \hbox{$#1\mkern-2mu\box\z@\mkern-2mu$}\hfill
66 \mkern-6mu\mathord\rightarrow$}
67 \def\leftarrowfill@#1{\m@th\setboxz@h{$#1-$}\ht\z@\z@
68 $#1\mathord\leftarrow\mkern-6mu\cleaders
69 \hbox{$#1\mkern-2mu\copy\z@\mkern-2mu$}\hfill
70 \mkern-6mu\box\z@$}
71 \def\leftrightarrowfill@#1{\m@th\setboxz@h{$#1-$}\ht\z@\z@
72 $#1\mathord\leftarrow\mkern-6mu\cleaders
73 \hbox{$#1\mkern-2mu\box\z@\mkern-2mu$}\hfill
74 \mkern-6mu\mathord\rightarrow$}
75}{}
76\def\atdef@#1{\expandafter\def\csname\space @\string#1\endcsname}
77\@ifundefined{Iat}{%
78 \DeclareRobustCommand{\Iat}{\FN@\at@}
79}{}
80\begingroup \catcode`\@=\active
81\csname if\string @compatibility\endcsname
82\else \fam=\mathcode`\@
83 \xdef @{\mathchar\number\fam\space }
84\fi
85\gdef\CDat{\let @=\Iat}
86\endgroup
87\mathcode`\@="8000 % make @ pseudo-active in math
88\def\at@{\let\next@\at@@
89 \ifcat\noexpand\next a\else
90 \ifcat\noexpand\next0\else
91 \ifcat\noexpand\next\relax\else
92 \let\next@\at@@@\fi\fi\fi\next@}
93\def\at@@#1{\expandafter
94 \ifx\csname\space @\string#1\endcsname\relax
95 \DN@{\at@@@#1}%
96 \else
97 \DN@{\csname\space @\string#1\endcsname}%
98 \fi\next@}%
99\@ifundefined{default@tag}{%
100 \def\default@tag{%
101 \def\tag{\PackageError{amscd}{\protect\tag\space not allowed
102 here}\@eha}}%
103}{}%
104\@ifundefined{at@@@}{%
105 \def\at@@@{\PackageError{amscd}{\Invalid@@ @}{\the\athelp@}\char64\relax}
106}{}
107\@ifundefined{athelp@}{\csname newhelp\endcsname\athelp@
108{Only certain combinations beginning with @ make sense to me.^^J%
109I'll assume you wanted @@ for a printed @.}}{}
110\@ifundefined{minaw@}{\newdimen\minaw@}{}
111\@ifundefined{bigaw@}{\newdimen\bigaw@}{}
112\minaw@11.111pt
113\newdimen\minCDarrowwidth
114\minCDarrowwidth2.5pc
115\newif\ifCD@
116\let\ampersand@\relax
117\newenvironment{CD}{%
118 \CDat
119 \bgroup\relax\iffalse{\fi\let\ampersand@&\iffalse}\fi
120 \CD@true\vcenter\bgroup\let\\\math@cr\restore@math@cr\default@tag
121 \tabskip\z@skip\baselineskip20\ex@
122 \lineskip3\ex@\lineskiplimit3\ex@\halign\bgroup
123 &\hfill$\m@th##$\hfill\crcr
124}{%
125 \crcr\egroup\egroup\egroup
126}
127\def\CD@check#1#2{\ifCD@\DN@{#2}\else
128 \DN@{\PackageError{amscd}{@\protect#1 not
129 allowed outside of the CD environment}\@eha}%
130 \fi\next@}
131\atdef@>#1>#2>{\ampersand@
132 \ifCD@ \global\bigaw@\minCDarrowwidth \else \global\bigaw@\minaw@ \fi
133 \setboxz@h{$\m@th\scriptstyle\;{#1}\;\;$}%
134 \ifdim\wdz@>\bigaw@\global\bigaw@\wdz@\fi
135 \@ifnotempty{#2}{\setbox\@ne\hbox{$\m@th\scriptstyle\;{#2}\;\;$}%
136 \ifdim\wd\@ne>\bigaw@\global\bigaw@\wd\@ne\fi}%
137 \ifCD@\enskip\fi
138 \mathrel{\mathop{\hbox to\bigaw@{\rightarrowfill@\displaystyle}}%
139 \limits^{#1}\@ifnotempty{#2}{_{#2}}}%
140 \ifCD@\enskip\fi \ampersand@}
141\atdef@<#1<#2<{\ampersand@
142 \ifCD@ \global\bigaw@\minCDarrowwidth \else \global\bigaw@\minaw@ \fi
143 \setboxz@h{$\m@th\scriptstyle\;\;{#1}\;$}%
144 \ifdim\wdz@>\bigaw@ \global\bigaw@\wdz@ \fi
145 \@ifnotempty{#2}{\setbox\@ne\hbox{$\m@th\scriptstyle\;\;{#2}\;$}%
146 \ifdim\wd\@ne>\bigaw@ \global\bigaw@\wd\@ne \fi}%
147 \ifCD@\enskip\fi
148 \mathrel{\mathop{\hbox to\bigaw@{\leftarrowfill@\displaystyle}}%
149 \limits^{#1}\@ifnotempty{#2}{_{#2}}}%
150 \ifCD@\enskip\fi \ampersand@}
151\begingroup \catcode`\~=\active \lccode`\~=`\@
152\lowercase{%
153 \global\atdef@)#1)#2){~>#1>#2>}
154 \global\atdef@(#1(#2({~<#1<#2<}
155}% end lowercase
156\endgroup
157\atdef@ A#1A#2A{\CD@check{A..A..A}{\llap{$\m@th\vcenter{\hbox
158 {$\scriptstyle#1$}}$}\Big\uparrow
159 \rlap{$\m@th\vcenter{\hbox{$\scriptstyle#2$}}$}&&}}
160\atdef@ V#1V#2V{\CD@check{V..V..V}{\llap{$\m@th\vcenter{\hbox
161 {$\scriptstyle#1$}}$}\Big\downarrow
162 \rlap{$\m@th\vcenter{\hbox{$\scriptstyle#2$}}$}&&}}
163\atdef@={\CD@check={&\enskip\mathrel
164 {\vbox{\hrule\@width\minCDarrowwidth\vskip2\ex@\hrule\@width
165 \minCDarrowwidth}}\enskip&}}
166\atdef@|{\CD@check|{\Big\Vert&&}}
167\atdef@\vert{\CD@check\vert{\Big\Vert&&}}
168\atdef@.{\CD@check.{&&}}
169\endinput
170%%
171%% End of file `amscd.sty'.