home *** CD-ROM | disk | FTP | other *** search
Text File | 1995-01-24 | 5.0 KB | 170 lines | [TEXT/MPS ] |
- %%
- %% This is file `tabularx.sty', generated
- %% on <1995/1/24> with the docstrip utility (2.2i).
- %%
- %% The original source files were:
- %%
- %% tabularx.dtx (with options: `package')
- %%
- %% IMPORTANT NOTICE:
- %% This file is part of the `tools' bundle
- %% in the LaTeX2e distribution.
- %%
- %% You are not allowed to distribute this file.
- %% For distribution of the original source see
- %% the copyright notice in the source file, and
- %% in the file readme.txt distributed with the
- %% tools bundle.
- %%
- %% File: tabularx.dtx Copyright (C) 1991-1994 David Carlisle
- \NeedsTeXFormat{LaTeX2e}
- \ProvidesPackage{tabularx}
- [1994/05/22 v2.01 `tabularx' package (DPC)]
- \DeclareOption{infoshow}{\AtEndOfPackage\tracingtabularx}
- \DeclareOption{debugshow}{\AtEndOfPackage\tracingtabularx}
- \ProcessOptions
- \RequirePackage{array}[1994/02/03]
- \newdimen\TX@col@width
- \newdimen\TX@old@table
- \newdimen\TX@old@col
- \newdimen\TX@target
- \newdimen\TX@delta
- \newcount\TX@cols
- \newif\ifTX@
- \def\tabularx#1{%
- {\ifnum0=`}\fi
- \TX@target#1\relax
- \TX@typeout{Target width: #1 = \the\TX@target.}%
- \toks@{}\TX@get@body}
- \long\def\TX@get@body#1\end
- {\toks@\expandafter{\the\toks@#1}\TX@find@end}
- \def\TX@find@end#1{%
- \def\@tempa{#1}%
- \ifx\@tempa\TX@\expandafter\TX@endtabularx
- \else\toks@\expandafter
- {\the\toks@\end{#1}}\expandafter\TX@get@body\fi}
- \def\TX@{tabularx}
- \def\TX@endtabularx{%
- \expandafter\TX@newcol\expandafter{\tabularxcolumn{\TX@col@width}}%
- \let\verb\TX@verb
- \def\@elt##1{\global\value{##1}\the\value{##1}\relax}%
- \edef\TX@ckpt{\cl@@ckpt}%
- \let\@elt\relax
- \TX@old@table=\maxdimen
- \TX@col@width=\TX@target
- \global\TX@cols=\@ne
- \TX@typeout@
- {\@spaces Table Width\@spaces Column Width\@spaces X Columns}%
- \TX@trial{\def\NC@rewrite@X{%
- \global\advance\TX@cols\@ne\NC@find p{\TX@col@width}}}%
- \loop
- \TX@arith
- \ifTX@
- \TX@trial{}%
- \repeat
- {\let\@footnotetext\TX@ftntext\let\@xfootnotenext\TX@xftntext
- \csname tabular*\expandafter\endcsname\expandafter\TX@target
- \the\toks@
- \csname endtabular*\endcsname}%
- \global\TX@ftn\expandafter{\expandafter}\the\TX@ftn
- \ifnum0=`{\fi}%
- \end{tabularx}}
- \def\TX@arith{%
- \TX@false
- \ifdim\TX@old@table=\wd\@tempboxa
- \TX@col@width=\TX@old@col
- \TX@typeout@{Reached minimum width, backing up.}%
- \else
- \dimen@=\wd\@tempboxa
- \advance\dimen@ -\TX@target
- \ifdim\dimen@<\TX@delta
- \TX@typeout@{Reached target.}%
- \else
- \ifnum\TX@cols>\@ne
- \advance\TX@cols by \m@ne
- \fi
- \divide\dimen@ by \TX@cols
- \advance\dimen@ by -\TX@col@width
- \ifdim \dimen@ > \z@
- \TX@typeout@{Columns too narrow.}%
- \else
- \TX@old@col=\TX@col@width
- \TX@old@table=\wd\@tempboxa
- \TX@col@width=-\dimen@
- \TX@true
- \fi
- \fi
- \fi}
- \TX@delta=\hfuzz
- \newcolumntype{X}{}
- \def\tabularxcolumn#1{p{#1}}
- \def\TX@newcol{\newcol@{X}[0]}
- \def\TX@trial#1{%
- \setbox\@tempboxa=\hbox{%
- #1\relax
- \let\@footnotetext\TX@trial@ftn
- \let\TX@vwarn\@empty
- \expandafter\let\expandafter\tabularx\csname tabular*\endcsname
- \expandafter\let\expandafter\endtabularx\csname endtabular*\endcsname
- \let\immediate=\relax\def\write##1##{{\afterassignment}\toks@=}%
- \hbadness=\@M\hfuzz=\maxdimen
- \let\hbadness=\@tempcnta\let\hfuzz=\@tempdima
- \expandafter\tabular\the\toks@
- \endtabular}%
- \TX@ckpt
- \TX@typeout@{\@spaces
- \expandafter\TX@align
- \the\wd\@tempboxa\space\space\space\space\space\@@
- \expandafter\TX@align
- \the\TX@col@width\space\space\space\space\space\@@
- \@spaces\the\TX@cols}}
- \def\TX@align#1.#2#3#4#5#6#7#8#9\@@{%
- \ifnum#1<10 \space\fi
- \ifnum#1<100 \space\fi
- \ifnum#1<\@m\space\fi
- \ifnum#1<\@M\space\fi
- #1.#2#3#4#5#6#7#8\space\space}
- \def\arraybackslash{\let\\=\@arraycr}
- \def\tracingtabularx{%
- \def\TX@typeout{\PackageWarningNoLine{tabularx}}%
- \def\TX@typeout@##1{\typeout{(tabularx) ##1}}}
- \let\TX@typeout\@gobble
- \let\TX@typeout@\@gobble
- \newtoks\TX@ftn
- \long\def\TX@ftntext#1{%
- \edef\@tempa{\the\TX@ftn\noexpand\footnotetext
- [\the\csname c@\@mpfn\endcsname]}%
- \global\TX@ftn\expandafter{\@tempa{#1}}}%
- \long\def\TX@xftntext[#1]#2{%
- \global\TX@ftn\expandafter{\the\TX@ftn\footnotetext[#1]{#2}}}
- \long\def\TX@trial@ftn#1{}
- {\uccode`\*=`\ %
- \uppercase{\gdef\TX@verb{%
- \leavevmode\null\TX@vwarn
- {\ifnum0=`}\fi\ttfamily\let\\\ignorespaces
- \@ifstar{\let~*\TX@vb}{\TX@vb}}}}
- \def\TX@vb#1{\def\@tempa##1#1{\toks@{##1}\edef\@tempa{\the\toks@}%
- \expandafter\TX@v\meaning\@tempa\\ \\\ifnum0=`{\fi}}\@tempa!}
- \def\TX@v#1!{\afterassignment\TX@vfirst\let\@tempa= }
- \begingroup
- \catcode`\*=\catcode`\#
- \catcode`\#=12
- \gdef\TX@vfirst{%
- \if\@tempa#%
- \def\@tempb{\TX@v@#}%
- \else
- \let\@tempb\TX@v@
- \if\@tempa\space~\else\@tempa\fi
- \fi
- \@tempb}
- \gdef\TX@v@*1 *2{%
- \TX@v@hash*1##\relax\if*2\\\else~\expandafter\TX@v@\fi*2}
- \gdef\TX@v@hash*1##*2{*1\ifx*2\relax\else#\expandafter\TX@v@hash\fi*2}
- \endgroup
- \def\TX@vwarn{%
- \@warning{\noexpand\verb may be unreliable inside tabularx}%
- \global\let\TX@vwarn\@empty}
- \endinput
- %%
- %% End of file `tabularx.sty'.
-