diff options
author | Karl Berry <karl@freefriends.org> | 2010-02-22 00:35:53 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2010-02-22 00:35:53 +0000 |
commit | b1d08fe2d339951213fe6aba9c2e849df806fc06 (patch) | |
tree | 6726c2b286311951217d7072b8b35089577b51fd /Master | |
parent | b84acce97a2eb68fa5c4a4c9e3fae4dbf09e30de (diff) |
carlisle update: fix2col and typehtml now separated
git-svn-id: svn://tug.org/texlive/trunk@17132 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master')
-rw-r--r-- | Master/texmf-dist/doc/latex/carlisle/README | 34 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/carlisle/fix2col.pdf | bin | 131726 -> 0 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/latex/carlisle/ltx1.tex | 2 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/carlisle/ltxtable.pdf | bin | 38938 -> 26323 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/latex/carlisle/typehtml.pdf | bin | 228629 -> 0 bytes | |||
-rw-r--r-- | Master/texmf-dist/source/latex/carlisle/fix2col.dtx | 631 | ||||
-rw-r--r-- | Master/texmf-dist/source/latex/carlisle/fix2col.ins | 10 | ||||
-rw-r--r-- | Master/texmf-dist/source/latex/carlisle/typehtml.dtx | 2364 | ||||
-rw-r--r-- | Master/texmf-dist/source/latex/carlisle/typehtml.ins | 3 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/carlisle/fix2col.sty | 303 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/carlisle/ltxtable.sty | 2 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/carlisle/typehtml.sty | 899 | ||||
-rwxr-xr-x | Master/tlpkg/libexec/ctan2tds | 9 |
13 files changed, 16 insertions, 4241 deletions
diff --git a/Master/texmf-dist/doc/latex/carlisle/README b/Master/texmf-dist/doc/latex/carlisle/README index eb764863c5f..ce8565ad719 100644 --- a/Master/texmf-dist/doc/latex/carlisle/README +++ b/Master/texmf-dist/doc/latex/carlisle/README @@ -20,6 +20,9 @@ nopageno.sty Turn off all page numbers in standard LaTeX classes, without having to worry about \maketitle and friends putting them back. +blkarray.sty + This file has now moved: see macros/latex/contrib/blkarray + ltxtable.tex This generates and documents the package ltxtable.sty. A merger of longtable and tabularx packages from the Standard LaTeX tools @@ -27,35 +30,15 @@ ltxtable.tex widths are automatically calculated to achieve a specified total table width. -blkarray.sty - Despite being in this `supported' directory this package is less - supported than the others. I wrote it a long time ago. It is still - documented using the conventions of LaTeX2.09 (although it appears - to work with current LaTeX releases). I do not think I am going to - be able to work on this in the foreseeable future, so have decided to - let it out in its current state. It is not really a package for - using in documents in its present state, but if you are interested - in coding tables of various sorts in TeX, you may be interested to - experiment with it... - - mylatex.ltx This file provides a method of making a special format tailored to one document, with all the class and packages, and other preamble material pre-loaded. This can save quite a lot of time on some systems. See the comments in the file. - typehtml.dtx typehtml.ins - Typeset HTML (ie World Wide web documents) directly from LaTeX. - Process the file html.ins to produce the html.sty package file. - Process the file html.dtx to produce examples, documentation and - code listings. Currently this package can handle almost all of - HTML2, and most of the math fragment of the draft HTML3. - More or less superceeded by typexml, distributed from ctan - in a separate directory. - + These files have moved: see macros/latex/contrib/typehtml plain.sty Typeset plain TeX markup in LaTeX documents. @@ -97,14 +80,7 @@ scalefnt.sty fix2col.dtx fix2col.ins - Superceeded by fixltx2e, part of the base LaTeX distribution. - Two column fixes. - a) Fix mark handling so \firstmark is taken from the first column - if that column has marks at all. - (A copy of Piet van Oostrum's fixmarks package, more or less.) - b) Keep two column floats like figure* in sequence with single - column floats like figure. - (Modelled on Ed Sznyter's 2.09 package, fixfloats.) + These files have moved: see macros/latex/contrib/fix2col slashed.sty Commands for the `Feynman slashed character' notation. diff --git a/Master/texmf-dist/doc/latex/carlisle/fix2col.pdf b/Master/texmf-dist/doc/latex/carlisle/fix2col.pdf Binary files differdeleted file mode 100644 index 26adcc5b634..00000000000 --- a/Master/texmf-dist/doc/latex/carlisle/fix2col.pdf +++ /dev/null diff --git a/Master/texmf-dist/doc/latex/carlisle/ltx1.tex b/Master/texmf-dist/doc/latex/carlisle/ltx1.tex index aba16e0d37c..d15c61bec19 100644 --- a/Master/texmf-dist/doc/latex/carlisle/ltx1.tex +++ b/Master/texmf-dist/doc/latex/carlisle/ltx1.tex @@ -1,6 +1,6 @@ %% LaTeX2e file `ltx1.tex' %% generated by the `filecontents' environment -%% from source `ltxtable' on 2006/06/21. +%% from source `ltxtable' on 2010/02/22. %% \begin{longtable}{|cXX|} the & head& line\endhead diff --git a/Master/texmf-dist/doc/latex/carlisle/ltxtable.pdf b/Master/texmf-dist/doc/latex/carlisle/ltxtable.pdf Binary files differindex d99e6d2352c..dfe6e8e1291 100644 --- a/Master/texmf-dist/doc/latex/carlisle/ltxtable.pdf +++ b/Master/texmf-dist/doc/latex/carlisle/ltxtable.pdf diff --git a/Master/texmf-dist/doc/latex/carlisle/typehtml.pdf b/Master/texmf-dist/doc/latex/carlisle/typehtml.pdf Binary files differdeleted file mode 100644 index 9c69589a576..00000000000 --- a/Master/texmf-dist/doc/latex/carlisle/typehtml.pdf +++ /dev/null diff --git a/Master/texmf-dist/source/latex/carlisle/fix2col.dtx b/Master/texmf-dist/source/latex/carlisle/fix2col.dtx deleted file mode 100644 index 963f35e8fd1..00000000000 --- a/Master/texmf-dist/source/latex/carlisle/fix2col.dtx +++ /dev/null @@ -1,631 +0,0 @@ -% \iffalse -%% Source File: fix2col.dtx Copyright 1997 1998 David Carlisle -%% -%% This file may be distributed under the terms of the LPPL. -%% See 00readme.txt for details. -% -%<*dtx> - \ProvidesFile{fix2col.dtx} -%</dtx> -%<package>\NeedsTeXFormat{LaTeX2e} -%<package>\ProvidesPackage{fix2col} -%<driver> \ProvidesFile{fix2col.drv} -% \fi -% \ProvidesFile{fix2col.dtx} - [1998/08/17 v0.03 Output Routine fixes for two column mode (DPC,FMi)] -% -% \iffalse -%<*driver> -\documentclass{ltxdoc} -\begin{document} -\DocInput{fix2col.dtx} -\end{document} -%</driver> -% \fi -% -% \GetFileInfo{fix2col.dtx} -% \CheckSum{579} -% -% \changes{v0.01}{1997/11/07} -% {Initial version} -% -% \changes{v0.02}{1997/11/11} -% {\cs{@ztryfc}} -% -% \title{The \textsf{fix2col} package\thanks{This file -% has version number \fileversion, last -% revised \filedate.}} -% \author{David Carlisle\thanks{%^^A -% Part one is essentially a copy of the fixmarks package by -% Piet van Oostrum, itself based on earlier work by Joe Pallas. -% Part two is loosely based on the fixfloats package, originally -% by Ed Sznyter, with some modifications by Bil Kleb.}} -% -% \date{\filedate} -% -% \let\package\textsf -% \let\env\textsf -% \let\url\texttt -% -% \maketitle -% -% \section{Introduction} -% This package makes two independent changes to \LaTeX's two column -% output routine to fix the following two longstanding `features'. -% -% \begin{itemize} -% \item -% If the \TeX\ mark system is used (for example using the -% `headings' page style in the standard \LaTeX\ classes) then any marks -% that originate on the first column are `lost' as \LaTeX\ constructs -% the second column. An example document showing how this can result -% in incorrect page headings may be found in the latex bug database:\\ -% \url{http://www.uni-mainz.de/cgi-bin/ltxbugs2html?pr=latex/2613} -% -% \item -% The second feature is documented in the \LaTeX\ book. By default -% \LaTeX\ does not attempt to keep double and single column floats in -% sequence, so if `Figure 1' is a double column float produced with -% |figure*|, then it may float -% after `Figure 2' if that is a single column, |figure|, float. -% Further correspondence about this may also be found in the -% bug database:\\ -% \url{http://www.uni-mainz.de/cgi-bin/ltxbugs2html?pr=latex/2346} -% \end{itemize} -% -% \StopEventually{} -% -% \section{Notes on the Implementation Strategies} -% -% \subsection{Preserving Marks} -% -% The standard \LaTeX\ twocolumn system works internally by making -% each column a separate `page' that is passed independently to \TeX's -% pagebreaker. (Unlike say the \package{multicol} package, where all -% columns are gathered together and then split into columns later, -% using |\vsplit|.) This means that the primitive \TeX\ marks that are -% normally used for header information, are globally reset after the -% first column. By default \LaTeX\ does nothing about this. -% A good solution is provided by Piet van Oostrum (building on earlier -% work of Joe Pallas) in his \package{fixmarks} package. -% -% After the first column box has been collected the mark information -% for that box is saved, so that any |\firstmark| can be -% `artificially' used to set the page-level marks after the second -% column has been collected. (The second column |\firstmark| is not -% normally required.) Unfortunately \TeX\ does not provide a direct -% way of knowing if any marks are in the page, |\firstmark| always has a -% value from previous pages, even if there is no mark in this page. -% The solution is to make a copy of the box and then |\vsplit| it -% so that any marks show up as |\splitfirstmark|. -% -% The use of |\vsplit| does mean that the output routine will globally -% change the value of |\splitfirstmark| and -% |\splitbotmark|. The \package{fixmarks} package goes to some trouble -% to save and restore these values so that the output routine does -% \emph{not} change the values. This part of \package{fixmarks} is not -% copied here as it is quite costly (having to be run on every page) and -% there is no reason why anyone writing code using |\vsplit| should -% allow the output routine to be triggered before the split marks have -% been accessed. -% -% \subsection{Preserving Float Order} -% -% The standard output routine maintains two lists of floats that have -% been `deferred' for later consideration. One list for single column -% floats, and one for double column floats (which are always -% immediately put onto their deferred list). This mechanism means -% that \LaTeX\ `knows' which type of float is contained in each box -% by the list that it is processing, but having two lists means -% that there is no mechanism for preserving the order between the -% floats in each list. -% -% The solution to this problem consists of two small changes to -% the output routine. -% -% Firstly, abandon the `double column float list' |\@dbldeferlist| -% and change every command where it is used so that instead the -% same |\@deferlist| is used as for single column floats. -% That one change ensures that double and single column floats -% stay in the same sequence, but as \LaTeX\ no longer `knows' -% whether a float is double or single column, it will happily -% insert a double float into a single column, overprinting the -% other column, or the margin. -% -% The second change is to provide an alternative mechanism for -% recording the two column floats. \LaTeX\ already has a compact -% mechanism for recording float information, an integer count register -% assigned to each float records information about the `type' of float -% `figure', `table' and the position information `htp' etc. -% -% The type information is stored in the `high' bits, one bit position -% (above `32') allocated to each float type. The `low' bits store -% information about the allowed positions, one bit each allocated for -% |h t b p|. In the \LaTeX2.09 system, the bit corresponding to `16' -% formed a `boundary' between these two sets of information, and it -% was never actually used by the system. Ed Sznyter's -% \package{fixfloats} package not unreasonably used this position to -% store the double column information, setting the bit for double -% column floats. Then at each point in the output routine at which a -% float is committed to a certain region, an additional check must be -% made to check that the float is (or is not) double column. If it -% spans the wrong number of columns it is deferred rather than being -% added. -% -% Unfortunately the bit `16' is not available in \LaTeXe. It is used -% to encode the extra float position possibility `|!|' that was added -% in that system. It would be possible to use position `32' and to -% move the flags for `table', `figure',\ldots\ up one position, to -% start at 64, but this would mean that in principle one less float -% type would be supported, and more importantly is likely to break -% any other packages that assume anything about the output routine -% internals. So here I instead use another mechanism for flagging -% double column floats: By default all floats have depth 0pt. -% This package arranges that double column ones have depth 1sp. -% This information may then be used in the same manner as in -% the \package{fixfloats} package, to defer any floats that are not of -% the correct column spanning type. -% -% Use of the package showed that one also has to change the way -% \LaTeX{} handles star-form floats: if they are immediately deferred -% (as done normally) certain situations can still result in the float -% sequence getting out of order. This happens when a floats are placed -% in the middle of a paragraph. In that case the wide float is -% deferred immediately while a column wide float early on in the same -% paragraph might not be handled until the end of the paragraph when -% it is finally seen by the output routine. Since by that time the -% wide float is already on the |\@deferlist| the column float will -% also end up there (which is not only incorrect because it may have -% fitted onto the page but also because it is then placed at the end -% of this list). Version v0.03 now fixes this problem. -% -% -% \section{Implementation} -% \begin{macrocode} -%<*package> -% \end{macrocode} -% -% \subsection{Preserving Marks} -% -% This is just a change to the single command |\@outputdblcol| -% so that it saves mark information for the first column and restores -% it in the second column. -% \begin{macrocode} -\def\@outputdblcol{% - \if@firstcolumn - \global\@firstcolumnfalse -% \end{macrocode} -% Save the left column -% \begin{macrocode} - \global\setbox\@leftcolumn\copy\@outputbox -% \end{macrocode} -% -% Remember the marks from the first column -% \begin{macrocode} - \splitmaxdepth\maxdimen - \vbadness\maxdimen - \setbox\@outputbox\vsplit\@outputbox to\maxdimen -% \end{macrocode} -% -% One minor difference from the current \package{fixmarks}, pass the -% marks through a token register to stop any |#| tokens causing an -% error in a |\def|. -% \begin{macrocode} - \toks@\expandafter{\topmark}% - \xdef\@firstcoltopmark{\the\toks@}% - \toks@\expandafter{\splitfirstmark}% - \xdef\@firstcolfirstmark{\the\toks@}% -% \end{macrocode} -% -% This test does not work if truly empty marks have been inserted, but -% \LaTeX\ marks should always have (at least) two brace groups. -% (Except before the first mark is used, when the marks are empty, -% but that is OK here.) -% \begin{macrocode} - \ifx\@firstcolfirstmark\@empty - \global\let\@setmarks\relax - \else - \gdef\@setmarks{% - \let\firstmark\@firstcolfirstmark - \let\topmark\@firstcoltopmark}% - \fi -% \end{macrocode} -% -% End of change -% \begin{macrocode} - \else - \global\@firstcolumntrue - \setbox\@outputbox\vbox{% - \hb@xt@\textwidth{% - \hb@xt@\columnwidth{\box\@leftcolumn \hss}% - \hfil - \vrule \@width\columnseprule - \hfil - \hb@xt@\columnwidth{\box\@outputbox \hss}}}% - \@combinedblfloats -% \end{macrocode} -% Override current first and top with those of first column if necessary -% \begin{macrocode} - \@setmarks -% \end{macrocode} -% End of change -% \begin{macrocode} - \@outputpage - \begingroup - \@dblfloatplacement - \@startdblcolumn - \@whilesw\if@fcolmade \fi{\@outputpage\@startdblcolumn}% - \endgroup - \fi} -% \end{macrocode} -% -% \subsection{Preserving Float Order} -% -% Changes |\@dbldeferlist| to |\@deferlist| are not explicitly noted -% but are flagged by blank comment lines around the changed line. -% -% -% \begin{macrocode} -\def\end@dblfloat{% -\if@twocolumn - \@endfloatbox - \ifnum\@floatpenalty <\z@ - \@largefloatcheck -% \end{macrocode} -% -% Force the depth of two column float boxes. -% \begin{macrocode} - \global\dp\@currbox1sp % -% \end{macrocode} -% -% \changes{v0.03}{1998/08/17}{FMi: use output routine to -% defer float} -% Next line assumes that first token of |\end@float| is -% |\@endfloatbox| so we gobble that. -% \begin{macrocode} -% \@cons\@deferlist\@currbox - \expandafter\@gobble\end@float -% \end{macrocode} -% |\@Esphack| is then added by |\@endfloat| above. -% \begin{macrocode} - \fi -% \ifnum \@floatpenalty =-\@Mii \@Esphack\fi -\else - \end@float -\fi -} -% \end{macrocode} -% -% Test if the float box has the wrong width. (Actually as noted above -% the test is for a conventional depth setting rather than for the -% width of the float). -% \begin{macrocode} -\def\@testwrongwidth #1{% - \ifdim\dp#1=\f@depth - \else - \global\@testtrue - \fi} -% \end{macrocode} -% -% Normally looking for single column floats, which have zero depth. -% \begin{macrocode} -\let\f@depth\z@ -% \end{macrocode} -% -% but when making two column float area, look for floats with 1sp -% depth. -% \begin{macrocode} -\def\@dblfloatplacement{\global\@dbltopnum\c@dbltopnumber - \global\@dbltoproom \dbltopfraction\@colht - \@textmin \@colht - \advance \@textmin -\@dbltoproom - \@fpmin \dblfloatpagefraction\textheight - \@fptop \@dblfptop - \@fpsep \@dblfpsep - \@fpbot \@dblfpbot -% \end{macrocode} -% -% \begin{macrocode} - \def\f@depth{1sp}} -% \end{macrocode} -% -% All the remaining changes are replacing the double column defer list -% or insering the extra test |\@testwrongwidth|\marg{box} at suitable -% places. That is at plces where a box is taken off the deferlist. -% \begin{macrocode} -\def \@doclearpage {% - \ifvoid\footins - \setbox\@tempboxa\vsplit\@cclv to\z@ \unvbox\@tempboxa - \setbox\@tempboxa\box\@cclv - \xdef\@deferlist{\@toplist\@botlist\@deferlist}% - \global \let \@toplist \@empty - \global \let \@botlist \@empty - \global \@colroom \@colht - \ifx \@currlist\@empty - \else - \@latexerr{Float(s) lost}\@ehb - \global \let \@currlist \@empty - \fi - \@makefcolumn\@deferlist - \@whilesw\if@fcolmade \fi{\@opcol\@makefcolumn\@deferlist}% - \if@twocolumn - \if@firstcolumn -% \end{macrocode} -% -% \begin{macrocode} - \xdef\@deferlist{\@dbltoplist\@deferlist}% -% \end{macrocode} -% -% \begin{macrocode} - \global \let \@dbltoplist \@empty - \global \@colht \textheight - \begingroup - \@dblfloatplacement -% \end{macrocode} -% -% \begin{macrocode} - \@makefcolumn\@deferlist - \@whilesw\if@fcolmade \fi{\@outputpage - \@makefcolumn\@deferlist}% -% \end{macrocode} -% -% \begin{macrocode} - \endgroup - \else - \vbox{}\clearpage - \fi - \fi -% \end{macrocode} -% the next line is needed to avoid losing floats in certain -% circumstances a single call to the original |\doclearpage| -% will now no longer output all floats. -% \changes{v0.03}{1998/08/17}{FMi: ensure \cs{doclearpage} is called again -% until all floats are output} -% \begin{macrocode} - \ifx\@deferlist\@empty \else\clearpage \fi - \else - \setbox\@cclv\vbox{\box\@cclv\vfil}% - \@makecol\@opcol - \clearpage - \fi -} -% \end{macrocode} -% -% \begin{macrocode} -\def \@startdblcolumn {% - \@tryfcolumn \@deferlist - \if@fcolmade - \else - \begingroup - \let \reserved@b \@deferlist - \global \let \@deferlist \@empty - \let \@elt \@sdblcolelt - \reserved@b - \endgroup - \fi -} -% \end{macrocode} -% -% \begin{macrocode} -\def\@addtonextcol{% - \begingroup - \@insertfalse - \@setfloattypecounts - \ifnum \@fpstype=8 - \else - \ifnum \@fpstype=24 - \else - \@flsettextmin - \@reqcolroom \ht\@currbox - \advance \@reqcolroom \@textmin - \ifdim \@colroom>\@reqcolroom - \@flsetnum \@colnum - \ifnum\@colnum>\z@ - \@bitor\@currtype\@deferlist - \@testwrongwidth\@currbox - \if@test - \else - \@addtotoporbot - \fi - \fi - \fi - \fi - \fi - \if@insert - \else - \@cons\@deferlist\@currbox - \fi - \endgroup -} -% \end{macrocode} -% -% \begin{macrocode} -\def\@addtodblcol{% - \begingroup - \@insertfalse - \@setfloattypecounts - \@getfpsbit \tw@ - \ifodd\@tempcnta - \@flsetnum \@dbltopnum - \ifnum \@dbltopnum>\z@ - \@tempswafalse - \ifdim \@dbltoproom>\ht\@currbox - \@tempswatrue - \else - \ifnum \@fpstype<\sixt@@n - \advance \@dbltoproom \@textmin - \ifdim \@dbltoproom>\ht\@currbox - \@tempswatrue - \fi - \advance \@dbltoproom -\@textmin - \fi - \fi - \if@tempswa - \@bitor \@currtype \@deferlist -% \end{macrocode} -% -% not in fixfloats? -% \begin{macrocode} - \@testwrongwidth\@currbox -% \end{macrocode} -% -% \begin{macrocode} - \if@test - \else - \@tempdima -\ht\@currbox - \advance\@tempdima - -\ifx \@dbltoplist\@empty \dbltextfloatsep \else - \dblfloatsep \fi - \global \advance \@dbltoproom \@tempdima - \global \advance \@colht \@tempdima - \global \advance \@dbltopnum \m@ne - \@cons \@dbltoplist \@currbox - \@inserttrue - \fi - \fi - \fi - \fi - \if@insert - \else - \@cons\@deferlist\@currbox - \fi - \endgroup -} -% \end{macrocode} -% -% \begin{macrocode} -\def \@addtocurcol {% - \@insertfalse - \@setfloattypecounts - \ifnum \@fpstype=8 - \else - \ifnum \@fpstype=24 - \else - \@flsettextmin - \advance \@textmin \@textfloatsheight - \@reqcolroom \@pageht - \ifdim \@textmin>\@reqcolroom - \@reqcolroom \@textmin - \fi - \advance \@reqcolroom \ht\@currbox - \ifdim \@colroom>\@reqcolroom - \@flsetnum \@colnum - \ifnum \@colnum>\z@ - \@bitor\@currtype\@deferlist -% \end{macrocode} -% We need to defer the float also if its width -% doesn't fit. -% \changes{v0.03}{1998/08/17}{FMi: test for wide float was -% in wrong place} -% \begin{macrocode} - \@testwrongwidth\@currbox -% \end{macrocode} -% -% \begin{macrocode} - \if@test - \else - \@bitor\@currtype\@botlist - \if@test - \@addtobot - \else - \ifodd \count\@currbox - \advance \@reqcolroom \intextsep - \ifdim \@colroom>\@reqcolroom - \global \advance \@colnum \m@ne - \global \advance \@textfloatsheight \ht\@currbox - \global \advance \@textfloatsheight 2\intextsep - \@cons \@midlist \@currbox - \if@nobreak - \nobreak - \@nobreakfalse - \everypar{}% - \else - \addpenalty \interlinepenalty - \fi - \vskip \intextsep - \box\@currbox - \penalty\interlinepenalty - \vskip\intextsep - \ifnum\outputpenalty <-\@Mii \vskip -\parskip\fi - \outputpenalty \z@ - \@inserttrue - \fi - \fi - \if@insert - \else - \@addtotoporbot - \fi - \fi - \fi - \fi - \fi - \fi - \fi - \if@insert - \else - \@resethfps - \@cons\@deferlist\@currbox - \fi -} -% \end{macrocode} -% -% \begin{macrocode} -\def\@xtryfc #1{% - \@next\reserved@a\@trylist{}{}% - \@currtype \count #1% - \divide\@currtype\@xxxii - \multiply\@currtype\@xxxii - \@bitor \@currtype \@failedlist - \@testfp #1% -% \end{macrocode} -% -% \begin{macrocode} - \@testwrongwidth #1% -% \end{macrocode} -% -% \begin{macrocode} - \ifdim \ht #1>\@colht - \@testtrue - \fi - \if@test - \@cons\@failedlist #1% - \else - \@ytryfc #1% - \fi} -% \end{macrocode} -% -% \begin{macrocode} -\def\@ztryfc #1{% - \@tempcnta\count #1% - \divide\@tempcnta\@xxxii - \multiply\@tempcnta\@xxxii - \@bitor \@tempcnta {\@failedlist \@flfail}% - \@testfp #1% -% \end{macrocode} -% -% not in fixfloats? -% \begin{macrocode} - \@testwrongwidth #1% -% \end{macrocode} -% -% \begin{macrocode} - \@tempdimb\@tempdima - \advance\@tempdimb\ht #1% - \advance\@tempdimb\@fpsep - \ifdim \@tempdimb >\@colht - \@testtrue - \fi - \if@test - \@cons\@flfail #1% - \else - \@cons\@flsucceed #1% - \@tempdima\@tempdimb - \fi} -% \end{macrocode} -% -% \begin{macrocode} -%</package> -% \end{macrocode} -% -% \Finale -% diff --git a/Master/texmf-dist/source/latex/carlisle/fix2col.ins b/Master/texmf-dist/source/latex/carlisle/fix2col.ins deleted file mode 100644 index 61206a6ca6c..00000000000 --- a/Master/texmf-dist/source/latex/carlisle/fix2col.ins +++ /dev/null @@ -1,10 +0,0 @@ -\input docstrip -\keepsilent -\preamble -\endpreamble - -\askforoverwritefalse - -\generate{\file{fix2col.sty}{\from{fix2col.dtx}{package}}} - -\endbatchfile diff --git a/Master/texmf-dist/source/latex/carlisle/typehtml.dtx b/Master/texmf-dist/source/latex/carlisle/typehtml.dtx deleted file mode 100644 index 0cddf95988f..00000000000 --- a/Master/texmf-dist/source/latex/carlisle/typehtml.dtx +++ /dev/null @@ -1,2364 +0,0 @@ -% -% \iffalse -%% -%% Source File `typehtml.dtx'. -%% Copyright (C) 1996 1997 David Carlisle -%% This file may be distributed under the terms of the LPPL. -%% See 00readme.txt for details. -%% -% -%<*dtx> - \ProvidesFile{typehtml.dtx} -%</dtx> -%<package>\NeedsTeXFormat{LaTeX2e}[1995/06/01] -%<package>\ProvidesPackage{typehtml} -%<driver>\ProvidesFile{typehtml.drv} -% \fi -% \ProvidesFile{typehtml.dtx} - [1997/11/19 v0.12 HTML printer (DPC)] -% -% \iffalse -%<*driver> -\documentclass{ltxdoc} -\usepackage[html3,subsection*,bigint]{typehtml} -\DocInput{typehtml.dtx} -\end{document} -%</driver> -% \fi -% -% \GetFileInfo{typehtml.dtx} -% \begin{document} -% \title{The \textsf{typehtml} package\thanks{This file -% has version number \fileversion, last -% revised \filedate.}} -% \author{David Carlisle} -% \date{\filedate} -% -% \changes{v0.01}{1996/03/06}{Initial version} -% \changes{v0.02}{1996/03/07}{Fiddling} -% \changes{v0.03}{1996/03/08}{HTML3 maths} -% \changes{v0.05}{1996/03/11} -% {change name to prevent clash with html package in latex2html} -% \changes{v0.11}{1996/03/28}{Minor improvements} -% \changes{v0.12}{1997/11/29}{Assorted changes for Bernard Gaulle, active -% french punctuation} -% \maketitle -% -% \CheckSum{2283} -% -% \section{Intoduction} -% -% This package enables the processing of HTML codes. The -% \verb|\dohtml| command -% allows fragments of HTML to be placed within a \LaTeX\ -% document, -%\begin{verbatim} -% \dohtml -% <html> -% html markup ... -% </html> -%\end{verbatim} -% The \verb|<html>|\ldots\verb|</html>| is \emph{required}. (It is -% anyway a good idea to have these tags in an HTML document.) -% -% The \verb|\htmlinput| command is similar, but takes a file -% name as argument. In that case the file need not necessarily start -% and end with \verb|<html>|\ldots\verb|</html>|. -% -% This package covers most of the HTML2 DTD, together with the -% mathematics extensions from HTML3.\footnote -% {The draft specification of HTML3 has expired, and the W3C group -% are currently devising a new proposed extension of HTML, so the -% mathematics typesetting part of this package may need substantial -% revision once a final specification of the HTML mathematics markup -% is agreed.} -% The rest of HTML3 may be added at a later date. -% -% Its current incarnation has not been extensively tested, having been -% thrown together during the last couple of weeks in response to a -% question on \texttt{comp.text.tex} about the availability of such a -% package. -% -% The package falls into three sections. Firstly the options section -% allows a certain amount of customisation, and enabling of -% extensions. Not all these options are fully operational at present. -% Secondly comes a section that implements a kind of SGML parser. This -% is not a real conforming SGML parser (not even a close approximation -% to such a thing!) The assumption (sadly false in the anarchic WWW) -% is that any document will have been validated by a conforming SGML -% parser before it ever gets to the stage of being printed by this -% package. Finally are a set of declarations that essentially map the -% declarations of the HTML DTD into \LaTeX\ constructs. -% -% \section{Options} -% -% \subsection{HTML Level} -% The options \texttt{html2} (the default) and \texttt{html3} control -% HTML variant supported. Using the \texttt{html3} option will use up a -% lot more memory to support the extra features, and the math entity -% (symbol) names. Against my better judgement there is also a -% \texttt{netscape} option to allow some of the non-HTML tags accepted -% by that browser. -% -% \subsection{Headings} -% The six options \texttt{chapter}, \texttt{chapter*}, \texttt{section}, -% \texttt{section*}, \texttt{subsection} and \texttt{subsection*} -% Determine to which \LaTeX\ sectional command the HTML element -% \texttt{h1} is mapped. (\texttt{h2}--\texttt{h6} will -% automatically follow suit.) The default is \texttt{section*}. -% -% \subsection{Double Quote Handling} -% Most HTML pages use |"| as as a quotation mark in text, for -% example: -%\begin{verbatim} -% quoted "like this" example -%\end{verbatim} -% -% This slot in the ISO latin-1 encoding is for `straight' double -% quotes. Unfortunately the Standard \TeX\ fonts in the OT1 encoding -% do not have such a character, only left and right quotes, ``like -% this''. By default this package uses the \texttt{straightquotedbl} -% option which uses the \LaTeX\ command |\textquotedbl| to render -% |"|. If used with the T1 encoded fonts |\usepackage[T1]{fontenc}| -% then the straight double quote from the current font is used. With -% OT1 fonts, the double quote is taken from the |\ttfamily| font, -% which looks \texttt{"}like this\texttt{"} which is fairly -% horrible, but better than the alternative which is ''like this''. -% -% The \texttt{smartquotedbl} option redefines |"| so that it produces -% alternatively an open double quote `` then a close ''. As there is a -% chance of it becoming confused, it is reset to `` at the beginning -% of every paragraph, whatever the current mode. -% -% Neither of these options affects the use of |"| as part of the SGML -% syntax to surround attribute values. -% -% In principle the package ought to have similar options dealing with -% the single quote, but there the situation is more complicated due to -% its dual use as an apostrophe, so currently the package takes no -% special precautions: all single quotes are treated as a closing -% quote/apostrophe. Also the conventions of `open' and `close' quotes -% only really apply to English. If someone wants to suggest what the -% package should do with |"| in other languages\ldots -% -% \subsection{Images} -% The default option is \texttt{imgalt} This means that all inline -% images (the HTML \texttt{img} element) are replaced by the text -% specified by the \texttt{alt} attribute, or \textsf{[image]} if no -% such attribute is specified. -% -% The \texttt{imggif} option\footnote{one day} uses the -% \verb|\includegraphics| command so that inline images appear as -% such in the printed version. -% -% The \texttt{imgps} option\footnotemark[1] is similar to -% \texttt{imggif} but first replaces the extension \texttt{.gif} at -% the end of the source file name by \texttt{.ps}. This will enable -% drivers that can not include GIF files to be used, as long as the -% user keeps the image in both PostScript and Gif formats. -% -% \subsection{Hyperref} -% -% Several options control how the HTML anchor tag is treated. -% -% The default \texttt{nohyperref} option ignores name anchors, and -% typesets the body of src anchors using |\emph|. -% -% The \texttt{ftnhyperref} option is similar to \texttt{nohyperref}, -% but adds a footnote showing the destination address of each link, -% as specified by the SRC attribute. -% -% If the \texttt{hyperref} option is specified, the hypertext markup -% in the HTML file will be replicated using the -% hypertext specials of the Hyper\TeX\ group. If in addition the -% \textsf{hyperref} package is loaded, the extra features of that -% package may be used, for instance producing `native PDF' specials -% for direct use by Adobe distiller rather than producing the specials -% of the hyper\TeX\ conventions. -% -% The \texttt{dviwindo} option converts the hypertext information in -% the HTML into the |\special| conventions of Y\&Y's \emph{dviwindo} -% previewer for Microsoft Windows. -% -% \subsection{Big Integrals} -% \LaTeX\ does not treat integral signs as variable sized symbols, -% in the way that it treats delimiters such as brackets. In common -% with summation signs and a few other operators, they come in -% just two fixed sizes, a small version for inline mathematics, and a -% large version used in displays. In fact by default \LaTeX\ always -% uses the same two sizes (from the 10\,pt math extension font) even if -% the document class has been specified with a size option such as -% \texttt{12pt}, or if a size command such as |\large| has been used. -% -% The standard \textsf{exscale} package loads the math extension font -% at larger sizes if the current font size is larger than 10\,pt. -% -% The HTML3 math description explicitly states that integral signs -% should be treated like delimiters and stretch if applied to a large -% math expression. By default this package ignores this advice and -% treats integral signs in the standard way, however an option -% \texttt{bigint} does cause integral signs to `stretch' (or at least -% be taken from a suitably large font). The standard Computer Modern -% fonts use a very `sloped' integral which means that they are -% not really suitable for being stretched. Some other math fonts, for -% instance Lucida, have more vertical integral signs, and one could -% imagine in those cases making an integral sign with a `repeatable' -% vertical middle section so that it could grow to an arbitrary size, in -% the way that brackets grow. -% -% \section{Latin-1 characters} -% The SGML character entities for the ISO-Latin1 characters such as -% \texttt{\é} are recognised by this style, although as usual, -% some of them such as the Icelandic thorn character, -% \texttt{\þ}, \verb|\th|, produce an error if the old `OT1' -% encoded fonts are being used. These characters will print correctly -% if `T1' encoded fonts are used, for example by declaring -% \verb|\usepackage[T1]{fontenc}|~. -% -% HTML also allows direct 8-bit input of characters according to the -% ISO-latin1 encoding, to enable this you need to enable latin-1 input -% for \LaTeX\ with a declaration such as -% \verb|\usepackage[latin1]{inputenc}|~. -% -% \section{Mathematics} -% The HTML3 MATH element is fairly well supported, including the BOX -% and CLASS attributes. (Currently only CHEM value for class is -% supported, and as far as I can see the BOX attribute is only in the -% report, not in the dtd.) The super and subscripts are supported, -% including the shortref maps, however only the default right -% alignment is -% implemented so far. The convention described in the draft report -% for using white space to distinguish superscript positioning is -% fairly \emph{horrible}! -% -% -% The documentation that I could find on HTML3 did not include a full -% list of the entity names to be used for the symbols. This -% package currently \emph{only} defines the following entities, which -% should be enough for testing purposes at least. -% -% \begin{itemize} -% \item -% |gt| ($>$) |lt| ($<$) (Already in the HTML2 DTD) -% -% \item -% Some Greek letters. -% -% |alpha| ($\alpha$) -% |beta| ($\beta$) -% |gamma| ($\gamma$) -% |Gamma| ($\Gamma$) -% -% \item -% Integral and Sum. $\int$ grows large if the \texttt{bigint} package -% option is given. -% -% |int| ($\int$) -% |sum| ($\sum$) -% -% \item -% Braces (The delimiters ()[] also stretch as expected in the BOX -% element) -% -% |lbrace| ($\lbrace$) -% |rbrace| ($\rbrace$) -% -% \item -% A random collection of mathematical symbols: -% -% |times| ($\times$) -% |cup| ($\cup$) -% |cap| ($\cap$) -% |vee| ($\vee$) -% |wedge| ($\wedge$) -% |infty| ($\infty$) -% |oplus| ($\oplus$) -% |ominus| ($\ominus$) -% |otimes| ($\otimes$) -% -% \item -% A Minimal set of trig functions: -% -% |sin| ($\sin$) -% |cos| ($\cos$) -% |tan| ($\tan$) -% -% \item -% Also in the special context as attributes to ABOVE and BELOW elements -% the entities: -% -% |overbrace| ($\overbrace{\quad}$) -% |underbrace| ($\underbrace{\quad}$) and any (\TeX) math accent name. -% -% \end{itemize} -% -% \section{SGML Minimisation features} -% SGML (and hence HTML) support various minimisation features that aim -% to make it easier to enter the markp `by hand'. These features make -% the kind of `casual' attempt at parsing SGML as implemented in this -% package somewhat error prone. -% -% Two particular features are enabled in HTML. The so called SHORTTAG -% feature means that the name of a tag may be omitted if it may be -% inferred from the context. Typically in HTML this is used in -% examples like -%\begin{verbatim} -% <title>A Document Title</> -%\end{verbatim} -% The end tag is shortened to |</>| and the system infers that -% TITLE is the element to be closed. -% -% The second form of minimisation enabled in HTML is the OMITTAG -% feature. Here a tag may be omitted altogether in certain -% circumstances. -% A typical example is the HTML list, where each list item is started -% with |<li>| but the closing |</li>| at the end of the item may be -% omitted and inferred by the following |<li>| or |</ol>| tag. -% -% This package is reasonably robust with respect to omitted -% tags. However it only makes a half hearted attempt at supporting the -% SHORTTAG feature. The TITLE example above would work, but nested -% elements, with multiple levels of minimised end tags will probably -% break this package. -% -% It would be possible to build a \LaTeX\ system that had full -% knowledge of the HTML (or any other) DTD and in particular the -% `content model' of every element, this would produce a more robust -% parsing system but would take longer than I was prepared to -% spend this week\ldots\ In anycase if you need a fully conforming SGML -% parser, it probably makes sense to use an existing one (excellent -% free parsers are freely available) and then convert the output of -% the parser to a form suitable for \LaTeX. In that way all such -% concerns about SGML syntax features such as minimisation will have -% been resolved by the time \LaTeX\ sees the document. -% -% \section{Examples} -% \let\olddohtml\dohtml -% \def\dohtml{\olddohtml\MakePercentIgnore} -% -% -% \subsection{A section} -% This document uses the \texttt{subsection*} option. -%\begin{verbatim} -% <h1>HTML and LaTeX</h1> -%\end{verbatim} -% \dohtml -% <html> -% <h1>HTML and LaTeX</h1> -% </html> -% -% \subsection{An itemised list} -%\begin{verbatim} -% <ul> -% <li> something -% <li> something else -% </ul> -%\end{verbatim} -% \dohtml -% <html> -% <ul> -% <li> something -% <li> something else -% </ul> -% </html> -% -% \subsection{Latin1 Characters} -%\begin{verbatim} -% é ö -%\end{verbatim} -% \dohtml -% <html> -% é ö -% </html> -% -% \subsection{Images} -% Currently only the ALT attribute is supported. -%\begin{verbatim} -% This is an image of me <img alt="DPC" src="dpc.gif"> -%\end{verbatim} -% \dohtml -% <html> -% This is an image of me <img alt="DPC" src="dpc.gif"> -% </html> -% -% \subsection{A Form} -%\begin{verbatim} -% <form -% action="http://www.cogs.susx.ac.uk/cgi-bin/ltxbugs2html" -% method=get><hr> -% You can search for all the bug reports about: <select name="category"> -% <option>AMS LaTeX</option> -% <option>Babel</option> -% <option>Graphics and colour</option> -% <option>LaTeX</option> -% <option selected>Metafont fonts</option> -% <option>PostScript fonts</option> -% <option>Tools</option> -% </select> -% <hr> -% </form> -%\end{verbatim} -% \dohtml -% <html> -% <form -% action="http://www.cogs.susx.ac.uk/cgi-bin/ltxbugs2html" -% method=get><hr> -% You can search for all the bug reports about: <select name="category"> -% <option>AMS LaTeX</option> -% <option>Babel</option> -% <option>Graphics and colour</option> -% <option>LaTeX</option> -% <option selected>Metafont fonts</option> -% <option>PostScript fonts</option> -% <option>Tools</option> -% </select> -% <hr> -% </form> -% </html> -% -% \subsection{Styles of Mathematics} -%\begin{verbatim} -% <math> -% H_2_O + CO_2_ -% </math> -% <math class=chem> -% H_2_O + CO_2_ -% </math> -% <math box> -% H_2_O + CO_2_ -% </math> -% <math class=chem box> -% H_2_O + CO_2_ -% </math> -%\end{verbatim} -% \dohtml -% <html> -% <math> -% H_2_O + CO_2_ -% </math> -% <math class=chem> -% H_2_O + CO_2_ -% </math> -% <math box> -% H_2_O + CO_2_ -% </math> -% <math class=chem box> -% H_2_O + CO_2_ -% </math> -% </html> -% -% \subsection{Integrals} -% Stretchy integrals with the \texttt{bigint} option. -%\begin{verbatim} -% <math> -% {∫^1^_3_<left> -% 1 -% <over> -% {x+{1<over>x+{2<over>x+ -% {3<over>x+{4<over>x}}}}} -% <right>dx} -% </math> -%\end{verbatim} -% \dohtml -% <html> -% <math> -% {∫^1^_3_<left> -% 1 -% <over> -% {x+{1<over>x+{2<over>x+ -% {3<over>x+{4<over>x}}}}} -% <right><t>d</t> x} -% </math> -% </html> -% And the same integral with the standard integral sign. -% \begingroup -% \makeatletter -% \let\HTML@bigint\int -% \dohtml -% <html> -% <math> -% {∫^1^_3_<left> -% 1 -% <over> -% {x+{1<over>x+{2<over>x+ -% {3<over>x+{4<over>x}}}}} -% <right><t>d</t>x} -% </math> -% </html> -% \endgroup -% -% \subsection{Oversized delimiters} -%\begin{verbatim} -% <math> -% <box>(<left>1 <atop> 2 <right>)</box> -% <box size=large>(<left>1 <atop> 2 <right>)</box> -% </math> -%\end{verbatim} -% \dohtml -% <html> -% <math> -% <box>(<left>1 <atop> 2 <right>)</box> -% <box size=large>(<left>1 <atop> 2 <right>)</box> -% </math> -% </html> -% -% \subsection{Roots, Overbraces etc} -%\begin{verbatim} -% <math> -% <above sym=overbrace> abc </above><sup>k</sup> -%   -% <root>3<of>x</root> -% <sqrt>5</sqrt> -%   -% <below sym=underline> abc </below> -% <above sym=widehat> abc </above> -% </math> -%\end{verbatim} -% \dohtml -% <html> -% <math> -% <above sym=overbrace> a bc </above><sup>k</sup> -%   -% <root>3<of>x</root> -% <sqrt>5</sqrt> -%   -% <below sym=underline> abc </below> -% <above sym=widehat> abc </above> -% </math> -% </html> -% -% \subsection{Arrays} -% -%\begin{verbatim} -% <math> -% aa<array align=top> -% <row><item><text>first col</text><item><text>second col</text><item> -% <text>third col</text><item><text>fourth col</text> -% <row><item><text>row 2</text><item> a_22_ <item>a_23_<item>a_24_ -% <row><item><text>row 3</text><item rowspan=3 colspan=2> -% a_32_-a_53_<item>a_34_ -% <row><item><text>row 4</text><item>a_44_ -% <row><item><text>row 5</text><item>a_54_ -% <row><item><text>row 6</text><item align=left> -% al_62_<item>a_63_<item>a_64_ -% <row><item><text>row 7</text><item align=right> -% ar_72_<item>a_73_<item>a_74_ -% </array>bb -% </math> -%\end{verbatim} -% -% \dohtml -% <html> -% <math> -% aa<array align=top> -% <row><item><text>first col</text><item><text>second col</text><item> -% <text>third col</text><item><text>fourth col</text> -% <row><item><text>row 2</text><item> a_22_ <item>a_23_<item>a_24_ -% <row><item><text>row 3</text><item rowspan=3 colspan=2> -% a_32_-a_53_<item>a_34_ -% <row><item><text>row 4</text><item>a_44_ -% <row><item><text>row 5</text><item>a_54_ -% <row><item><text>row 6</text><item align=left> -% al_62_<item>a_63_<item>a_64_ -% <row><item><text>row 7</text><item align=right> -% ar_72_<item>a_73_<item>a_74_ -% </array>bb -% </math> -% </html> -% -% Repeat that element, but change the ARRAY attributes as follows: -%\begin{verbatim} -% <array ldelim="(" rdelim=")" labels> -%\end{verbatim} -% -% \dohtml -% <html> -% <math> -% aa<array ldelim="(" rdelim=")" labels> -% <row><item><text>first col</text><item><text>second col</text><item> -% <text>third col</text><item><text>fourth col</text> -% <row><item><text>row 2</text><item> a_22_ <item>a_23_<item>a_24_ -% <row><item><text>row 3</text><item rowspan=3 colspan=2> -% a_32_-a_53_<item>a_34_ -% <row><item><text>row 4</text><item>a_44_ -% <row><item><text>row 5</text><item>a_54_ -% <row><item><text>row 6</text><item align=left> -% al_62_<item>a_63_<item>a_64_ -% <row><item><text>row 7</text><item align=right> -% ar_72_<item>a_73_<item>a_74_ -% </array>bb -% </math> -% </html> -% -% and finally an example of COLSPEC -%\begin{verbatim} -% <math> -% <array colspec="R+C=L"> -% <row><item>abc_11_<item>abc_12_<item>abc_13_ -% <row><item>a_21_<item>a_22_<item>a_23_ -% <row><item>a_31_<item>a_32_<item>a_33_ -% </array> -% </math> -%\end{verbatim} -% -% \dohtml -% <html> -% <math> -% <array colspec="R+C=L"> -% <row><item>abc_11_<item>abc_12_<item>abc_13_ -% <row><item>a_21_<item>a_22_<item>a_23_ -% <row><item>a_31_<item>a_32_<item>a_33_ -% </array> -% </math> -% </html> -% -% \subsection{Tables} -% HTML3 tables are not yet supported, but there is a minimal ammount to -% catch simple cases. -% -%\begin{verbatim} -% <table> -% <caption>Simple Table</caption> -% <tr><td>one <td> two -% <tr><td>a <td> b -% </table> -%\end{verbatim} -% -% \dohtml -% <html> -% <table> -% <caption>Simple Table</caption> -% <tr><td>one <td> two -% <tr><td>a <td> b -% </table> -% </html> -% -% \StopEventually{} -% -% \section{The Code} -% -% \subsection{Option Handling} -% \begin{macrocode} -%<*package> -% \end{macrocode} -% -% \begin{macrocode} -\DeclareOption{html2}{\let\HTML@two@stop\endinput} -% \end{macrocode} -% -% The |#| here, and in later option code will need doubling -% if you are using a \LaTeX\ before June 95. -% \begin{macrocode} -\DeclareOption{netscape} - {\def\HTML@not#1{\SGML@w{<#1> is not valid HTML}}} -% \end{macrocode} -% -% \begin{macrocode} -\DeclareOption{html3}{\let\HTML@two@stop\relax} -% \end{macrocode} -% -% \changes{v0.08}{1996/03/16}{Add nohyperref option} -% \begin{macrocode} -\DeclareOption{nohyperref}{% - \let\HTML@doname\@secondoftwo - \def\HTML@dosrc#1#2{\emph{#2}}} -% \end{macrocode} -% -% \changes{v0.08}{1996/03/16}{Add ftnhyperref option} -% \begin{macrocode} -\DeclareOption{ftnhyperref}{% - \let\HTML@doname\@secondoftwo - \def\HTML@dosrc#1#2{\emph{#2}\footnote{HREF: \texttt{#1}}}} -% \end{macrocode} -% -% \changes{v0.08}{1996/03/16} -% {make hyperref independent of hyperref package} -% \begin{macrocode} -\DeclareOption{hyperref}{% - \AtBeginDocument{% - \providecommand\href[2]{\special{html:<A href="#1">}% - #2\special{html:</A>}}% - \providecommand\hypertarget[2]{\special{html:<A name="#1">}% - #2\special{html:</A>}}% - \let\HTML@doname\hypertarget - \let\HTML@dosrc\href}} -% \end{macrocode} -% -% \changes{v0.08}{1996/03/16}{Add dviwindo option} -% Dviwindo itself deals with links within a document i.e., a src -% attribute of the form |"#name"|. The code below detects -% a more general URL and fires a |launch:| action from the |\special|, -% which calls the non-existant command \texttt{typehtml}. Presumably -% this could be a batch file that calls netscape or some other WWW -% engine to process the URL. -% \begin{macrocode} -\DeclareOption{dviwindo}{% - \def\HTML@dosrc#1#2{{% - \leavevmode\sbox\z@{#2}\count@\ht\z@\@tempcnta\wd\z@ - \if\string##\@car#1\@nil - \special{button: \the\@tempcnta\space\the\count@\space - "\@gobble#1"}% - \else - \special{button: \the\@tempcnta\space\the\count@\space - launch: typehtml "#1"} - \fi - \special{color push}\special{color rgb 0 1 0}% - \unhbox\z@ - \special{color pop}}}% - \def\HTML@doname#1#2{\leavevmode\special{mark: "#1"}#2}}% -% \end{macrocode} -% -% \begin{macrocode} -\DeclareOption{imgalt}{} -% \end{macrocode} -% -% \begin{macrocode} -\DeclareOption{imggif}{\SGML@w{img gif support not done yet}} -% \end{macrocode} -% -% \begin{macrocode} -\DeclareOption{imgps}{\SGML@w{img ps support not done yet}} -% \end{macrocode} -% -% \changes{v0.10}{1996/03/25}{Add double quote handling} -% \begin{macrocode} -\DeclareOption{smartquotedbl}{% - \def\SGMLquotedbla{% - \textquotedblleft\global\let\SGMLquotedbl\SGMLquotedblb} - \def\SGMLquotedblb{% - \textquotedblright\global\let\SGMLquotedbl\SGMLquotedbla} - \let\SGMLquotedbl\SGMLquotedbla - \let\SGML@savedeverypar\everypar - \newtoks\everypar - \SGML@savedeverypar{% - \global\let\SGMLquotedbl\SGMLquotedbla\the\everypar}} -% \end{macrocode} -% -% \begin{macrocode} -\DeclareOption{straightquotedbl}{% - \DeclareTextCommandDefault{\textquotedbl}{{\ttfamily\char`\"}}% - \let\SGMLquotedbl\textquotedbl} -% \end{macrocode} -% -% \begin{macrocode} -\DeclareOption{chapter}{% - \def\HTML@headings{% - \chapter\section\subsection% - \subsubsection\paragraph\subparagraph}} -% \end{macrocode} -% -% \begin{macrocode} -\DeclareOption{chapter*}{% - \def\HTML@headings{% - {\chapter*}{\section*}{\subsection*}% - {\subsubsection*}{\paragraph*}{\subparagraph*}}} -% \end{macrocode} -% -% \begin{macrocode} -\DeclareOption{section}{% - \def\HTML@headings{% - \section\subsection% - \subsubsection\paragraph\subparagraph\endgraf}} -% \end{macrocode} -% -% \begin{macrocode} -\DeclareOption{section*}{% - \def\HTML@headings{% - {\section*}{\subsection*}% - {\subsubsection*}{\paragraph*}{\subparagraph*}\endgraf}} -% \end{macrocode} -% -% \begin{macrocode} -\DeclareOption{subsection}{% - \def\HTML@headings{% - \subsection% - \subsubsection\paragraph\subparagraph\endgraf\endgraf}} -% \end{macrocode} -% -% \begin{macrocode} -\DeclareOption{subsection*}{% - \def\HTML@headings{% - {\subsection*}% - {\subsubsection*}{\paragraph*}{\subparagraph*}\endgraf\endgraf}} -% \end{macrocode} -% -% \begin{macrocode} -\DeclareOption{bigint}{% - \let\HTML@int\int - \AtEndOfPackage{\RequirePackage{exscale}}} -% \end{macrocode} -% -% \changes{v0.08}{1996/03/16}{Make unnumbered sections the default} -% \begin{macrocode} -\ExecuteOptions{section*,imgalt,html2,nohyperref,straightquotedbl} -% \end{macrocode} -% -% \begin{macrocode} -\ProcessOptions -% \end{macrocode} -% -% \subsection{Fake SGML parser} -% -% \begin{macrocode} -\begingroup -% \end{macrocode} -% -% \changes{v0.12}{1997/11/29}{activate gtr and semicolon} -% \begin{macrocode} -\catcode`\<=\active -\catcode`\>=\active -\catcode`\&=\active -\catcode`\$=\active -\catcode`\"=\active -\catcode`\^=\active -\catcode`\_=\active -\catcode`\;=\active -\catcode`\A=\active -\catcode`\B=\active -\catcode`\C=\active -\catcode`\D=\active -% \end{macrocode} -% \changes{v0.12}{1997/11/29}{\cs{uppercase} not \cs{lowercase}} -% \begin{macrocode} -\uccode`\A=`\{% -\uccode`\B=`\}% -% \end{macrocode} -% \changes{v0.10}{1996/03/25}{Swap round lccodes of C and D} -% \changes{v0.10}{1996/03/25}{Add double quote handling} -% \begin{macrocode} -\uccode`\C=`\|% -\uccode`\D=`\\% -% \end{macrocode} -% -% \begin{macrocode} -\uppercase{\endgroup -% \end{macrocode} -% -% \begin{macro}{\SGMLent@@} -% \changes{v0.12}{1997/11/29}{delimit with active semicolon and gtr} -% \begin{macrocode} -\def\SGMLent@@#1;{\csname SGML@E@#1\endcsname} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\SGMLent@@} -% \changes{v0.12}{1997/11/29}{macro added} -% \begin{macrocode} -\def\SGML@def@active#1>{% - \expandafter\def\csname SGML@#1\endcsname} -% \end{macrocode} -% \end{macro} -% -% \begin{macrocode} -\def\dohtml{% - \begingroup - \ifx;\@undefined\expandafter\let\expandafter;\string;\fi - \ifx>\@undefined\expandafter\let\expandafter>\string>\fi - \catcode`\<=\active - \catcode`\>=\active - \catcode`\&=\active - \catcode`\{=\active - \catcode`\}=\active - \catcode`\$=\active - \catcode`\"=\active - \catcode`\^=\active - \catcode`\_=\active - \catcode`\\=\active - \catcode`\|=\active - \catcode\endlinechar=10 - \catcode`\%=12 - \catcode`\#=12 - \catcode`\;=\active - \def\verbatim@nolig@list{\do\`\do\,\do\'\do\-} - \def<{\SGMLopen}% - \def&{\SGMLent}% - \let^\textasciicircum - \let~\textasciitilde - \def_{\_}% - \let$\$% - \def"{\SGMLquotedbl}% - \def A{\{}% - \def B{\}}% - \def C{\texttt{|}}% - \def D{\texttt{\char`\\}}% -% \end{macrocode} -% \changes{v0.07}{1996/03/15}{macro added} -% Need to be careful about writing to table of contents. -% \begin{macrocode} - \def\addcontentsline##1##2##3{% - {\def<{\string<}\def&{\string&}% - \addtocontents{##1}{\protect\dotochtml<html>}% - \addtocontents{##1}{\protect\contentsline{##2}{##3}{\thepage}}% - \addtocontents{##1}{\protect</html>}}}} -% \end{macrocode} -% -% \begin{macro}{\dotochtml} -% A `compromise' version of |\dohtml| for use in table of contents -% files. -% Allows HTML markup |<|, |&| etc, but also \TeX\ markup |\|, |{|, |}|. -% As these are incompatible, this is not 100\% reliable but it seems to -% cover most cases in practice. -% \changes{v0.07}{1996/03/15}{macro added} -% \begin{macrocode} -\def\dotochtml{% - \dohtml - \catcode`\\\z@ - \catcode`\{\@ne - \catcode`\}\tw@} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\SGMLshortend} -% \changes{v0.04}{1996/03/09}{macro added} -% \begin{macrocode} -\def\SGMLshortend{/} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\SGMLgrab@} -% \begin{macrocode} -\def\SGMLgrab@#1<#2>{% - \edef\@tempd{\lowercase{\def\noexpand\@tempd{\gobblespc#2 \relax}}}% - \@tempd -% \end{macrocode} -% -% \changes{v0.04}{1996/03/09}{SHORTTAG support} -% \begin{macrocode} - \ifx\@tempd\SGMLshortend\let\@tempd\@tempc\fi -% \end{macrocode} -% -% \begin{macrocode} - \ifx\@tempb\@tempd - \advance\@tempcnta\@ne - \else - \ifx\@tempc\@tempd - \advance\@tempcnta\m@ne - \fi - \fi - \ifnum\@tempcnta=\z@ - \expandafter\@tempa\expandafter{\the\@temptokena#1}% - \else - \addto@hook\@temptokena{#1<#2>}% - \expandafter\SGMLgrab@ - \fi} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\SGMLopen} -% \changes{v0.10}{1996/03/25}{Add double quote handling} -% \changes{v0.12}{1997/11/29}{delimit with active gtr} -% \begin{macrocode} -\def\SGMLopen#1>{% - \SGMLopen@#1 \@nil} -% \end{macrocode} -% \end{macro} -% -% \begin{macrocode} -} -% \end{macrocode} -% -% \begin{macro}{\htmlinput} -% \begin{macrocode} -\def\htmlinput#1{\dohtml\let\@endhtml\relax\input{#1}\endgroup} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\gobblespc} -% \begin{macrocode} -\def\gobblespc#1 #2\relax{#1} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\SGMLgrabber} -% \begin{macrocode} -\def\SGMLgrabber#1#2{% - \def\@tempa{#2}% - \@tempcnta\@ne - \@temptokena{}% - \lowercase{\def\@tempb{#1}\def\@tempc{/#1}}% - \SGMLgrab@} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\SGMLopen@} -% \changes{v0.07}{1996/03/15}{macro added} -% \begin{macrocode} -\begingroup -\catcode`\"=\active -\uppercase{\endgroup -\def\SGMLopen@#1 #2\@nil{% - \toks@{}% - \edef\@tempa{\lowercase{\def\noexpand\SGMLelement{#1}}}\@tempa - \if!\@car#1\relax\@nil - \toks@{#1 #2}% - \SGML@w{Declaration ignored\MessageBreak<\the\toks@>\MessageBreak}% - \else - \if$#2$\else - \replacequotes#2"\@nil"% - \SGMLafterfi - \expandafter\toks@\expandafter{\expandafter}% - \expandafter\SGMLgetattrib\the\toks@ \@nil - \fi - \expandafter\ifx\csname SGML@\SGMLelement - \expandafter\endcsname\relax - \SGML@w{<\SGMLelement> undefined}% - \else - \csname SGML@\SGMLelement - \expandafter\expandafter\expandafter\endcsname - \fi - \fi} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\replacequotes} -% \begin{macrocode} -\def\replacequotes#1"#2"{% - \def\@tempb{#2}% - \ifx\@tempb\@nnil - \addto@hook\toks@{#1}% - \else - \addto@hook\toks@{#1{#2}}% - \expandafter\replacequotes - \fi}} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\SGMLafterfi} -% \begin{macrocode} -\def\SGMLafterfi#1\fi{\fi#1} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\SGMLgobbletofi} -% \begin{macrocode} -\def\SGMLgobbletofi#1\fi{\fi} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\SGMLgetattrib} -% \changes{v0.10}{1996/03/25}{use dollar to distingish empty value} -% \begin{macrocode} -\def\SGMLgetattrib#1 #2{% - \ifx\box#1\box\else - \SGMLgetval#1=$=\@nil - \def\@tempa{#2}% - \ifx\@tempa\@nnil - \expandafter\SGMLgobbletofi - \else - \expandafter\SGMLafterfi - \fi - \SGMLgetattrib#2% - \fi} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\SGMLgetval} -% \changes{v0.08}{1996/03/16}{lowercase attribute names} -% If no value was supplied |#2| will be |$| (Even if the value is |$| -% The test is false, as that would be catcode 13. Done this way rather -% than looking for empty to distinguish |alt=""| with empty value. -% \begin{macrocode} -\def\SGMLgetval#1=#2=#3\@nil{% - \ifcat$#2% - \lowercase{\SGML@addattrib\doimplied{#1}}% - \else - \lowercase{\SGML@addattrib{\do{#1}}}{#2}% - \fi} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\SGML@addattrib} -% \changes{v0.08}{1996/03/16}{macro added} -% \begin{macrocode} -\def\SGML@addattrib#1#2{\addto@hook\toks@{#1{#2}}} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\SGML@w} -% \begin{macrocode} -\def\SGML@w{\PackageWarning{typehtml}} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\SGMLdef} -% \changes{v0.12}{1997/11/29}{allow active delimiters} -% \begin{macrocode} -\def\SGMLdef#1{% - \ifcat\noexpand#1\noexpand~% - \expandafter\SGML@def@active - \else - \expandafter\SGML@def - \fi} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\SGMLdef} -% \changes{v0.12}{1997/11/29}{macro added} -% make sure this is a catcode 12 |>|. -% \begin{macrocode} -\edef\@tempa{\def\noexpand\SGML@def##1\string>}\@tempa{% - \expandafter\def\csname SGML@#1\endcsname} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\SGMLent} -% \begin{macrocode} -\expandafter\def\expandafter\SGMLent\expandafter{% - \expandafter\protect\csname& \endcsname} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{& } -% \begin{macrocode} -\expandafter\def\csname& \endcsname{% - \futurelet\@let@token\SGMLent@} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\SGMLent@} -% \begin{macrocode} -\def\SGMLent@{% - \ifx\@let@token\@sptoken - \&% - \else - \expandafter\SGMLent@@ - \fi} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\SGMLentity} -% \begin{macrocode} -\def\SGMLentity#1{% - \expandafter\def\csname SGML@E@#1\endcsname} -% \end{macrocode} -% \end{macro} -% -% \subsection{The HTML2 DTD} -% -% \begin{macrocode} -\SGMLdef<html>{} -\SGMLdef</html>{\@endhtml} -\let\@endhtml\endgroup -% \end{macrocode} -% -% \begin{macrocode} -\SGMLdef<title>{\typeout{***TITLE***}\SGMLgrabber{title}\typeout} -% \end{macrocode} -% -% \begin{macrocode} -\long\def\@tempa#1#2#3#4#5#6{% - \SGMLdef<h1>{\SGMLgrabber{h1}{\HTMLsection{#1}}}% - \SGMLdef<h2>{\SGMLgrabber{h2}{\HTMLsection{#2}}}% - \SGMLdef<h3>{\SGMLgrabber{h3}{\HTMLsection{#3}}}% - \SGMLdef<h4>{\SGMLgrabber{h4}{\HTMLsection{#4}}}% - \SGMLdef<h5>{\SGMLgrabber{h5}{\HTMLsection{#5}}}% - \SGMLdef<h6>{\SGMLgrabber{h6}{\HTMLsection{#6}}}} -% \end{macrocode} -% -% \begin{macrocode} -\expandafter\@tempa\HTML@headings -% \end{macrocode} -% -% \begin{macrocode} -\def\HTMLsection#1#2{#1{\ignorespaces#2\unskip}} -% \end{macrocode} -% -% \begin{macrocode} -\SGMLdef<head>{} -\SGMLdef</head>{} -% \end{macrocode} -% -% \begin{macrocode} -\SGMLdef<body>{} -\SGMLdef</body>{} -% \end{macrocode} -% -% \begin{macrocode} -\SGMLdef<bodytext>{} -\SGMLdef</bodytext>{} -% \end{macrocode} -% -% \begin{macrocode} -\SGMLdef<p>{\par} -\SGMLdef</p>{\par} -% \end{macrocode} -% -% \begin{macrocode} -\SGMLdef<blockquote>{\begin{quote}} -\SGMLdef</blockquote>{\end{quote}} -% \end{macrocode} -% -% \begin{macrocode} -\SGMLdef<address>{\begin{quote}} -\SGMLdef</address>{\end{quote}} -% \end{macrocode} -% -% \begin{macrocode} -\SGMLdef<ul>{\begin{itemize}} -\SGMLdef</ul>{\end{itemize}} -% \end{macrocode} -% -% \begin{macrocode} -\SGMLdef<ol>{\begin{enumerate}} -\SGMLdef</ol>{\end{enumerate}} -% \end{macrocode} -% -% \begin{macrocode} -\SGMLdef<li>{\item} -\SGMLdef</li>{} -% \end{macrocode} -% -% \begin{macrocode} -\SGMLdef<dl>{% - \let\do\dldo - \let\doimplied\dlimplied - \begin{description}\the\toks@} -\SGMLdef</dl>{\end{description}} -% \end{macrocode} -% -% \begin{macrocode} -\def\dldo#1#2{% - \def\@tempa{compact}\def\@tempb{#1}% - \ifx\@tempa\@tempb - \itemsep\z@ - \advance\@totalleftmargin-\leftmargin - \advance\linewidth\leftmargin - \itemindent-\labelsep - \leftmargin\z@ - \parshape \@ne \@totalleftmargin \linewidth - \fi} -\def\dlimplied#1{\dldo{#1}\relax} -% \end{macrocode} -% -% \begin{macrocode} -\def\itx#1{\item[#1]} -\SGMLdef<dt>{\begin{lrbox}\z@\bfseries\let\maybeenddt\enddt} -\SGMLdef</dt>{\maybeenddt} -\SGMLdef<dd>{\maybeenddt} -\SGMLdef</dd>{} -\def\enddt{\end{lrbox}\item[\unhbox\z@]} -\let\maybeenddt\relax -% \end{macrocode} -% -% \changes{v0.07}{1996/03/15}{hyperref support (SPQR)} -% \begin{macrocode} -\SGMLdef<a>{\SGMLgrabber{a}\HTML@anchor} -% \end{macrocode} -% -% \begin{macro}{\HTML@anchor} -% This handles the A tag. -% \changes{v0.04}{1996/03/09}{macro added} -% \begin{macrocode} -\def\HTML@anchor#1{{% - \let\@tempa\@gobble - \def\_{\string_}% - \let\do\ado - \the\toks@ - \@tempa{#1}}} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\ado} -% Thanks to SPQR for first pass at integrating \textsf{hyperref}. -% \begin{macrocode} -\def\ado#1#2{% - \def\@tempb{name}\def\@tempc{#1}% - \ifx\@tempb\@tempc - \let\@tempa\@firstofone - \def\@tempa{\HTML@doname{#2}}% - \else - \def\@tempa{\HTML@dosrc{#2}}% - \fi} -% \end{macrocode} -% \end{macro} -% -% \changes{v0.03}{1996/03/08}{pre is alltt not verbatim} -% \begin{macrocode} -\SGMLdef<pre>{% - \par - \begingroup - \parindent\z@ - \obeylines\verbatim@font\@noligs - \frenchspacing\@vobeyspaces} -% \end{macrocode} -% -% -% \begin{macrocode} -\SGMLdef</pre>{\endgroup} -% \end{macrocode} -% -% \begin{macrocode} -\SGMLdef<tt>{\SGMLgrabber{tt}\texttt} -\SGMLdef<b>{\SGMLgrabber{b}\textbf} -\SGMLdef<i>{\SGMLgrabber{i}\textit} -\SGMLdef<em>{\SGMLgrabber{em}\emph} -\SGMLdef<strong>{\SGMLgrabber{strong}\textbf} -\SGMLdef<code>{\SGMLgrabber{code}\texttt} -\SGMLdef<samp>{\SGMLgrabber{samp}\textsf} -\SGMLdef<kbd>{\SGMLgrabber{kbd}\texttt} -\SGMLdef<var>{\SGMLgrabber{var}\textit} -\SGMLdef<cite>{\SGMLgrabber{cite}\textit} -% \end{macrocode} -% -% \begin{macrocode} -\SGMLdef<form>{\par\medskip} -\SGMLdef</form>{\par\medskip} -% \end{macrocode} -% -% \begin{macrocode} -\SGMLdef<select>{% - \let\do\selectdo - \the\toks@\par - \begin{tabular}{|l|}% - \hline\@tempc\\\hline - \let\tabularnewline\relax - \ignorespaces} -% \end{macrocode} -% -% \begin{macrocode} -\def\selectdo#1#2{% - \def\@tempa{name}\def\@tempb{#1}% - \ifx\@tempa\@tempb\def\@tempc{#2}\fi} -% \end{macrocode} -% -% \begin{macrocode} -\SGMLdef</select>{\\\hline\end{tabular}} -% \end{macrocode} -% -% \begin{macrocode} -\SGMLdef<option>{% - \gdef\optionbul{\phantom{$\bullet$}}% - \let\do\optiondo - \let\doimplied\optionimplied - \the\toks@ - \tabularnewline - \let\tabularnewline\\% - \optionbul\space\ignorespaces} -\SGMLdef</option>{} -% \end{macrocode} -% -% \begin{macro}{\optiondo} -% Handle attributes to the OPTION element. -% \begin{macrocode} -\def\optiondo#1#2{% - \def\@tempa{selected}\def\@tempb{#1}% - \ifx\@tempa\@tempb\gdef\optionbul{$\bullet$}\fi} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\optionimplied} -% Handle the case where just the attribute value is given. -% \begin{macrocode} -\def\optionimplied#1{% - \def\@tempa{selected}\def\@tempb{#1}% - \ifx\@tempa\@tempb\gdef\optionbul{$\bullet$}\fi} -% \end{macrocode} -% \end{macro} -% -% \begin{macrocode} -\SGMLdef<input>{} -% \end{macrocode} -% -% \begin{macrocode} -\SGMLdef<img>{{% - \let\do\imgdo - \def\@tempa{\doimage}% - \the\toks@ - \@tempa}} -% \end{macrocode} -% -% \begin{macrocode} -\def\doimage{\textsf{[image]}} -% \end{macrocode} -% -% \begin{macro}{\imgdo} -% Handle IMG attributes (not very usefully) -% \begin{macrocode} -\def\imgdo#1{\csname img=#1\endcsname} -\expandafter\def\csname img=align\endcsname#1{% - \SGML@w{align=#1 ignored}} -\expandafter\def\csname img=src\endcsname#1{% - \SGML@w{src=#1 ignored}} -\expandafter\def\csname img=height\endcsname#1{% - \SGML@w{height=#1 ignored}} -\expandafter\def\csname img=alt\endcsname#1{% - \def\doimage{#1}} -% \end{macrocode} -% \end{macro} -% -% Horizontal rules and line breaks. -% \changes{v0.12}{1997/11/29}{BR in vertical mode allowed.} -% \begin{macrocode} -\SGMLdef<hr>{\par\smallskip\hrule\smallskip} -\SGMLdef<br>{\leavevmode\\} -% \end{macrocode} -% -% These are obsolete in HTML3 but do them anyway. -% \changes{v0.10}{1996/03/25}{XMP and LISTING and PLAINTEXT added} -% \begin{macrocode} -\SGMLdef<xmp>{% - \SGML@pre - \def\@tempb{/xmp}% - \let\SGMLopen\HTML@xmptest} -% \end{macrocode} -% -% \begin{macrocode} -\SGMLdef<listing>{% - \SGML@xmp - \def\@tempb{/listing}} -% \end{macrocode} -% -% \begin{macrocode} -\SGMLdef<plaintext>{% - \SGML@xmp - \def\@tempb{/plaintext}}% -% \end{macrocode} -% -% \begin{macro}{\HTML@xmptest} -% \begin{macrocode} -\def\HTML@xmptest#1>{% - \lowercase{\def\@tempa{#1}}% - \ifx\@tempa\@tempb - \endgroup - \else - \SGMLafterfi - <#1>% - \fi} -% \end{macrocode} -% \end{macro} -% -% -% SGML syntax Character entities. -% \begin{macrocode} -\SGMLentity{amp}{\&} -\SGMLentity{lt}{\ensuremath{<}} -\SGMLentity{gt}{\ensuremath{>}} -% \end{macrocode} -% -% ISO Latin-1 Character entities. -% \begin{macrocode} -\SGMLentity{aacute}{\'a} -\SGMLentity{Aacute}\'A{} -\SGMLentity{acirc}{\^a} -\SGMLentity{Acirc}{\^A} -\SGMLentity{agrave}{\`a} -\SGMLentity{Agrave}{\`A} -\SGMLentity{aring}{\r a} -\SGMLentity{Aring}{\r A} -\SGMLentity{atilde}{\~a} -\SGMLentity{Atilde}{\~A} -\SGMLentity{auml}{\"a} -\SGMLentity{Auml}{\"A} -\SGMLentity{aelig}{\ae} -\SGMLentity{AElig}{\AE} -\SGMLentity{ccedil}{\c c} -\SGMLentity{Ccedil}{\c C} -\SGMLentity{eth}{\dh} -\SGMLentity{ETH}{\DH} -\SGMLentity{eacute}{\'e} -\SGMLentity{Eacute}{\`E} -\SGMLentity{ecirc}{\^e} -\SGMLentity{Ecirc}{\^E} -\SGMLentity{egrave}{\`e} -\SGMLentity{Egrave}{\`E} -\SGMLentity{euml}{\"e} -\SGMLentity{Euml}{\"E} -\SGMLentity{iacute}{\'\i} -\SGMLentity{Iacute}{\'I} -\SGMLentity{icirc}{\^\i} -\SGMLentity{Icirc}{\^I} -\SGMLentity{igrave}{\`\i} -\SGMLentity{Igrave}{\`I} -\SGMLentity{iuml}{\"\i} -\SGMLentity{Iuml}{\"I} -\SGMLentity{ntilde}{\~n} -\SGMLentity{Ntilde}{\~N} -\SGMLentity{oacute}{\'o} -\SGMLentity{Oacute}{\'O} -\SGMLentity{ocirc}{\^o} -\SGMLentity{Ocirc}{\^O} -\SGMLentity{ograve}{\`o} -\SGMLentity{Ograve}{\`O} -\SGMLentity{oslash}{\oe} -\SGMLentity{Oslash}{\OE} -\SGMLentity{otilde}{\~o} -\SGMLentity{Otilde}{\~O} -\SGMLentity{ouml}{\"o} -\SGMLentity{Ouml}{\"O} -\SGMLentity{szlig}{\ss} -\SGMLentity{thorn}{\th} -\SGMLentity{THORN}{\TH} -\SGMLentity{uacute}{\'u} -\SGMLentity{Uacute}{\'U} -\SGMLentity{ucirc}{\^u} -\SGMLentity{Ucirc}{\^U} -\SGMLentity{ugrave}{\`u} -\SGMLentity{Ugrave}{\`U} -\SGMLentity{uuml}{\"u} -\SGMLentity{Uuml}{\"U} -\SGMLentity{yacute}{\'y} -\SGMLentity{Yacute}{\'Y} -\SGMLentity{yuml}{\"y} -% \end{macrocode} -% -% \subsection{Netscape Non-HTML tags} -% -% Netscape allows certain tags that do not correspond to HTML elements. -% These are \emph{Bad Thing}. Originally the documentation of this -% package stated that such `extensions' would not be supported, however -% as a request came from \ldots\ldots\footnote{Name withheld to -% protect the guilty} who also supplied most of the code in this -% section (and also the table section), I have added some support -% which is enabled if the \texttt{netscape} option is used. -% \begin{macrocode} -\ifx\HTML@not\@undefined\else -% \end{macrocode} -% -% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% Do something with bad reprehensible nonstandard tags -% that have the annoying habit of turning up often in html files that -% I want to print. [mjd,1996/03/20] -% -% |\HTML@not| is defined above in the netscape option: -% Naughty Nonstandard Extension Warning for things like -% |<center>| and |<font>|. (I thought these were -% Netscape-specific but the technical notes at Spyglass's web site -% showed that I was wrong. [mjd,1996/03/20]) -% \begin{macrocode} -\SGMLdef<center>{\HTML@not{center}\begin{center}} -\SGMLdef</center>{\end{center}} -% \end{macrocode} -% -% \begin{macrocode} -\SGMLdef<blink>{\SGMLgrabber{blink}\textbf} -% \end{macrocode} -% -% \begin{macrocode} -\SGMLdef<font>{\HTML@not{font}\begingroup - \let\do\fontdo\the\toks@} -\SGMLdef</font>{\endgroup} -% \end{macrocode} -% |\fontdo| must look at the first character of the `size, value to see -% if it is a relative size change (|+| or |-|). Otherwise it is an -% absolute size change. -% \begin{macrocode} -\def\fontdo#1#2{% - \def\@tempa{size}\def\@tempb{#1}% - \ifx\@tempa\@tempb - \font@switch#2\relax\@nil - \fi} -% \end{macrocode} -% -% Let's hack a nice little hook into |\@setfontsize| (tsk tsk). -% If we can set the current font size number there, it makes the rest -% of the job much easier. -% \begin{macrocode} -\toks@\expandafter{\set@fontsize{#1}{#2}{#3}} -\edef\@tempa{% - \def\noexpand\set@fontsize##1##2##3{\the\toks@\noexpand\set@fontnum}} -\@tempa -% \end{macrocode} -% -% Take |\f@size| which is a real number, convert it to an integer, -% and normalize to the desired range. -% \begin{macrocode} -\def\set@fontnum{\dimen@\f@size\p@ - \dimen@\mul@ptsize\dimen@ - \count@\dimen@ \divide\count@\p@ - \advance\count@ -5\relax - \edef\@fontnum{\number\count@}} -% \end{macrocode} -% -% Nice consistent naming conventions as always. -% multiplier if 11pt or 12pt documentclass option is used -% \begin{macrocode} -\def\mul@ptsize{}% -% \end{macrocode} -% -% 5 = |\normalsize| I think -% \begin{macrocode} -\def\@fontnum{5} -% \end{macrocode} -% -% Initialize |\mul@ptsize| -% \begin{macrocode} -\ifcase 0\@ptsize\relax - \global\let\mul@ptsize\@empty% case 0, ptsize = 10 - \or\gdef\mul@ptsize{.9091}% case 1, ptsize = 11 - \else\gdef\mul@ptsize{.8333}% case 2, ptsize = 12 -\fi -% \end{macrocode} -% -% |\font@switch| looks for |+| or |-| and selects a suitable fontsize -% command. -% \begin{macrocode} -\def\font@switch#1#2\@nil{\count@\@fontnum\relax - \ifx +#1\advance\else\ifx -#1\advance\fi\fi - \count@#1#2\relax - \ifcase\count@ \tiny\or \tiny\or \scriptsize - \or\footnotesize \or\small \or\normalsize \or\large - \or\Large \or\LARGE \or\huge \else\Huge \fi} -% \end{macrocode} -% -% \begin{macrocode} -\fi -% \end{macrocode} -% -% \subsection{The HTML3 DTD} -% -% |\HTML@two@stop| is |\endinput| (and so the package stops here) -% unless the HTML3 option is given. -% \begin{macrocode} -\HTML@two@stop -\SGML@w{HTML3 support not finished yet} -% \end{macrocode} -% -% \begin{macrocode} -\SGMLdef<math>{\SGMLgrabber{math}\domath} -% \end{macrocode} -% -% \begin{macrocode} -\SGMLdef<sup>{^\bgroup\HTMLscriptmap} -\SGMLdef</sup>{\egroup} -% \end{macrocode} -% -% \begin{macrocode} -\SGMLdef<sub>{_\bgroup\HTMLscriptmap} -\SGMLdef</sub>{\egroup} -% \end{macrocode} -% -% GRUMBLE! GRUMBLE! GRUMBLE! Possibly the worst feature of \TeX's math -% markup is the nature of the infix operators for fractions and the -% like. And here it is faithfully (or actually not very faithfully) -% reconstructed here\ldots -% \begin{macrocode} -\SGMLdef<box>{\SGMLgrabber{box}\dobox} -% \end{macrocode} -% -% \begin{macrocode} -\begingroup -\catcode`\<=\active -\catcode`\>=\active -\catcode`\&=\active -\catcode`\_=\active -\catcode`\^=\active -\catcode`\"=\active -% \end{macrocode} -% -% \begin{macro}{\domath} -% Handle the MATH element. The body is pre-expanded one level to -% replace |{ }| by BOX elements, and to replace any SGML entitity -% references by single \TeX\ tokens so they can be recognised more -% easily. Then start math mode with |\[| (which may have been -% redefined locally if the BOX attribute was used) set up the -% shorteref map. -% \begin{macrocode} -\gdef\domath#1{% - {{\def&{\expandafter\expandafter\expandafter\noexpand\SGMLent@@}% - \let<\relax\let>\relax\let_\relax\let^\relax\let"\relax - \def\{{<box>}\def\}{</box>}% - \xdef\@gtempa{#1}}% - \let\do\mathdo - \let\doimplied\mathimplied - \the\toks@ - \[% - \m@th\nulldelimiterspace\z@ - \def^{<sup>}% - \def_{<sub>}% - \@gtempa\]}} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\HTMLscriptmap} -% Set up the shortref map used in super and subscripts. -% \begin{macrocode} -\gdef\HTMLscriptmap{% - \def^{</sup>}% - \def_{</sub>}} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\dobox} -% Handle the BOX element. -% First deal with the attributes, then set up the shortref map. Then -% start looking for a LEFT tag. -% \begin{macrocode} -\gdef\dobox#1{% - {\let\do\boxdo - \let\bigstrut\relax - \the\toks@ - \def^{<sup>}% - \def_{<sub>}% - \lookleft@#1<left>\@nil}} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\lookleft@} -% See whether this BOX element contains a LEFT tag. Supply a `null -% delimiter' if not one supplied. -% \begin{macrocode} -\gdef\lookleft@#1<left>#2\@nil{% - \if$#2$% - {\left.\bgroup#1\mayberight}% - \else - \lookbox@#1<box>\@nil#2\@nil - \fi} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\lookbox@} -% Having found a LEFT tag, need to check it isn't inside a nested BOX. -% The following code looks for an explicit |<BOX>| (which includes a -% |{| shortref as that will have been expanded by now, however it will -% fail if nested boxes have attributes, so it may need some further -% modifications later. -% \begin{macrocode} -\gdef\lookbox@#1<box>#2\@nil#3<left>\@nil{% - \if$#2$% - {\maybeleft#1\@nil#3\mayberight} - \else - {#1 \boxtofront#2 <left> #3}% - \fi} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\boxtofront} -% After all that messing around need to put the BOX tag back where we -% found it. -% \begin{macrocode} -\gdef\boxtofront#1<box>{<box>#1} -% \end{macrocode} -% \end{macro} -% -% \begin{macrocode} -\endgroup -% \end{macrocode} -% -% \begin{macro}{\mathdo} -% \changes{v0.04}{1996/03/10}{Support math attributes} -% \begin{macrocode} -\def\mathdo#1#2{% - \def\@tempa{class-chem}\def\@tempb{#1-#2}% - \ifx\@tempa\@tempb - \everymath{\fam\z@}\everydisplay{\fam\z@}% - \fi} -\def\mathimplied#1{% - \def\@tempa{box}\def\@tempb{#1}% - \ifx\@tempa\@tempb - \def\[{\center\setbox\z@\hbox\bgroup$\displaystyle}% - \def\]{$\egroup\fbox{\box\z@}\endcenter}% - \fi} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\boxdo} -% \changes{v0.04}{1996/03/09}{Support box size attribute} -% \begin{macrocode} -\def\boxdo#1#2{% - \def\@tempa{size}\def\@tempb{#1}% - \ifx\@tempa\@tempb - \def\@tempb{#2} - \def\@tempa{normal}\ifx\@tempa\@tempb\def\@tempc{1}\fi - \def\@tempa{medium}\ifx\@tempa\@tempb\def\@tempc{2}\fi - \def\@tempa{large}\ifx\@tempa\@tempb\def\@tempc{3}\fi - \def\@tempa{huge}\ifx\@tempa\@tempb\def\@tempc{4}\fi - \edef\bigstrut{\vrule\@height\@tempc\ht\strutbox\@width\z@} - \fi} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\SGML@left} -% \begin{macrocode} -\SGMLdef<left>{\left.\bgroup} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\mayberight} -% \begin{macrocode} -\def\mayberight{\egroup\bigstrut\right.} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\maybeleft} -% \changes{v0.04}{1996/03/09}{macro added} -% \begin{macrocode} -\def\maybeleft#1#2\@nil{% - \in@{#1}{()[]\SGML@E@rbrace\SGML@E@lbrace}% - \ifin@ - \left#1\bgroup#2% - \else - \let\SGML@E@int\HTML@bigint - #1#2\left.\bgroup\let\SGML@E@int\int - \fi} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\righttest} -% \changes{v0.04}{1996/03/09}{macro added} -% \begin{macrocode} -\def\righttest#1{% - \in@{#1}{()[]\SGML@E@rbrace\SGML@E@lbrace}% - \ifin@ - \right#1\let\mayberight\relax - \else - \right.\let\mayberight\relax\expandafter#1% - \fi} -% \end{macrocode} -% \end{macro} -% -% \subsection{`Big int' processing} -% I am not sure that stretchy integral signs are good idea in general, -% and certainly they do not fit well with the Computer Modern style of -% sloping integral sign as opposed to the more vertical style of, say, -% Lucida. However\ldots -% -% \begin{macro}{\HTML@int} -% \changes{v0.04}{1996/03/010}{macro added} -% \begin{macrocode} -\ifx\HTML@int\@undefined -% \end{macrocode} -% -% \begin{macro}{\HTML@bigint} -% Normally just use the standard |\int|. -% \begin{macrocode} -\let\HTML@bigint\int -% \end{macrocode} -% -% \begin{macrocode} -\else -% \end{macrocode} -% -% With the |bigint| option . -% The original |\int| (in a big font) together with any saved limits -% (in the normal font). -% \begin{macrocode} -\def\HTML@int{\int^{\box\tw@}_{\box4}} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\HTML@bigint} -% \begin{macrocode} -\def\HTML@bigint#1\left.\bgroup{% - \def\@tempa{#1}% - \setbox\z@\hbox\bgroup - \aftergroup\HTMLafterbigint$\displaystyle\bgroup - \aftergroup$\aftergroup\egroup} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\HTMLafterbigint} -% \begin{macrocode} -\def\HTMLafterbigint{% - \dimen@.5\ht\z@ - \advance\dimen@.5\dp\z@ - {\SGMLdef<sup>{\setbox\tw@\hbox\bgroup\HTMLscriptmap$\scriptstyle}% - \SGMLdef<sub>{\setbox4\hbox\bgroup\HTMLscriptmap$\scriptstyle}% - \SGMLdef</sup>{$\egroup}% - \SGMLdef</sub>{$\egroup}% - \setbox\tw@\box\voidb@x - \setbox4\box\voidb@x - \@tempa - \ifdim\dimen@>\f@size\p@ -% \end{macrocode} -% At this point, could do |\fontsize\dimen@\z@\selectfont| but that -% would load \emph{all} the math fonnts at a strange size, so instead -% just load the extension font, and then subvert NFSS to drop that -% into the math expression. The NFSS interface is still used to -% declare the font so that a size substitution is done on the loading -% (otherwise every integral may use up a new font). -% \changes{v0.08}{1996/03/16}{Use \cs{DeclareFixedFont}} -% \begin{macrocode} - \mathop{\hbox{\DeclareFixedFont\@tempa{OMX}{cmex}{m}{n}\dimen@ - $\displaystyle\textfont\thr@@\@tempa\HTML@int$}}% - \else - \HTML@int - \fi - }\left.\box\z@} -% \end{macrocode} -% \end{macro} -% -% \begin{macrocode} -\fi -% \end{macrocode} -% \end{macro} -% -% -% See above grumble. The HTML3 DTD comments specifically refer to -% these as `\LaTeX\ commands' but they are no such thing. They are in -% plain and survive into \LaTeX\ under protest! The AMS \LaTeX\ -% documentation contains a much longer diatribe against these infix -% commands, and they are \emph{disabled} in the AMS \LaTeX\ styles. -% \begin{macrocode} -\SGMLdef<over>{\over} -\SGMLdef<atop>{\atop} -\SGMLdef<choose>{\choose} -% \end{macrocode} -% -% \begin{macrocode} -\SGMLdef<right>{\egroup\bigstrut\righttest} -% \end{macrocode} -% -% \begin{macrocode} -\SGMLdef<above>{\SGMLgrabber{above}% - {\let\@tempc\overlineop - \let\do\abovedo - \the\toks@ - \@tempc}} -% \end{macrocode} -% -% \begin{macrocode} -\SGMLdef<below>{\SGMLgrabber{below}% - {\let\@tempc\underlineop - \let\do\abovedo - \the\toks@ - \@tempc}} -% \end{macrocode} -% -% \begin{macrocode} -\def\overlineop#1{\mathop{\overline{#1}}} -\def\underlineop#1{\mathop{\underline{#1}}} -% \end{macrocode} -% -% \begin{macrocode} -\def\abovedo#1#2{% - \def\@tempa{sym}\def\@tempb{#1}% - \ifx\@tempa\@tempb\def\@tempc{\csname#2\endcsname}\fi} -% \end{macrocode} -% -% \begin{macrocode} -\SGMLdef<vec>{\SGMLgrabber{vec}\vec} -\SGMLdef<bar>{\SGMLgrabber{bar}\bar} -\SGMLdef<dot>{\SGMLgrabber{dot}\dot} -\SGMLdef<ddot>{\SGMLgrabber{ddot}\ddot} -\SGMLdef<hat>{\SGMLgrabber{hat}\hat} -\SGMLdef<tilde>{\SGMLgrabber{tilde}\tilde} -% \end{macrocode} -% -% \begin{macrocode} -\SGMLdef<t>{\SGMLgrabber{t}\mathrm} -\SGMLdef<bt>{\SGMLgrabber{bt}\mathbf} -% \end{macrocode} -% -% \begin{macrocode} -\SGMLdef<text>{\SGMLgrabber{text}\textnormal}%%%%% not in the dtd???? -% \end{macrocode} -% -% \begin{macrocode} -\SGMLdef<root>{\rootfudge} -\def\rootfudge#1{% - \setbox\rootbox\hbox\bgroup$\m@th\scriptscriptstyle\bgroup#1} -% \end{macrocode} -% -% I think the HTML3 DTD is wrong here\footnote -% {Since confirmed by Dave Raggett, the HTML3 author}, -% it allows the OF element to -% take content, which is at variance with the description in the text. -% \begin{macrocode} -\SGMLdef<of>{\egroup$\egroup\SGMLgrabber{root}\offudge} -\SGMLdef</of>{} -\def\offudge#1{\mathpalette\r@@t{#1}} -% \end{macrocode} -% -% \begin{macrocode} -\SGMLdef<sqrt>{\SGMLgrabber{sqrt}\sqrt} -% \end{macrocode} -% -% \changes{v0.08}{1996/03/16}{Add basic support for array element} -% -% Hate allocating registers, so this will probably go, but for now -% give myself four (global) count registers to play with. -% \begin{macrocode} -\newcount\HTMLrow -\newcount\HTMLcol -\newcount\HTMLrowspan -\newcount\HTMLcolspan -% \end{macrocode} -% -% The HTML array element. Support for ALIGN, COLSPAN, ROWSPAN -% LABELS, LDELIM and RDELIM. However not all combinations of alignment -% and labels do `the right thing'. -% -% \changes{v0.09}{1996/03/21}{COLSPEC support for ARRAY} -% -% Uses a \TeX\ primitive |\halign| construction, rather than use the -% \LaTeX\ |array| environment directly. -% \begin{macrocode} -\SGMLdef<array>{{\ifnum`}=0\fi - \let\do\arraydo - \let\doimplied\arrayimplied - \let\HTMLal.% - \let\HTMLar.% - \global\HTMLrow\z@ - \let\HTMLabox\vcenter - \the\toks@ - \setbox\z@\vbox\bgroup\halign\bgroup - \strut\span\HTMLacolspec\cr\nocr} -% \end{macrocode} -% -% \begin{macro}{\HTMLacolspec} -% \changes{v0.09}{1996/03/21}{macro added} -% \begin{macrocode} -\def\HTMLacolspec{##&&##} -% \end{macrocode} -% \end{macro} -% - -% \begin{macro}{\HTMLamakepream} -% \changes{v0.09}{1996/03/21}{macro added} -% \begin{macrocode} -\def\HTMLamakepream#1{% - \let\HTMLacolspec\@empty - \let\@sharp\relax - \lowercase{\@tfor\@tempc:=#1}\do{% - \if\@tempc l% - \edef\HTMLacolspec{\HTMLacolspec\@sharp\hfill&}% - \else - \if\@tempc c% - \edef\HTMLacolspec{\HTMLacolspec\hfill\@sharp\hfill&}% - \else - \if\@tempc r% - \edef\HTMLacolspec{\HTMLacolspec\hfill\@sharp&}% - \else - \if\@tempc +% - \edef\HTMLacolspec{\HTMLacolspec$+$}% - \else - \if\@tempc -% - \edef\HTMLacolspec{\HTMLacolspec$-$}% - \else - \if\@tempc =% - \edef\HTMLacolspec{\HTMLacolspec$=$}% - \fi - \fi - \fi - \fi - \fi - \fi}% - \def\@sharp{########}% - \edef\HTMLacolspec{\HTMLacolspec&\@sharp}} -% \end{macrocode} -% \end{macro} -% -% \begin{macrocode} -\SGMLdef</array>{\HTMLendarray} -% \end{macrocode} -% -% \begin{macrocode} -\let\HTMLcr\cr -% \end{macrocode} -% -% \begin{macro}{\HTMLendarray} -% Non LABELS ending -% \begin{macrocode} -\def\HTMLendarray{% - \endi\crcr\egroup\egroup - \ifx\HTMLabox\vtop - \setbox\z@\vtop{\unvbox\z@}% - \else - \ifx\HTMLabox\vcenter - \dimen@\ht\z@ - \advance\dimen@\dp\z@ - \divide\dimen@\tw@ - \advance\dimen@-\ht\z@ - \setbox\z@\hbox{\raise\dimen@\box\z@}% - \fi - \fi - \dimen@=\ht\z@ - \setbox\z@ -\hbox{$\left\HTMLal\kern-1em\vcenter{\box\z@}\kern-1em\right\HTMLar$}% - \advance\dimen@-\ht\z@ - \raise\dimen@\box\z@ - \ifnum`{=0\fi}} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\HTMLendarraylabels} -% LABELS ending -% \begin{macrocode} -\def\HTMLendarraylabels{% - \endi\crcr\strut\cr\egroup\egroup - \setbox2=\vsplit\z@ to \baselineskip - \setbox\z@\vbox{\unvbox\z@\global\setbox\@ne\lastbox}% - \setbox4\hbox{\unhbox\@ne\unskip\global\setbox\@ne\lastbox}% - \vcenter{% - \box2 - \hbox{$\kern\wd\@ne - \left\HTMLal\kern-\wd\@ne - \vcenter{\box\z@}% - \right\HTMLar$}}% - \ifnum`{=0\fi}} -% \end{macrocode} -% \end{macro} -% -% \begin{macrocode} -\def\nocr{\relax\iffalse{\fi\let\HTMLcr\relax\iffalse}\fi} -% \end{macrocode} -% -% \begin{macrocode} -\SGMLdef<row>{% - \endi\HTMLcr - \global\advance\HTMLrow\@ne - \global\HTMLcol\z@} -% \end{macrocode} -% -% \begin{macrocode} -\SGMLdef</row>{} -% \end{macrocode} -% -% \begin{macrocode} -\SGMLdef<item>{% - \let\do\itemdo - \gdef\@gtempa{\global\advance\HTMLcol\@ne}% - \gdef\@gtempb{}% - \gdef\@gtempc{}% - \global\HTMLcolspan\@ne - \the\toks@ - \endi% - \@gtempc - \@gtempa -% \end{macrocode} -% -% If an earlier row contained an entry spanning down to this point, -% need to jump across to the next column (and perhaps further). -% \begin{macrocode} - \spanifneeded -% \end{macrocode} -% -% |\@gtempb| is normally empty but will be defined if the item had an -% ALIGN attribute. -% \begin{macrocode} - \@gtempb -% \end{macrocode} -% First box each entry which allows measuring needed (but not yet -% done) for vertical spanning. -% \begin{macrocode} - \setbox\z@\hbox\bgroup$% - \def\endi{\unskip$\egroup% - \quad\HTMLaleft\box\z@\HTMLaright\quad&}% - \ignorespaces} -% \end{macrocode} -% -% \begin{macro}{\spanifneeded} -% If the current row/column is in the list of spanned entries, jump to -% next column and look again. -% \begin{macrocode} -\def\spanifneeded{% - \edef\@tempa{\noexpand\in@{,\the\HTMLrow/\the\HTMLcol,}{\spanitems}}% - \@tempa - \ifin@ - \@firstofone{&}\global\advance\HTMLcol\@ne - \expandafter\spanifneeded - \fi} -% \end{macrocode} -% \end{macro} -% -% As usual handle end tags that may be omitted by making them -% translate to empty. -% \begin{macrocode} -\SGMLdef</item>{} -% \end{macrocode} -% -% \begin{macro}{\HTMLaleft} -% \begin{macro}{\HTMLaright} -% Default stuff to put around the entries. Locally redefined by an -% ALIGN attribute. -% \begin{macrocode} -\let\HTMLaleft\hfil -\let\HTMLaright\hfil -% \end{macrocode} -% \end{macro} -% \end{macro} -% -% \begin{macro}{\endi} -% Code to end an item. Extra indirection used to handle omitted tags. -% \begin{macrocode} -\let\endi\relax -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\arraydo} -% \changes{v0.09}{1996/03/21}{COLSPEC added} -% Handle ARRAY attributes. -% \begin{macrocode} -\def\arraydo#1#2{% - \def\@tempa{#1}\def\@tempb{#2}% - \def\@tempc{align}% - \ifx\@tempa\@tempc - \def\@tempc{top}% - \ifx\@tempb\@tempc - \let\HTMLabox\vtop - \else - \def\@tempc{bottom}% - \ifx\@tempb\@tempc - \let\HTMLabox\vbox - \fi - \fi - \else - \def\@tempc{ldelim}% - \ifx\@tempa\@tempc - \let\HTMLal\@tempb - \else - \def\@tempc{rdelim}% - \ifx\@tempa\@tempc - \let\HTMLar\@tempb - \else - \def\@tempc{labels}% - \ifx\@tempa\@tempc - \let\HTMLendarray\HTMLendarraylabels - \else - \def\@tempc{colspec}% - \ifx\@tempa\@tempc - \HTMLamakepream{#2}% - \fi - \fi - \fi - \fi - \fi} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\arrayimplied} -\def\arrayimplied#1{% - \def\@tempa{labels}\def\@tempb{#1}% - \ifx\@tempa\@tempb - \let\HTMLendarray\HTMLendarraylabels - \fi} -% \end{macro} -% -% \begin{macro}{\itemdo} -% Handle ITEM attributes -% \begin{macrocode} -\def\itemdo#1#2{% - \def\@tempa{#1}\def\@tempb{#2}% - \def\@tempc{colspan}% - \ifx\@tempa\@tempc - \global\HTMLcolspan#2\relax - \gdef\@gtempa{\@multispan#2\relax\global\advance\HTMLcol#2\relax}% - \else - \def\@tempc{align}% - \ifx\@tempa\@tempc - \def\@tempc{left}% - \ifx\@tempb\@tempc - \gdef\@gtempb{\let\HTMLaleft\relax}% - \else - \def\@tempc{right}% - \ifx\@tempb\@tempc - \gdef\@gtempb{\let\HTMLaright\relax}% - \fi - \fi - \else - \def\@tempc{rowspan}% - \ifx\@tempa\@tempc - \global\HTMLrowspan#2\relax - \gdef\@gtempc{% - \@tempcnta=\HTMLrow - \advance\@tempcnta\HTMLrowspan -% \end{macrocode} -% -% Double loop adds all the entries below this a ROWSPAN entry -% to |\spanitems| list. -% \begin{macrocode} - \loop - \@tempcntb=\HTMLcol - \advance\@tempcntb\HTMLcolspan - \advance\@tempcnta\m@ne - \ifnum\@tempcnta>\HTMLrow - {\loop - \xdef\spanitems{% - \spanitems\the\@tempcnta/\the\@tempcntb,}% - \advance\@tempcntb\m@ne - \ifnum\@tempcntb>\HTMLcol - \repeat}% - \repeat}% - \fi - \fi - \fi} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\spanitems} -% Initial value for list of spanned entries. -% \begin{macrocode} -\def\spanitems{,} -% \end{macrocode} -% \end{macro} -% -% \begin{macrocode} -\SGMLentity{thinsp}{\,} -\SGMLentity{emsp}{\quad} -% \end{macrocode} -% -% Far from final list of math symbol entity names\ldots -% \begin{macrocode} -\SGMLentity{alpha}{\alpha} -\SGMLentity{beta}{\beta} -\SGMLentity{gamma}{\gamma} -\SGMLentity{Gamma}{\Gamma} -% \end{macrocode} -% -% \begin{macrocode} -\SGMLentity{int}{\int} -\SGMLentity{sum}{\sum} -% \end{macrocode} -% -% \begin{macrocode} -\SGMLentity{lbrace}{\lbrace} -\SGMLentity{rbrace}{\rbrace} -% \end{macrocode} -% -% \begin{macrocode} -\SGMLentity{times}{\times} -\SGMLentity{cup}{\cup} -\SGMLentity{cap}{\cap} -\SGMLentity{vee}{\vee} -\SGMLentity{wedge}{\wedge} -\SGMLentity{infty}{\infty} -\SGMLentity{oplus}{\oplus} -\SGMLentity{ominus}{\ominus} -\SGMLentity{otimes}{\otimes} -% \end{macrocode} -% -% \begin{macrocode} -\SGMLentity{sin}{\sin} -\SGMLentity{cos}{\cos} -\SGMLentity{tan}{\tan} -% \end{macrocode} -% -% \section{HTML3 Tables} -% \changes{v0.09}{1996/03/21}{TABLE added (mjd)} -% Not done yet, but here is a start\ldots -% -% Final version will probably need primitive |\halign| coding -% as for (but hopefully better than) array stuff above. Also -% will need to be lontable-like. -% -% This is all very slapdash and temporary [mjd,1996/03/20]. -% Don't expect good-looking results, just results, occasionally. -% -% \begin{macrocode} -\SGMLdef<table>{\begin{table}[htp]\centering\begin{tabular}{*{10}c}} -\SGMLdef</table>{\end{tabular}\end{table}} -\SGMLdef<tr>{\ifhmode\expandafter\\\fi\relax} -\SGMLdef</tr>{\\\relax} -\SGMLdef<td>{\ifvmode\else\expandafter\hiddenamp\fi} -\def\hiddenamp{&} -% \end{macrocode} -% if |<td>| is present for each cell, then |</td>| doesn't -% need to do anything -% \begin{macrocode} -\SGMLdef</td>{} -% \end{macrocode} -% -% Whoa, if I'm to define caption properly I'd have to look up -% how/where it's used. Who, lazy old me? -% -% \begin{macrocode} -\SGMLdef<caption>{\end{tabular}\begingroup\bfseries} -\SGMLdef</caption>{\endgroup\par\smallskip\begin{tabular}{*{10}{c}}} -% \end{macrocode} -% -% \begin{macrocode} -%</package> -% \end{macrocode} -% -% \Finale -% diff --git a/Master/texmf-dist/source/latex/carlisle/typehtml.ins b/Master/texmf-dist/source/latex/carlisle/typehtml.ins deleted file mode 100644 index 77fefef3fe3..00000000000 --- a/Master/texmf-dist/source/latex/carlisle/typehtml.ins +++ /dev/null @@ -1,3 +0,0 @@ -\def\batchfile{typehtml.ins} -\input docstrip -\generateFile{typehtml.sty}{f}{\from{typehtml.dtx}{package}} diff --git a/Master/texmf-dist/tex/latex/carlisle/fix2col.sty b/Master/texmf-dist/tex/latex/carlisle/fix2col.sty deleted file mode 100644 index 15695aa25ef..00000000000 --- a/Master/texmf-dist/tex/latex/carlisle/fix2col.sty +++ /dev/null @@ -1,303 +0,0 @@ -%% -%% This is file `fix2col.sty', -%% generated with the docstrip utility. -%% -%% The original source files were: -%% -%% fix2col.dtx (with options: `package') -%% -%% Source File: fix2col.dtx Copyright 1997 1998 David Carlisle -%% -%% This file may be distributed under the terms of the LPPL. -%% See 00readme.txt for details. -\NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{fix2col} - [1998/08/17 v0.03 Output Routine fixes for two column mode (DPC,FMi)] -\def\@outputdblcol{% - \if@firstcolumn - \global\@firstcolumnfalse - \global\setbox\@leftcolumn\copy\@outputbox - \splitmaxdepth\maxdimen - \vbadness\maxdimen - \setbox\@outputbox\vsplit\@outputbox to\maxdimen - \toks@\expandafter{\topmark}% - \xdef\@firstcoltopmark{\the\toks@}% - \toks@\expandafter{\splitfirstmark}% - \xdef\@firstcolfirstmark{\the\toks@}% - \ifx\@firstcolfirstmark\@empty - \global\let\@setmarks\relax - \else - \gdef\@setmarks{% - \let\firstmark\@firstcolfirstmark - \let\topmark\@firstcoltopmark}% - \fi - \else - \global\@firstcolumntrue - \setbox\@outputbox\vbox{% - \hb@xt@\textwidth{% - \hb@xt@\columnwidth{\box\@leftcolumn \hss}% - \hfil - \vrule \@width\columnseprule - \hfil - \hb@xt@\columnwidth{\box\@outputbox \hss}}}% - \@combinedblfloats - \@setmarks - \@outputpage - \begingroup - \@dblfloatplacement - \@startdblcolumn - \@whilesw\if@fcolmade \fi{\@outputpage\@startdblcolumn}% - \endgroup - \fi} -\def\end@dblfloat{% -\if@twocolumn - \@endfloatbox - \ifnum\@floatpenalty <\z@ - \@largefloatcheck - \global\dp\@currbox1sp % - \expandafter\@gobble\end@float - \fi -\else - \end@float -\fi -} -\def\@testwrongwidth #1{% - \ifdim\dp#1=\f@depth - \else - \global\@testtrue - \fi} -\let\f@depth\z@ -\def\@dblfloatplacement{\global\@dbltopnum\c@dbltopnumber - \global\@dbltoproom \dbltopfraction\@colht - \@textmin \@colht - \advance \@textmin -\@dbltoproom - \@fpmin \dblfloatpagefraction\textheight - \@fptop \@dblfptop - \@fpsep \@dblfpsep - \@fpbot \@dblfpbot - \def\f@depth{1sp}} -\def \@doclearpage {% - \ifvoid\footins - \setbox\@tempboxa\vsplit\@cclv to\z@ \unvbox\@tempboxa - \setbox\@tempboxa\box\@cclv - \xdef\@deferlist{\@toplist\@botlist\@deferlist}% - \global \let \@toplist \@empty - \global \let \@botlist \@empty - \global \@colroom \@colht - \ifx \@currlist\@empty - \else - \@latexerr{Float(s) lost}\@ehb - \global \let \@currlist \@empty - \fi - \@makefcolumn\@deferlist - \@whilesw\if@fcolmade \fi{\@opcol\@makefcolumn\@deferlist}% - \if@twocolumn - \if@firstcolumn - \xdef\@deferlist{\@dbltoplist\@deferlist}% - \global \let \@dbltoplist \@empty - \global \@colht \textheight - \begingroup - \@dblfloatplacement - \@makefcolumn\@deferlist - \@whilesw\if@fcolmade \fi{\@outputpage - \@makefcolumn\@deferlist}% - \endgroup - \else - \vbox{}\clearpage - \fi - \fi - \ifx\@deferlist\@empty \else\clearpage \fi - \else - \setbox\@cclv\vbox{\box\@cclv\vfil}% - \@makecol\@opcol - \clearpage - \fi -} -\def \@startdblcolumn {% - \@tryfcolumn \@deferlist - \if@fcolmade - \else - \begingroup - \let \reserved@b \@deferlist - \global \let \@deferlist \@empty - \let \@elt \@sdblcolelt - \reserved@b - \endgroup - \fi -} -\def\@addtonextcol{% - \begingroup - \@insertfalse - \@setfloattypecounts - \ifnum \@fpstype=8 - \else - \ifnum \@fpstype=24 - \else - \@flsettextmin - \@reqcolroom \ht\@currbox - \advance \@reqcolroom \@textmin - \ifdim \@colroom>\@reqcolroom - \@flsetnum \@colnum - \ifnum\@colnum>\z@ - \@bitor\@currtype\@deferlist - \@testwrongwidth\@currbox - \if@test - \else - \@addtotoporbot - \fi - \fi - \fi - \fi - \fi - \if@insert - \else - \@cons\@deferlist\@currbox - \fi - \endgroup -} -\def\@addtodblcol{% - \begingroup - \@insertfalse - \@setfloattypecounts - \@getfpsbit \tw@ - \ifodd\@tempcnta - \@flsetnum \@dbltopnum - \ifnum \@dbltopnum>\z@ - \@tempswafalse - \ifdim \@dbltoproom>\ht\@currbox - \@tempswatrue - \else - \ifnum \@fpstype<\sixt@@n - \advance \@dbltoproom \@textmin - \ifdim \@dbltoproom>\ht\@currbox - \@tempswatrue - \fi - \advance \@dbltoproom -\@textmin - \fi - \fi - \if@tempswa - \@bitor \@currtype \@deferlist - \@testwrongwidth\@currbox - \if@test - \else - \@tempdima -\ht\@currbox - \advance\@tempdima - -\ifx \@dbltoplist\@empty \dbltextfloatsep \else - \dblfloatsep \fi - \global \advance \@dbltoproom \@tempdima - \global \advance \@colht \@tempdima - \global \advance \@dbltopnum \m@ne - \@cons \@dbltoplist \@currbox - \@inserttrue - \fi - \fi - \fi - \fi - \if@insert - \else - \@cons\@deferlist\@currbox - \fi - \endgroup -} -\def \@addtocurcol {% - \@insertfalse - \@setfloattypecounts - \ifnum \@fpstype=8 - \else - \ifnum \@fpstype=24 - \else - \@flsettextmin - \advance \@textmin \@textfloatsheight - \@reqcolroom \@pageht - \ifdim \@textmin>\@reqcolroom - \@reqcolroom \@textmin - \fi - \advance \@reqcolroom \ht\@currbox - \ifdim \@colroom>\@reqcolroom - \@flsetnum \@colnum - \ifnum \@colnum>\z@ - \@bitor\@currtype\@deferlist - \@testwrongwidth\@currbox - \if@test - \else - \@bitor\@currtype\@botlist - \if@test - \@addtobot - \else - \ifodd \count\@currbox - \advance \@reqcolroom \intextsep - \ifdim \@colroom>\@reqcolroom - \global \advance \@colnum \m@ne - \global \advance \@textfloatsheight \ht\@currbox - \global \advance \@textfloatsheight 2\intextsep - \@cons \@midlist \@currbox - \if@nobreak - \nobreak - \@nobreakfalse - \everypar{}% - \else - \addpenalty \interlinepenalty - \fi - \vskip \intextsep - \box\@currbox - \penalty\interlinepenalty - \vskip\intextsep - \ifnum\outputpenalty <-\@Mii \vskip -\parskip\fi - \outputpenalty \z@ - \@inserttrue - \fi - \fi - \if@insert - \else - \@addtotoporbot - \fi - \fi - \fi - \fi - \fi - \fi - \fi - \if@insert - \else - \@resethfps - \@cons\@deferlist\@currbox - \fi -} -\def\@xtryfc #1{% - \@next\reserved@a\@trylist{}{}% - \@currtype \count #1% - \divide\@currtype\@xxxii - \multiply\@currtype\@xxxii - \@bitor \@currtype \@failedlist - \@testfp #1% - \@testwrongwidth #1% - \ifdim \ht #1>\@colht - \@testtrue - \fi - \if@test - \@cons\@failedlist #1% - \else - \@ytryfc #1% - \fi} -\def\@ztryfc #1{% - \@tempcnta\count #1% - \divide\@tempcnta\@xxxii - \multiply\@tempcnta\@xxxii - \@bitor \@tempcnta {\@failedlist \@flfail}% - \@testfp #1% - \@testwrongwidth #1% - \@tempdimb\@tempdima - \advance\@tempdimb\ht #1% - \advance\@tempdimb\@fpsep - \ifdim \@tempdimb >\@colht - \@testtrue - \fi - \if@test - \@cons\@flfail #1% - \else - \@cons\@flsucceed #1% - \@tempdima\@tempdimb - \fi} -\endinput -%% -%% End of file `fix2col.sty'. diff --git a/Master/texmf-dist/tex/latex/carlisle/ltxtable.sty b/Master/texmf-dist/tex/latex/carlisle/ltxtable.sty index d6e5ffb9d3a..aa58e0feba3 100644 --- a/Master/texmf-dist/tex/latex/carlisle/ltxtable.sty +++ b/Master/texmf-dist/tex/latex/carlisle/ltxtable.sty @@ -1,6 +1,6 @@ %% LaTeX2e file `ltxtable.sty' %% generated by the `filecontents' environment -%% from source `ltxtable' on 2006/06/21. +%% from source `ltxtable' on 2010/02/22. %% % %% ltxtable package (C) 1995 David Carlisle diff --git a/Master/texmf-dist/tex/latex/carlisle/typehtml.sty b/Master/texmf-dist/tex/latex/carlisle/typehtml.sty deleted file mode 100644 index c07cf79269d..00000000000 --- a/Master/texmf-dist/tex/latex/carlisle/typehtml.sty +++ /dev/null @@ -1,899 +0,0 @@ -%% -%% This is file `typehtml.sty', -%% generated with the docstrip utility. -%% -%% The original source files were: -%% -%% typehtml.dtx (with options: `package') -%% -%% IMPORTANT NOTICE: -%% -%% For the copyright see the source file. -%% -%% Any modified versions of this file must be renamed -%% with new filenames distinct from typehtml.sty. -%% -%% For distribution of the original source see the terms -%% for copying and modification in the file typehtml.dtx. -%% -%% This generated file may be distributed as long as the -%% original source files, as listed above, are part of the -%% same distribution. (The sources need not necessarily be -%% in the same archive or directory.) -%% -%% Source File `typehtml.dtx'. -%% Copyright (C) 1996 1997 David Carlisle -%% This file may be distributed under the terms of the LPPL. -%% See 00readme.txt for details. -%% -\NeedsTeXFormat{LaTeX2e}[1995/06/01] -\ProvidesPackage{typehtml} - [1997/11/19 v0.12 HTML printer (DPC)] -\DeclareOption{html2}{\let\HTML@two@stop\endinput} -\DeclareOption{netscape} - {\def\HTML@not#1{\SGML@w{<#1> is not valid HTML}}} -\DeclareOption{html3}{\let\HTML@two@stop\relax} -\DeclareOption{nohyperref}{% - \let\HTML@doname\@secondoftwo - \def\HTML@dosrc#1#2{\emph{#2}}} -\DeclareOption{ftnhyperref}{% - \let\HTML@doname\@secondoftwo - \def\HTML@dosrc#1#2{\emph{#2}\footnote{HREF: \texttt{#1}}}} -\DeclareOption{hyperref}{% - \AtBeginDocument{% - \providecommand\href[2]{\special{html:<A href="#1">}% - #2\special{html:</A>}}% - \providecommand\hypertarget[2]{\special{html:<A name="#1">}% - #2\special{html:</A>}}% - \let\HTML@doname\hypertarget - \let\HTML@dosrc\href}} -\DeclareOption{dviwindo}{% - \def\HTML@dosrc#1#2{{% - \leavevmode\sbox\z@{#2}\count@\ht\z@\@tempcnta\wd\z@ - \if\string##\@car#1\@nil - \special{button: \the\@tempcnta\space\the\count@\space - "\@gobble#1"}% - \else - \special{button: \the\@tempcnta\space\the\count@\space - launch: typehtml "#1"} - \fi - \special{color push}\special{color rgb 0 1 0}% - \unhbox\z@ - \special{color pop}}}% - \def\HTML@doname#1#2{\leavevmode\special{mark: "#1"}#2}}% -\DeclareOption{imgalt}{} -\DeclareOption{imggif}{\SGML@w{img gif support not done yet}} -\DeclareOption{imgps}{\SGML@w{img ps support not done yet}} -\DeclareOption{smartquotedbl}{% - \def\SGMLquotedbla{% - \textquotedblleft\global\let\SGMLquotedbl\SGMLquotedblb} - \def\SGMLquotedblb{% - \textquotedblright\global\let\SGMLquotedbl\SGMLquotedbla} - \let\SGMLquotedbl\SGMLquotedbla - \let\SGML@savedeverypar\everypar - \newtoks\everypar - \SGML@savedeverypar{% - \global\let\SGMLquotedbl\SGMLquotedbla\the\everypar}} -\DeclareOption{straightquotedbl}{% - \DeclareTextCommandDefault{\textquotedbl}{{\ttfamily\char`\"}}% - \let\SGMLquotedbl\textquotedbl} -\DeclareOption{chapter}{% - \def\HTML@headings{% - \chapter\section\subsection% - \subsubsection\paragraph\subparagraph}} -\DeclareOption{chapter*}{% - \def\HTML@headings{% - {\chapter*}{\section*}{\subsection*}% - {\subsubsection*}{\paragraph*}{\subparagraph*}}} -\DeclareOption{section}{% - \def\HTML@headings{% - \section\subsection% - \subsubsection\paragraph\subparagraph\endgraf}} -\DeclareOption{section*}{% - \def\HTML@headings{% - {\section*}{\subsection*}% - {\subsubsection*}{\paragraph*}{\subparagraph*}\endgraf}} -\DeclareOption{subsection}{% - \def\HTML@headings{% - \subsection% - \subsubsection\paragraph\subparagraph\endgraf\endgraf}} -\DeclareOption{subsection*}{% - \def\HTML@headings{% - {\subsection*}% - {\subsubsection*}{\paragraph*}{\subparagraph*}\endgraf\endgraf}} -\DeclareOption{bigint}{% - \let\HTML@int\int - \AtEndOfPackage{\RequirePackage{exscale}}} -\ExecuteOptions{section*,imgalt,html2,nohyperref,straightquotedbl} -\ProcessOptions -\begingroup -\catcode`\<=\active -\catcode`\>=\active -\catcode`\&=\active -\catcode`\$=\active -\catcode`\"=\active -\catcode`\^=\active -\catcode`\_=\active -\catcode`\;=\active -\catcode`\A=\active -\catcode`\B=\active -\catcode`\C=\active -\catcode`\D=\active -\uccode`\A=`\{% -\uccode`\B=`\}% -\uccode`\C=`\|% -\uccode`\D=`\\% -\uppercase{\endgroup -\def\SGMLent@@#1;{\csname SGML@E@#1\endcsname} -\def\SGML@def@active#1>{% - \expandafter\def\csname SGML@#1\endcsname} -\def\dohtml{% - \begingroup - \ifx;\@undefined\expandafter\let\expandafter;\string;\fi - \ifx>\@undefined\expandafter\let\expandafter>\string>\fi - \catcode`\<=\active - \catcode`\>=\active - \catcode`\&=\active - \catcode`\{=\active - \catcode`\}=\active - \catcode`\$=\active - \catcode`\"=\active - \catcode`\^=\active - \catcode`\_=\active - \catcode`\\=\active - \catcode`\|=\active - \catcode\endlinechar=10 - \catcode`\%=12 - \catcode`\#=12 - \catcode`\;=\active - \def\verbatim@nolig@list{\do\`\do\,\do\'\do\-} - \def<{\SGMLopen}% - \def&{\SGMLent}% - \let^\textasciicircum - \let~\textasciitilde - \def_{\_}% - \let$\$% - \def"{\SGMLquotedbl}% - \def A{\{}% - \def B{\}}% - \def C{\texttt{|}}% - \def D{\texttt{\char`\\}}% - \def\addcontentsline##1##2##3{% - {\def<{\string<}\def&{\string&}% - \addtocontents{##1}{\protect\dotochtml<html>}% - \addtocontents{##1}{\protect\contentsline{##2}{##3}{\thepage}}% - \addtocontents{##1}{\protect</html>}}}} -\def\dotochtml{% - \dohtml - \catcode`\\\z@ - \catcode`\{\@ne - \catcode`\}\tw@} -\def\SGMLshortend{/} -\def\SGMLgrab@#1<#2>{% - \edef\@tempd{\lowercase{\def\noexpand\@tempd{\gobblespc#2 \relax}}}% - \@tempd - \ifx\@tempd\SGMLshortend\let\@tempd\@tempc\fi - \ifx\@tempb\@tempd - \advance\@tempcnta\@ne - \else - \ifx\@tempc\@tempd - \advance\@tempcnta\m@ne - \fi - \fi - \ifnum\@tempcnta=\z@ - \expandafter\@tempa\expandafter{\the\@temptokena#1}% - \else - \addto@hook\@temptokena{#1<#2>}% - \expandafter\SGMLgrab@ - \fi} -\def\SGMLopen#1>{% - \SGMLopen@#1 \@nil} -} -\def\htmlinput#1{\dohtml\let\@endhtml\relax\input{#1}\endgroup} -\def\gobblespc#1 #2\relax{#1} -\def\SGMLgrabber#1#2{% - \def\@tempa{#2}% - \@tempcnta\@ne - \@temptokena{}% - \lowercase{\def\@tempb{#1}\def\@tempc{/#1}}% - \SGMLgrab@} -\begingroup -\catcode`\"=\active -\uppercase{\endgroup -\def\SGMLopen@#1 #2\@nil{% - \toks@{}% - \edef\@tempa{\lowercase{\def\noexpand\SGMLelement{#1}}}\@tempa - \if!\@car#1\relax\@nil - \toks@{#1 #2}% - \SGML@w{Declaration ignored\MessageBreak<\the\toks@>\MessageBreak}% - \else - \if$#2$\else - \replacequotes#2"\@nil"% - \SGMLafterfi - \expandafter\toks@\expandafter{\expandafter}% - \expandafter\SGMLgetattrib\the\toks@ \@nil - \fi - \expandafter\ifx\csname SGML@\SGMLelement - \expandafter\endcsname\relax - \SGML@w{<\SGMLelement> undefined}% - \else - \csname SGML@\SGMLelement - \expandafter\expandafter\expandafter\endcsname - \fi - \fi} -\def\replacequotes#1"#2"{% - \def\@tempb{#2}% - \ifx\@tempb\@nnil - \addto@hook\toks@{#1}% - \else - \addto@hook\toks@{#1{#2}}% - \expandafter\replacequotes - \fi}} -\def\SGMLafterfi#1\fi{\fi#1} -\def\SGMLgobbletofi#1\fi{\fi} -\def\SGMLgetattrib#1 #2{% - \ifx\box#1\box\else - \SGMLgetval#1=$=\@nil - \def\@tempa{#2}% - \ifx\@tempa\@nnil - \expandafter\SGMLgobbletofi - \else - \expandafter\SGMLafterfi - \fi - \SGMLgetattrib#2% - \fi} -\def\SGMLgetval#1=#2=#3\@nil{% - \ifcat$#2% - \lowercase{\SGML@addattrib\doimplied{#1}}% - \else - \lowercase{\SGML@addattrib{\do{#1}}}{#2}% - \fi} -\def\SGML@addattrib#1#2{\addto@hook\toks@{#1{#2}}} -\def\SGML@w{\PackageWarning{typehtml}} -\def\SGMLdef#1{% - \ifcat\noexpand#1\noexpand~% - \expandafter\SGML@def@active - \else - \expandafter\SGML@def - \fi} -\edef\@tempa{\def\noexpand\SGML@def##1\string>}\@tempa{% - \expandafter\def\csname SGML@#1\endcsname} -\expandafter\def\expandafter\SGMLent\expandafter{% - \expandafter\protect\csname& \endcsname} -\expandafter\def\csname& \endcsname{% - \futurelet\@let@token\SGMLent@} -\def\SGMLent@{% - \ifx\@let@token\@sptoken - \&% - \else - \expandafter\SGMLent@@ - \fi} -\def\SGMLentity#1{% - \expandafter\def\csname SGML@E@#1\endcsname} -\SGMLdef<html>{} -\SGMLdef</html>{\@endhtml} -\let\@endhtml\endgroup -\SGMLdef<title>{\typeout{***TITLE***}\SGMLgrabber{title}\typeout} -\long\def\@tempa#1#2#3#4#5#6{% - \SGMLdef<h1>{\SGMLgrabber{h1}{\HTMLsection{#1}}}% - \SGMLdef<h2>{\SGMLgrabber{h2}{\HTMLsection{#2}}}% - \SGMLdef<h3>{\SGMLgrabber{h3}{\HTMLsection{#3}}}% - \SGMLdef<h4>{\SGMLgrabber{h4}{\HTMLsection{#4}}}% - \SGMLdef<h5>{\SGMLgrabber{h5}{\HTMLsection{#5}}}% - \SGMLdef<h6>{\SGMLgrabber{h6}{\HTMLsection{#6}}}} -\expandafter\@tempa\HTML@headings -\def\HTMLsection#1#2{#1{\ignorespaces#2\unskip}} -\SGMLdef<head>{} -\SGMLdef</head>{} -\SGMLdef<body>{} -\SGMLdef</body>{} -\SGMLdef<bodytext>{} -\SGMLdef</bodytext>{} -\SGMLdef<p>{\par} -\SGMLdef</p>{\par} -\SGMLdef<blockquote>{\begin{quote}} -\SGMLdef</blockquote>{\end{quote}} -\SGMLdef<address>{\begin{quote}} -\SGMLdef</address>{\end{quote}} -\SGMLdef<ul>{\begin{itemize}} -\SGMLdef</ul>{\end{itemize}} -\SGMLdef<ol>{\begin{enumerate}} -\SGMLdef</ol>{\end{enumerate}} -\SGMLdef<li>{\item} -\SGMLdef</li>{} -\SGMLdef<dl>{% - \let\do\dldo - \let\doimplied\dlimplied - \begin{description}\the\toks@} -\SGMLdef</dl>{\end{description}} -\def\dldo#1#2{% - \def\@tempa{compact}\def\@tempb{#1}% - \ifx\@tempa\@tempb - \itemsep\z@ - \advance\@totalleftmargin-\leftmargin - \advance\linewidth\leftmargin - \itemindent-\labelsep - \leftmargin\z@ - \parshape \@ne \@totalleftmargin \linewidth - \fi} -\def\dlimplied#1{\dldo{#1}\relax} -\def\itx#1{\item[#1]} -\SGMLdef<dt>{\begin{lrbox}\z@\bfseries\let\maybeenddt\enddt} -\SGMLdef</dt>{\maybeenddt} -\SGMLdef<dd>{\maybeenddt} -\SGMLdef</dd>{} -\def\enddt{\end{lrbox}\item[\unhbox\z@]} -\let\maybeenddt\relax -\SGMLdef<a>{\SGMLgrabber{a}\HTML@anchor} -\def\HTML@anchor#1{{% - \let\@tempa\@gobble - \def\_{\string_}% - \let\do\ado - \the\toks@ - \@tempa{#1}}} -\def\ado#1#2{% - \def\@tempb{name}\def\@tempc{#1}% - \ifx\@tempb\@tempc - \let\@tempa\@firstofone - \def\@tempa{\HTML@doname{#2}}% - \else - \def\@tempa{\HTML@dosrc{#2}}% - \fi} -\SGMLdef<pre>{% - \par - \begingroup - \parindent\z@ - \obeylines\verbatim@font\@noligs - \frenchspacing\@vobeyspaces} -\SGMLdef</pre>{\endgroup} -\SGMLdef<tt>{\SGMLgrabber{tt}\texttt} -\SGMLdef<b>{\SGMLgrabber{b}\textbf} -\SGMLdef<i>{\SGMLgrabber{i}\textit} -\SGMLdef<em>{\SGMLgrabber{em}\emph} -\SGMLdef<strong>{\SGMLgrabber{strong}\textbf} -\SGMLdef<code>{\SGMLgrabber{code}\texttt} -\SGMLdef<samp>{\SGMLgrabber{samp}\textsf} -\SGMLdef<kbd>{\SGMLgrabber{kbd}\texttt} -\SGMLdef<var>{\SGMLgrabber{var}\textit} -\SGMLdef<cite>{\SGMLgrabber{cite}\textit} -\SGMLdef<form>{\par\medskip} -\SGMLdef</form>{\par\medskip} -\SGMLdef<select>{% - \let\do\selectdo - \the\toks@\par - \begin{tabular}{|l|}% - \hline\@tempc\\\hline - \let\tabularnewline\relax - \ignorespaces} -\def\selectdo#1#2{% - \def\@tempa{name}\def\@tempb{#1}% - \ifx\@tempa\@tempb\def\@tempc{#2}\fi} -\SGMLdef</select>{\\\hline\end{tabular}} -\SGMLdef<option>{% - \gdef\optionbul{\phantom{$\bullet$}}% - \let\do\optiondo - \let\doimplied\optionimplied - \the\toks@ - \tabularnewline - \let\tabularnewline\\% - \optionbul\space\ignorespaces} -\SGMLdef</option>{} -\def\optiondo#1#2{% - \def\@tempa{selected}\def\@tempb{#1}% - \ifx\@tempa\@tempb\gdef\optionbul{$\bullet$}\fi} -\def\optionimplied#1{% - \def\@tempa{selected}\def\@tempb{#1}% - \ifx\@tempa\@tempb\gdef\optionbul{$\bullet$}\fi} -\SGMLdef<input>{} -\SGMLdef<img>{{% - \let\do\imgdo - \def\@tempa{\doimage}% - \the\toks@ - \@tempa}} -\def\doimage{\textsf{[image]}} -\def\imgdo#1{\csname img=#1\endcsname} -\expandafter\def\csname img=align\endcsname#1{% - \SGML@w{align=#1 ignored}} -\expandafter\def\csname img=src\endcsname#1{% - \SGML@w{src=#1 ignored}} -\expandafter\def\csname img=height\endcsname#1{% - \SGML@w{height=#1 ignored}} -\expandafter\def\csname img=alt\endcsname#1{% - \def\doimage{#1}} -\SGMLdef<hr>{\par\smallskip\hrule\smallskip} -\SGMLdef<br>{\leavevmode\\} -\SGMLdef<xmp>{% - \SGML@pre - \def\@tempb{/xmp}% - \let\SGMLopen\HTML@xmptest} -\SGMLdef<listing>{% - \SGML@xmp - \def\@tempb{/listing}} -\SGMLdef<plaintext>{% - \SGML@xmp - \def\@tempb{/plaintext}}% -\def\HTML@xmptest#1>{% - \lowercase{\def\@tempa{#1}}% - \ifx\@tempa\@tempb - \endgroup - \else - \SGMLafterfi - <#1>% - \fi} -\SGMLentity{amp}{\&} -\SGMLentity{lt}{\ensuremath{<}} -\SGMLentity{gt}{\ensuremath{>}} -\SGMLentity{aacute}{\'a} -\SGMLentity{Aacute}\'A{} -\SGMLentity{acirc}{\^a} -\SGMLentity{Acirc}{\^A} -\SGMLentity{agrave}{\`a} -\SGMLentity{Agrave}{\`A} -\SGMLentity{aring}{\r a} -\SGMLentity{Aring}{\r A} -\SGMLentity{atilde}{\~a} -\SGMLentity{Atilde}{\~A} -\SGMLentity{auml}{\"a} -\SGMLentity{Auml}{\"A} -\SGMLentity{aelig}{\ae} -\SGMLentity{AElig}{\AE} -\SGMLentity{ccedil}{\c c} -\SGMLentity{Ccedil}{\c C} -\SGMLentity{eth}{\dh} -\SGMLentity{ETH}{\DH} -\SGMLentity{eacute}{\'e} -\SGMLentity{Eacute}{\`E} -\SGMLentity{ecirc}{\^e} -\SGMLentity{Ecirc}{\^E} -\SGMLentity{egrave}{\`e} -\SGMLentity{Egrave}{\`E} -\SGMLentity{euml}{\"e} -\SGMLentity{Euml}{\"E} -\SGMLentity{iacute}{\'\i} -\SGMLentity{Iacute}{\'I} -\SGMLentity{icirc}{\^\i} -\SGMLentity{Icirc}{\^I} -\SGMLentity{igrave}{\`\i} -\SGMLentity{Igrave}{\`I} -\SGMLentity{iuml}{\"\i} -\SGMLentity{Iuml}{\"I} -\SGMLentity{ntilde}{\~n} -\SGMLentity{Ntilde}{\~N} -\SGMLentity{oacute}{\'o} -\SGMLentity{Oacute}{\'O} -\SGMLentity{ocirc}{\^o} -\SGMLentity{Ocirc}{\^O} -\SGMLentity{ograve}{\`o} -\SGMLentity{Ograve}{\`O} -\SGMLentity{oslash}{\oe} -\SGMLentity{Oslash}{\OE} -\SGMLentity{otilde}{\~o} -\SGMLentity{Otilde}{\~O} -\SGMLentity{ouml}{\"o} -\SGMLentity{Ouml}{\"O} -\SGMLentity{szlig}{\ss} -\SGMLentity{thorn}{\th} -\SGMLentity{THORN}{\TH} -\SGMLentity{uacute}{\'u} -\SGMLentity{Uacute}{\'U} -\SGMLentity{ucirc}{\^u} -\SGMLentity{Ucirc}{\^U} -\SGMLentity{ugrave}{\`u} -\SGMLentity{Ugrave}{\`U} -\SGMLentity{uuml}{\"u} -\SGMLentity{Uuml}{\"U} -\SGMLentity{yacute}{\'y} -\SGMLentity{Yacute}{\'Y} -\SGMLentity{yuml}{\"y} -\ifx\HTML@not\@undefined\else -\SGMLdef<center>{\HTML@not{center}\begin{center}} -\SGMLdef</center>{\end{center}} -\SGMLdef<blink>{\SGMLgrabber{blink}\textbf} -\SGMLdef<font>{\HTML@not{font}\begingroup - \let\do\fontdo\the\toks@} -\SGMLdef</font>{\endgroup} -\def\fontdo#1#2{% - \def\@tempa{size}\def\@tempb{#1}% - \ifx\@tempa\@tempb - \font@switch#2\relax\@nil - \fi} -\toks@\expandafter{\set@fontsize{#1}{#2}{#3}} -\edef\@tempa{% - \def\noexpand\set@fontsize##1##2##3{\the\toks@\noexpand\set@fontnum}} -\@tempa -\def\set@fontnum{\dimen@\f@size\p@ - \dimen@\mul@ptsize\dimen@ - \count@\dimen@ \divide\count@\p@ - \advance\count@ -5\relax - \edef\@fontnum{\number\count@}} -\def\mul@ptsize{}% -\def\@fontnum{5} -\ifcase 0\@ptsize\relax - \global\let\mul@ptsize\@empty% case 0, ptsize = 10 - \or\gdef\mul@ptsize{.9091}% case 1, ptsize = 11 - \else\gdef\mul@ptsize{.8333}% case 2, ptsize = 12 -\fi -\def\font@switch#1#2\@nil{\count@\@fontnum\relax - \ifx +#1\advance\else\ifx -#1\advance\fi\fi - \count@#1#2\relax - \ifcase\count@ \tiny\or \tiny\or \scriptsize - \or\footnotesize \or\small \or\normalsize \or\large - \or\Large \or\LARGE \or\huge \else\Huge \fi} -\fi -\HTML@two@stop -\SGML@w{HTML3 support not finished yet} -\SGMLdef<math>{\SGMLgrabber{math}\domath} -\SGMLdef<sup>{^\bgroup\HTMLscriptmap} -\SGMLdef</sup>{\egroup} -\SGMLdef<sub>{_\bgroup\HTMLscriptmap} -\SGMLdef</sub>{\egroup} -\SGMLdef<box>{\SGMLgrabber{box}\dobox} -\begingroup -\catcode`\<=\active -\catcode`\>=\active -\catcode`\&=\active -\catcode`\_=\active -\catcode`\^=\active -\catcode`\"=\active -\gdef\domath#1{% - {{\def&{\expandafter\expandafter\expandafter\noexpand\SGMLent@@}% - \let<\relax\let>\relax\let_\relax\let^\relax\let"\relax - \def\{{<box>}\def\}{</box>}% - \xdef\@gtempa{#1}}% - \let\do\mathdo - \let\doimplied\mathimplied - \the\toks@ - \[% - \m@th\nulldelimiterspace\z@ - \def^{<sup>}% - \def_{<sub>}% - \@gtempa\]}} -\gdef\HTMLscriptmap{% - \def^{</sup>}% - \def_{</sub>}} -\gdef\dobox#1{% - {\let\do\boxdo - \let\bigstrut\relax - \the\toks@ - \def^{<sup>}% - \def_{<sub>}% - \lookleft@#1<left>\@nil}} -\gdef\lookleft@#1<left>#2\@nil{% - \if$#2$% - {\left.\bgroup#1\mayberight}% - \else - \lookbox@#1<box>\@nil#2\@nil - \fi} -\gdef\lookbox@#1<box>#2\@nil#3<left>\@nil{% - \if$#2$% - {\maybeleft#1\@nil#3\mayberight} - \else - {#1 \boxtofront#2 <left> #3}% - \fi} -\gdef\boxtofront#1<box>{<box>#1} -\endgroup -\def\mathdo#1#2{% - \def\@tempa{class-chem}\def\@tempb{#1-#2}% - \ifx\@tempa\@tempb - \everymath{\fam\z@}\everydisplay{\fam\z@}% - \fi} -\def\mathimplied#1{% - \def\@tempa{box}\def\@tempb{#1}% - \ifx\@tempa\@tempb - \def\[{\center\setbox\z@\hbox\bgroup$\displaystyle}% - \def\]{$\egroup\fbox{\box\z@}\endcenter}% - \fi} -\def\boxdo#1#2{% - \def\@tempa{size}\def\@tempb{#1}% - \ifx\@tempa\@tempb - \def\@tempb{#2} - \def\@tempa{normal}\ifx\@tempa\@tempb\def\@tempc{1}\fi - \def\@tempa{medium}\ifx\@tempa\@tempb\def\@tempc{2}\fi - \def\@tempa{large}\ifx\@tempa\@tempb\def\@tempc{3}\fi - \def\@tempa{huge}\ifx\@tempa\@tempb\def\@tempc{4}\fi - \edef\bigstrut{\vrule\@height\@tempc\ht\strutbox\@width\z@} - \fi} -\SGMLdef<left>{\left.\bgroup} -\def\mayberight{\egroup\bigstrut\right.} -\def\maybeleft#1#2\@nil{% - \in@{#1}{()[]\SGML@E@rbrace\SGML@E@lbrace}% - \ifin@ - \left#1\bgroup#2% - \else - \let\SGML@E@int\HTML@bigint - #1#2\left.\bgroup\let\SGML@E@int\int - \fi} -\def\righttest#1{% - \in@{#1}{()[]\SGML@E@rbrace\SGML@E@lbrace}% - \ifin@ - \right#1\let\mayberight\relax - \else - \right.\let\mayberight\relax\expandafter#1% - \fi} -\ifx\HTML@int\@undefined -\let\HTML@bigint\int -\else -\def\HTML@int{\int^{\box\tw@}_{\box4}} -\def\HTML@bigint#1\left.\bgroup{% - \def\@tempa{#1}% - \setbox\z@\hbox\bgroup - \aftergroup\HTMLafterbigint$\displaystyle\bgroup - \aftergroup$\aftergroup\egroup} -\def\HTMLafterbigint{% - \dimen@.5\ht\z@ - \advance\dimen@.5\dp\z@ - {\SGMLdef<sup>{\setbox\tw@\hbox\bgroup\HTMLscriptmap$\scriptstyle}% - \SGMLdef<sub>{\setbox4\hbox\bgroup\HTMLscriptmap$\scriptstyle}% - \SGMLdef</sup>{$\egroup}% - \SGMLdef</sub>{$\egroup}% - \setbox\tw@\box\voidb@x - \setbox4\box\voidb@x - \@tempa - \ifdim\dimen@>\f@size\p@ - \mathop{\hbox{\DeclareFixedFont\@tempa{OMX}{cmex}{m}{n}\dimen@ - $\displaystyle\textfont\thr@@\@tempa\HTML@int$}}% - \else - \HTML@int - \fi - }\left.\box\z@} -\fi -\SGMLdef<over>{\over} -\SGMLdef<atop>{\atop} -\SGMLdef<choose>{\choose} -\SGMLdef<right>{\egroup\bigstrut\righttest} -\SGMLdef<above>{\SGMLgrabber{above}% - {\let\@tempc\overlineop - \let\do\abovedo - \the\toks@ - \@tempc}} -\SGMLdef<below>{\SGMLgrabber{below}% - {\let\@tempc\underlineop - \let\do\abovedo - \the\toks@ - \@tempc}} -\def\overlineop#1{\mathop{\overline{#1}}} -\def\underlineop#1{\mathop{\underline{#1}}} -\def\abovedo#1#2{% - \def\@tempa{sym}\def\@tempb{#1}% - \ifx\@tempa\@tempb\def\@tempc{\csname#2\endcsname}\fi} -\SGMLdef<vec>{\SGMLgrabber{vec}\vec} -\SGMLdef<bar>{\SGMLgrabber{bar}\bar} -\SGMLdef<dot>{\SGMLgrabber{dot}\dot} -\SGMLdef<ddot>{\SGMLgrabber{ddot}\ddot} -\SGMLdef<hat>{\SGMLgrabber{hat}\hat} -\SGMLdef<tilde>{\SGMLgrabber{tilde}\tilde} -\SGMLdef<t>{\SGMLgrabber{t}\mathrm} -\SGMLdef<bt>{\SGMLgrabber{bt}\mathbf} -\SGMLdef<text>{\SGMLgrabber{text}\textnormal}%%%%% not in the dtd???? -\SGMLdef<root>{\rootfudge} -\def\rootfudge#1{% - \setbox\rootbox\hbox\bgroup$\m@th\scriptscriptstyle\bgroup#1} -\SGMLdef<of>{\egroup$\egroup\SGMLgrabber{root}\offudge} -\SGMLdef</of>{} -\def\offudge#1{\mathpalette\r@@t{#1}} -\SGMLdef<sqrt>{\SGMLgrabber{sqrt}\sqrt} -\newcount\HTMLrow -\newcount\HTMLcol -\newcount\HTMLrowspan -\newcount\HTMLcolspan -\SGMLdef<array>{{\ifnum`}=0\fi - \let\do\arraydo - \let\doimplied\arrayimplied - \let\HTMLal.% - \let\HTMLar.% - \global\HTMLrow\z@ - \let\HTMLabox\vcenter - \the\toks@ - \setbox\z@\vbox\bgroup\halign\bgroup - \strut\span\HTMLacolspec\cr\nocr} -\def\HTMLacolspec{##&&##} - -\def\HTMLamakepream#1{% - \let\HTMLacolspec\@empty - \let\@sharp\relax - \lowercase{\@tfor\@tempc:=#1}\do{% - \if\@tempc l% - \edef\HTMLacolspec{\HTMLacolspec\@sharp\hfill&}% - \else - \if\@tempc c% - \edef\HTMLacolspec{\HTMLacolspec\hfill\@sharp\hfill&}% - \else - \if\@tempc r% - \edef\HTMLacolspec{\HTMLacolspec\hfill\@sharp&}% - \else - \if\@tempc +% - \edef\HTMLacolspec{\HTMLacolspec$+$}% - \else - \if\@tempc -% - \edef\HTMLacolspec{\HTMLacolspec$-$}% - \else - \if\@tempc =% - \edef\HTMLacolspec{\HTMLacolspec$=$}% - \fi - \fi - \fi - \fi - \fi - \fi}% - \def\@sharp{########}% - \edef\HTMLacolspec{\HTMLacolspec&\@sharp}} -\SGMLdef</array>{\HTMLendarray} -\let\HTMLcr\cr -\def\HTMLendarray{% - \endi\crcr\egroup\egroup - \ifx\HTMLabox\vtop - \setbox\z@\vtop{\unvbox\z@}% - \else - \ifx\HTMLabox\vcenter - \dimen@\ht\z@ - \advance\dimen@\dp\z@ - \divide\dimen@\tw@ - \advance\dimen@-\ht\z@ - \setbox\z@\hbox{\raise\dimen@\box\z@}% - \fi - \fi - \dimen@=\ht\z@ - \setbox\z@ -\hbox{$\left\HTMLal\kern-1em\vcenter{\box\z@}\kern-1em\right\HTMLar$}% - \advance\dimen@-\ht\z@ - \raise\dimen@\box\z@ - \ifnum`{=0\fi}} -\def\HTMLendarraylabels{% - \endi\crcr\strut\cr\egroup\egroup - \setbox2=\vsplit\z@ to \baselineskip - \setbox\z@\vbox{\unvbox\z@\global\setbox\@ne\lastbox}% - \setbox4\hbox{\unhbox\@ne\unskip\global\setbox\@ne\lastbox}% - \vcenter{% - \box2 - \hbox{$\kern\wd\@ne - \left\HTMLal\kern-\wd\@ne - \vcenter{\box\z@}% - \right\HTMLar$}}% - \ifnum`{=0\fi}} -\def\nocr{\relax\iffalse{\fi\let\HTMLcr\relax\iffalse}\fi} -\SGMLdef<row>{% - \endi\HTMLcr - \global\advance\HTMLrow\@ne - \global\HTMLcol\z@} -\SGMLdef</row>{} -\SGMLdef<item>{% - \let\do\itemdo - \gdef\@gtempa{\global\advance\HTMLcol\@ne}% - \gdef\@gtempb{}% - \gdef\@gtempc{}% - \global\HTMLcolspan\@ne - \the\toks@ - \endi% - \@gtempc - \@gtempa - \spanifneeded - \@gtempb - \setbox\z@\hbox\bgroup$% - \def\endi{\unskip$\egroup% - \quad\HTMLaleft\box\z@\HTMLaright\quad&}% - \ignorespaces} -\def\spanifneeded{% - \edef\@tempa{\noexpand\in@{,\the\HTMLrow/\the\HTMLcol,}{\spanitems}}% - \@tempa - \ifin@ - \@firstofone{&}\global\advance\HTMLcol\@ne - \expandafter\spanifneeded - \fi} -\SGMLdef</item>{} -\let\HTMLaleft\hfil -\let\HTMLaright\hfil -\let\endi\relax -\def\arraydo#1#2{% - \def\@tempa{#1}\def\@tempb{#2}% - \def\@tempc{align}% - \ifx\@tempa\@tempc - \def\@tempc{top}% - \ifx\@tempb\@tempc - \let\HTMLabox\vtop - \else - \def\@tempc{bottom}% - \ifx\@tempb\@tempc - \let\HTMLabox\vbox - \fi - \fi - \else - \def\@tempc{ldelim}% - \ifx\@tempa\@tempc - \let\HTMLal\@tempb - \else - \def\@tempc{rdelim}% - \ifx\@tempa\@tempc - \let\HTMLar\@tempb - \else - \def\@tempc{labels}% - \ifx\@tempa\@tempc - \let\HTMLendarray\HTMLendarraylabels - \else - \def\@tempc{colspec}% - \ifx\@tempa\@tempc - \HTMLamakepream{#2}% - \fi - \fi - \fi - \fi - \fi} -\def\arrayimplied#1{% - \def\@tempa{labels}\def\@tempb{#1}% - \ifx\@tempa\@tempb - \let\HTMLendarray\HTMLendarraylabels - \fi} -\def\itemdo#1#2{% - \def\@tempa{#1}\def\@tempb{#2}% - \def\@tempc{colspan}% - \ifx\@tempa\@tempc - \global\HTMLcolspan#2\relax - \gdef\@gtempa{\@multispan#2\relax\global\advance\HTMLcol#2\relax}% - \else - \def\@tempc{align}% - \ifx\@tempa\@tempc - \def\@tempc{left}% - \ifx\@tempb\@tempc - \gdef\@gtempb{\let\HTMLaleft\relax}% - \else - \def\@tempc{right}% - \ifx\@tempb\@tempc - \gdef\@gtempb{\let\HTMLaright\relax}% - \fi - \fi - \else - \def\@tempc{rowspan}% - \ifx\@tempa\@tempc - \global\HTMLrowspan#2\relax - \gdef\@gtempc{% - \@tempcnta=\HTMLrow - \advance\@tempcnta\HTMLrowspan - \loop - \@tempcntb=\HTMLcol - \advance\@tempcntb\HTMLcolspan - \advance\@tempcnta\m@ne - \ifnum\@tempcnta>\HTMLrow - {\loop - \xdef\spanitems{% - \spanitems\the\@tempcnta/\the\@tempcntb,}% - \advance\@tempcntb\m@ne - \ifnum\@tempcntb>\HTMLcol - \repeat}% - \repeat}% - \fi - \fi - \fi} -\def\spanitems{,} -\SGMLentity{thinsp}{\,} -\SGMLentity{emsp}{\quad} -\SGMLentity{alpha}{\alpha} -\SGMLentity{beta}{\beta} -\SGMLentity{gamma}{\gamma} -\SGMLentity{Gamma}{\Gamma} -\SGMLentity{int}{\int} -\SGMLentity{sum}{\sum} -\SGMLentity{lbrace}{\lbrace} -\SGMLentity{rbrace}{\rbrace} -\SGMLentity{times}{\times} -\SGMLentity{cup}{\cup} -\SGMLentity{cap}{\cap} -\SGMLentity{vee}{\vee} -\SGMLentity{wedge}{\wedge} -\SGMLentity{infty}{\infty} -\SGMLentity{oplus}{\oplus} -\SGMLentity{ominus}{\ominus} -\SGMLentity{otimes}{\otimes} -\SGMLentity{sin}{\sin} -\SGMLentity{cos}{\cos} -\SGMLentity{tan}{\tan} -\SGMLdef<table>{\begin{table}[htp]\centering\begin{tabular}{*{10}c}} -\SGMLdef</table>{\end{tabular}\end{table}} -\SGMLdef<tr>{\ifhmode\expandafter\\\fi\relax} -\SGMLdef</tr>{\\\relax} -\SGMLdef<td>{\ifvmode\else\expandafter\hiddenamp\fi} -\def\hiddenamp{&} -\SGMLdef</td>{} -\SGMLdef<caption>{\end{tabular}\begingroup\bfseries} -\SGMLdef</caption>{\endgroup\par\smallskip\begin{tabular}{*{10}{c}}} -\endinput -%% -%% End of file `typehtml.sty'. diff --git a/Master/tlpkg/libexec/ctan2tds b/Master/tlpkg/libexec/ctan2tds index 5d0413df1c9..3472eca7739 100755 --- a/Master/tlpkg/libexec/ctan2tds +++ b/Master/tlpkg/libexec/ctan2tds @@ -366,6 +366,7 @@ $Master = "$mydir/../.."; 'ltt', "&MAKEltt", 'ltxbase', "&MAKEbase", 'ltxmisc', "die 'skipping, too complicated, sorry'", + 'ltxtable', "die 'skipping, use carlisle'", 'lxfonts', "&MAKEcopy", 'lucida', "die 'skipping, nonfree font'", 'lucidabr', "die 'skipping, nonfree font'", @@ -1316,9 +1317,17 @@ $standardsource='\.fdd|\.dtx|\.ins|\.c$|Makefile|configure.*|install-sh|\.drv'; ); $standardins='\.ins'; +# ltxtable.tex in carlisle uses the {filecontents} environment to write +# ltxtable.sty. Unfortunately if the file exists anywhere in the input +# tree, it won't be written, and of course TL already has it installed. +# So set TEXINPUTS to only the directories actually needed for the run, +# so that latex will not find our installed ltxtable.sty. +my $core_latex = "$Master/texmf-dist/tex/latex"; + %specialinsrunner = ( 'bosisio' => 'latex -translate-file=empty.tcx', # no 8-bit 'bullcntr' => 'latex', # requires interaction + 'carlisle' => "env TEXINPUTS=$core_latex/base:$core_latex/tools:. latex", 'clefval' => 'latex -translate-file=empty.tcx', # no 8-bit 'ctable' => 'latex', # requires interaction 'dateiliste' => 'latex', # requires interaction |