diff options
Diffstat (limited to 'Master')
29 files changed, 1 insertions, 7623 deletions
diff --git a/Master/texmf-dist/bibtex/bib/geomsty/manual.bib b/Master/texmf-dist/bibtex/bib/geomsty/manual.bib deleted file mode 100644 index 21c2034ad38..00000000000 --- a/Master/texmf-dist/bibtex/bib/geomsty/manual.bib +++ /dev/null @@ -1,69 +0,0 @@ -@book{Lamport, - author="Leslie Lamport", - title="\LaTeX: {A} Document Preparation System", - publisher="Addison-Wesley", - address="Reading, MA", - year = "1986" -} - -@unpublished{amslatex, - author="{American Mathematical Society}", - title="\amslatex/ Version 1.1 User's Guide (1991)", - address="Providence", - note="Distributed with the software - (use anonymous ftp from {\tt e-math.ams.com})" -} - -@unpublished{psfig, - author="Trevor Darrell", - title="{Psfig/\TeX} 1.8 Users Guide (1991)", - address="Boston", - note="Distributed with the software - (use anonymous ftp from {\tt whitechapel.media.mit.edu})" -} - -@book{epstein:WordProcessing, - author="David B. A. Epstein and - Jim Cannon and Silvio Levy and Derek Holt and Mike Paterson and - William Thurston", - title="Word Processing in Groups", - address="Boston", - year="1992", - publisher="Jones and Bartlett" -} - -@article{Mittelbach, - author="Frank Mittelbach", - title="An environment for multi-column output", - journal="TUGboat", - year="1989", - volume="10", - pages="407--415" -} - - -@unpublished{rokicki, - author="Tom Rokicki", - title="{DVIPS}: A {\TeX} driver (version 5.490, 1992)", - address="Stanford", - note="Distributed with the software - (use anonymous ftp from {\tt labrea.stanford.edu})" -} - - -@book{illustrator, - author="Mike Schuster and others", - title="Adobe Illustrator", - address="Palo Alto, CA", - publisher="Adobe Systems", - year="1988" -} - -@book{wolfram, - author="Stephen Wolfram", - title="Mathematica: A System for Doing Mathematics by Computer", - address="Reading, MA", - publisher="Addison-Wesley", - edition="2nd", - year="1991" -} diff --git a/Master/texmf-dist/doc/latex/geomsty/manual.pdf b/Master/texmf-dist/doc/latex/geomsty/manual.pdf Binary files differdeleted file mode 100644 index a3e6a16cf6f..00000000000 --- a/Master/texmf-dist/doc/latex/geomsty/manual.pdf +++ /dev/null diff --git a/Master/texmf-dist/doc/latex/geomsty/manual.tex b/Master/texmf-dist/doc/latex/geomsty/manual.tex deleted file mode 100644 index ac12384efe1..00000000000 --- a/Master/texmf-dist/doc/latex/geomsty/manual.tex +++ /dev/null @@ -1,1312 +0,0 @@ -% $Header: /usr/home/levy/texts/geomsty/RCS/manual.tex,v 1.12 95/07/03 15:57:22 levy Exp Locker: levy $ - -\documentstyle[11pt,geom]{article} - -\def\leftfoot{\RCSstring$Revision: 1.12 $} -\def\rightfoot{\RCSstring$Date: 95/07/03 15:57:22 $} -\def\RCSstring$#1 ${#1} - -\addtolength{\textwidth}{.5in} -\addtolength{\oddsidemargin}{-.25in} -\addtolength{\evensidemargin}{-.25in} -\def\AmS{{\the\textfont2 A\kern-.1667em\lower.5ex\hbox{M}\kern-.125emS}} -\def\amstex/{\AmS-\TeX} -\def\amslatex/{\AmS-\LaTeX{}} -\def\latex/{\LaTeX{}} - -\makeatletter -\def\@verbatim{\par\small\trivlist \item[]\if@minipage\else\vskip\parskip\fi -\leftskip\@totalleftmargin\advance\leftskip 1em \rightskip\z@ -\parindent\z@\parfillskip\@flushglue\parskip\z@ -\@tempswafalse \def\par{\if@tempswa\hbox{}\fi\@tempswatrue\@@par} -\obeylines \tt \catcode``=13 \@noligs \let\do\@makeother \dospecials} -\makeatother - -\newenvironment{wizard}{\medbreak\begin{small} - \leavevmode\llap{\hbox to \parindent{$*$\hfil}}}{\par\end{small}\medbreak} -\def\preref#1{{\normalshape#1}} -\newtheorem[{\par\large}{\it}]{theorem}{Theorem}[section] -\equationwith{theorem} -\newtheorem[{\par\large}{}]{warning}{Warning} -\def\thewarning{\unskip} -\def\picpath{} - -\makeatletter -\ifx\fmtname\format@e -\DeclareSymbolFont{AMSa}{U}{msa}{m}{n} -\DeclareMathSymbol\square {\mathord}{AMSa}{"03} -\fi -\makeatother - -\makeindex - -\begin{document} - -\title{The {\tt geom} style for \latex/} -\author{Silvio Levy\\Geometry Center\\ -University of Minnesota} -\date{Revised for \latex/2$_\epsilon$, July 1995} - -\maketitle - -\tableofcontents -%\listoffigures - -\vfil - -\copyright 1992 Silvio Levy. The software described in this document -is available free of charge through the Geometry Center at the -University of Minnesota. It is distributed without any warranty, -express or implied. - -Bug reports and comments about the software and documentation -can be sent to {\tt levy@geom.umn.edu}. I will take them into -consideration in future releases, but there is no -guarantee that particular bugs will be fixed. - -\vfil\eject - -\section{Introduction} - -This document describes a \latex/ style called \ix{{\tt geom}}, -which is loosely based on Lamport's \verb+book+ -and \verb+article+ styles \cite{Lamport}, -but provides a number of additional features, such as: -\begin{itemize} -\item -inclusion of \ix{PostScript} figures in the document, -and of \TeX\ text within figures; -\item -automatic creation of index entries and cross-reference -labels where appropriate; -\item -no restriction on the use of macros and special characters in -titles, cross-references, captions, etc.; -\item -greater versatility in defining theorem-like environments; -\item -upright digits in an italics environment (optionally); and -\item -proofing aids such as version numbers and a running index. -\end{itemize} -There are also purely esthetic differences, -many of which can be controlled by the user. - -This style had its inception in a set of \latex/ macros -\ixinv{historical notes}% -\ixinv{acknowledgements}% -written for the formatting of \ix{Bill Thurston}'s \ix{{\it -Three-Dimensional Geometry and Topology}}, first by \ix{Yair Minsky} -and subsequently by me. After three years of gestation, the macros -started being used intensively by some other people---notably Thurston, -\ix{David Epstein} and a number of students at \ix{Warwick -University}---and more modifications, including a complete rewrite, -were made. The first book published using the \verb+geom+ style -\cite{Epstein:WordProcessing} came out in February 1992. - -The Appendix to this document describes \verb+mathfig+, a system for -typesetting \TeX\ labels in Mathematica figures. (Mathematica is -described in \cite{wolfram}). This system can also be used -independently of \verb+geom+. - -This release owes much to the patience of these first users and the -feedback they provided, for which I am very grateful. Naturally, my -debt to the people on whose work I've built---\ix{Don Knuth}, -\ix{Leslie Lamport}, \ix{Rainer Sch\"opf}, \ix{Frank Mittelbach}, -\ix{Trevor Darrell} and others---is impossible to quantify. I wish to -take this opportunity to thank them, and also John Rawnsley, who -provided the port to \latex/2$_\epsilon$. I also thank Al Marden, the -Founding Director of the Geometry Center, for creating the conditions -needed for this work to happen. - -\section{Overall Organization} - -In order to use this style, you need to be running a version of -\latex/ that supports the so-called \ix{new font selection -scheme} (NFSS), due to Frank Mittelbach and Rainer Sch\"opf. -If your version of \latex/ is \latex/2$_\epsilon$, you are -automatically using NFSS. If your version is \latex/2.09, you must -check whether it supports NFSS. Start \latex/ and type -\verb+\show\selectfont+. If the response includes -% -\begin{verbatim} -> \selectfont=undefined. -\end{verbatim} -% -this is the wrong \latex/. Don't despair yet; -the right \latex/ may be available at your -site, but under a different name---try \verb+amslatex+, -or ask your local guru. (Strictly speaking, \amslatex/ -\cite{amslatex} is a set of \latex/ style files that emulate \amstex/. -Since their use requires NFSS and the -necessary modifications used to be supplied with the \amslatex/ style files, -the name is sometimes used for \latex/+NFSS.) If you can't find -\latex/+NFSS at all, see further instructions in \Fullref{Installation}. - -Unlike most other \latex/ styles, \verb+geom+ comes in several -files, devoted to different capabilities such as cross-referencing, -figures, indexing and so on. -The files currently in the distribution are: -$$\hbox to \hsize{\small -\valign{&\hbox{\strut #}\cr -{\tt dvips.chg}& -{\tt geom.sty}& -{\tt geomar10.sty}& -{\tt geomar11.sty}& -{\tt geomar12.sty}& -{\tt geomart.sty}& -{\tt geombk10.sty}& -{\tt geombk11.sty}& -{\tt geombk12.sty}\cr -\noalign{\hfil} -% -driver dependencies& -master file& -changes to \verb+art10.sty+& -changes to \verb+art11.sty+& -changes to \verb+art12.sty+& -changes to \verb+article.sty+& -changes to \verb+book10.sty+& -changes to \verb+book11.sty+& -changes to \verb+book12.sty+\cr -\noalign{\hfil} -% -{\tt geombook.sty}& -{\tt geomenv.sty}& -{\tt geomeqns.sty}& -{\tt geomfig.sty}& -{\tt geomfnt.sty}& -{\tt geomindx.sty}& -{\tt geompsfi.sty}& -{\tt multicol.doc}& -{\tt multicol.sty}\cr -\noalign{\hfil} -% -changes to \verb+book.sty+& -environments& -option file& -high-level figure support& -fonts and special symbols& -index and glossary& -PostScript figure support& -source for \verb+multicol.sty+& -two-column formatting\cr -}}$$ - -The file \verb+geom.sty+ is the master, and it is read in when -\verb+geom+ is called as an option to a main document style, which can -be either \verb+book+ or \verb+article+. -That is, to use the stuff described in this document, -\ixinv{calling {\tt geom}}% -your text file should start with a line such as -\begin{verbatim} -\documentstyle[12pt,geom,...]{book} -\end{verbatim} -When \verb+geom.sty+ is loaded in, it guesses what your main style is, -and reads in some changes to that style, contained in the files -\verb+geombook.sty+, \verb+geombk12.sty+, and so on. - -%Each of the following sections is devoted to one major feature of -%\verb+geom+. Where appropriate, I discuss the file(s) where the feature -%is implemented, to allow you to make your own modifications. - -The file \verb+multicol.sty+ is part of the package files developed by -Frank Mittelbach and Rainer Sch\"opf at the University of Mainz. -It is accompanied by \verb+multicol.doc+, which is a ``source'' file -with documentation. To obtain more of the excellent software written -by Mittelbach and Sch\"opf, check the CTAN archives (see the -Installation section below). - -The rest of this document describes the installation of \verb+geom+ -(skip if it's already installed), its major features, -and how you can take advantage of them and (sometimes) modify them. -Some material that is either very technical or unlikely to be needed -except under unusual circumstances is printer in smaller type and -introduced by an asterisk $*$. - -\section{Installation} - -You only need to read this section if you are in charge of installing -\verb+geom+ at your site. Installation is very simple if your \latex/ -supports NFSS and your \TeX-to-PostScript driver is Tom Rokicki's -\verb+dvips+ \cite{Rokicki}. - -To check whether you have \latex/+NFSS, see the -beginning of \Fullref{Overall Organization}. If you don't, -it's time to switch over to \latex/2$_\epsilon$. -Get it by ftp from one of the worldwide CTAN archives -(currently \verb+pip.shsu.edu+, -\verb+ftp.uni-stuttgart.de+, and \verb+tex.ac.uk+). - -If your driver is not -\verb+dvips+, you have two choices: either install \verb+dvips+, which -is almost certainly a good idea (get it by ftp from a CTAN archive); or make a -copy of the file \verb+dvips.chg+ in this distribution, and modify it -so it writes the \verb+\special+ commands required by your driver. If -you adapt \verb+dvips.chg+ for your driver, give the new file a -different name, and replace with this name all occurrences of -\verb+dvips.chg+ in the rest of this section. Also, please send me a -copy of the file, so I can include it in future distributions. - -As I was saying before I got sidetracked, installation is simple. -If you're on a UNIX system, edit the \verb+Makefile+ to make sure the -pathnames are correct for your site, and run \verb+make install+. If you're -not on a UNIX system, here are the step-by-step instructions: - -Place the files listed in the previous section (all the distribution -files that end in \verb+.sty+, \verb+.chg+ or \verb+.doc+) in the -system-wide directory for \TeX\ input files. Create a symbolic link -\verb+driver.chg+ in this directory, pointing to \verb+dvips.chg+. -(If your system does not support symbolic links, copy \verb+dvips.chg+ -to \verb+driver.chg+.) - -Copy the file \verb+mathlabels.orig+ to \verb+mathlabels+ and edit its -first line to be the correct pathname of the perl executable on your -system. (If you don't have \verb|perl| at all, you don't know what -you're missing---get it as soon as possible.) Decide on a directory -where you want to install the auxiliary scripts \verb+mathlabels+ and -\verb+geomfix+ (which are used by \verb+mathfig+), and put copies of -them there. Copy the file \verb+mathfig.orig+ to \verb+mathfig+ and -edit the lines at the top to specify the location of the -\verb+mathlabels+ and \verb+geomfix+ scripts, then copy -\verb+mathlabels+ to a system-wide directory for executables. -%On a -%UNIX system, copy \verb+mathfig.1.orig+ to -%\verb+mathfig.1+ and edit it to correctly mention the loations of the -%\verb+mathlabels+ and \verb+geomfix+ scripts, then -%install the manual page \verb+mathfig.1+ in the appropriate place. - -Finally, copy \verb+math.pro+ and \verb+illustrator.pro+ into the -directory where your \TeX-to-PostScript driver looks for prolog files. -(This assumes your driver supports the inclusion of prolog files; -switch to \verb+dvips+ if it doesn't.) - -\section{No More Fragile Commands} - -In standard \latex/, commands such as \verb+\section+ have {\it moving -arguments}, that is, arguments that migrate to an auxiliary file {\it -jobname}\verb+.aux+ to be used later in typesetting the table of -contents and so on \cite[33--34]{Lamport}. -In this process, macros in the body of the argument -are expanded, so that when you type, say, -\begin{verbatim} -\section{Annoying \TeX nicalities} -\end{verbatim} -what goes into the auxiliary file is something like -\begin{verbatim} -\@writefile{toc}{\string\contentsline\space {chapter}{\string\numberline\space -{1}Annoying T\kern -.1667em\lower .5ex\hbox {E}\kern -.125emXnicalities}{1}} -\end{verbatim} -where the second line contains the expansion of the macro \verb+\TeX+. - -There are several problems with this. First, the expansion, and -consequently the line where it occurs in the auxiliary file, can be -very long, which in some implementations means that \TeX\ cannot -read the line back in. Secondly, the expansion might not -make sense, or might do the wrong thing, at the time when it is read in again. -Even worse, the expansion -of \verb+\section{\small foo}+, for example, actually -causes an infinite loop. - -\begin{wizard} -Experienced users of \TeX\ who -want to know why this happens can try typing the following lines to -plain \TeX: -\begin{verbatim} -\def\foo{\let\bar\foo} -\foo %Nothing much happens -\immediate\write0{\foo} %Disaster strikes -\end{verbatim} -The problem is that at the time of the \verb+\write+ no assignment is -taking place, so the \verb+\foo+ at the end of the expansion is not -handled as a literal. -\end{wizard} - -Standard \latex/'s solution to these problems is for the user to -precede ``fragile'' macros with the \verb+\protect+ command -\cite[33--34]{Lamport}. By contrast, in the \verb+geom+ style, -you don't have to worry about ``fragile'' commands -in the following situations: -\begin{itemize} -\item -in the arguments of the sectioning commands -\verb+\chapter+, \verb+\section+, and so on; -\item -in the optional argument to the \verb+theorem+ -environment and its relatives (\Fullref{Theorems and Their Friends}); -\item -in the arguments to \verb+\caption+, \verb+\fig+ and its relatives -(\Fullref{PostScript Figures}); -\item -in the arguments to \verb+\markright+ and \verb+\markboth+; -\item -in the argument to \verb+\cite+. -\end{itemize} -This covers almost all important situations where fragile -commands need to be \verb+\protect+ed \cite[151]{Lamport}. In future -versions I hope to extend this permissiveness to the remaining -situations. - -Notice, however, that the \verb+\verb|...|+ construction continues to -be forbidden inside arguments to most commands. This is due to -reasons deeply embedded in \TeX\ itself, and is unlikely ever to -change. - -\begin{wizard} -In some circumstances you might want the old \latex/ behavior of -macro expansion inside the argument of \verb+\chapter+, say. -For instance, you might have a locally defined macro whose definition -will be unknown at the time the table of contents is read. -In this case you can use the following construction: -\begin{verbatim} -\edef\mystring{...} % where ... stands for the argument to be expanded -\expandafter\chapter\expandafter{\mystring} -\end{verbatim} -\end{wizard} - -\section{Labels and Cross-References} - -In standard \latex/, the argument to the \verb+\label+ command cannot -contain anything but characters (after expansion). In the \verb+geom+ -style, this restriction is lifted, so labels contain just about -anything. For example, \verb+\label{\TeX}+ and -\verb+\label{Isometries of $\bold R^2$}+ are acceptable. Macros are -no longer expanded. - -One advantage of this flexibility is that subdivisions can be -automatically labeled by their titles. In the \verb+geom+ format, by -default, every sectioning command such as \verb+\section+ generates a -label with its title. If this feature causes you to run out of -memory, you can turn it off by saying \verb+\autolabelfalse+ in your -document's preamble. - -To refer to the place where a label occurs, you can still use the -\verb+\ref+ command, as in standard \latex/. This gives a bald -number---for example, \verb+\ref{+{\tt Isometries of }\verb+$\bold R^2$}+ will -print ``8.3'' if Section~8.3 starts with -\verb+\section{+{\tt Isometries of }\verb+$\bold R^2$}+ -while automatic labeling is in effect. - -A new feature is that you can -replace \verb+\ref+ by \verb+\fullref+ or \verb+\Fullref+, to get -``section 8.3'' or ``Section 8.3'', respectively. -The way \verb+\fullref+ works is by storing in a certain register the -type of environment in which a label was created. Thus, when -a new section starts, this register gets the value ``section''. When -a \verb+\begin+ command introducing -one of the environments described in \Fullref{Theorems and Their Friends} is encountered -inside this section, the register gets updated to the type of that -environment, say ``theorem''. It reverts to ``section'' when -the matching \verb+\end+ command is read. - -Even if you have nested -environments, labels placed in each of them are assigned the correct -type. Consider the input -% -\begin{verbatim} -\newtheorem[{\par\large}{\it}]{theorem}{Theorem}[section] -\equationwith{theorem} % These two lines are explained -... % in later sections -\begin{theorem}[Erd\"os] -A theorem both deep and profound / Is that a circle is round: -\begin{equation} -\mathrm{curvature}\,S^1=\mathrm {const}. -\label{circle} -\end{equation} -In a paper by Erd\"os / Written in Kurdish / A counterexample is found. -\label{Kurdish} -\end{theorem} -\end{verbatim} -% -which gives -% -\begin{theorem}[Erd\"os] -A theorem both deep and profound / Is that a circle is round: -\begin{equation} -\mathrm{curvature}\,S^1=\mathrm {const}. -\label{circle} -\end{equation} -In a paper by Erd\"os / Written in Kurdish / A counterexample is found. -\label{Kurdish} -\end{theorem} -Now \verb+\Fullref{Erd\"os}+ gives ``\Fullref{Erd\"os}'', -\verb+\Fullref{circle}+ gives ``\Fullref{circle}'', and -\verb+\Fullref{Kurdish}+ gives ``\Fullref{Kurdish}''. Furthermore, -\verb+\ref*{Erd\"os}+ gives ``\ref*{Erd\"os}'', that is, it prints the -(optional) tag associated with theorems and the like. Of course you -can also use \verb+\fullref*+ and \verb+\Fullref*+. - -\begin{wizard} -If you disagree with \latex/'s idea of what the label type should be -at a particular point, you can override is using \verb+\setlabeltype+. -For example, if we had \verb+\setlabeltype{formula}+ right before the -\verb+\label+ command in the previous example, the result of -\verb+\Fullref{circle}+ would be ``Formula~\ref{circle}'' instead of -``\Fullref{circle}''. -\end{wizard} - -Before \verb+\ref+ actually prints the number of a cross-reference, it -applies the macro \verb+\preref+ to it. By default, this macro does -nothing; but you can redefine it to do whatever you want with the -number. If you want the number to appear upright even if the -surrounding text is in italics, you can say -\begin{verbatim} -\def\preref#1{{\normalshape#1}} -\end{verbatim} -The output of \verb+\pageref+ and of \verb+\cite+ is also passed to -\verb+\pageref+ before being printed. - -\section{Theorems and Their Friends} - -Standard \latex/ provides the \verb+\newtheorem+ command to create -environments for statements like theorems, lemmas, and so on. -The basic idea can be adapted for other types of text that should -stand out, such an exercises, conventions, and so on. -Not all of these should be treated typographically the same: for -example, you might want exercises in smaller type. - -The \verb+geom+ style extends \latex/'s \verb+\newtheorem+ command -to allow you to do this easily. Recall from \cite[58]{Lamport} that -\verb+\newtheorem+ has two required arguments: the name of the new -environment (say ``theorem''), and the text used to introduce it (say -``Theorem''). In standard \latex/ it also takes an optional argument, -whose meaning depends on whether it comes before or after the second -required argument. - -In the \verb+geom+ style, you can use yet another optional argument, -right after \verb+\newtheorem+, to tell \latex/ how this environment -differs from a vanilla theorem-like environment. This optional -argument should consist of two sequences of commands, each surrounded -by braces, like this: -% -\begin{verbatim} -\newtheorem[{\par\large}{\it}]{theorem}{Theorem}[section] -\end{verbatim} -% -(This is the same definition used for the -example in \Fullref{Labels and Cross-References}.) - -The first sequence of commands in braces, \verb+\par\large+, will be -executed as soon as \latex/ sees a \verb+\begin{theorem}+. This means -the theorem will come out in larger type (see the output in -\Fullref{Labels and Cross-References}). \latex/ implicitly starts a -new level of braces when it encounters a \verb+\begin+ -command---changes inside the environment are local, so the -\verb+\large+ will cease to have effect at the end of the environment. - -The second sequence of commands is inserted right after the -introductory text {\bf{\def\preref#1{#1} \Fullref{Erd\"os}} (Erd\"os)}. It affects -everything from that point till the end of the environment. Here -we've used \verb+\it+, so the statement of the theorem is printed in -italics. Note that, unlike the standard \verb+article+ and -\verb+book+ styles, \verb+geom+ does not italicize theorems by -default. If we didn't have the \verb+\it+ in the \verb+\newtheorem+ -command, the text of the theorem would be upright. - -\begin{wizard} -You can also control the appearance of the introductory text itself -by changing the definition of \verb+\theoremintro+, which by default is -% -\begin{verbatim} -\def\theoremintro#1{\normalshape\bf#1} -\end{verbatim} -% -The argument \verb+#1+ stands for the introductory text. -\end{wizard} - -You need two pairs of braces in the new optional argument to -\verb+\newtheorem+, even if one is empty. If both are empty, -the behavior is the same as if the optional argument weren't there. - -Another enhancement to \verb+\newtheorem+ in -the \verb+geom+ style is automatic labeling. Suppose you say -% -\begin{verbatim} -\newtheorem{definition}[theorem]{Definition} -\end{verbatim} -\newtheorem[{\setlabeltype{def.}}{}]{definition}[theorem]{Definition} -% -(recall from \cite[59]{Lamport} that the use of \verb+[theorem]+ causes -definitions to be numbered in the same sequence as theorems, -assuming the \verb+theorem+ environment has been previously defined). -% -Now saying -% -\begin{verbatim} -\begin{definition}[universe] -The universe is a Hubble bubble. -\end{definition} -\end{verbatim} -prints -\begin{definition}[universe] -The universe is a Hubble bubble. -\end{definition} -% -and implicitly calls \verb+\label{universe}+. (As -mentioned in \Fullref{Labels and Cross-References}, you can turn this -feature off by saying \verb+\autolabelfalse+.) The environment knows -its type at the time the label is made, so saying -\verb+\Fullref{universe}+ will print ``Definition~\ref{universe}''. - -\begin{wizard} -The type is usually just the environment name, but it can be -overridden by including \verb+\setlabeltype+ (\Fullref{Labels and -Cross-References}) in the first optional argument to -\verb+\newtheorem+. Thus if the \verb+definition+ environment had -been created with -\begin{verbatim} -\newtheorem[{\setlabeltype{def.}}{}]{definition}[theorem]{Definition} -\end{verbatim} -\verb+\Fullref{universe}+ would appear as ``\Fullref{universe}''. -\end{wizard} - -The preferred style of some publishing houses calls for digits and -punctuation to be typeset upright in theorems and such, amidst -surrounding text in italics. The control sequence -\verb+\specialdigits+ achieves this. It causes each digit in text, as -well as parentheses, commas, colon, semicolons and periods, to -effectively be preceded by \verb+\normalshape+. You can use -\verb+\specialdigits+ after \verb+\it+ in the definition of a new -environment with \verb+\newtheorem+. - -\begin{wizard} -The way \verb+\specialdigits+ works is by making digits and -punctuation into active characters (changing their \verb+\catcode+s to -13). This has two consequences. First, characters that arise from -macro expansion don't get the special treatment, because their -\verb+\catcode+s are frozen beforehand; this is true, in particular, -of the expansion of \verb+\ref+ commands (but see the end of -\Fullref{Labels and Cross-References}). - -The second consequence is that the digits and decimal point no longer -work in specifying dimensions: if you write \verb+\vskip 1in+ while -\verb+\specialdigits+ is in effect, you get an error message -complaining that a number was expected. To get around this, you can -temporarily cancel the specialness with \verb+\regulardigits+. If you -run into this problem more than once or twice, it's best to create a -macro, outside the scope of \verb+\specialdigits+, that expands to the -desired command (\verb+\def\inch{\vskip 1in}+). -\end{wizard} - -\section{The Proof Environment} - -Theorems and proofs go hand in hand. -The \verb+proof+ environment in \verb+geom+, in its most basic form, -prints {\it Proof.} at the beginning of the proof, and an end-of-proof -symbol $\square$ at the end. With an optional argument it behaves -like this: -% -\begin{verbatim} -\begin{proof}[Poincar\'e conjecture] -Notice first that ... -... as we wished to show. -\end{proof} -\end{verbatim} -% -\begin{proof}[Poincar\'e conjecture] -Notice first that \dots\ as we wished to show. -\end{proof} - -\begin{wizard} -The formatting of the proof's introductory text is controlled by -the macro \verb+\proofintro+, whose single argument is the optional -argument to \verb+\begin{proof}+---in this case, ``Poincar\'e -conjecture''. If the optional argument is not used, -\verb+\proofintro+ is passed an empty argument. -The default setting of \verb+\proofintro+ is -% -\begin{verbatim} -\def\proofintro#1{\def\@tempa{#1}% - {\it Proof\ifx\@tempa\empty\else\ of #1\fi. }\ignorespaces} -\end{verbatim} -% -You can probably figure out how it decides whether to write -{\it Proof} or {\it Proof of\dots}. You can change its definition to -obtain other effects. - -Likewise, the formatting of the box at the end of the proof is -controlled by the macro \verb+\provedboxcontents+, which is entirely -analogous. Its standard setting is -\begin{verbatim} -\def\provedboxcontents#1{\def\@tempa{#1}% - \ifx\@tempa\empty$\square$\else\fbox{\small#1}\fi} -\end{verbatim} -\end{wizard} - -To identify your proofs with the number of their corresponding -theorems, lemmas, corollaries, etc., use \verb+\setprooftag+ in the -definition of these environments. For instance, after you say -% -\begin{verbatim} -\newtheorem[{\setprooftag}{\it}]{theorem}{Theorem}[section] -\newtheorem[{\setprooftag}{\it}]{corollary}[theorem]{Corollary} -\end{verbatim} -% -\verb+\begin{proof}+ will behave as if you were passing it as -its optional argument the number of the most recent theorem or corollary. -Nested proofs keep track of their arguments correctly, so the box at -the end of each gets the same tag as the {\it Proof of\dots} at the -beginning. - -However, certain situations are too confusing for \verb+\setprooftag+. -For example, if you state a corollary between a theorem and its proof, -the proof will incorrectly get the corollary's number, which is more -recent. In this situation you have to use the optional argument. Of -course, it's best to use \verb+\ref{...}+ as the argument, rather than -an explicit number, which might change later. - -If a proof -ends with a displayed formula, it is recommented that the proved box -be placed next to the formula (as if it were a tag). This is done -by inserting \verb+\proved+ before the closing \verb+$$+. -Likewise, if the last line of the proof is part of an \verb+\item+, -you can use \verb+\proved+ before the closing \verb+\end{enumerate}+ -(or whatever) so the proved box won't be set on a line by itself. -In even more difficult -cases---for instance, a formula that already has a tag, or is part of a -multi-line display---plop \verb+\box\provedbox+ where you want the box to be. - -\section{Equations} - -The \verb+geom+ style reinstates the plain \TeX\ macro -\verb+\eqalign+, which is not part of standard \latex/ but is -nonetheless very useful. Unlike the \verb+eqnarray+ environment, -\verb+\eqalign+ creates math alignments that are not treated as whole -lines, and so can be combined with other elements. - -The example in \Fullref{Labels and Cross-References} has -\verb+\equationwith{theorem}+ after the \verb+theorem+ -environment is created. -This causes equations made with the \verb+equation+ and -the \verb+eqnarray+ environments to be numbered in the same sequence -as theorems. You can replace \verb+theorem+ with any environment that -was defined with \verb+\newtheorem+ and that has a counter with its name -(the environment has a counter with its name if -there was no optional argument between -the first and second required arguments to \verb+\newtheorem+). - -If you load the optional style \verb+geomeqns+---that is, -if your document starts with -\begin{verbatim} -\documentstyle[geom,geomeqns,... -\end{verbatim} -the tags in the \verb+equation+ and the \verb+eqnarray+ environments -are printed on the left, in boldface. This makes them visually -similar to the tags that introduce theorems, so it is generally -appropriate to use this style if you're numbering equations and -theorems in the same sequence. - -\section{The {\mediumseries \tt Figure} and {\mediumseries \tt Table} environments} - -The \verb+geom+ style supports the \verb+figure+ and \verb+table+ -environments of standard \latex/, and, as mentioned above, if you use -the \verb+\caption+ command you don't have to worry about fragile -macros inside its argument. However, I recommend that you use -instead the new \verb+Figure+ and \verb+Table+ environments, which -provide some bells and whistles. - -These environments take three arguments: a cross-reference label, a title and -a legend (or explanatory caption). The command -% -\begin{verbatim} -\begin{Figure}{torus}{The square torus} -{A torus can be obtained, topologically, -by gluing together parallel sides of a square.} -$$ -\begin{picture}(1,1) -... % lots of \put commands -\end{picture} -$$ -\end{Figure} -\end{verbatim} -% -prints -% -\begin{Figure}{torus}{The square torus} -{A torus can be obtained, topologically, -by gluing together parallel sides of a square.} -$$ -\unitlength=1in -\begin{picture}(1,1) -\put(0,0){\vector(1,0){1}} -\put(0,0){\vector(0,1){1}} -\put(1,0){\vector(0,1){1}} -\put(0,1){\vector(1,0){1}} -\end{picture} -$$ -\end{Figure} -% - -\noindent -and in addition it creates a cross-reference label \verb+torus+ and an -entry in the table of contents with the text ``The square torus''. -As you can see, -the figure number and the title appear in -boldface, the legend in a lighter face. In proofing mode -(\Fullref{Proofing Aids}), the file -name also appears under the figure, in tiny letters. If you don't -want a legend, just write \verb+{}+ after the first two arguments. -(In other words, the legend is {\it not} an optional argument---it is -simply an argument that sometimes happens to be empty.) -There is an optional argument to the \verb+\Figure+ environment, consisting -of a subset of the letters \verb+htbp+ and indicating a location -where the figure may be placed \cite[176]{Lamport}; it should come -before all other arguments. -All of this applies to the \verb+Table+ environment as well. - -\section{PostScript Figures} - -Most often your picture won't be made with \latex/ commands; it will -exist in a separate PostScript file. Inclusion of PostScript figures -is still a bit of a bugaboo for many \TeX\ users, in spite of the -existence for many years now of Trevor Darrell's excellent macro -package \ix{Psfig/\TeX} \cite{psfig} and others. - -The \verb+geom+ style automatically loads the file -\verb+geompsfi.sty+, a modified version of \ix{Psfig/\TeX} -(incorporating some improvements by \ix{Stephan Bechtols\-heim} and -others of my own). It allows you to include PostScript figures very -simply: -% -\begin{verbatim} -\fig{PStorus}{The square torus}{A torus can be obtained, topologically, -by gluing together parallel sides of a square.} -\end{verbatim} -% -\fig{PStorus}{The square torus}{A torus can be obtained, topologically, -by gluing together parallel sides of a square.} - -The \verb+\fig+ macro takes the same three arguments (plus an optional -one) as the \verb+Figure+ environment. But the first argument, in -addition to being used to make a label, is also the name of the file -where the PostScript figure is stored (minus the \verb+.ps+ suffix). -Thus \Fullref{PStorus} is stored in the file \verb+PStorus.ps+. - -To get two or three figures side by side, sharing the same caption, -use \verb+\doublefig+ or \verb+\triplefig+. The PostScript file names -for \verb+\doublefig{foo}...+ would be in this case would be -\verb+foo-1.ps+ and \verb+foo-2.ps+, and likewise for -\verb+\triplefig+. There is no similar mechanism for more than three -figures. - -The directory where the figures are to be found is governed by the -macro \verb+\picpath+. For example, if the directory is -called \verb+/u/levy/pictures+, you should say -\begin{verbatim} -\def\picpath{/u/levy/pictures/} -\end{verbatim} -at the beginning of your document. (You need the \verb+/+ at the end.) - -\begin{wizard} -You can also use a relative pathname, such as \verb+pictures/+, or even -the empty string (or \verb+./+) for the current directory. -However, the program that sends -your \verb+.dvi+ file to the printer may not find the pictures since -it is likely to be invoked from a different directory. - -If a pathname includes characters that are special to \TeX, you need -to make then unspecial in order to define \verb+\picpath+. Here is an -example: -\begin{verbatim} -\begingroup % start a group so the change in _ is local -\catcode`\_=12 % make _ behave like an ordinary character -\gdef\picpath{/home/tampa_a/fac/wpt/pictures/} % this def is global -\endgroup % now _ reverts to its usual meaning -\end{verbatim} -\end{wizard} - -If you have a long document with lots of pictures, it is better to -organize them into sections and chapters. In that case you should -leave \verb+\picpath+ unset, and set the macro \verb+\masterpicpath+ -to the master picture directory. If I were using this scheme in this -document, I might say -% -\begin{verbatim} -\def\masterpicpath{/home/levy/pictures/} -\end{verbatim} -% -and put \Fullref{torus} in file -\verb+/home/levy/pictures/+{\tt\ref{PostScript Figures}}\verb+/PStorus.ps+. -(With the \verb+book+ style, which has chapters, I would need -\verb+chap3/+{\tt\ref{PostScript Figures}} -instead of just {\tt\ref{PostScript Figures}}.) - -The way \verb+\fig+ works is by calling -the command \verb+\psfig+ \cite{psfig}, which creates a \TeX\ \verb+\vbox+ -of the right size and containing instructions for the figure to be -included at the time of printing. You normally won't use -\verb+\psfig+ directly, since \verb+\fig+ calls it automaticaly. - -\begin{wizard} -However, occasionally you many want to use \verb|\psfig| directly to -take advantage of this macro's many options, such as resizing. See -the Psfig/\TeX\ manual \cite{psfig} for details; but some of the newer -options to Psfig/\TeX\ are not supported here. -\end{wizard} - -In order for the \verb+\psfig+ command to know what size box to make, -it needs to find your PostScript figure file, and -the file must have near the top a line like this: -\begin{verbatim} -%%BoundingBox: 0 30 98 128 -\end{verbatim} -The first two numbers represent the low $x$- and $y$-coordinates of -the figure's bounding box, in points, and the last two represent -the high $x$- and $y$-coordinates. In the example just given, which -corresponds to \Fullref{PStorus}, the bounding box goes from $0$ to -$98$~pt in the $x$-direction and from $30$ to $128$~pt in the -$y$-direction, so its height and width are both $98$~pt, or -approximately 1.35~inches. The corners of the bounding box appear on -the page in proof mode (\Fullref{Proofing Aids}). - -Note that \verb+\psfig+ only cares about the height and the width of -the bounding box, not about the actual values of the high and low -coordinates. The latter are relevant only in reference to the -coordinates of the objects inside the picture, about which -\verb+\psfig+ knows nothing. (Thus the bottom left corner of the -square in \Fullref{PStorus} has coordinates $(4,34)$, which is a -little bit above and to the right of the bounding box's bottom left -corner $(0,30)$.) If one added the same number to the $x$-coordinates -of the bounding box and of every object in the picture, the result -would be exactly the same. - -Normally, the \verb+%%BoundingBox+ line should have been placed in the -PostScript file automatically, by whatever program you used to create -the figure. If the program did not write a line like that, you have -to do it by hand, and you should consider switching to another program. - -Notice that the labels $a$ and $b$ in \Fullref{PStorus} appear in -the same font as they would in the text. In fact the labels were -typeset by \TeX\ itself, and do not come from the PostScript file, -where it would be hard to specify them satisfactorily---especially -details such as the placement of the primes and other subscripts and -superscripts. The information for these labels is contained in a file -with the suffix \verb+.lab+, which normally is generated by the same -program that creates the PostScript file, or by a postprocessor. -If you want to include {\it Mathematica} graphics, for example, you -should use the \verb+mathfig+ utility, described in the Appendix. - -\begin{wizard} -The average user has no need to know what the \verb~.lab~ file looks -like, but if you want to write a new postprocessor in order to -implement this labeling scheme in conjunction with your favorite -drawing program, here are the details. Each line of the file -yields one label, and contains the \verb+\setlabel+ command -followed by five arguments: the text of the label, to be typeset in -math mode; the $x$- and $y$-coordinates of the label's {\it reference -point}, in points; and the {\it relative} $x$- and $y$-coordinates of -the reference point. A value of 1 for the last two arguments means -the reference point of the label it at the top or right of the label's -bounding box; a value of $-1$ means bottom or left, a value of $0$ -means middle, and so on. - -For example, here is the file \verb+PStorus.lab+ corresponding to -\Fullref{PStorus}: -\begin{verbatim} -\setlabel{a}{48.600000}{34.162104}{0}{1} -\setlabel{b}{4.162104}{78.600000}{1}{0} -\setlabel{a'}{48.600000}{123.037896}{0}{-1} -\setlabel{b'}{93.037896}{78.600000}{-1}{0} -\end{verbatim} -For the label $a$, the reference point is at the top middle of the -label's bounding box, so the label itself will be centered under the -point with coordinates $(48.6,34.1)$. - -If you want to typeset a label outside math mode, use \latex/'s -\verb+\mbox+ command (or \TeX's \verb+\hbox+). The font used by -default in this case is the same as for captions. Thus, to get the -label {\sf foo} you'll probably want to type the string -\verb+\hbox{foo}+ into your figure-making program. - -Sometimes the fact that the source \verb+\hbox{foo}+ has many more -characters than the output causes problems---for example, the -figure-making program might leave too much space for the label. The -macro \verb+\hyperactivelabels+ provides a way around this. This -macro is called every time a label is about to be typeset, and you can -define it at will, to allow abbreviations, say. Thus, after the -commands -\begin{verbatim} -\def\hyperactivelabels{\mathcode`:="8000} -\def\activecolon#1:{\hbox{#1}} -{\catcode`\:=\active\global\let:=\activecolon} -\end{verbatim} -the construction \verb+:foo:+ has exactly the same effect as -\verb+\hbox{foo}+---but only inside labels. (The command -\verb+\mathcode`:="8000+ causes the colon to be treated as an active -character in math mode; the next two lines say, in a roundabout way, -what this active character should do.) -\end{wizard} - -Utilities (programs) that generate PostScript graphics files generally -start the file with a ``signature'' (a comment line stating the -utility's name and version) and a chunk of PostScript code---call it a -header---establishing abbreviations, subroutines, fonts and the like. -The header is always the same, so if you have dozens of figures -generated by the same utility it's good to factor out this -commonality, if possible. With certain utilities, you can save your -files without the header. Then they won't print on their own; but -when \verb+\psfig+ looks into them, if it can recognize the utility's -signature, it puts into the dvi file a command that causes the -inclusion of the header at printing time. This way the header is -included only once for all figures, saving memory and time. The -utilities that \verb+\psfig+ currently knows about are Mathematica -\cite{wolfram} and Adobe Illustrator \cite{illustrator}. With -Illustrator, saving without the header is accomplished by clicking on -the appropriate entry in the ``Save As'' dialog box. For Mathematica, -see the Appendix. - -\begin{wizard} -For the signature to be seen by \verb+\psfig+, it must appear near the -top of the file; the actual number of lines that \verb+\psfig+ scans -is controlled by the counter \verb+\maxheaderlines+. The -\verb+%%BoundingBox+ line must also lie in that same initial stretch. -The default value of \verb+\maxheaderlines+ is 100, which is almost -always adequate. -\end{wizard} - -\section{Fonts} -As mentioned in \Fullref{Overall Organization}, the \verb+geom+ style -requires NFSS, -a rational font management system that makes the use of new -fonts easier than under old \latex/. - -Under this scheme, unlike the old, if you say \verb+\bf... \small...+, -the \verb+\small+ has no effect on the boldness of the current -font---size, boldness, style and so on are independent attributes. -This is generally good, but it does create backward incompatibilities. -For example, if you have an old \latex/ document where you've relied -on \verb+\small+ to reset the weight of the font, you're in for a -surprise. Also, \verb+\rm+ should generally be replaced by -\verb+\normalshape+. For a list of all such differences, see -\cite{amslatex}. - -Another case of conflicting ideas on what font-change commands should -do is inside math mode. Under NFSS, -\verb+\bf+ has no effect inside math mode---you need to say -\verb+$\mathbf{xyz}$+, for example. The \verb+geom+ style will -print a warning on your terminal if it sees \verb|\bf| in math mode. - -In addition to the math-mode commands \verb+\mathbf+, \verb+\mathrm+ and -\verb+\mathit+, the \verb+geom+ style defines \verb+\mathss+ and -\verb+\mathtt+ as the math mode counterparts of \verb+\sf+ (sans-serif) -and \verb+\tt+ (typewriter type). - -Support for Fraktur (``gothic'') and blackboard-bold fonts is -provided, as well as for the fonts \verb+msam+ and \verb+msbm+, which -contain a plethora of mathematical symbols. This is all thanks to the -AMS, and you should turn to the \amslatex/ distribution -\cite{amslatex} if your site lacks the fonts themselves or the -prerequisite auxiliary files \verb+amsfonts.sty+ and -\verb+amssymb.sty+. - -\section{The Index, the Table of Contents and the Glossary} - -The basic command for putting something into the index is -\verb+\index+, as in standard \latex/. But \verb+\index+ does not -print its argument. To index a word that actually appears in the text -say \verb+\ix{...}+. To index mathematical notation say -\verb+\ixn$...$+ or \verb+\ixninv$...$+, depending on whether the -contents should appear or not. And, just for symmetry, you can also -use \verb+\ixinv+, which equals \verb+\index+: -$$ -\vbox{\halign to .7\hsize{\tabskip=0pt plus 1fil -#\hfil &&{\tt \char`\\ #}\hfil\cr -&\omit Text&\omit Notation\cr -\noalign{\medskip} -Visible&ix&ixn\cr -Invisible&ixinv&ixninv\cr}} -$$ - -An index entry is made automatically for any \verb+\label+ or -\verb+\ref+ command. In the second case the entry goes into the index -file preceded by a \verb+%+. - -Remember that, unless you have issued the -command \verb|\autolabelfalse|, there are lots of situations in which -a label, and consequently an index entry, is generated automatically: -in particular, this happens for each sectioning command -(\Fullref{Labels and Cross-References}) and for each tagged -theorem, lemma, and so on (\Fullref{Theorems and Their Friends}). -This provides a -wealth of index entries, which later you can winnow out -semi-automatically, if necessary, since entries of this sort appear in -quotation marks, preceded by their type. You can see all the entries -that a given page contributes to the index by looking at the small -print on the top left of the page when proofing mode is on -(\Fullref{Proofing Aids}). - -\begin{wizard} -The \verb+geom+ style modifies the \verb+\theindex+ format of standard -\latex/ so that the index is printed in smaller type. Moreover, it -achieves a double-column format not by using standard \latex/'s -\verb+\twocolumn+ command, which starts a new page, but rather -\ix{Frank Mittelbach}'s \verb+multicols+ environment \cite{Mittelbach}, -which is implemented in the file \verb+multicol.sty+. Using this -environment you can have single-column and double-column text on the -same page. If you want to add an explanation before the index, for -example, you might say something like this: -\begin{verbatim} -\begin{theindex} -\null % this avoids what seems to be a bug in multicol.sty -\end{multicols} % end double column format started by \begin{theindex} - -Numbers in parentheses refer to pages where the entry should be -discussed but isn't, due to laziness on the author's part. - -\begin{multicols}2 % restart double column format -\item aardvark... -\end{theindex} -\end{verbatim} -\end{wizard} - -Support for a glossary is somewhat more extensive than in standard -\latex/. You can mark a word as a glossary entry by saying -\verb+\glo{...}+; this causes a \glo{dagger} to be placed before the -word, and an index entry for the word to be generated in the file {\it -jobname}\verb+.idx+, preceded by \verb+\dag+. - -\begin{wizard} -Note that the -\verb+geom+ style does not use a separate {\it jobname}\verb+.glo+ -file; although standard \latex/'s \verb+\glossary+ command is still -available if you insist in writing entries to that file, this command -has not been made robust in the way that \verb+\index+ and \verb+\label+ -have. (See \Fullref{No More Fragile Commands}.) -\end{wizard} - -The glossary itself is -delimited by \verb+\begin{theglossary}+ and \verb+\end{theglossary}+. -Glossary entries start like this: -% -\begin{verbatim} -\entry{doohickey} ... -\entry[\cite{...}]{thingamajig} ... -\end{verbatim} -% -The entry name is printed in boldface, followed by a period. -The contents of the optional argument are printed immediately after -the entry name, before the period. The comments made above about -double-column formatting apply to the glossary as well. - -The table of contents is treated in much the same way as in standard -\latex/, but there is one important difference: starred sectioning -commands, like \verb+\section*+, do show up in the table of contents, -unless you've said \verb+\starredcontentsfalse+. -Since one generally doesn't want the table of contents -to include an entry for the table of contents itself, -the definition of \verb+\tableofcontents+ in -\verb+geomart.sty+ starts like this: -\begin{verbatim} -\def\tableofcontents{{\starredcontentsfalse\section*{Contents}...}} -\end{verbatim} -The extra pair of braces limits the action of -\verb+\starredcontentsfalse+ to this entry only. - -\section{Proofing Aids} - -The \verb+geom+ style provides a number of proofing aids that you can -turn on and off by saying \verb+\proofingtrue+ and -\verb+\proofingfalse+. The default is for proofing to be on. These -facilities are independent of standard \latex/'s \verb+draft+ option -to the \verb+book+ and \verb+article+ style, whose only effect is to -make overfull box markers visible. - -If you use \latex/'s \verb+\includeonly+ mechanism \cite[76]{Lamport}, -you can print your final version by passing the macro -\verb+\noproofing+ as the argument to \verb+\includeonly+. This not -only turns off all proofing aids, but also prevents \latex/ from -starting a new page for each input file. (Naturally, the page breaks -will likely be different because of that, so you'll need to run the -job twice to get cross-references right.) - -\begin{wizard} -Normally you have two lines like this in the main file for your -document: -\begin{verbatim} -\typein[\sectionstoinclude]{Enter the sections that should be processed: } -\includeonly{\sectionstoinclude} -\end{verbatim} -so you can type in the sections to be included from the terminal, -without having to modify the source file. The macro -\verb+\noproofing+ works in this mode, too. -\end{wizard} - -By the way, if you are using the \verb+book+ style, the construction -\verb+\chap1{345}+ expands to -\begin{verbatim} -chap1/1.3,chap1/1.4,chap1/1.5 -\end{verbatim} -This has nothing to do with proofing, but it provides a useful shorthand -for use with \verb+\includeonly+. -Braces should be used around a section or chapter number having more -than one digit. - -In proofing mode you get, to the left of the main text, a column in -tiny print with all the index entries contributed by that page. This -includes automatic entries with their respective prefixes (see -\Fullref{The Index, the Table of Contents and the Glossary}). - -If you are in proof mode and the macros \verb+\leftfoot+ and -\verb+\rightfoot+ are defined, they will be typeset flush left and -flush right on the footline. These macros are often defined to -contain information about draft version, date of last modification, -etc., which can be updated automatically. - -\begin{wizard} -Near the top of the -source file for this document, I wrote the lines -\begin{verbatim} -\def\leftfoot{\RCSstring$Revision: 1.12 $} -\def\rightfoot{\RCSstring$Date: 95/07/03 15:57:22 $} -\def\RCSstring$#1 ${#1} -\end{verbatim} -The first two lines are automatically updated by the UNIX utility -\ix{RCS} (Revision Control System) whenever I check the file in or -out. RCS requires that the keywords \verb+Revision+, \verb+Date+ and -so on be found within dollar signs, and it tacks on a blank before the -closing \verb+$+ for good measure. The \verb+\RCSstring+ macro -eliminates this extraneous stuff. -\end{wizard} - -\section*{Appendix: {\mediumseries \tt mathfig}---A System for Doing Typesetting in -Mathematica} - -\begin{warning} -The software described in this Appendix depends on Mathematica -\cite{wolfram}. I make no representation whatsoever concerning its -performance. Although I have used \verb+mathfig+ under Mathematica -versions 1.2, 2.0 and 2.1, I emphasize that \verb+mathfig+ may fail to -work as described here and that I take no responsibility for such -failure. -\end{warning} - -The \verb+mathfig+ program, for use on UNIX systems, takes a -Mathematica source file \verb+foo.m+ and calls Mathematica to create -a PostScript file \verb+foo.ps+. -Then \verb+mathfig+ postprocesses \verb+foo.ps+ to -take out the PostScript labels putting the same information in a file -\verb+foo.lab+ that can be read later by \latex/, as explained in -\Fullref{PostScript Figures}. The usage of this program is the following: -$$ -\hbox to \hsize{\small\hskip 1em -{\tt mathfig} [ {\tt -d} {\it directory} ] [ {\tt -i} {\it initfile} ] -{\it files}\hfil} -$$ -The \verb+-d+ option makes all file names relative to the specified -directory. The \verb+-i+ option tells Mathematica to read an -initialization file. Any number of files can be passed as subsequent -argument; \verb+\mathfig+ processes one at a time, starting a new -Mathematica session each time. - -The steps performed by \verb+mathfig+ when processing the file -\verb+foo.m+ are the following. It calls \verb+math+ and gives it the -commands \verb+Get["+{\it initfile}\verb+"]+ (if an initialization -file was specified) and \verb+Get["foo.m"]+. The result of -\verb+Get["foo.m"]+ should be an expression with head \verb+Graphics+ -or \verb+Graphics3D+. This expression is passed to \verb+Display+, -with output sent to the filter \verb+geomfix+; this filter is -analogous to the \verb+psfix+ program supplied with Mathematica. The -output of \verb+geomfix+ is further processed to create the files -\verb+foo.ps+ and \verb+foo.lab+. This last step is performed by -\verb+mathlabels+, a \verb+perl+ program. (\verb+perl+ is a widely -used UNIX utility, and it should be available at your site. If -\verb+mathfig+ claims that \verb+mathlabels+ cannot be found, it may -be because \verb+perl+ is not where \verb+mathfig+ expects to find it; -see the end of \Fullref{Installation}.) - -By default, \verb+\mathfig+ creates a figure two inches high and five -inches wide. A different height can be specified by including the -assignment \verb+$height=+{\it height} in the Mathematica source file, -where {\it height} is a number specifying the height in inches. You -can also say \verb+$width=+{\it width}. The reason to put these numbers -in the source file, rather than choosing them at run time, is -archival: in this way the output is entirely determined by the -contents of the source file. - -\begin{wizard} -Furthermore, if you assign values to the variables \verb+$xlo+, -\verb+$xhi+, \verb+$ylo+ and \verb+$yhi+, the figure produced by -Mathematica will be clipped to a window with the given boundaries, and -rescaled so as to fit in a box of the given height and width. For -example, setting \verb+$xlo=$ylo=.1+ and \verb+$xhi=$yhi=.9+ will trim -10\% off the size of the box around each edge, and the remaining -graphics will be rescaled by a factor of $1/(.9-.1)=1.25$. Under -Mathematica 1.2, this is the only way I know to make a 3D-graphics -object occupy the whole bounding box. Unfortunately the values of -\verb+$xlo+ and so on have to be determined by trial and error. - -The symbols \verb+$height+, \verb+$width+, \verb+$xlo+, \verb=$ylo=, -\verb+$xhi+, \verb=$yhi= and \verb=$Def= should not be used in your -Mathematica source file except with the meanings described above. -(\verb=$Def= is used internally.) - -When Mathematica generates a picture with labels, the scaling -computations are implicit in the resulting PostScript code, and they -take into account the dimensions of the labels present in the code. -Thus the graph generated by -% -\begin{verbatim} -Plot[x,{x,0,1}] -\end{verbatim} -% -looks a bit smaller on the screen than the one generated by -% -\begin{verbatim} -Plot[x,{x,0,1},Ticks->False] -\end{verbatim} -% -because the first has to accomodate labels along the axes, in the same -size window. However, when you run \verb+mathfig+, the labels are -taken out of the PostScript file, and therefore don't have any effect -on the scaling of the picture. The \verb+mathfig+ output for the two -commands above would be scaled by exactly the same amount, and the -\TeX\ labels generated for the first command would stick out of the -bounding box a little bit, just as they do in \Fullref{PStorus}. -\end{wizard} - -\bibliography{manual} -\bibliographystyle{alpha} -\vfil\eject - -\begin{theindex} -\end{theindex} - -\end{document} - -% $Log: manual.tex,v $ -%Revision 1.12 95/07/03 15:57:22 levy -%update for latex2e -% -%Revision 1.11 1993/09/16 22:17:03 levy -%\tt -> \mediumseries\tt in section heads -% -%Revision 1.10 92/08/25 19:55:41 levy -%typo -% -%Revision 1.9 92/08/03 13:47:49 levy -%*** empty log message *** -% -%Revision 1.8 92/07/22 13:32:23 levy -%post - TUG meeting -% -%Revision 1.7 92/07/17 13:32:29 levy -%typos -% -%Revision 1.6 92/07/17 13:27:50 levy -%*** empty log message *** -% -%Revision 1.5 92/07/11 21:26:42 levy -%*** empty log message *** -% -%Revision 1.4 92/04/02 22:45:56 levy -%*** empty log message *** -% -%Revision 1.3 92/04/02 09:58:12 levy -%*** empty log message *** -% -%Revision 1.2 92/04/01 18:57:39 levy -%*** empty log message *** -% -%Revision 1.1 1992/03/19 18:08:13 levy -%Initial revision -% diff --git a/Master/texmf-dist/dvips/geomsty/illustrator.pro b/Master/texmf-dist/dvips/geomsty/illustrator.pro deleted file mode 100644 index 59fd05cfd75..00000000000 --- a/Master/texmf-dist/dvips/geomsty/illustrator.pro +++ /dev/null @@ -1,872 +0,0 @@ -%%BeginResource: procset Adobe_packedarray 2.0 0 -%%Title: (Packed Array Operators) -%%Version: 2.0 -%%CreationDate: (8/2/90) () -%%Copyright: ((C) 1987-1990 Adobe Systems Incorporated All Rights Reserved) - -userdict /Adobe_packedarray 5 dict dup begin put -/initialize % - initialize - -{ -/packedarray where - { - pop - } - { - Adobe_packedarray begin - Adobe_packedarray - { - dup xcheck - { - bind - } if - userdict 3 1 roll put - } forall - end - } ifelse -} def -/terminate % - terminate - -{ -} def -/packedarray % arguments count packedarray array -{ -array astore readonly -} def -/setpacking % boolean setpacking - -{ -pop -} def -/currentpacking % - setpacking boolean -{ -false -} def -currentdict readonly pop end -%%EndResource -%%BeginResource: procset Adobe_cmykcolor 1.1 0 -%%Title: (CMYK Color Operators) -%%Version: 1.1 -%%CreationDate: (1/23/89) () -%%Copyright: ((C) 1987-1990 Adobe Systems Incorporated All Rights Reserved) - -currentpacking true setpacking -userdict /Adobe_cmykcolor 4 dict dup begin put -/initialize % - initialize - -{ -/setcmykcolor where - { - pop - } - { - userdict /Adobe_cmykcolor_vars 2 dict dup begin put - /_setrgbcolor - /setrgbcolor load def - /_currentrgbcolor - /currentrgbcolor load def - Adobe_cmykcolor begin - Adobe_cmykcolor - { - dup xcheck - { - bind - } if - pop pop - } forall - end - end - Adobe_cmykcolor begin - } ifelse -} def -/terminate % - terminate - -{ -currentdict Adobe_cmykcolor eq - { - end - } if -} def -/setcmykcolor % cyan magenta yellow black setcmykcolor - -{ -1 sub 4 1 roll -3 - { - 3 index add neg dup 0 lt - { - pop 0 - } if - 3 1 roll - } repeat -Adobe_cmykcolor_vars /_setrgbcolor get exec -pop -} def -/currentcmykcolor % - currentcmykcolor cyan magenta yellow black -{ -Adobe_cmykcolor_vars /_currentrgbcolor get exec -3 - { - 1 sub neg 3 1 roll - } repeat -0 -} def -currentdict readonly pop end -setpacking - -%%EndResource -%%BeginResource: procset Adobe_cshow 1.1 0 -%%Title: (cshow Operator) -%%Version: 1.1 -%%CreationDate: (1/23/89) () -%%Copyright: ((C) 1987-1990 Adobe Systems Incorporated All Rights Reserved) - -currentpacking true setpacking -userdict /Adobe_cshow 3 dict dup begin put -/initialize % - initialize - -{ -/cshow where - { - pop - } - { - userdict /Adobe_cshow_vars 1 dict dup begin put - /_cshow % - _cshow proc - {} def - Adobe_cshow begin - Adobe_cshow - { - dup xcheck - { - bind - } if - userdict 3 1 roll put - } forall - end - end - } ifelse -} def -/terminate % - terminate - -{ -} def -/cshow % proc string cshow - -{ -exch -Adobe_cshow_vars - exch /_cshow - exch put - { - 0 0 Adobe_cshow_vars /_cshow get exec - } forall -} def -currentdict readonly pop end -setpacking - -%%EndResource -%%BeginResource: procset Adobe_customcolor 1.0 0 -%%Title: (Custom Color Operators) -%%Version: 1.0 -%%CreationDate: (5/9/88) () -%%Copyright: ((C) 1987-1990 Adobe Systems Incorporated All Rights Reserved) - -currentpacking true setpacking -userdict /Adobe_customcolor 5 dict dup begin put -/initialize % - initialize - -{ -/setcustomcolor where - { - pop - } - { - Adobe_customcolor begin - Adobe_customcolor - { - dup xcheck - { - bind - } if - pop pop - } forall - end - Adobe_customcolor begin - } ifelse -} def -/terminate % - terminate - -{ -currentdict Adobe_customcolor eq - { - end - } if -} def -/findcmykcustomcolor % cyan magenta yellow black name findcmykcustomcolor object -{ -5 packedarray -} def -/setcustomcolor % object tint setcustomcolor - -{ -exch -aload pop pop -4 - { - 4 index mul 4 1 roll - } repeat -5 -1 roll pop -setcmykcolor -} def -/setoverprint % boolean setoverprint - -{ -pop -} def -currentdict readonly pop end -setpacking - -%%EndResource -%%BeginResource: procset Adobe_IllustratorA_AI3 1.0 1 -%%Title: (Adobe Illustrator (R) Version 3.0 Abbreviated Prolog) -%%Version: 1.0 -%%CreationDate: (7/22/89) () -%%Copyright: ((C) 1987-1990 Adobe Systems Incorporated All Rights Reserved) - -currentpacking true setpacking -userdict /Adobe_IllustratorA_AI3 61 dict dup begin put -% initialization -/initialize % - initialize - -{ -% 47 vars, but leave slack of 10 entries for custom Postscript fragments -userdict /Adobe_IllustratorA_AI3_vars 57 dict dup begin put - -% paint operands -/_lp /none def -/_pf {} def -/_ps {} def -/_psf {} def -/_pss {} def -/_pjsf {} def -/_pjss {} def -/_pola 0 def -/_doClip 0 def - -% paint operators -/cf currentflat def % - cf flatness - -% typography operands -/_tm matrix def -/_renderStart [/e0 /r0 /a0 /o0 /e1 /r1 /a1 /i0] def -/_renderEnd [null null null null /i1 /i1 /i1 /i1] def -/_render -1 def -/_rise 0 def -/_ax 0 def % x character spacing (_ax, _ay, _cx, _cy follows awidthshow naming convention) -/_ay 0 def % y character spacing -/_cx 0 def % x word spacing -/_cy 0 def % y word spacing -/_leading [0 0] def -/_ctm matrix def -/_mtx matrix def -/_sp 16#020 def -/_hyphen (-) def -/_fScl 0 def -/_cnt 0 def -/_hs 1 def -/_nativeEncoding 0 def -/_useNativeEncoding 0 def -/_tempEncode 0 def -/_pntr 0 def -/_tDict 2 dict def - -% typography operators -/Tx {} def -/Tj {} def - -% compound path operators -/CRender {} def - -% printing -/_AI3_savepage {} def - -% color operands -/_gf null def -/_cf 4 array def -/_if null def -/_of false def -/_fc {} def -/_gs null def -/_cs 4 array def -/_is null def -/_os false def -/_sc {} def -/_i null def -Adobe_IllustratorA_AI3 begin -Adobe_IllustratorA_AI3 - { - dup xcheck - { - bind - } if - pop pop - } forall -end -end -Adobe_IllustratorA_AI3 begin -Adobe_IllustratorA_AI3_vars begin -newpath -} def -/terminate % - terminate - -{ -end -end -} def -% definition operators -/_ % - _ null -null def -/ddef % key value ddef - -{ -Adobe_IllustratorA_AI3_vars 3 1 roll put -} def -/xput % key value literal xput - -{ -dup load dup length exch maxlength eq - { - dup dup load dup - length 2 mul dict copy def - } if -load begin def end -} def -/npop % integer npop - -{ - { - pop - } repeat -} def -% marking operators -/sw % ax ay string sw x y -{ -dup length exch stringwidth -exch 5 -1 roll 3 index 1 sub mul add -4 1 roll 3 1 roll 1 sub mul add -} def -/swj % cx cy fillchar ax ay string swj x y -{ -dup 4 1 roll -dup length exch stringwidth -exch 5 -1 roll 3 index 1 sub mul add -4 1 roll 3 1 roll 1 sub mul add -6 2 roll /_cnt 0 ddef -{1 index eq {/_cnt _cnt 1 add ddef} if} forall pop -exch _cnt mul exch _cnt mul 2 index add 4 1 roll 2 index add 4 1 roll pop pop -} def -/ss % ax ay string matrix ss - -{ -4 1 roll - { % matrix ax ay char 0 0 {proc} - - 2 npop - (0) exch 2 copy 0 exch put pop - gsave - false charpath currentpoint - 4 index setmatrix - stroke - grestore - moveto - 2 copy rmoveto - } exch cshow -3 npop -} def -/jss % cx cy fillchar ax ay string matrix jss - -{ -4 1 roll - { % cx cy fillchar matrix ax ay char 0 0 {proc} - - 2 npop - (0) exch 2 copy 0 exch put - gsave - _sp eq - { - exch 6 index 6 index 6 index 5 -1 roll widthshow - currentpoint - } - { - false charpath currentpoint - 4 index setmatrix stroke - }ifelse - grestore - moveto - 2 copy rmoveto - } exch cshow -6 npop -} def - -% path operators -/sp % ax ay string sp - -{ - { - 2 npop (0) exch - 2 copy 0 exch put pop - false charpath - 2 copy rmoveto - } exch cshow -2 npop -} def -/jsp % cx cy fillchar ax ay string jsp - -{ - { % cx cy fillchar ax ay char 0 0 {proc} - - 2 npop - (0) exch 2 copy 0 exch put - _sp eq - { - exch 5 index 5 index 5 index 5 -1 roll widthshow - } - { - false charpath - }ifelse - 2 copy rmoveto - } exch cshow -5 npop -} def - -% path construction operators -/pl % x y pl x y -{ -transform -0.25 sub round 0.25 add exch -0.25 sub round 0.25 add exch -itransform -} def -/setstrokeadjust where - { - pop true setstrokeadjust - /c % x1 y1 x2 y2 x3 y3 c - - { - curveto - } def - /C - /c load def - /v % x2 y2 x3 y3 v - - { - currentpoint 6 2 roll curveto - } def - /V - /v load def - /y % x1 y1 x2 y2 y - - { - 2 copy curveto - } def - /Y - /y load def - /l % x y l - - { - lineto - } def - /L - /l load def - /m % x y m - - { - moveto - } def - } - {%else - /c - { - pl curveto - } def - /C - /c load def - /v - { - currentpoint 6 2 roll pl curveto - } def - /V - /v load def - /y - { - pl 2 copy curveto - } def - /Y - /y load def - /l - { - pl lineto - } def - /L - /l load def - /m - { - pl moveto - } def - }ifelse - -% graphic state operators -/d % array phase d - -{ -setdash -} def -/cf {} def % - cf flatness -/i % flatness i - -{ -dup 0 eq - { - pop cf - } if -setflat -} def -/j % linejoin j - -{ -setlinejoin -} def -/J % linecap J - -{ -setlinecap -} def -/M % miterlimit M - -{ -setmiterlimit -} def -/w % linewidth w - -{ -setlinewidth -} def - -% path painting operators -/H % - H - -{} def -/h % - h - -{ -closepath -} def -/N % - N - -{ -_pola 0 eq - { - _doClip 1 eq {clip /_doClip 0 ddef} if - newpath - } - { - /CRender {N} ddef - }ifelse -} def -/n % - n - -{N} def -/F % - F - -{ -_pola 0 eq - { - _doClip 1 eq - { - gsave _pf grestore clip newpath /_lp /none ddef _fc - /_doClip 0 ddef - } - { - _pf - }ifelse - } - { - /CRender {F} ddef - }ifelse -} def -/f % - f - -{ -closepath -F -} def -/S % - S - -{ -_pola 0 eq - { - _doClip 1 eq - { - gsave _ps grestore clip newpath /_lp /none ddef _sc - /_doClip 0 ddef - } - { - _ps - }ifelse - } - { - /CRender {S} ddef - }ifelse -} def -/s % - s - -{ -closepath -S -} def -/B % - B - -{ -_pola 0 eq - { - _doClip 1 eq % F clears _doClip - gsave F grestore - { - gsave S grestore clip newpath /_lp /none ddef _sc - /_doClip 0 ddef - } - { - S - }ifelse - } - { - /CRender {B} ddef - }ifelse -} def -/b % - b - -{ -closepath -B -} def -/W % - W - -{ -/_doClip 1 ddef -} def -/* % - [string] * - -{ -count 0 ne - { - dup type (stringtype) eq {pop} if - } if -_pola 0 eq {newpath} if -} def - -% group operators -/u % - u - -{} def -/U % - U - -{} def -/q % - q - -{ -_pola 0 eq {gsave} if -} def -/Q % - Q - -{ -_pola 0 eq {grestore} if -} def -/*u % - *u - -{ -_pola 1 add /_pola exch ddef -} def -/*U % - *U - -{ -_pola 1 sub /_pola exch ddef -_pola 0 eq {CRender} if -} def -/D % polarized D - -{pop} def -/*w % - *w - -{} def -/*W % - *W - -{} def - -% place operators -/` % matrix llx lly urx ury string ` - -{ -/_i save ddef -6 1 roll 4 npop -concat -userdict begin -/showpage {} def -false setoverprint -pop -} def -/~ % - ~ - -{ -end -_i restore -} def - -% color operators -/O % flag O - -{ -0 ne -/_of exch ddef -/_lp /none ddef -} def -/R % flag R - -{ -0 ne -/_os exch ddef -/_lp /none ddef -} def -/g % gray g - -{ -/_gf exch ddef -/_fc -{ -_lp /fill ne - { - _of setoverprint - _gf setgray - /_lp /fill ddef - } if -} ddef -/_pf -{ -_fc -fill -} ddef -/_psf -{ -_fc -ashow -} ddef -/_pjsf -{ -_fc -awidthshow -} ddef -/_lp /none ddef -} def -/G % gray G - -{ -/_gs exch ddef -/_sc -{ -_lp /stroke ne - { - _os setoverprint - _gs setgray - /_lp /stroke ddef - } if -} ddef -/_ps -{ -_sc -stroke -} ddef -/_pss -{ -_sc -ss -} ddef -/_pjss -{ -_sc -jss -} ddef -/_lp /none ddef -} def -/k % cyan magenta yellow black k - -{ -_cf astore pop -/_fc -{ -_lp /fill ne - { - _of setoverprint - _cf aload pop setcmykcolor - /_lp /fill ddef - } if -} ddef -/_pf -{ -_fc -fill -} ddef -/_psf -{ -_fc -ashow -} ddef -/_pjsf -{ -_fc -awidthshow -} ddef -/_lp /none ddef -} def -/K % cyan magenta yellow black K - -{ -_cs astore pop -/_sc -{ -_lp /stroke ne - { - _os setoverprint - _cs aload pop setcmykcolor - /_lp /stroke ddef - } if -} ddef -/_ps -{ -_sc -stroke -} ddef -/_pss -{ -_sc -ss -} ddef -/_pjss -{ -_sc -jss -} ddef -/_lp /none ddef -} def -/x % cyan magenta yellow black name gray x - -{ -/_gf exch ddef -findcmykcustomcolor -/_if exch ddef -/_fc -{ -_lp /fill ne - { - _of setoverprint - _if _gf 1 exch sub setcustomcolor - /_lp /fill ddef - } if -} ddef -/_pf -{ -_fc -fill -} ddef -/_psf -{ -_fc -ashow -} ddef -/_pjsf -{ -_fc -awidthshow -} ddef -/_lp /none ddef -} def -/X % cyan magenta yellow black name gray X - -{ -/_gs exch ddef -findcmykcustomcolor -/_is exch ddef -/_sc -{ -_lp /stroke ne - { - _os setoverprint - _is _gs 1 exch sub setcustomcolor - /_lp /stroke ddef - } if -} ddef -/_ps -{ -_sc -stroke -} ddef -/_pss -{ -_sc -ss -} ddef -/_pjss -{ -_sc -jss -} ddef -/_lp /none ddef -} def - -% locked object operator -/A % value A - -{ -pop -} def - -currentdict readonly pop end -setpacking - -% annotate page operator -/annotatepage -{ -} def -%%EndResource - diff --git a/Master/texmf-dist/dvips/geomsty/math.pro b/Master/texmf-dist/dvips/geomsty/math.pro deleted file mode 100644 index e05e6c4bd3f..00000000000 --- a/Master/texmf-dist/dvips/geomsty/math.pro +++ /dev/null @@ -1,1752 +0,0 @@ -% This file is adapted from the PostScript code that gets -% included by the psfix filter, provided with Mathematica. -% The only differences are the addition of the first two lines -% (MyDict) and of the abbreviations at the end (starting with /Ma). - -%$Revision: 1.3 $ -%$Date: 95/06/27 12:16:53 $ - -/MyDict 200 dict def -MyDict begin - -% The externally visible functions are: -% MathPictureStart- start page. -% MathPictureEnd - finish off page. -% MathSubStart - start a sub-page. -% MathSubEnd - finish off a sub-page. -% Mdot - draw a dot. -% Mtetra - draw a filled tetragon. -% Metetra - draw a filled tetragon with black edges. -% Mistroke - intermediate stroke of multi-stroke line/curve. -% Mfstroke - final stroke of multi-stroke line/curve. -% Msboxa - compute coordinates of text bounding box. -% Mshowa - plot characters. -% MathScale - compute scaling info to contain array of points. - - -% The following are only for backwards compatibility with earlier versions -% of Mathematica: -% Mpstart - identical to MathPictureStart. -% Mpend - identical to MathPictureEnd. -% Mscale - like MathScale but without user coordinate info. - -/Mpstart { % - Mpstart - - MathPictureStart -} bind def - -/Mpend { % - Mpend - - MathPictureEnd -} bind def - -/Mscale { % [pnts] Mscale - - 0 1 0 1 % [pnts] xbias xscale ybias yscale - 5 -1 roll % xbias xscale ybias yscale [pnts] - MathScale % - -} bind def - -%start of ISOLatin1 stuff - -/ISOLatin1Encoding dup where -{ pop pop } -{ -[ -/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef -/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef -/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef -/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef -/space /exclam /quotedbl /numbersign /dollar /percent /ampersand /quoteright -/parenleft /parenright /asterisk /plus /comma /minus /period /slash -/zero /one /two /three /four /five /six /seven -/eight /nine /colon /semicolon /less /equal /greater /question -/at /A /B /C /D /E /F /G -/H /I /J /K /L /M /N /O -/P /Q /R /S /T /U /V /W -/X /Y /Z /bracketleft /backslash /bracketright /asciicircum /underscore -/quoteleft /a /b /c /d /e /f /g -/h /i /j /k /l /m /n /o -/p /q /r /s /t /u /v /w -/x /y /z /braceleft /bar /braceright /asciitilde /.notdef -/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef -/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef -/dotlessi /grave /acute /circumflex /tilde /macron /breve /dotaccent -/dieresis /.notdef /ring /cedilla /.notdef /hungarumlaut /ogonek /caron -/space /exclamdown /cent /sterling /currency /yen /brokenbar /section -/dieresis /copyright /ordfeminine /guillemotleft -/logicalnot /hyphen /registered /macron -/degree /plusminus /twosuperior /threesuperior -/acute /mu /paragraph /periodcentered -/cedilla /onesuperior /ordmasculine /guillemotright -/onequarter /onehalf /threequarters /questiondown -/Agrave /Aacute /Acircumflex /Atilde /Adieresis /Aring /AE /Ccedilla -/Egrave /Eacute /Ecircumflex /Edieresis /Igrave /Iacute /Icircumflex /Idieresis -/Eth /Ntilde /Ograve /Oacute /Ocircumflex /Otilde /Odieresis /multiply -/Oslash /Ugrave /Uacute /Ucircumflex /Udieresis /Yacute /Thorn /germandbls -/agrave /aacute /acircumflex /atilde /adieresis /aring /ae /ccedilla -/egrave /eacute /ecircumflex /edieresis /igrave /iacute /icircumflex /idieresis -/eth /ntilde /ograve /oacute /ocircumflex /otilde /odieresis /divide -/oslash /ugrave /uacute /ucircumflex /udieresis /yacute /thorn /ydieresis -] def -} ifelse - -/MFontDict 50 dict def - -/MStrCat % string1 string2 MStrCat string -{ - exch % s2 s1 - dup length % s2 s1 len - 2 index length add % s2 s1 len - string % s2 s1 s - dup 3 1 roll % s2 s s1 s - copy % s2 s s1 - length % s2 s where - exch dup % s2 where s s - 4 2 roll exch % s s where s2 - putinterval -} def - -/MCreateEncoding % name encoding MCreateEncoding newname -{ - % get base name - 1 index % name encoding name - - % concatenate (-) and encoding to the name - 255 string cvs - (-) MStrCat - 1 index MStrCat - cvn exch % basename newname encoding - - % make encoding name - - (Encoding) MStrCat - cvn dup where - { - exch get - } - { - pop - StandardEncoding - } ifelse - 3 1 roll % vector basename newname - - % make the font if we haven't before - dup MFontDict exch known not - { - 1 index findfont - dup length dict - begin - {1 index /FID ne - {def} - {pop pop} - ifelse} forall - /Encoding 3 index - def - currentdict - end - 1 index exch definefont pop - - MFontDict 1 index - null put - } - if - - exch pop % vector newname - exch pop % newname -} def - -/ISOLatin1 { (ISOLatin1) MCreateEncoding } def -/ISO8859 { (ISOLatin1) MCreateEncoding } def - -%end of ISOLatin1 stuff - -% -% Include old font names for backward compatibility -% -/Mcopyfont { % procedure to copy font - dup - maxlength - dict - exch - { - 1 index - /FID - eq - { - pop pop - } - { - 2 index - 3 1 roll - put - } - ifelse - } - forall -} def - -/Plain /Courier findfont Mcopyfont definefont pop -/Bold /Courier-Bold findfont Mcopyfont definefont pop -/Italic /Courier-Oblique findfont Mcopyfont definefont pop - -% Set up for the start of a page. -/MathPictureStart { % - MathPictureStart - - gsave % - - Mtransform % possibly rotate to landscape mode - Mlmarg % left_margin - Mbmarg % bottom_margin - translate % - - Mwidth % init_width - Mlmarg Mrmarg add % init_width lmarg+rmarg - sub % true_width - /Mwidth exch def % - Mheight % init_height - Mbmarg Mtmarg add % init_height tmarg+bmarg - sub % true_height - /Mheight exch def - /Mtmatrix % /Mtmatrix - matrix currentmatrix % /Mtmatrix text_matrix - def - /Mgmatrix % /Mgmatrix - matrix currentmatrix % /Mgmatrix graphics_matrix - def % - -} bind def - - -% Finish off a page. -/MathPictureEnd { - grestore -} bind def - -%MFill fills the drawing area with the current color. -/MFill { - 0 0 moveto - Mwidth 0 lineto - Mwidth Mheight lineto - 0 Mheight lineto - fill -} bind def - -% xmin xmax ymin ymax MPlotRegion alters the origin, Mwidth and Mheight -% so that the picture fills the altered region -/MPlotRegion { % xmin xmax ymin ymax MPlotRegion - 3 index % xmin xmax ymin ymax xmin - Mwidth mul % xmin xmax ymin ymax xmin_pos - 2 index % xmin xmax ymin ymax xmin_pos ymin - Mheight mul % xmin xmax ymin ymax xmin_pos ymin_pos - translate % xmin xmax ymin ymax - exch sub % xmin xmax ymax-ymin - Mheight mul % xmin xmax new_height - /Mheight - exch def % xmin xmax - exch sub % xmax-xmin - Mwidth mul % new-width - /Mwidth - exch def -} bind def - -% Given a rectangle, set it up as a sub-picture. -/MathSubStart { % xmin ymin xmax ymax MathSubStart <saved state(8)> - Momatrix - Mgmatrix Mtmatrix - Mwidth Mheight % xmin ymin xmax ymax <ss(8)> - 7 -2 roll % xmin ymin <ss(8)> xmax ymax - moveto % xmin ymin <ss(8)> - Mtmatrix setmatrix % xmin ymin <ss(8)> - currentpoint % xmin ymin <ss(8)> xmax(t) ymax(t) - Mgmatrix setmatrix % xmin ymin <ss(8)> xmax(t) ymax(t) - 9 -2 roll % <ss(8)> xmax(t) ymax(t) xmin ymin - moveto % <ss(8)> xmax(t) ymax(t) - Mtmatrix setmatrix % <ss(8)> xmax(t) ymax(t) - currentpoint % <ss(8)> xmax(t) ymax(t) xmin(t) ymin(t) - 2 copy translate % <ss(8)> xmax ymax xmin ymin - /Mtmatrix matrix currentmatrix def - 3 -1 roll % <ss(8)> xmax xmin ymin ymax - exch sub % <ss(8)> xmax xmin height - /Mheight exch def % <ss(8)> xmax xmin - sub % <ss(8)> width - /Mwidth exch def % <ss(8)> -} bind def - - -% Restore the saved state left by the matching MathSubStart. -% Note, we also leave with the new Mgmatrix as the current matrix. -/MathSubEnd { % gmat tmat lm rm bm tm w h MathSubStart - - /Mheight exch def % gmat tmat lm rm bm tm w - /Mwidth exch def % gmat tmat lm rm bm tm - /Mtmatrix exch def % gmat - dup setmatrix % gmat - /Mgmatrix exch def % - - /Momatrix exch def % - -} bind def - - -% Given a point, draw a dot. -/Mdot { % x y Mdot - - moveto % - - 0 0 rlineto % - - stroke % - -} bind def - - -% Given 4 points, draw the corresponding filled tetragon. -/Mtetra { % x0 y0 x1 y1 x2 y2 x3 y3 Mtetra - - moveto % x0 y0 x1 y1 x2 y2 - lineto % x0 y0 x1 y1 - lineto % x0 y0 - lineto % - - fill % - -} bind def - - -% Given 4 points, draw the corresponding filled tetragon with black edges. -% Note, this leaves the gray level at 0 (for compatibility with the old -% C code. -/Metetra { % x0 y0 x1 y1 x2 y2 x3 y3 Metetra - - moveto % x0 y0 x1 y1 x2 y2 - lineto % x0 y0 x1 y1 - lineto % x0 y0 - lineto % - - closepath % - - gsave % - - fill % - - grestore % - - 0 setgray % - - stroke % - -} bind def - - -% Mistroke is called to stroke intermediate parts of a path. It makes -% sure to resynchronize the dashing pattern and to leave the current point -% as the final point of the path. -/Mistroke { % - Mistroke - - flattenpath % - - 0 0 0 % length x y - { % length x y new_x new_y (for moves) - 4 2 roll % length new_x new_y x y - pop pop % length new_x new_y - } - { % length x y new_x new_y (for lines) - 4 -1 roll % length y new_x new_y x - 2 index % length y new_x new_y x new_x - sub dup mul % length y new_x new_y dx*dx - 4 -1 roll % length new_x new_y dx*dx y - 2 index % length new_x new_y dx*dx y new_y - sub dup mul % length new_x new_y dx*dx dy*dy - add sqrt % length new_x new_y dlen - 4 -1 roll % new_x new_y dlen length - add % new_x new_y new_length - 3 1 roll % new_length new_x new_y - } - { % length x y x1 y1 x2 y2 x3 y3 (for curves) - stop % should never be called - } - { % length x y (for closepaths) - stop % should never be called - } - pathforall % length x y - pop pop % length - currentpoint % length final_x final_y - stroke % length final_x final_y - moveto % length - currentdash % length dash_array dash_offset - 3 -1 roll % dash_array dash_offset length - add % dash_array new_offset - setdash % - -} bind def - - -% Mfstroke is called to stroke the final parts of a path. It resets -% the dashing pattern to compensate for any adjustments made by Mistroke. -/Mfstroke { % - Mfstroke - - stroke % - - currentdash % dash_array dash_offset - pop 0 % dash_array 0 - setdash % - -} bind def - - - -% Mrotsboxa is the same as Msboxa except that it takes an angle -% form the stack and the box is calculated for text rendered at this angle. -% It gsaves in case we are starting a MathSubStart -% save Mrot so that Msboxa can convert bouding box back to the non-rotated -% coordinate system -% call Mrotcheck to alter the offsets into the rotated system -% converts Mtmatrix to render in the rotated system -% the calls Msboxa which does all the work -% at the end Mtmatrix is restored and Mrot is reset to 0 -/Mrotsboxa { % [str..] gx gy sx sy ang Mrotsboxa ... Msboxa - gsave % in case in MathSubStart - dup % [str..] gx gy sx sy ang ang - /Mrot - exch def % [str..] gx gy sx sy ang - Mrotcheck % [str..] gx gy sx_new sy_new ang - Mtmatrix % [str..] gx gy sx sy ang Mtmatrix - dup - setmatrix - 7 1 roll % Mtmatrix [str..] gx gy sx sy ang - 4 index % Mtmatrix [str..] gx gy sx sy ang gx - 4 index % Mtmatrix [str..] gx gy sx sy ang gx gy - translate % Mtmatrix [str..] gx gy sx sy ang - rotate % Mtmatrix [str..] gx gy sx sy - 3 index % Mtmatrix [str..] gx gy sx sy gx - -1 mul % Mtmatrix [str..] gx gy sx sy -gx - 3 index % Mtmatrix [str..] gx gy sx sy -gx gy - -1 mul % Mtmatrix [str..] gx gy sx sy -gx -gy - translate % Mtmatrix [str..] gx gy sx sy - /Mtmatrix % now change Mtmatrix to be this new currentmatrix - matrix - currentmatrix - def - grestore % grestore to deal with MathSubStart - Msboxa % Mtmatrix [ x y x y] [ x y x y] - 3 -1 roll % [x y x y ] [x y x y] Mtmatrix - /Mtmatrix - exch def % restore Mtmatrix - /Mrot - 0 def % restore Mrot -} bind def - - -% Given an array of strings ([str...]), which represent consecutive lines -% of text, a position in graphics coordinates (gx,gy) and a position in -% the bounding box coordinates (sx,sy), compute the low and high coordinates -% of the resulting text, in the [gx gy tx ty] form, which corresponds to -% the point (gx,gy) (in graphics coordinates) plus the offset (tx,ty) (in -% text coordinates). -% Note, Msboxa assumes that the current matrix is the text matrix. -% Mboxout is called in case we are in Mouter to make the box bigger -% Mboxrot adjusts the box to account for a rotation to convert the box -% into a nonrotated coordinate system -% -/Msboxa { % [str...] gx gy sx sy Msboxa [gx gy tlx tly] [gx gy thx thy] - newpath % [str...] gx gy sx sy (just in case) - 5 -1 roll % gx gy sx sy [str...] - Mvboxa % gx gy sx sy blx bly bhx bhy [off...] - pop % gx gy sx sy blx bly bhx bhy - Mboxout % adjust box for Minner - 6 -1 roll % gx gy sy blx bly bhx bhy sx - 5 -1 roll % gx gy sy bly bhx bhy sx blx - 4 -1 roll % gx gy sy bly bhy sx blx bhx - Msboxa1 % gx gy sy bly bhy tlx thx - 5 -3 roll % gx gy tlx thx sy bly bhy - Msboxa1 % gx gy tlx thx tly thy - Mboxrot % adjust box for rotation - [ % gx gy tlx thx tly thy mark - 7 -2 roll % tlx thx tly thy mark gx gy - 2 copy % tlx thx tly thy mark gx gy gx gy - [ % tlx thx tly thy mark gx gy gx gy mark - 3 1 roll % tlx thx tly thy mark gx gy mark gx gy - 10 -1 roll % thx tly thy mark gx gy mark gx gy tlx - 9 -1 roll % thx thy mark gx gy mark gx gy tlx tly - ] % thx thy mark gx gy [gx gy tlx tly] - 6 1 roll % [gx gy tlx tly] thx thy mark gx gy - 5 -2 roll % [gx gy tlx tly] mark gx gy thx thy - ] % [gx gy tlx tly] [gx gy thx thy] -} bind def - -% Msboxa1 is an internal function which, given a bounding box coordinate -% (sz), and the bounding box limits (blz and bhz), computes the actual -% offsets (tlz = (blz-bhz)(sz+1)/2, thz = (blz-bhz)(sz-1)/2). -/Msboxa1 { % sz blz bhz Msboxa1 tlz thz - sub % sz blz-bhz - 2 div % sz (blz-bhz)/2 - dup % sz (blz-bhz)/2 (blz-bhz)/2 - 2 index % sz (blz-bhz)/2 (blz-bhz)/2 sz - 1 add % sz (blz-bhz)/2 (blz-bhz)/2 sz+1 - mul % sz (blz-bhz)/2 tlz - 3 -1 roll % (blz-bhz)/2 tlz sz - -1 add % (blz-bhz)/2 tlz sz-1 - 3 -1 roll % tlz sz-1 (blz-bhz)/2 - mul % tlz thz -} bind def - - -% Given a (non-empty) array of strings ([str...]) calculate the -% bounding box. We do this for fixedwidth fonts or nonfixedwidth fonts -% depending upon the setting of Mfixwid. Mvboxa1 actually does a lot -% of the work. For nonfixedwidth fonts the length of the bounding -% box length is made to be the summation of [(str)..] Mwidthcal -% ie the maximum length of the strings and xlow -% -/Mvboxa { % [str...] Mvboxa xlow ylow xhigh yhigh [off...] - Mfixwid - { - Mvboxa1 - } - { - dup % [str...] [str...] - Mwidthcal % [str...] [ w1 w2...] - 0 exch % [str...] 0 [ w1 w2...] - { - add - } - forall % [str...] length - exch - Mvboxa1 % length xlow ylow xhigh yhigh [off...] - 4 index % length xlow ylow xhigh yhigh [off...] xlow - 7 -1 roll % xlow ylow xhigh yhigh [off...] xlow length - add % xlow ylow xhigh yhigh [off...] new_xhigh - 4 -1 roll - pop % xlow ylow yhigh [off...] new_xhigh - 3 1 roll % xlow ylow new_xhigh yhigh [off...] - } - ifelse -} bind def - - -% Given a (non-empty) array of strings ([str...]) which represent consecutive -% lines of text, compute the total bounding box assuming that we start at -% (0,0) and the array of y offsets to place the lines correctly. -% Note, Mvboxa assumes that the current matrix is the text matrix. -% Note, Mvboxa does not alter the current path. -% The vertical spacing is set so that the bounding boxes of adjacent lines -% are .3 times the width of an `m' apart. -/Mvboxa1 { % [str...] Mvboxa xlow ylow xhigh yhigh [off...] - gsave % [str...] - newpath % [str...] (clear path fragments) - [ true % [str...] mark true - 3 -1 roll % mark true [str...] - { % mark {true -or- off... Xl Yl Xh Yh false} str - Mbbox % mark {true -or- off... Xl Yl Xh Yh false} xl yl xh yh - 5 -1 roll % mark { - -or- off... Xl Yl Xh Yh} xl yl xh yh first? - { % mark xl yl xh yh - 0 % mark xl yl xh yh off1 - 5 1 roll % mark off1 xl yl xh yh - } % mark off1 XL YL XH YH - { % mark off... Xl Yl Xh Yh xl yl xh yh - 7 -1 roll % mark off... Xl Xh Yh xl yl xh yh Yl - exch sub % mark off... Xl Xh Yh xl yl xh yh-Yl - (m) stringwidth pop % mark off... Xl Xh Yh xl yl xh yh-Yl pntsize - .3 mul % mark off... Xl Xh Yh xl yl xh yh-Yl fudge - sub % mark off... Xl Xh Yh xl yl xh off - 7 1 roll % mark off... off Xl Xh Yh xl yl xh - 6 -1 roll % mark off... off Xh Yh xl yl xh Xl - 4 -1 roll % mark off... off Xh Yh yl xh Xl xl - Mmin % mark off... off Xh Yh yl xh XL - 3 -1 roll % mark off... off Xh Yh xh XL yl - 5 index % mark off... off Xh Yh xh XL yl off - add % mark off... off Xh Yh xh XL YL - 5 -1 roll % mark off... off Yh xh XL YL Xh - 4 -1 roll % mark off... off Yh XL YL Xh xh - Mmax % mark off... off Yh XL YL XH - 4 -1 roll % mark off... off XL YL XH YH - } % mark off... XL YL XH YH - ifelse % mark off... XL YL XH YH - false % mark off... XL YL XH YH false - } % mark off... XL YL XH YH false - forall % mark off... xlow ylow xhigh yhigh false - { stop } if % mark off... xlow ylow xhigh yhigh - counttomark % mark off... xlow ylow xhigh yhigh (#off's+4) - 1 add % mark off... xlow ylow xhigh yhigh (#off's+5) - 4 roll % xlow ylow xhigh yhigh mark off... - ] % xlow ylow xhigh yhigh [off...] - grestore % xlow ylow xhigh yhigh [off...] -} bind def - - -% Given a string, compute the bounding box assuming that we start at (0,0). -% Note, the path is assumed to be empty, and we are assumed to be in text -% coordinates. Allows for long strings. -/Mbbox { % str Mbbox xlow ylow xhigh yhigh - 1 dict begin - 0 0 moveto % str - /temp (T) def - { gsave - currentpoint newpath moveto - temp 0 3 -1 roll put temp - false charpath flattenpath currentpoint - pathbbox - grestore moveto lineto moveto} forall - pathbbox - newpath - end -} bind def - - -% Compute the minimum of two numbers. -/Mmin { % p q Mmin min(p,q) - 2 copy % p q p q - gt % p q p>q? - { exch } if % min(p,q) max(p,q) - pop % min(p,q) -} bind def - - -% Compute the maximum of two numbers. -/Mmax { % p q Mmax max(p,q) - 2 copy % p q p q - lt % p q p<q? - { exch } if % max(p,q) min(p,q) - pop % max(p,q) -} bind def - -% Mrotshowa is the same as Mshowa except that it takes an angle -% from the stack and the text is rendered at this angle. -% It saves Mrot (not really needed but saved anyway) -% calls Mrotcheck to adjust the offsets into the rotated coordinate system -% converts Mtmatrix to render in the rotated system -% and calls Mshowa which does all the work -% at the end Mtmatrix is restored and Mrot is reset to zero. -% -/Mrotshowa { %[str..] gx gy sx sy ang Mrotshowa - dup - /Mrot - exch def - Mrotcheck - Mtmatrix %[str..] gx gy sx sy ang Mtmatrix - dup - setmatrix - 7 1 roll %Mtmatrix [str..] gx gy sx sy ang - 4 index %Mtmatrix [str..] gx gy sx sy ang gx - 4 index %Mtmatrix [str..] gx gy sx sy ang gx gy - translate - rotate %Mtmatrix [str..] gx gy sx sy - 3 index - -1 mul - 3 index - -1 mul %Mtmatrix [str..] gx gy sx sy -gx -gy - translate - /Mtmatrix - matrix - currentmatrix - def %Mtmatrix [str..] gx gy sx sy - Mgmatrix setmatrix - Mshowa %Mtmatrix - /Mtmatrix - exch def - /Mrot 0 def % restore Mrot -} bind def - -% -% Given an array of strings ([str...]), which represent consecutive lines -% of text, a position in graphics coordinates (gx,gy) and a position in -% the bounding box coordinates (sx,sy), display the strings. -% Mboxout is called in case we are in Mouter -% -/Mshowa { % [str...] gx gy sx sy Mshowa - - 4 -2 roll % [str...] sx sy gx gy - moveto % [str...] sx sy - 2 index % [str...] sx sy [str...] - Mtmatrix setmatrix % [str...] sx sy [str...] - Mvboxa % [str...] sx sy tlx tly thx thy [off...] - 7 1 roll % [str...] [off...] sx sy tlx tly thx thy - Mboxout - 6 -1 roll % [str...] [off...] sy tlx tly thx thy sx - 5 -1 roll % [str...] [off...] sy tly thx thy sx tlx - 4 -1 roll % [str...] [off...] sy tly thy sx tlx thx - Mshowa1 % [str...] [off...] sy tly thy relx - 4 1 roll % [str...] [off...] relx sy tly thy - Mshowa1 % [str...] [off...] relx rely - rmoveto % [str...] [off...] - currentpoint % [str...] [off...] x y - Mfixwid - { - Mshowax - } - { - Mshoway - } - ifelse - pop pop pop pop - Mgmatrix setmatrix -} bind def - - -% This is used for fixedwidth fonts -% It simply shows each string and advances the y direction by the offset -% -/Mshowax { - 0 1 - 4 index length % [str...] [off...] x y 0 1 (#strings) - -1 add % [str...] [off...] x y 0 1 (#strings-1) - { % [str...] [off...] x y strnum - 2 index % [str...] [off...] x y strnum x - 4 index % [str...] [off...] x y strnum x [off...] - 2 index % [str...] [off...] x y strnum [off...] strnum - get % [str...] [off...] x y strnum x off - 3 index % [str...] [off...] x y strnum x off y - add % [str...] [off...] x y strnum x Y - moveto % [str...] [off...] x y strnum - 4 index % [str...] [off...] x y strnum [str...] - exch get % [str...] [off...] x y str - Mfixdash - { - Mfixdashp - } - if - show % [str...] [off...] x y - } for % [str...] [off...] x y -} bind def - -% Fix if all dashes and length > 1 -/Mfixdashp { % str - dup - length % str n - 1 - gt % str bool - 1 index % str bool str - true exch % str bool true str - { - 45 - eq - and - } forall - and % str bool - { - gsave - (--) - stringwidth pop - (-) - stringwidth pop - sub - 2 div % str lenfix - 0 rmoveto % str - dup % str str - length - 1 sub % str len-1 - { - (-) - show - } - repeat - grestore - } - if % x y str -} bind def - - -% This is for non-fixedwidth fonts -% It shows each character individually advancing the x position by -% the maximum width of any character in that position -% -/Mshoway { - 3 index % [str...] [off...] x y [str...] - Mwidthcal % [str...] [off...] x y [w1 w2 w3...] - 5 1 roll % [w1 w2 w3..] [str...] [off...] x y - 0 1 % [w1 w2 w3..] [str...] [off...] x y 0 1 - 4 index length % [w1 w2 w3..] [str...] [off...] x y 0 1 (#strings) - -1 add % [w1 w2 w3..] [str...] [off...] x y 0 1 (#strings-1) - { % [w1 w2 w3..] [str...] [off...] x y strnum - 2 index % [w1 w2 w3..] [str...] [off...] x y strnum x - 4 index % [w1 w2 w3..] [str...] [off...] x y strnum x [off...] - 2 index % [w1 w2 w3..] [str...] [off...] x y - % strnum [off...] strnum - get % [w1 w2 w3..] [str...] [off...] x y strnum x off - 3 index % [w1 w2 w3..] [str...] [off...] x y strnum x off y - add % [w1 w2 w3..] [str...] [off...] x y strnum x Y - moveto % [w1 w2 w3..] [str...] [off...] x y strnum - 4 index % [w1 w2 w3..] [str...] [off...] x y strnum [str...] - exch get % [w1 w2 w3..] [str...] [off...] x y str - [ - 6 index % [w1 w2 w3..] [str...] [off...] x y str [ [w1 w2..] - aload - length % [w1 w2 w3..] [str...] [off...] x y str [ w1 w2.. len - 2 add - -1 roll % [w1 w2 w3..] [str...] [off...] x y [ w1 w2.. str - { - pop % [w1 w2 w3..] [str...] [off...] x y [ w1 c2.. str am - Strform % [w1 w2 w3..] [str...] [off...] x y [ w1 w2.. str 1str - stringwidth - pop - neg - exch % [w1 w2 w3..] [str...] [off...] x y [ w1 w2.. - % str -cm cn - add - 0 rmoveto % [w1 w2 w3..] [str...] [off...] x y [ w1 w2.. str - } - exch - kshow % [w1 w2 w3..] [str...] [off...] x y [ - cleartomark - } for % [w1 w2 w3..] [str...] [off...] x y - pop -} bind def - -% -% This is a central mechanism for dealing with non-fixedwidth fonts. -% Given an array of strings Mwidthcal returns an array of the lengths -% of the longest character in the corresponding positions in the arrays. -% Thus the 4th element of the result is the maximum character width of -% each strin at the 4th position. -% -/Mwidthcal { % [(abc) (abc) ..] Mwidthcal [w1 w2 w3 ...] - [ - exch % [ [(abc) (abd) ..] - { - Mwidthcal1 - } - forall - ] % [[w w w] [w w w] ..] - [ % call this [chr ..] now - exch % [ [chr ..] - dup % [ [chr ..] [chr ..] - Maxlen % [ [chr ..] maxlen - -1 add - 0 1 - 3 -1 roll % [chr ..] [ [chr ..] 0 1 maxlen-1 - { - [ % [chr ..] [ [chr ..] n [ - exch % [chr ..] [ [chr ..] [ n - 2 index % [chr ..] [ [chr ..] [ n [chr ..] - { - 1 index - Mget % [chr ..] [ [chr ..] [ n [w1 w2 ..] n - exch % [chr ..] [ [chr ..] [ wn n - } - forall - pop % [chr ..] [ [chr ..] [ w1 w2 w3 - Maxget % [chr ..] [ [chr ..] wmax - exch % [chr ..] [ wmax [chr ..] - } - for - pop - ] % [ wmax1 wmax2 wmax3 ..] - Mreva -} bind def - -%Reverse an array -/Mreva { %[a b c ..] Mreva [.. c b a] - [ - exch %[ [a b c ..] - aload - length %[a b c .. len - -1 1 %[a b c .. len -1 1 - {1 roll} - for - ] %[.. c b a] -} bind def - -% take an array and an index and return that element if index exits -% if array not long enougth return zero -/Mget { %[a b c d..] index - 1 index - length %[a b c d..] index len - -1 add - 1 index %[a b c d..] index (len-1) index - ge - { - get %if long enough return entry - } - { - pop pop - 0 %if not long enough return zero - } - ifelse -} bind def - -%Take an array of arrays and return the longest length -/Maxlen { %[ arr1 arr2 arr3 ] Maxlen maxlen - [ %[ arr1 arr2 arr3 ] [ - exch %[ [ arr1 arr2 arr3 ] - { - length - } - forall %[ len1 len2 len3.. - Maxget -} bind def - -%Take a series of numbers starting with [ and return the largest member -/Maxget { %[n1 n2 n3 .. Maxget nmax - counttomark %[n1 n2 n3 .. len - -1 add %[n1 n2 n3 .. len-1 - 1 1 %[n1 n2 n3 .. len 1 1 - 3 -1 roll %[n1 n2 n3 .. 1 1 (len-1) - { - pop - Mmax - } - for %[ nmax - exch % nmax [ - pop % nmax -} bind def - -%Take a string and return an array of the lengths of the characters -/Mwidthcal1 { % str Mwidthcal1 [w1 w2 w3 ..] - [ - exch %[ (str) - { - Strform - stringwidth - pop - } - forall %[w1 w2 w3 .. - ] %[w1 w2 w3 ..] -} bind def - -%put a string onto the stack -/Strform { % num - /tem (x) def - tem 0 - 3 -1 roll - put - tem -} bind def - -%/Mwidmax { % [str...] -% dup % [str...] [str...] -% [ % [str...] [str...] [ -% exch % [str...] [ [str...] -% { -% stringwidth -% pop -% } -% forall % [str...] [ w1 w2 ... wm wn -% 0 -% counttomark % [str...] [ w1 w2 ... wm wn 0 n -% -2 add % [str...] [ w1 w2 ... wm wn 0 (n-1) -% 1 exch % [str...] [ w1 w2 ... wm wn 0 1 (n-1) -% 1 exch % [str...] [ w1 w2 ... wm wn 0 1 1 (n-1) -% { -% 3 index % [str...] [ w1 w2 ... wm wn num pos wm -% 3 index % [str...] [ w1 w2 ... wm wn num pos wm wn -% ge -% { % wm >= wn -% exch pop -% exch pop % [str...] [ w1 w2 ... wm num -% } -% { % wm < wn -% pop -% 3 -1 roll -% pop % [str...] [ w1 w2 ... wn pos < pos -> num > -% } -% ifelse % [str...] [ w1 w2 ... wmax nmax -% } -% for % [str...] [ wmax nmax -% 4 1 roll -% pop pop % nmax [str...] -% length % nmax len -% -1 add % nmax (len - 1) -% exch -% sub % max_pos -%} bind def - - -% Mshowa1 is an internal routine which, given a bounding box coordinate -% (sz), and the bounding box limits if we started drawing at 0 (tlz and thz), -% computes the offset at which to start drawing -% (relz = (sz-1)tlz/2 - (sz+1)thz/2 = sz(tlz-thz)/2-(tlz+thz)/2). -/Mshowa1 { % sz tlz thz Mshowa1 relz - 2 copy % sz tlz thz tlz thz - add % sz tlz thz tlz+thz - 4 1 roll % tlz+thz sz tlz thz - sub % tlz+thz sz tlz-thz - mul % tlz+thz sz(tlz-thz) - sub % tlz+thz-sz(tlz-thz) - -2 div % sz(tlz-thz)/2-(tlz+thz)/2 -} bind def - - -% Given the x and y scaling to user coordinates and an array of points to -% fit (xbias xscale ybias yscale [pnts]), set up the scaling. The array -% must contain atleast two points, and the last two must be of the form -% [gxlow gylow 0 0] and [gxhigh gyhigh 0 0]. -% Note, MathScale assumes that we are already scaled so that the active area -% is the rectangle [0,Mwidth-Mlmarg-Mrmarg]x[0,Mheight-Mbmarg-Mtmarg]. -% also keep bias and scale info for PostScript commands -/MathScale { % <user> [pnts] MathScale - - Mwidth % <user> [pnts] width - Mheight % <user> [pnts] width height - Mlp % <user> Ax Ay Bx By - translate % <user> Ax Ay - scale % <user> - /yscale exch def - /ybias exch def - /xscale exch def - /xbias exch def - /Momatrix % this transforms from - xscale yscale matrix scale % Original to Display coordinates - xbias ybias matrix translate - matrix concatmatrix def - /Mgmatrix % /Mgmatrix - matrix currentmatrix % /Mgmatrix graphics_matrix - def % - -} bind def - - -% Given a non-empty array of points to fit ([p]) and a maximum width (sx) -% and height (sy) find the largest scale (Ax and Ay) and offsets (Bx and By) -% such that the transformation -% [gx gy tx ty] -> (Ax gx + tx + bx, Ay gy + ty + By) -% maps the points into the rectangle [0,sx]x[0,sy] -/Mlp { % [p] sx sy Mlp Ax Ay Bx By - 3 copy % [p] sx sy [p] sx sy - Mlpfirst % [p] sx sy Ax Ay - { % [p] sx sy Ax Ay - Mnodistort % [p] sx sy Ax Ay nodistort? - { % [p] sx sy Ax Ay - Mmin % [p] sx sy A - dup % [p] sx sy Ax Ay - } if % [p] sx sy Ax Ay - 4 index % [p] sx sy Ax Ay [p] - 2 index % [p] sx sy Ax Ay [p] Ax - 2 index % [p] sx sy Ax Ay [p] Ax Ay - Mlprun % [p] sx sy Ax Ay ctx wtx cgx wgx cty wty cgy wgy - 11 index % [p] sx sy Ax Ay ctx wtx cgx wgx cty wty cgy wgy sx - 11 -1 roll % [p] sx sy Ay ctx wtx cgx wgx cty wty cgy wgy sx Ax - 10 -4 roll % [p] sx sy Ay cty wty cgy wgy sx Ax ctx wtx cgx wgx - Mlp1 % [p] sx sy Ay cty wty cgy wgy Ax Bx xok? - 8 index % [p] sx sy Ay cty wty cgy wgy Ax Bx xok? sy - 9 -5 roll % [p] sx sy Ax Bx xok? sy Ay cty wty cgy wgy - Mlp1 % [p] sx sy Ax Bx xok? Ay By yok? - 4 -1 roll % [p] sx sy Ax Bx Ay By yok? xok? - and % [p] sx sy Ax Bx Ay By ok? - { exit } if % [p] sx sy Ax Bx Ay By - 3 -1 roll % [p] sx sy Ax Ay Bx By - pop pop % [p] sx sy Ax Ay - } loop % [p] sx sy Ax Bx Ay By - exch % [p] sx sy Ax Bx By Ay - 3 1 roll % [p] sx sy Ax Ay Bx By - 7 -3 roll % Ax Ay Bx By [p] sx sy - pop pop pop % Ax Ay Bx By -} bind def - - -% Given an array of points in the [gx gy tx ty] form, with the last two -% being [gxlow gylow 0 0] and [gxhigh gyhigh 0 0], and the width and height -% (sx and sy) in which to fit them, compute the maximum scaling (Ax and Ay). -/Mlpfirst { % [pnts] sx sy Mlpfirst Ax Ay - 3 -1 roll % sx sy [pnts] - dup length % sx sy [pnts] #pnts - 2 copy % sx sy [pnts] #pnts [pnts] #pnts - -2 add % sx sy [pnts] #pnts [pnts] #pnts-2 - get % sx sy [pnts] #pnts [gxl gyl 0 0] - aload % sx sy [pnts] #pnts gxl gyl 0 0 [gxl gyl 0 0] - pop pop pop % sx sy [pnts] #pnts gxl gyl - 4 -2 roll % sx sy gxl gyl [pnts] #pnts - -1 add % sx sy gxl gyl [pnts] #pnts-1 - get % sx sy gxl gyl [gxh gyh 0 0] - aload % sx sy gxl gyl gxh gyh 0 0 [gxh gyh 0 0] - pop pop pop % sx sy gxl gyl gxh gyh - 6 -1 roll % sy gxl gyl gxh gyh sx - 3 -1 roll % sy gxl gyl gyh sx gxh - 5 -1 roll % sy gyl gyh sx gxh gxl - sub % sy gyl gyh sx delx - div % sy gyl gyh Ax - 4 1 roll % Ax sy gyl gyh - exch sub % Ax sy dely - div % Ax Ay -} bind def - - -% Given a non-empty array of points to fit ([pnts]) and scale factors -% for graphics->text (Ax and Ay), compute the limiting points. -/Mlprun { % [pnts] Ax Ay Mlprun ctx wtx cgx wgx cty wty cgy wgy - 2 copy % [pnts] Ax Ay Ax Ay - 4 index % [pnts] Ax Ay Ax Ay [pnts] - 0 get % [pnts] Ax Ay Ax Ay [first] - dup % [pnts] Ax Ay Ax Ay [first] [first] - 4 1 roll % [pnts] Ax Ay [first] Ax Ay [first] - Mlprun1 % [pnts] Ax Ay [first] fx fy - 3 copy % [pnts] Ax Ay [low] lx ly [high] hx hy - 8 -2 roll % [pnts] [low] lx ly [high] hx hy Ax Ay - 9 -1 roll % [low] lx ly [high] hx hy Ax Ay [pnts] - { % [low] lx ly [high] hx hy Ax Ay [pnt] - 3 copy % [low] lx ly [high] hx hy Ax Ay [pnt] Ax Ay [pnt] - Mlprun1 % [low] lx ly [high] hx hy Ax Ay [pnt] px py - 3 copy % [low] lx ly [high] hx hy Ax Ay [pnt] px py [pnt] px py - 11 -3 roll % [low] lx ly Ax Ay [pnt] px py [pnt] px py [high] hx hy - /gt Mlpminmax % [low] lx ly Ax Ay [pnt] px py [high] hx hy - 8 3 roll % [low] lx ly [high] hx hy Ax Ay [pnt] px py - 11 -3 roll % [high] hx hy Ax Ay [pnt] px py [low] lx ly - /lt Mlpminmax % [high] hx hy Ax Ay [low] lx ly - 8 3 roll % [low] lx ly [high] hx hy Ax Ay - } forall % [low] lx ly [high] hx hy Ax Ay - pop pop pop pop % [low] lx ly [high] - 3 1 roll % [low] [high] lx ly - pop pop % [low] [high] - aload pop % [low] hgx hgy htx hty - 5 -1 roll % hgx hgy htx hty [low] - aload pop % hgx hgy htx hty lgx lgy ltx lty - exch % hgx hgy htx hty lgx lgy lty ltx - 6 -1 roll % hgx hgy hty lgx lgy lty ltx htx - Mlprun2 % hgx hgy hty lgx lgy lty ctx wtx - 8 2 roll % ctx wtx hgx hgy hty lgx lgy lty - 4 -1 roll % ctx wtx hgx hgy lgx lgy lty hty - Mlprun2 % ctx wtx hgx hgy lgx lgy cty wty - 6 2 roll % ctx wtx cty wty hgx hgy lgx lgy - 3 -1 roll % ctx wtx cty wty hgx lgx lgy hgy - Mlprun2 % ctx wtx cty wty hgx lgx cgy wgy - 4 2 roll % ctx wtx cty wty cgy wgy hgx lgx - exch % ctx wtx cty wty cgy wgy lgx hgx - Mlprun2 % ctx wtx cty wty cgy wgy cgx wgx - 6 2 roll % ctx wtx cgx wgx cty wty cgy wgy -} bind def - - -% Given scale factors for graphics->text (Ax and Ay) and a point in the -% [gx gy tx ty] form, return the text x and y coordinate that results. -/Mlprun1 { % Ax Ay [gx gy tx ty] Mlprun1 rx ry - aload pop % Ax Ay gx gy tx ty - exch % Ax Ay gx gy ty tx - 6 -1 roll % Ay gx gy ty tx Ax - 5 -1 roll % Ay gy ty tx Ax gx - mul add % Ay gy ty rx - 4 -2 roll % ty rx Ay gy - mul % ty rx Ay*gy - 3 -1 roll % rx Ay*gy ty - add % rx ry -} bind def - - -% Given a low and high coordinate, compute the center and width. -/Mlprun2 { % low high Mlprun2 center width - 2 copy % low high low high - add 2 div % low high (low+high)/2 - 3 1 roll % (low+high)/2 low high - exch sub % (low+high)/2 high-low -} bind def - - -% Given two points stored as [gx gy tx ty] followed by the scaled -% result (rx, ry), and a comparison function (lt or gt) leave the -% point which is the minimum (or maximum) in each dimension. -/Mlpminmax { % [pnt1] r1x r1y [pnt2] r2x r2y cmp Mlpminmax [pnt] x y - cvx % [pnt1] r1x r1y [pnt2] r2x r2y cmp - 2 index % [pnt1] r1x r1y [pnt2] r2x r2y cmp r2x - 6 index % [pnt1] r1x r1y [pnt2] r2x r2y cmp r2x r1x - 2 index % [pnt1] r1x r1y [pnt2] r2x r2y cmp r2x r1x cmp - exec % [pnt1] r1x r1y [pnt2] r2x r2y cmp take2? - { % [pnt1] r1x r1y [pnt2] r2x r2y cmp - 7 -3 roll % [pnt2] r2x r2y cmp [pnt1] r1x r1y - 4 -1 roll % [pnt2] r2x r2y [pnt1] r1x r1y cmp - } if % [pnt1] r1x r1y [pnt2] r2x r2y cmp - 1 index % [pnt1] r1x r1y [pnt2] r2x r2y cmp r2y - 5 index % [pnt1] r1x r1y [pnt2] r2x r2y cmp r2y r1y - 3 -1 roll % [pnt1] r1x r1y [pnt2] r2x r2y r2y r1y cmp - exec % [pnt1] r1x r1y [pnt2] r2x r2y take2y? - { % [gx ? tx ?] rx ? [? gy ? ty] ? ry - 4 1 roll % [gx ? tx ?] rx ry ? [? gy ? ty] ? - pop % [gx ? tx ?] rx ry ? [? gy ? ty] - 5 -1 roll % rx ry ? [? gy ? ty] [gx ? tx ?] - aload % rx ry ? [? gy ? ty] gx ? tx ? [gx ? tx ?] - pop pop % rx ry ? [? gy ? ty] gx ? tx - 4 -1 roll % rx ry ? gx ? tx [? gy ? ty] - aload pop % rx ry ? gx ? tx ? gy ? ty - [ % rx ry ? gx ? tx ? gy ? ty mark - 8 -2 roll % rx ry ? tx ? gy ? ty mark gx ? - pop % rx ry ? tx ? gy ? ty mark gx - 5 -2 roll % rx ry ? tx ? ty mark gx gy ? - pop % rx ry ? tx ? ty mark gx gy - 6 -2 roll % rx ry ? ty mark gx gy tx ? - pop % rx ry ? ty mark gx gy tx - 5 -1 roll % rx ry ? mark gx gy tx ty - ] % rx ry ? [pnt] - 4 1 roll % [pnt] rx ry ? - pop % [pnt] rx ry - } - { % [gx gy tx ty] rx ry ? ? ? - pop pop pop % [pnt] rx ry - } ifelse % [pnt] rx ry -} bind def - - -% Given a size (s), graphics->text scale (A), text center (ct), text -% width (wt), graphics center (cg) and graphics width (wg), compute -% a new graphics->text scale (Anew) and offset (B) and whether or not -% we are done. -% Note, the mysterious .99999 is magic juju which is supposed to ward -% off the possibility that floating point errors would cause this -% routine to return the old A and yet claim not-done. -/Mlp1 { % s A ct wt cg wg Mlp1 Anew B done? - 5 index % s A ct wt cg wg s - 3 index sub % s A ct wt cg wg s-wt - 5 index % s A ct wg cg wg s-wt A - 2 index mul % s A ct wg cg wg s-wt A*wg - 1 index % s A ct wg cg wg s-wt A*wg s-wt - le % s A ct wg cg wg s-wt fits? - 1 index % s A ct wg cg wg s-wt fits? s-wt - 0 le % s A ct wg cg wg s-wt fits? impossible? - or % s A ct wg cg wg s-wt done? - dup % s A ct wg cg wg s-wt done? done? - not % s A ct wg cg wg s-wt done? notdone? - { % s A ct wg cg wg s-wt done? (not done case) - 1 index % s A ct wg cg wg s-wt done? s-wt - 3 index div % s A ct wg cg wg s-wt done? (s-wt)/wg - .99999 mul % s A ct wg cg wg s-wt done? Anew - 8 -1 roll % s ct wg cg wg s-wt done? Anew A - pop % s ct wg cg wg s-wt done? Anew - 7 1 roll % s Anew ct wg cg wg s-wt done? - } - if % s Anew ct wg cg wg s-wt done? - 8 -1 roll % Anew ct wg cg wg s-wt done? s - 2 div % Anew ct wg cg wg s-wt done? s/2 - 7 -2 roll % Anew cg wg s-wt done? s/2 ct wg - pop sub % Anew cg wg s-wt done? s/2-ct - 5 index % Anew cg wg s-wt done? s/2-ct Anew - 6 -3 roll % Anew done? s/2-ct Anew cg wg s-wt - pop pop % Anew done? s/2-ct Anew cg - mul sub % Anew done? s/2-ct-Anew*cg - exch % Anew B done? -} bind def - - -% The following are the workings of the tick, axes and plot labels. -% NOTE a possible source of confusion is that for xticks ie tickmarks on -% the x axis we keep y information and vice versa for yticks -% -% When Minner is found then -% -% assumes that box starts at zero on the left lower side -% -% 0) if outflag = 1 then intop = 0, inrht = 0 outflag = 0 -% 1) Save intop largest top of box -% 2) Save inrht largest rht of box -% 3) set inflag notifies that inner marks are present -% -% When Mouter is found then -% -% if inflag is set then -% 1) get vecx and vecy off the stack (points in direcn to move) -% 2) vecx < 1 xadrht = inrht*abs(vecx) -% 3) vecx > 1 xadlft = inrht*abs(vecx) -% 4) vecy < 1 yadtop = intop*abs(vecy) -% 5) vecy > 1 yadbot = intop*abs(vecy) -% 6) set outflag = 1 -% 7) clear inflag, inrht, intop -% guaranteed to be zero if no inner is present?? -% -% -% These all have effects in Mrotsboxa and Mrotshowa -% check inflag and if set -% -% 1) increase top of bbox by yadtop -% 2) decrease bot of bbox by yadbot -% 3) increase rht of bbox by xadrht -% 4) increase lft of bbox by xadlft -% 5) clear outflag, yadtop, yadbot, -% xadrht, xadlft -% -%/ - -/intop 0 def -/inrht 0 def -/inflag 0 def -/outflag 0 def -/xadrht 0 def -/xadlft 0 def -/yadtop 0 def -/yadbot 0 def - -% This saves the top right corner of the bounding box as a side effect -% This is to allow the adjustment of text placed with Mouter so that -% it misses the Minner text. It is assumed that the ang is 0 -% in the same way it is assumed that the text of Mouter is 0 or 90 -% -/Minner { % [(str)] gx gy sx sy ang Minner [(str)] gx gy sx sy ang - outflag % do a bit of tidying up if necessary - 1 - eq - { - /outflag 0 def - /intop 0 def - /inrht 0 def - } if - 5 index % [(str)] gx gy sx sy ang [(str)] - gsave - Mtmatrix setmatrix - Mvboxa pop % [(str)] gx gy sx sy ang xlow ylow xhigh yhigh - grestore - 3 -1 roll % [(str)] gx gy sx sy ang xlow xhigh yhigh ylow - pop % [(str)] gx gy sx sy ang xlow xhigh yhigh - dup % [(str)] gx gy sx sy ang xlow xhigh yhigh yhigh - intop % is intop smaller than yhigh ? - gt - { - /intop % update if it is - exch def - } - { pop } % pop if it is not - ifelse % [(str)] gx gy sx sy ang xlow xhigh - dup % [(str)] gx gy sx sy ang xlow xhigh xhigh - inrht % is inrht smaller than xhigh - gt - { - /inrht % update if it is - exch def - } - { pop } % pop if it is no - ifelse % [(str)] gx gy sx sy ang xlow - pop % [(str)] gx gy sx sy ang - /inflag % set the inflag - 1 def -} bind def - -% This takes two number off the stack and uses them as a vector in graphics -% coordinates which points in the direction in which the Mouter text is to move -% it calculates the bouding box adjustments yadtop yadbot xadrht and xadlft -% these are in Mboxout to adjust the bounding box to compensate. -/Mouter { % vecx vecy Mouter .. - /xadrht 0 def % reset everything - /xadlft 0 def - /yadtop 0 def - /yadbot 0 def - inflag % was there an inflag ? - 1 eq - { - dup % vecx vecy vecy - 0 lt - { - dup % vecx vecy vecy - intop % vecx vecy vecy intop - mul - neg % vecx vecy -vecy*intop - /yadtop % make into yadtop - exch def % vecx vecy - } if - dup % vecx vecy vecy - 0 gt - { - dup % vecx vecy vecy - intop % vecx vecy vecy intop - mul % vecx vecy vecy*intop - /yadbot % make into yadbot - exch def % vecx vecy - } - if - pop % vecx - dup % vecx vecx - 0 lt - { - dup % vecx vecx - inrht % vecx vecx inrht - mul - neg % vecx -vecx*inrht - /xadrht % make into xadrht - exch def % vecx - } if - dup % vecx vecx - 0 gt - { - dup % vecx vecx - inrht % vecx vecx inrht - mul % vecx vecx*inrht - /xadlft % make into xadlft - exch def - } if - pop % - /outflag 1 def % set outflag - } - { pop pop} % - ifelse - /inflag 0 def - /inrht 0 def - /intop 0 def -} bind def - -% -% This adjusts the bounding box to account for adjacent text -% This allows the two text strings to avoid each other -% current matrix is the text matrix -/Mboxout { % tlx tly thx thy Mboxout new_tlx new_tly new_thx new_thy - outflag % do nothing unless Minner was found - 1 - eq - { - 4 -1 - roll % tly thx thy tlx - xadlft - leadjust - add % tly thx thy tlx xadlft+lead - sub % tly thx thy tlx_new - 4 1 roll % tlx_new tly thx thy - 3 -1 - roll % tlx_new thx thy tly - yadbot % tlx_new thx thy tly yadbot - leadjust % tlx_new thx thy tly yadbot lead - add % tlx_new thx thy tly yadbot+lead - sub % tlx_new thx thy tly_new - 3 1 - roll % tlx_new tly_new thx thy - exch % tlx_new tly_new thy thx - xadrht % tlx_new tly_new thy thx xadrht - leadjust % tlx_new tly_new thy thx xadrht lead - add % tlx_new tly_new thy thx xadrht+lead - add % tlx_new tly_new thy thx_new - exch % tlx_new tly_new thx_new thy - yadtop % tlx_new tly_new thx_new thy yadtop - leadjust % tlx_new tly_new thx_new thy yadtop lead - add % tlx_new tly_new thx_new thy yadtop+lead - add % tlx_new tly_new thx_new thy_new - /outflag 0 def % reset everything to 0 - /xadlft 0 def - /yadbot 0 def - /xadrht 0 def - /yadtop 0 def - } if -} bind def - - -/leadjust { - (m) stringwidth pop - .5 mul -} bind def - - -% The offsets sx and sy refer to the graphics coordinate system -% thus they must be altered if a rotation has taken place. -% We must also change the bounding box computations for Minner -% -/Mrotcheck { % sx sy ang Mrotcheck new_sx new_sy ang - dup - 90 - eq - { -% -% Mouter only applies to strings which are either at 0 or 90 -% sort out the box adjust factors -% -% xadrht -> yadbot -% xadlft -> yadtop -% yadtop -> xadrht -% yadbot -> xadlft - yadbot - /yadbot - xadrht - def - /xadrht - yadtop - def - /yadtop - xadlft - def - /xadlft - exch - def - } - if - dup % sx sy ang ang - cos % sx sy ang Cos - 1 index % sx sy ang Cos ang - sin % sx sy ang Cos Sin - Checkaux % new_sx sx sy ang - dup % new_sx sx sy ang ang - cos % new_sx sx sy ang Cos - 1 index % new_sx sx sy ang Cos ang - sin neg % new_sx sx sy ang Cos -Sin - exch % new_sx sx sy ang -Sin Cos - Checkaux % new_sx new_sy sx sy ang - 3 1 roll % new_sx new_sy ang sx sy - pop pop % new_sx new_sy ang -} bind def - -% -% Checkaux is an auxilliary function for Mrotcheck it multiplies a -% row vector by a column vector -% -/Checkaux { % r1 r2 dumy c1 c2 Checkaux r1 r2 dumy r1*c1+r2*c2 - 4 index % r1 r2 dumy c1 c2 r1 - exch % r1 r2 dumy c1 r1 c2 - 4 index % r1 r2 dumy c1 r1 c2 r2 - mul % r1 r2 dumy c1 r1 c2*r2 - 3 1 roll % r1 r2 dumy c2*r2 c1 r1 - mul add % r1 r2 dumy c2*r2+c1*r1 - 4 1 roll % c2*r2+c1*r1 r1 r2 dumy -} bind def - -% -% Mboxrot converts the bounding box back from the rotated coordinate -% system to the Mgmatrix system to compensate for a rotation -% It has the opposite functionality of Mrotcheck -% This is not the most neatest or most efficient implementation but it works -% -/Mboxrot { % tlx thx tly thy Mboxrot new_tlx new_thx new_tly new_thy - Mrot - 90 eq - { -% old tlx thx tly thy -% new -thy -tly tlx thx -% - brotaux % tlx thx -thy -tly - 4 2 - roll % -thy -tly tlx thx - } - if - Mrot - 180 eq - { -% old tlx thx tly thy -% new -thx -tlx -thx -tly -% - 4 2 - roll % tly thy tlx thx - brotaux % tly thy -thx -tlx - 4 2 - roll % -thx -tlx tlx thy - brotaux % -thx -tlx -thy -tly - } - if - Mrot - 270 eq - { -% old tlx thx tly thy -% new tly thy -thx -tlx -% - 4 2 - roll % tly thy tlx thx - brotaux % tly thy -thx -tlx - } - if -} bind def - -% -% auxilliary function negate and reverse -/brotaux { % x y boxrotaux -y -x - neg - exch - neg -} bind def - -% -% Mabsproc takes a measurement in the default user units and converts -% it to the present units. This allows absolute thickness and dashing -% to work. It works by using a {0, x} vector and using the RMS of the result. -/Mabsproc { % abs thing Mabsproc - 0 - matrix defaultmatrix - dtransform idtransform - dup mul exch - dup mul - add sqrt -} bind def - -% -% Mabswid allows the linewidth to be specified in absolute coordinates -% It does this by recording the graphics transformation matrix at the -% begining of the plot. -% This will break if the scaling in the x and y directions is -% different. This is the case if Mnodistort is false -% -/Mabswid { %abswid Mabswid - Mabsproc - setlinewidth -} bind def - -% Mabsdash allows the dashing pattern to be specified in absolute coordinates -% It does this by recording the graphics transformation matrix at the -% begining of the plot. -% This will break if the scaling in the x and y directions is -% different. This is the case if Mnodistort is false -% -/Mabsdash { %[d1 d2 d3 .. ] off Mabsdash - exch % off [d1 d2 d3 ..] - [ % off [d1 d2 d3 ..] - exch % off [ [d1 d2 d3 ..] - { - Mabsproc - } - forall - ] % off [ fact*d1 fact*d2 fact*d3 .. ] - exch % [ nd1 nd2 nd3 .. ] off - setdash -} bind def - -%MBeginOrig start coordinates in user coordinates -/MBeginOrig { Momatrix concat} bind def - -%MEndOrig start coordinates in user coordinates -/MEndOrig { Mgmatrix setmatrix} bind def - -/sampledsound where -{ pop} -{ /sampledsound { % str rate nsamp bs proc bool nchan - exch - pop % str rate nsamp bs proc nchan - exch % str rate nsamp bs nchan proc - 5 1 roll % str proc rate nsamp bs nchan - mul - 4 idiv % str proc rate nsamp bs*nchan/4 - mul % str proc rate nsamp*bs*nchan/4 - 2 idiv % str proc rate nbytes - exch pop % str proc nbytes - exch % str nbytes proc - /Mtempproc exch def - { Mtempproc pop} - repeat - } bind def -} ifelse - -% -% now simple conversion of cmykcolor to rgbcolor -% subtract k and then take complements -/setcmykcolor where -{ pop} -{ /setcmykcolor { % c m y k - 4 1 - roll % k c m y - [ % k c m y [ - 4 1 - roll % k [ c m y - ] % k [ c m y ] - { - 1 index % k elem k - sub % k elem-k - 1 - sub neg % k 1-(elem-k) - dup - 0 - lt - { - pop - 0 - } - if - dup - 1 - gt - { - pop - 1 - } - if - exch % 1-(elem-k) k - } forall % r g b k - pop - setrgbcolor -} bind def -} ifelse - -/Mcharproc % max -{ - currentfile - (x) - readhexstring - pop % max val - 0 get - exch % val max - div % nval -} bind def - -/Mshadeproc % max ncols -{ - dup % max ncols ncols - 3 1 - roll % ncols max ncols - { % ncols max - dup % ncols max max - Mcharproc % ncols max val - 3 1 - roll % v1.. ncols max - } repeat - 1 eq - { - setgray - } - { - 3 eq - { - setrgbcolor - } - { - setcmykcolor - } ifelse - } ifelse -} bind def - -/Mrectproc % x0 x1 y0 y1 -{ - 3 index % x0 x1 y0 y1 x0 - 2 index % x0 x1 y0 y1 x0 y0 - moveto % x0 x1 y0 y1 - 2 index % x0 x1 y0 y1 x1 - 3 -1 - roll % x0 x1 y1 x1 y0 - lineto % x0 x1 y1 - dup % x0 x1 y1 y1 - 3 1 - roll % x0 y1 x1 y1 - lineto % x0 y1 - lineto - fill -} bind def - -/Mcolorimage % nx ny depth matrix proc bool ncols -{ - 7 1 - roll % ncols nx ny depth matrix proc bool - pop - pop - matrix - invertmatrix - concat % ncols nx ny depth - 2 exch exp % ncols nx ny 2^depth - 1 sub % ncols nx ny max - 3 1 roll % ncols max nx ny - 1 1 % ncols max nx ny 1 1 - 2 index % ncols max nx ny 1 1 ny - { % ncols max nx ny iy - 1 1 % ncols max nx ny iy 1 1 - 4 index % ncols max nx ny iy 1 1 nx - { % ncols max nx ny iy ix - dup % ncols max nx ny iy ix ix - 1 sub % ncols max nx ny iy ix x0 - exch % ncols max nx ny iy x0 x1 - 2 index % ncols max nx ny iy x0 x1 iy - dup % ncols max nx ny iy x0 x1 iy iy - 1 sub % ncols max nx ny iy x0 x1 iy y0 - exch % ncols max nx ny iy x0 x1 y0 y1 - 7 index % ncols max nx ny iy x0 x1 y0 y1 max - 9 index % ncols max nx ny iy x0 x1 y0 y1 max ncols - Mshadeproc % ncols max nx ny iy x0 x1 y0 y1 - Mrectproc % max nx ny iy - } for % x loop - pop % max nx ny - } for % y loop - pop pop pop pop -} bind def - -/Mimage % nx ny depth matrix proc -{ - pop - matrix - invertmatrix - concat % nx ny depth - 2 exch exp % nx ny 2^depth - 1 sub % nx ny max - 3 1 roll % max nx ny - 1 1 % max nx ny 1 1 - 2 index % max nx ny 1 1 ny - { % max nx ny iy - 1 1 % max nx ny iy 1 1 - 4 index % max nx ny iy 1 1 nx - { % max nx ny iy ix - dup % max nx ny iy ix ix - 1 sub % max nx ny iy ix x0 - exch % max nx ny iy x0 x1 - 2 index % max nx ny iy x0 x1 iy - dup % max nx ny iy x0 x1 iy iy - 1 sub % max nx ny iy x0 x1 iy y0 - exch % max nx ny iy x0 x1 y0 y1 - 7 index % max nx ny iy x0 x1 y0 y1 max - Mcharproc % max nx ny iy x0 x1 y0 y1 val - setgray % max nx ny iy x0 x1 y0 y1 - Mrectproc % max nx ny iy - } for % x loop - pop % max nx ny - } for % y loop - pop pop pop -} bind def - -/Ma /Mabswid load def -/a /arc load def -/c /curveto load def -/C /curveto load def -/d /setdash load def -/f /fill load def -/F /fill load def -/g /setgray load def -/gr /grestore load def -/gs /gsave load def -/k /stroke load def -/l /lineto load def -/L /lineto load def -/lw /setlinewidth load def -/m /moveto load def -/n /newpath load def -/p /gsave load def -/P /grestore load def -/r /setrgbcolor load def -/s /stroke load def -/w /setlinewidth load def -/beginmath /MBeginOrig load def -/endmath /MEndOrig load def - -end diff --git a/Master/texmf-dist/source/latex/geomsty/Makefile b/Master/texmf-dist/source/latex/geomsty/Makefile deleted file mode 100644 index 79eee7f2b76..00000000000 --- a/Master/texmf-dist/source/latex/geomsty/Makefile +++ /dev/null @@ -1,108 +0,0 @@ -# -# Makefile contributed by Steve Rumsby -# and modified by Mark Phillips -# - -# Where your TeX input files live -TEXINPUTSDEST = /usr/local/lib/tex/inputs - -# Name of your Latex (for documentation) -# Note: this must support NFSS in order for you to latex the manual; -# otherwise print manual.ps -LATEX = latex - -# Name of your DVI to PostScript converter, and -# flags needed to process the manual -DRIVER = dvips -DRIVERFLAGS = - -# Where it keeps its support files -PSDIR = /usr/local/lib/tex/dvips - -# System executable directory -BINDIR = /u/geom/bin - -# Directory for Manual pages -MANDIR = /u/geom/man/man1 - -# Where perl lives -PERL = /usr/local/bin/perl - -# Where you want to install the PostScript copy of the manual -# ("manual.ps"). If you don't want to formally install this, -# leave this definition blank. -MANUALDIR = /u/geom/lib/geomsty - -# Pathname of directory where you want to install the auxiliary -# programs geomfix and mathlabels. These are used by mathfig. -AUXDIR=/u/geom/lib/geomsty - -# If your system doesn't support symbolic links you -# could change this to "cp" -LN = ln -s - -# Change this to "install" if you want -CP = /bin/cp - -# You shouldn't have to change anything below here - -######################################################################## - -SHELL=/bin/sh - -MANUALFILES = manual.ps - -all: mathlabels mathfig mathfig.1 - -install: all - $(CP) *.sty *.chg $(TEXINPUTSDEST) - /bin/rm -f $(TEXINPUTSDEST)/driver.chg - $(LN) $(TEXINPUTSDEST)/$(DRIVER).chg $(TEXINPUTSDEST)/driver.chg - $(CP) mathfig $(BINDIR) - $(CP) mathlabels geomfix $(AUXDIR) - $(CP) math.pro illustrator.pro $(PSDIR) - $(CP) mathfig.1 $(MANDIR) - if [ "${MANUALDIR}" != "" ] ; then /bin/cp ${MANUALFILES} ${MANUALDIR} ; fi - -mathlabels: Makefile - /bin/rm -f mathlabels - (echo '#!$(PERL)'; sed 1d mathlabels.orig) > mathlabels - chmod 755 mathlabels - -mathfig: Makefile mathfig.orig - /bin/rm -f mathfig - sed -e 's|geomfix=geomfix|geomfix=${AUXDIR}/geomfix|' \ - -e 's|mathlabels=mathlabels|mathlabels=${AUXDIR}/mathlabels|' \ - < mathfig.orig > mathfig - chmod 755 mathfig - -mathfig.1: Makefile mathfig.1.orig - /bin/rm -f mathfig.1 - sed -e 's|^geomfix$$|${AUXDIR}/geomfix|' \ - -e 's|^mathlabels$$|${AUXDIR}/mathlabels|' \ - < mathfig.1.orig > mathfig.1 - -clean: - /bin/rm -f *~ #*# - -distclean: clean - /bin/rm -f *.dvi *.log *.lof *.aux *.bbl *.blg *.idx *.toc \ - mathlabels mathfig mathfig.1 geomsty.tar.Z geomsty.shar - -manual.dvi: manual.tex manual.bib - ${LATEX} manual - bibtex manual - ${LATEX} manual - ${LATEX} manual - -manual.ps: manual.dvi - ${DRIVER} ${DRIVERFLAG} manual.dvi - -doc: manual.ps - -tar: distclean manual.ps - gnutar hcvfZ geomsty.tar.Z -C .. `sed '1,/^\** *CONTENTS/ d' README` - -shar: distclean manual.ps - (cd ..; shar -F -L95 -ogeomsty/geomsty.shar `sed '1,/^\** *CONTENTS/ d' README`) - diff --git a/Master/texmf-dist/source/latex/geomsty/PStorus.lab b/Master/texmf-dist/source/latex/geomsty/PStorus.lab deleted file mode 100644 index 89c8de75070..00000000000 --- a/Master/texmf-dist/source/latex/geomsty/PStorus.lab +++ /dev/null @@ -1,4 +0,0 @@ -\setlabel{a}{48.600000}{4.162104}{0.000000}{1.000000} -\setlabel{b}{4.162104}{48.600000}{1.000000}{0.000000} -\setlabel{a'}{48.600000}{93.037896}{0.000000}{-1.000000} -\setlabel{b'}{93.037896}{48.600000}{-1.000000}{0.000000} diff --git a/Master/texmf-dist/source/latex/geomsty/README b/Master/texmf-dist/source/latex/geomsty/README deleted file mode 100644 index a3846d5b11d..00000000000 --- a/Master/texmf-dist/source/latex/geomsty/README +++ /dev/null @@ -1,75 +0,0 @@ -This is the distribution directory for the "geom" style for LaTeX, -which provides, among other things, the following features: - -- inclusion of PostScript figures, and of TeX text within figures -- automatic creation of index entries and cross-references where appropriate -- no need to worry about fragile commands in almost all situations -- greater versatility in defining theorem-like environments -- proofing aids such as version numbers and a running index - -The files listed below are part of the distribution. For details and -installation instructions, print the file manual.ps and turn to -Section 3. If the file does not print for any reason, look for the -section Installation in manual.tex. - -All files in this distribution are - -Copyright 1992 Silvio Levy - -unless specified otherwise. You can make copies of these files and -redistribute them for non-commercial purposes. If you make changes to -any files (other than adapting the Makefile to your site), CHANGE THE -NAMES of the changed files, and please let me know of any changes that -may be of interest to a wider audience. - -This software is distributed without any warranty, express or implied. - -Silvio Levy -The Geometry Center -1300 South Second Street -Minneapolis, MN 55454 -email: levy@geom.umn.edu - -************* CONTENTS OF DISTRIBUTION ************** -geomsty/Makefile -geomsty/PStorus.lab -geomsty/PStorus.ps -geomsty/README -geomsty/dvips.chg -geomsty/geom.sty -geomsty/geomar10.sty -geomsty/geomar11.sty -geomsty/geomar12.sty -geomsty/geomart.sty -geomsty/geombk10.sty -geomsty/geombk11.sty -geomsty/geombk12.sty -geomsty/geombook.sty -geomsty/geomenv.sty -geomsty/geomeqns.sty -geomsty/geomfig.sty -geomsty/geomfix -geomsty/geomfnt.sty -geomsty/geomindx.sty -geomsty/geompsfi.sty -geomsty/illustrator.pro -geomsty/manual.bib -geomsty/manual.ps -geomsty/manual.tex -geomsty/math.pro -geomsty/mathfig.orig -geomsty/mathfig.1.orig -geomsty/mathlabels.orig -geomsty/multicol.sty -geomsty/mainz/doc/doc.doc -geomsty/mainz/doc/doc.bug -geomsty/mainz/doc/newdoc.doc -geomsty/mainz/doc/docstrip.doc -geomsty/mainz/doc/readme.mz -geomsty/mainz/doc/readme.mz0 -geomsty/mainz/doc/install.mz0 -geomsty/mainz/multicol/multicol.doc -geomsty/mainz/multicol/multicol.bug -geomsty/mainz/multicol/readme.mz -geomsty/mainz/multicol/readme.mz1 -geomsty/mainz/multicol/install.mz1 diff --git a/Master/texmf-dist/source/latex/geomsty/driver.chg b/Master/texmf-dist/source/latex/geomsty/driver.chg deleted file mode 100644 index 6f32ef4fe1a..00000000000 --- a/Master/texmf-dist/source/latex/geomsty/driver.chg +++ /dev/null @@ -1,59 +0,0 @@ -% $Header: /u/levy/texts/geombook/RCS/dvips.chg,v 1.4 1993/01/13 15:50:36 levy Exp $ - - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% % -% DRIVER-DEPENDENT DEFINITIONS % -% % -{\catcode`\p=12 \catcode`\t=12 \gdef\read@PT#1pt{#1}} -\def\sp@topt#1#2{\psfig@dimen=#2sp \if\psfig@dimen=0pt \psfig@dimen=1sp\fi - \edef#1{\expandafter\read@PT \the\psfig@dimen}} -\def\sp@tobp#1#2{\psfig@dimen=#2sp \if\psfig@dimen=0pt \psfig@dimen=1sp\fi - \expandafter\@tempdima\expandafter\read@PT \the\psfig@dimen bp - \advance\psfig@dimen-.5 \@tempdima \multiply\psfig@dimen 2 - \edef#1{\expandafter\read@PT \the\psfig@dimen}} -\def\ps@init{} -\def\ps@begin{\sp@tobp\@tempa\@p@sbbllx \sp@tobp\@tempb\@p@sbblly - \sp@tobp\@tempc\@p@sbburx \sp@tobp\@tempd\@p@sbbury - \sp@tobp\@tempe{\@p@swidth0} \sp@tobp\@tempf{\@p@sheight0} - \special{PSfile=\@p@sfile\space llx=\@tempa\space lly=\@tempb\space - urx=\@tempc\space ury=\@tempd\space rwi=\@tempe\space rhi=\@tempf}} -% rwi is the total width, in tenths of the units used for the -% other dimensions (this is dvips's brain damage) -\def\ps@prolog{\ifmathematica\special{header=math.pro}\fi - \ifillustrator\special{header=illustrator.pro}\fi} -\def\ps@clip{} % -\def\ps@include{} % -\def\ps@postlog{} % -\def\ps@end{} % -% % -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - -% $Log: dvips.chg,v $ -%Revision 1.4 1993/01/13 15:50:36 levy -%expressed things in bp (correctly) -% -%Revision 1.3 1993/01/10 02:12:09 levy -%*** empty log message *** -% -%Revision 1.2 92/06/10 12:44:13 levy -%mathematica and illustrator dependences -% -%Revision 1.10 91/11/27 16:45:26 levy -%removed path name from math.pro -% -%Revision 1.9 91/01/01 15:21:13 levy -%checked in with -k by dbae at 91.01.12.17.41.23. -% -%Revision 1.9 91/01/01 15:21:13 levy -%*** empty log message *** -% -%Revision 1.8 90/11/18 11:25:35 levy -%*** empty log message *** -% -%Revision 1.7 90/11/18 11:19:34 levy -%*** empty log message *** -% -% Revision 1.6 90/11/18 11:03:06 levy -% *** empty log message *** - diff --git a/Master/texmf-dist/source/latex/geomsty/dvips.chg b/Master/texmf-dist/source/latex/geomsty/dvips.chg deleted file mode 100644 index 6f32ef4fe1a..00000000000 --- a/Master/texmf-dist/source/latex/geomsty/dvips.chg +++ /dev/null @@ -1,59 +0,0 @@ -% $Header: /u/levy/texts/geombook/RCS/dvips.chg,v 1.4 1993/01/13 15:50:36 levy Exp $ - - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% % -% DRIVER-DEPENDENT DEFINITIONS % -% % -{\catcode`\p=12 \catcode`\t=12 \gdef\read@PT#1pt{#1}} -\def\sp@topt#1#2{\psfig@dimen=#2sp \if\psfig@dimen=0pt \psfig@dimen=1sp\fi - \edef#1{\expandafter\read@PT \the\psfig@dimen}} -\def\sp@tobp#1#2{\psfig@dimen=#2sp \if\psfig@dimen=0pt \psfig@dimen=1sp\fi - \expandafter\@tempdima\expandafter\read@PT \the\psfig@dimen bp - \advance\psfig@dimen-.5 \@tempdima \multiply\psfig@dimen 2 - \edef#1{\expandafter\read@PT \the\psfig@dimen}} -\def\ps@init{} -\def\ps@begin{\sp@tobp\@tempa\@p@sbbllx \sp@tobp\@tempb\@p@sbblly - \sp@tobp\@tempc\@p@sbburx \sp@tobp\@tempd\@p@sbbury - \sp@tobp\@tempe{\@p@swidth0} \sp@tobp\@tempf{\@p@sheight0} - \special{PSfile=\@p@sfile\space llx=\@tempa\space lly=\@tempb\space - urx=\@tempc\space ury=\@tempd\space rwi=\@tempe\space rhi=\@tempf}} -% rwi is the total width, in tenths of the units used for the -% other dimensions (this is dvips's brain damage) -\def\ps@prolog{\ifmathematica\special{header=math.pro}\fi - \ifillustrator\special{header=illustrator.pro}\fi} -\def\ps@clip{} % -\def\ps@include{} % -\def\ps@postlog{} % -\def\ps@end{} % -% % -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - -% $Log: dvips.chg,v $ -%Revision 1.4 1993/01/13 15:50:36 levy -%expressed things in bp (correctly) -% -%Revision 1.3 1993/01/10 02:12:09 levy -%*** empty log message *** -% -%Revision 1.2 92/06/10 12:44:13 levy -%mathematica and illustrator dependences -% -%Revision 1.10 91/11/27 16:45:26 levy -%removed path name from math.pro -% -%Revision 1.9 91/01/01 15:21:13 levy -%checked in with -k by dbae at 91.01.12.17.41.23. -% -%Revision 1.9 91/01/01 15:21:13 levy -%*** empty log message *** -% -%Revision 1.8 90/11/18 11:25:35 levy -%*** empty log message *** -% -%Revision 1.7 90/11/18 11:19:34 levy -%*** empty log message *** -% -% Revision 1.6 90/11/18 11:03:06 levy -% *** empty log message *** - diff --git a/Master/texmf-dist/source/latex/geomsty/geomfix b/Master/texmf-dist/source/latex/geomsty/geomfix deleted file mode 100644 index aff40c9bd90..00000000000 --- a/Master/texmf-dist/source/latex/geomsty/geomfix +++ /dev/null @@ -1,156 +0,0 @@ -#! /bin/sh -# -# This is geomfix, Copyright 1992 Silvio Levy -# $Header: /a/tampa/h/tampa_a/fac/levy/texts/geombook/RCS/geomfix,v 1.1 92/07/17 13:27:45 levy Exp $ -# -# This shell file reads stdin (or any list of files) and adds a header -# similar to the one added by psfix, but without any of the definitons. -# It also abbreviates certain PostScript commands. - -# Defaults: -lmargin=1.0 # default left margin: .5 inches -rmargin=1.0 # default right margin: .5 inches -bmargin=1.0 # default bottom margin: .5 inches -tmargin=1.0 # default top margin: .5 inches -width=8.5 # default page width: 8.5 inches -height=11 # default page height: 11 inches -transform='' # default transformation: identity -nodistort=true # default no-stretching: no -fixwid=false # default fixwid compensation -fixdash=false # default fixdash compensation -while :; do - case $# in - 0) - break 2 - ;; - esac - case "$1" in - -lmarg) - shift - lmargin=$1 - shift - ;; - -rmarg) - shift - rmargin=$1 - shift - ;; - -bmarg) - shift - bmargin=$1 - shift - ;; - -tmarg) - shift - tmargin=$1 - shift - ;; - -width) - shift - width=$1 - shift - ;; - -height) - shift - height=$1 - shift - ;; - -land) - tmp=$width - width=$height - height=$tmp - transform="90 rotate 0 Mheight neg translate" - shift - ;; - -stretch) - nodistort=false - shift - ;; - -stringfix) - fixwid=false - shift - ;; - -dashfix) - fixdash=false - shift - ;; - -*) - echo \ -'Usage: psfix [-lmarg inches] [-rmarg inches] [-bmarg inches] [-tmarg inches] - [-land] [-stretch] [-width inches] [-height inches] - [-stringfix] [-dashfix] [file...]' \ - >&2 - exit 1 - ;; - *) - break 2 - ;; - esac -done - -# Output header -echo '%!PS-Adobe-2.0 EPSF-2.0' -# Compute bounding box -( -bc <<! -$width * 72 -$height * 72 -! -) | ( - read right - read top - echo "%%BoundingBox: 0 0 $right $top" -) -cat <<'!' -%%Creator: Mathematica -%%EndComments -! - -# Output default values -sed 's/[ ]*%.*$// -s/^[ ]*// -/^[ ]*$/d' <<! - -MyDict begin -/Mlmarg $lmargin 72 mul def % left margin (points) -/Mrmarg $rmargin 72 mul def % right margin (points) -/Mbmarg $bmargin 72 mul def % top margin (points) -/Mtmarg $tmargin 72 mul def % bottom margin (points) -/Mwidth $width 72 mul def % total page width (points) -/Mheight $height 72 mul def % total page height -/Mtransform { $transform } bind def % possible page rotation -/Mnodistort $nodistort def % no-stretching flag -/Mfixwid $fixwid def % fixedwidth font only flag -/Mfixdash $fixdash def % fixeddash flag -/Mrot 0 def % angle at which text is rendered -! - -# Some of the following abbrevs were used by me -# prior to version 2.1 to save space. -# In version 2.1 different abbrevs were introduced. -# Only k causes a conflict. - -sed '/^%!$/d -s/^0\.\([0-9]\)/.\1/ -s/\([ -]\)0\.\([0-9]\)/\1.\2/g -s/\<k\>$/setcmykcolor/ -s/\<Mabswid\>$/Ma/g -s/\<arc\>$/a/g -s/\<curveto\>$/c/g -s/\<setdash\>$/d/g -s/\<fill\>$/f/g -s/\<setgray\>$/g/g -s/\<grestore\>$/gr/g -s/\<gsave\>$/gs/g -s/\<stroke\>$/k/g -s/\<lineto\>$/l/g -s/\<setlinewidth\>$/lw/g -s/\<moveto\>$/m/g -s/\<newpath\>$/n/g -s/\<setrgbcolor\>$/r/g -/^%%Creator:/d' $@ - -echo end - - - diff --git a/Master/texmf-dist/tex/latex/geomsty/geom.sty b/Master/texmf-dist/tex/latex/geomsty/geom.sty deleted file mode 100644 index fd2674c302c..00000000000 --- a/Master/texmf-dist/tex/latex/geomsty/geom.sty +++ /dev/null @@ -1,597 +0,0 @@ -% $Header: /usr/home/levy/texts/geomsty/RCS/geom.sty,v 1.21 95/08/02 16:22:57 levy Exp Locker: levy $ -% NFSS2 mods 95/06/18 by J Rawnsley - -% Test for LaTeX2e -\def\format@e{LaTeX2e} - -\ifx\fmtname\format@e - \ProvidesPackage{geom}[95/06/18] -\fi - -\ifx\DeclareFontShape\@undefined -\else - \let\normalshape\normalfont - \let\mediumseries\relax -\fi - -% -% This is the geom style master file, by Silvio Levy. -% It contains modifications to latex.tex and lplain.tex. -% LATEX VERSION 2.09 <14 January 1991> -% -\typeout{Reading Geometry Center style by Silvio Levy, $Revision: 1.21 $} -\typeout{NFSS2 compatibility by J. Rawnsley, Maths Institute, Warwick 95/06/18} - -% Find out which style has been loaded (book or article). -% If \chapter is undefined we assume the style is article, otherwise book. - -\def\@article{\@@article} \def\@book{\@@book} -\@ifundefined{chapter}{\def\@style{\@@article}}{\def\@style{\@@book}} - -% Load an appropriate file with changes to book.sty or article.sty. - -\ifx\@style\@book \input geombook.sty \else \input geomart.sty \fi - -% Load in other definitions. - -\input geomenv.sty % environments -\input geomfig.sty % figures -\input geomfnt.sty % new fonts -\input geomindx.sty % indexing macros -\ifx\fmtname\format@e - %\usepackage{multicol} % two-column formatting - \input multicol.sty % two-column formatting -\else - \input multicol.sty % two-column formatting -\fi -% **************************************** -% * USEFUL HACKS * -% **************************************** -% -% \@@warning and \@warning don't need the word ``LaTeX''. -% -\def\@@warning#1{\typeout{Warning: #1.}} - -% ********************************************** -% * SPACING / LINE AND PAGE BREAKING * -% ********************************************** - -% Avoid the lack of spacing after a list when the first item is run-in. - -\def\endtrivlist{\if@newlist\@noitemerr\fi - \if@inlabel\indent\fi - \ifhmode\unskip \par\fi -% \if@noparlist \else - \ifdim\lastskip >\z@ \@tempskipa\lastskip \vskip -\lastskip - \advance\@tempskipa\parskip \advance\@tempskipa -\@outerparskip - \vskip\@tempskipa - \fi\@endparenv -% \fi -} -\let\endcenter=\endtrivlist -\let\endflushleft=\endtrivlist -\let\endflushright=\endtrivlist -\let\endverbatim=\endtrivlist -\expandafter\let\csname endverbatim*\endcsname =\endtrivlist - -% **************************************** -% * FILE HANDLING * -% **************************************** -% -% Proofing is true by default. -% -\newif\ifproofing\proofingtrue -\def\include#1{\ifproofing\@include#1 \else\input{#1.tex}\fi} -\def\noproofing{\noexpand\proofingfalse} -\def\@proofingfalse{\proofingfalse} -\def\checkproofing{\ifx\@partlist\@proofingfalse\proofingfalse\fi} -\def\includeonly#1{\@partswtrue\edef\@partlist{#1}\checkproofing} - -% **************************************** -% * CROSS-REFERENCING MACROS * -% **************************************** - -\let\@xf\expandafter -% -% The main differences between these macros and LaTeX's are that keys -% are not expanded, and the first field in the record's value contains -% the type of object referred to. For example, -% \newlabel{square torus in space}{{problem 1.1.1}{5}} -% This information is read at the time the record is formed -% from the \object@type. Expansion of the key is inhibited by storing -% it into the token list \@key, with everything protected by \noexpand's. -% -\def\object@type{??} -\def\setlabeltype#1{\edef\object@type{#1}} -\newtoks\@key -\def\set@key#1{{\aftergroup\@key\aftergroup{\sanitize#1\endsanity}}} - -% -% These are the user-level macros: -% -% \fullref{...} expands to theorem~3.7 -% \Fullref{...} expands to Theorem~3.7 -% \ref{...} expands to 3.7 -% \pageref{...} expands to 377 - -\def\fullref{\@ref{\@xf\@car}} -\def\Fullref{\@ref{\@xf\@xf\@xf\cap@first\@xf\@car}} -\def\pageref{\@ref{\@xf\@cdr}} -\def\ref{\@ref{\@xf\@xf\@xf\discard@first\@xf\@car}} -\def\reftype{\@ref{\@xf\@xf\@xf\discard@second\@xf\@car}} -\def\Reftype{\@ref{\@xf\@xf\@xf\@xf\@xf\@xf\@xf\discard@second - \@xf\@xf\@xf\cap@first\@xf\@car}} -\def\cap@first#1{\uppercase{#1}} -\def\discard@first#1~{} -\def\discard@second#1~\preref{#1\@gobble} - -% -% This is similar to \ref in LaTeX, but has two arguments: the second -% is the key, which is not expanded; the first is an operator to be -% applied to the value of the record. -% -\newtoks\@value -\def\@ref#1{\@ifnextchar*{\@r@f{#1}}{\@r@f{#1}+}} -\def\@r@f#1#2#3{\set@key{#3}\@ifundefined{r@\the\@key}% - {{\bf ??}\@warning{Reference `\expand@key' %on page \thepage\space - undefined}}% - {\@value=\@xf\@xf\@xf{\csname r@\the\@key\endcsname}#1\the\@value\@nil\null}% - \if#2*\refindex{#3} (#3)\else\refinvindex{#3}\fi} -\def\expand@key{\@xf\empty\the\@key} - -\def\@lbibitem[#1]#2{\set@key{#2}\item[\@biblabel{#1}]\if@filesw - \xdef\@gtempa{\immediate\write\@auxout{\string\bibcite{\the\@key}{#1}}} - \@gtempa\fi\ignorespaces} - -% -% Like \label in LaTeX, but follows the conventions explained at the -% top of this file. The \label* variant creates a more comprehensive -% index entry. -% -\def\preref#1{#1} -\def\label{\@ifnextchar*{\l@bel}{\l@bel+}} -\def\l@bel#1#2{\set@key{#2}\@bsphack\if@filesw - {\let\thepage\relax - \xdef\@gtempa{\write\@auxout{\string\newlabel{\the\@key}% - {{\object@type\string~\string\preref{\@currentlabel}}% - {\string\preref{\thepage}}}% - }}}\@gtempa - \if@nobreak \ifvmode\nobreak\fi\fi\fi\@esphack - \if#1*\labelindex{#2}\else\index{#2}\fi\ignorespaces} - -\def\newlabel{\bgroup\@sanitize\afterassignment\@readlabel\global\@key} -\def\bibcite{\bgroup\@sanitize\afterassignment\@readbibcite\global\@key} -\def\@readlabel{\egroup\r@adlabel r} -\def\@readbibcite{\egroup\r@adlabel b} -\def\r@adlabel#1#2{\@ifundefined{#1@\the\@key}{}% - {\@warning{Label `\expand@key' multiply defined}}% - \global\@namedef{#1@\the\@key}{#2}} - -% -% sanitize -% -\def\citeseparator{,} -\def\@citex[#1]#2{\set@key{#2}\if@filesw - \xdef\@gtempa{\immediate\write\@auxout{\string\citation{\the\@key}}}\@gtempa\fi - \let\@citea\@empty - \@xf\@cite\@xf{\@xf\@for\@xf\@citeb\@xf:\@xf=\the\@key\do - {\@citea\def\@citea{\citeseparator\penalty\@m\ }% - \def\@tempa##1##2\@nil{\edef\@citeb{\if##1\space##2\else##1##2\fi}}% - \expandafter\@tempa\@citeb\@nil - \@ifundefined{b@\@citeb}{{\reset@font\bf ?}\@warning - {Citation `\@citeb' %on page \thepage \space - undefined}}% - {\csname b@\@citeb\endcsname}}}{#1}} - -% -% add a preref -% -\def\@cite#1#2{\preref{[{#1\if@tempswa , #2\fi}]}} - -\def\nocite#1{\set@key{#1}\@bsphack\if@filesw - \xdef\@gtempa{\immediate\write\@auxout{\string\citation{\the\@key}}}\@gtempa\fi - \@esphack} - -\def\@testdef #1#2#3{\set@key{#2}\def\@tempa{#3}% - \@xf\ifx\csname #1@\the\@key\endcsname\@tempa\else\@tempswatrue\fi} - -\def\\{\let\stoken= } \\ -\def\sanitize{\futurelet\next\sanswitch} -\def\sanswitch{\let\@tempa\relax \ifx\next\endsanity \let\@tempa\endsanity - \else\ifcat\noexpand\next\stoken\aftergroup\space\let\@tempa\eat - \else\ifcat\noexpand\next\bgroup\aftergroup{\let\@tempa\eat - \else\ifcat\noexpand\next\egroup\aftergroup}\let\@tempa\eat - \else\let\@tempa\copytoken\fi\fi\fi\fi \@tempa} -\def\eat{\afterassignment\sanitize \let\next= } -\long\def\copytoken#1{% - \ifcat\noexpand#1##\aftergroup\string\aftergroup\string##\aftergroup\string - \else\ifcat\noexpand#1\noexpand~\aftergroup\string - \else\ifcat\noexpand#1\relax\aftergroup\str@ng \fi\fi\fi - \aftergroup#1\sanitize} -\def\endsanity\endsanity{} -\def\str@ng#1{\string#1\expandafter\if@secondletter\string #1\next\nex} -\def\if@secondletter#1#2#3\nex{\ifx #2\next\else\ifnum`#2<`A \else - \ifnum`#2<`Z \space\else\ifnum`#2<`a \else\ifnum`#2<`z \space\fi\fi\fi\fi\fi} - -% Labels are automatically added to theorems, section headings and the -% like if \autolabel is true. - -\newif\ifautolabel\autolabeltrue - -% **************************************** -% * ENVIRONMENTS * -% **************************************** - -\long\def\@writefile#1#2{\@ifundefined{tf@#1}{}{ -\edef\@tempa{\immediate\write\csname tf@#1\endcsname} -{\aftergroup\@tempa\aftergroup{\sanitize #2\endsanity}}}} - -% ********************************************** -% * MATH ENVIRONMENTS * -% ********************************************** - -%% following RmS 91/09/29: \reset@font added. - -\def\@eqnnum{{\reset@font\rm (\theequation)}} - -% -% set object type -% -\def\equation{$$ % $$ BRACE MATCHING HACK - \def\object@type{equation}\refstepcounter{equation}} - -%% following RmS 92/01/10: put \hbox around \@eqnnum - -\def\endequation{\eqno \hbox{\@eqnnum}% $$ BRACE MATCHING HACK -$$\global\@ignoretrue} - -\def\eqnarray{\def\object@type{equation}% - \stepcounter{equation}\edef\@currentlabel{\theequation}% -\global\@eqnswtrue\m@th -\global\@eqcnt\z@\tabskip\@centering\let\\\@eqncr -$$\halign to\displaywidth\bgroup\@eqnsel\hskip\@centering - $\displaystyle\tabskip\z@{##}$&\global\@eqcnt\@ne - \hskip 2\arraycolsep \hfil${##}$\hfil - &\global\@eqcnt\tw@ \hskip 2\arraycolsep $\displaystyle\tabskip\z@{##}$\hfil - \tabskip\@centering&\llap{##}\tabskip\z@\cr} -\def\@eqncr{{\ifnum0=`}\fi\@ifstar{\global\@eqpen\@M - \@yeqncr}{\global\@eqpen\interdisplaylinepenalty \@yeqncr}% - \edef\@currentlabel{\theequation}} - -% -% allow equations to be numbered with other environments -% - -\def\equationwith#1{% - \@xf\edef\@xf\c@equation\@xf{\csname c@#1\endcsname}% - \@xf\let\@xf\theequation\csname the#1\endcsname -} - -% -% Bring back \eqalign from plain TeX (for less than full-width alignments) -% -\def\eqalign#1{\null\,\vcenter{\openup\jot\m@th - \ialign{\strut\hfil$\displaystyle{##}$&$\displaystyle{{}##}$\hfil - \crcr#1\crcr}}\,} - -% **************************************** -% * THE LIST ENVIRONMENT * -% **************************************** - -% make the \listparindent non-zero - -\def\list#1#2{\ifnum \@listdepth >5\relax \@toodeep - \else \global\advance\@listdepth\@ne \fi - \rightmargin \z@ \listparindent.8\parindent \itemindent\z@ - \csname @list\romannumeral\the\@listdepth\endcsname - \def\@itemlabel{#1}\let\makelabel\@mklab \@nmbrlistfalse #2\relax - \@trivlist - \parskip\parsep \parindent\listparindent - \advance\linewidth -\rightmargin \advance\linewidth -\leftmargin - \advance\@totalleftmargin \leftmargin - \parshape \@ne \@totalleftmargin \linewidth - \ignorespaces} - -% for bibliography -\def\@mklab#1{#1\hskip 0pt plus .0001fil\relax} - -% Use \unhbox instead of \box for labels like theorems etc. -% Add normalshape -% Removed a \penalty0 to avoid line ending with blank space -% -% to make part (a) of an enumerate that immediate follows a label -% start on a fresh line, change the last line of \@item to: -% -%\def\@item[#1]{\if@noparitem \@donoparitem -% ... -% \hskip \labelsep}\vrule width 0pt \ignorespaces} -% -\def\@item[#1]{\if@noparitem \@donoparitem - \else \if@inlabel \indent \par \fi - \ifhmode \unskip\unskip \par \fi - \if@newlist \if@nobreak \@nbitem \else - \addpenalty\@beginparpenalty - \addvspace\@topsep \addvspace{-\parskip}\fi - \else \addpenalty\@itempenalty \addvspace\itemsep - \fi - \global\@inlabeltrue -\fi -\everypar{\global\@minipagefalse\global\@newlistfalse - \if@inlabel\global\@inlabelfalse \hskip -\parindent \unhbox\@labels -% \penalty\z@ \fi - \fi - \everypar{}}\global\@nobreakfalse -\if@noitemarg \@noitemargfalse \if@nmbrlist \refstepcounter{\@listctr}\fi \fi -\setbox\@tempboxa\hbox{\makelabel{#1}}% -%\setbox\@tempboxa\hbox{\makelabel{\normalshape #1}}% this would kill \sc -\global\setbox\@labels - \hbox{\unhbox\@labels \hskip \itemindent - \hskip -\labelwidth \hskip -\labelsep - \ifdim \wd\@tempboxa >\labelwidth - \unhbox\@tempboxa - \else \hbox to\labelwidth {\makelabel{\normalshape #1}}\fi - \hskip \labelsep}\ignorespaces} - -% **************************************** -% * ITEMIZE AND ENUMERATE * -% **************************************** - -% Save \@currentlabel to allow correct label in the cases like this: -% -% \begin{theorem} -% \begin{equation} -% \end{equation} -% \begin{enumerate} -% \label -% - -\def\enumerate{\ifnum \@enumdepth >3 \@toodeep\else - \advance\@enumdepth \@ne - \edef\@enumctr{enum\romannumeral\the\@enumdepth}\list - {\csname label\@enumctr\endcsname}{\usecounter - {\@enumctr}\def\makelabel##1{\hss\llap{\normalshape ##1}}}\fi - \let\@@currentlabel\@currentlabel} - -% commented out Jan 11 93; had been added to version 1.14, but I have no -% idea how it was supposed to work, or what unrobustness it was trying -% to solve (see log). With this code, \@@currentlabel was never assigned. -% -% \let\@savecurrentlabel\@currentlabel} -% -%\@ifundefined{@@currentlabel}{\@currentlabel}{\@savecurrentlabel} - -% **************************************** -% * THEOREM ENVIRONMENTS * -% **************************************** - -% See geomenv.sty - -% ***************************************** -% * SECTIONING * -% ***************************************** - -% Allow up to \presection at bottom of page before new section -% to encourage section to start on fresh page - -\newskip\presection \presection 0pt plus 10ex \relax - -\def\@startsection#1#2#3#4#5#6{\if@noskipsec \leavevmode \fi - \par \@tempskipa #4\relax - \@afterindenttrue - \ifdim \@tempskipa <\z@ \@tempskipa -\@tempskipa \@afterindentfalse\fi - \advance\@tempskipa by\presection - \if@nobreak \everypar{}\else - \addpenalty{\@secpenalty}\addvspace{\@tempskipa}% - \allowbreak\vskip -\presection \fi \@ifstar - {\@ssect{#1}{#2}{#3}{#4}{#5}{#6}}{\@dblarg{\@sect{#1}{#2}{#3}{#4}{#5}{#6}}}} - -% Add a . after section number instead of skipping 1em -% Mess with \addcontentsline -% Automatic labels - -\def\@sect#1#2#3#4#5#6[#7]#8{\def\object@type{#1}% - \ifnum #2>\c@secnumdepth\def\@svsec{}\def\@tempb{}% - \else\refstepcounter{#1}\edef\@svsec{\csname the#1\endcsname. }% - \edef\@tempb{\noexpand\numberline{\csname the#1\endcsname}} \fi - \@tempskipa #5\relax - \def\@tempa{\addcontentsline{toc}{#1}}% - \ifdim \@tempskipa>\z@ - \begingroup #6\relax - \@hangfrom{\hskip #3\relax\@svsec}{\interlinepenalty \@M #8\par}% - \endgroup - \csname #1mark\endcsname{#7}% - \expandafter\@tempa\expandafter{\@tempb #7}% - \ifautolabel\label*{#8}\fi - \else - \def\@svsechd{#6\hskip #3\relax - \@svsec #8\csname #1mark\endcsname {#7}% - \expandafter\@tempa\expandafter{\@tempb #7}% - \ifautolabel\label*{#8}\fi}\fi - \@xsect{#5}} - -% Add automatic content line and label - -\def\@ssect#1#2#3#4#5#6#7{% - \ifnum #2>\c@secnumdepth\def\@tempb{}% - \else \def\@tempb{\numberline{}}\fi - \@tempskipa #5\relax - \def\@tempa{\addcontentsline{toc}{s#1}}% - \ifdim \@tempskipa>\z@ - \begingroup #6\relax - \@hangfrom{\hskip #3}{\interlinepenalty \@M #7\par}% - \endgroup - \csname s#1mark\endcsname{#7}% - \ifstarredcontents\expandafter\@tempa\expandafter{\@tempb #7}\fi - \ifautolabel\label*{#7}\fi - \else - \def\@svsechd{#6\hskip #3\relax #7% - \csname s#1mark\endcsname {#7}% - \ifautolabel\label*{#7}\fi}\fi - \@xsect{#5}} - -\newif\ifstarredcontents\starredcontentstrue -\def\ssubsectionmark#1{} -\def\ssubsubsectionmark#1{} -\def\sparagraphmark#1{} -\def\ssubparagraphmark#1{} - -% ***************************************** -% * TABLE OF CONTENTS, ETC. * -% ***************************************** - -% Don't expand macros when writing lines for the table of contents. - -\def\addcontentsline#1#2#3{\if@filesw \begingroup -\set@key{#3}% -\let\label\@gobble \let\index\@gobble \let\glossary\@gobble - {\let\thepage\relax -\xdef\@gtempa{\write \@auxout{\string\@writefile{#1}{\noexpand\string - \noexpand\contentsline{#2}{\the\@key}{\thepage}}}}\@gtempa} - \if@nobreak \ifvmode\nobreak\fi\fi\endgroup\fi} - -\long\def\addtocontents#1#2{\if@filesw \begingroup -\set@key{#2}% -\let\label\@gobble \let\index\@gobble \let\glossary\@gobble -\edef\@tempa{\write \@auxout {\string\@writefile{#1}{\the\@key}}}\@tempa - \if@nobreak \ifvmode\nobreak\fi\fi\endgroup\fi} - -% **************************************** -% * FLOATS * -% **************************************** - -% Make marginal pars tiny and ragged right - -\long\def\@savemarbox#1#2{\global\setbox#1\vtop{\hsize\marginparwidth - \@parboxrestore\marginparstyle #2}} - -\def\marginparstyle{\tiny\normalshape\mediumseries\raggedright} - -% **************************************** -% * INITIAL DECLARATION COMMANDS * -% **************************************** - -% Don't expand macros in marks. - -\newtoks\@mark -\def\markboth#1#2{{\global\@mark={{#1}{#2}}{% - \mark{\the\@mark}}\if@nobreak\ifvmode\nobreak\fi\fi}} - -\def\markbothsame#1{{\global\@mark={{#1}{#1}}{% - \mark{\the\@mark}}\if@nobreak\ifvmode\nobreak\fi\fi}} - -\def\markright#1{{\expandafter\@markright\the\@mark - {#1}\mark{\the\@mark}}\if@nobreak\ifvmode\nobreak\fi\fi} - -\def\@markright#1#2#3{\global\@mark{{#1}{#3}}} - -\@mark{{}{}} - -% **************************************** -% * OUTPUT * -% **************************************** - -% CHECK if this bug really has disappeared. -% the two lines after ``here was the bug'' -% avoid disappearing \write's before a \marginpar -% at the top of a page (SL 900302). The bug is exemplified by -% \documentstyle{article} -% \begin{document} -% \label{foo}\marginpar{foo} -% \end{document} -% -\def\@specialoutput{\ifnum\outputpenalty > -\@Mii - \@doclearpage - \else - \ifnum \outputpenalty <-\@Miii - \ifnum\outputpenalty<-\@MM \deadcycles\z@\fi - \global\setbox\@holdpg\vbox{\unvbox\@cclv}% - \else % here was the bug - \ifdim\ht\@cclv=\pagegoal\else - \setbox\@tempboxa\vsplit\@cclv to\z@ \unvbox\@tempboxa\fi - \setbox\@tempboxa\box\@cclv - \@pagedp\dp\@holdpg \@pageht\ht\@holdpg - \unvbox\@holdpg - \@next\@currbox\@currlist{\ifnum\count\@currbox >\z@ - \ifvoid\footins\else\advance\@pageht\ht\footins - \advance\@pageht\skip\footins \advance\@pagedp\dp\footins - \insert\footins{\unvbox\footins}\fi - \@addtocurcol\else - \ifvoid\footins\else\insert\footins{\unvbox\footins}\fi - \@addmarginpar\fi}\@latexbug - \ifnum \outputpenalty <\z@ \penalty\interlinepenalty\fi - \fi\fi} - -% Avoid headers on blank pages -\def\cleardoublepage{\clearpage\if@twoside \ifodd\c@page\else - \thispagestyle{plain}\hbox{}\newpage\if@twocolumn\hbox{}\newpage\fi\fi\fi} - -% $Log: geom.sty,v $ -%Revision 1.21 95/08/02 16:22:57 levy -%introduced cite separator -% -%Revision 1.20 95/07/18 18:19:57 levy -%\normalshape migrated from \@item to \enumerate, so \sc will work w/ -%\description, say -% -%Revision 1.19 95/07/03 14:08:49 levy -%NFSS2 changes by John Rawnsley -% -%Revision 1.19 95/07/03 14:07:58 levy -%*** empty log message *** -% -%Revision 1.17 93/08/04 10:00:53 levy -%fixed problem with \ssectionmark (so running heads for Bibliography etc. -%are correct). -% -%Revision 1.16 93/01/31 16:15:20 levy -%created \marginparstyle -% -%Revision 1.16 93/01/12 01:50:02 levy -%*** empty log message *** -% -%Revision 1.15 1992/08/25 19:53:57 levy -%fixed \@mklab (previous fix was nonsense) -% -%Revision 1.14 92/08/25 19:33:50 levy -%@@currentlabel more robust -% -%Revision 1.13 92/07/31 09:50:26 levy -%redefine \@mklab -% -%Revision 1.12 92/07/17 13:44:12 levy -%*** empty log message *** -% -%Revision 1.11 92/07/13 21:54:14 levy -%further cleaned up the environments -% -%Revision 1.10 92/07/13 11:11:48 levy -%*** empty log message *** -% -%Revision 1.9 92/07/13 08:57:20 levy -%changes to geomenv.sty -% -%Revision 1.8 1992/07/06 19:04:42 levy -%sanitize \bibcite, \cite -% -%Revision 1.7 92/06/26 18:46:57 levy -%\reftype -% -%Revision 1.6 92/06/03 11:25:59 levy -%*** empty log message *** -% -%Revision 1.5 92/04/16 12:58:26 levy -%*** empty log message *** -% -%Revision 1.4 92/04/07 09:09:03 levy -%*** empty log message *** -% -%Revision 1.3 1992/03/21 02:37:06 levy -%*** empty log message *** -% -%Revision 1.2 1992/03/20 22:39:40 levy -%*** empty log message *** -% -%Revision 1.1 1992/03/20 19:09:34 levy -%Initial revision -% - diff --git a/Master/texmf-dist/tex/latex/geomsty/geomar10.sty b/Master/texmf-dist/tex/latex/geomsty/geomar10.sty deleted file mode 100644 index 620e34957e5..00000000000 --- a/Master/texmf-dist/tex/latex/geomsty/geomar10.sty +++ /dev/null @@ -1,142 +0,0 @@ -% $Header: /u/levy/texts/geombook/RCS/geomar10.sty,v 1.5 1994/06/14 21:49:20 levy Exp levy $ - -% -% This is the geom style art10 file, by Silvio Levy. -% It contains modifications to art10.sty of 22 Dec 87 -% -% \typeout{Reading geomart10.sty $Revision: 1.5 $ (changes to art10.sty)} - -% make the \parsep 0pt - -\def\small{\@setsize\small{11pt}\ixpt\@ixpt - \abovedisplayskip 9pt plus2pt minus4pt - \belowdisplayskip \abovedisplayskip - \abovedisplayshortskip 0pt plus2.5pt - \belowdisplayshortskip 5pt plus2.5pt minus2.5pt - \def\@listi{\leftmargin\leftmargini \parsep 0pt - \itemsep 2.5pt plus 2pt minus 0pt - \topsep 5pt plus 2pt minus 2pt}} - -\def\footnotesize{\@setsize\footnotesize{9.5pt}\viiipt\@viiipt - \abovedisplayskip 7.2pt plus 2pt minus 4pt% - \belowdisplayskip \abovedisplayskip - \abovedisplayshortskip \z@ plus 1pt% - \belowdisplayshortskip 4pt plus 2pt minus 2pt - \def\@listi{\leftmargin\leftmargini %% Added 22 Dec 87 - \parsep 0pt - \topsep 4pt plus 2pt minus 2pt - \itemsep 2pt plus 1pt minus 1pt}} - -% Make chapter and section heads less huge - -\let\chapheadsize=\LARGE -\let\huge=\Large -\let\Large=\large - -% Increase the page size - -\textwidth 5.5in \oddsidemargin .6in \evensidemargin .4in - -\textheight = 44\baselineskip \advance\textheight by \topskip \topmargin -.25in - -% Increase the parindent - -\parindent 20pt - -% Following change commented out 940614 for the following imperfectly -% understood reason. When the partopsep is NOT set here, it is zero -% at the beginning of a run (even though defined to be 3 +1 -2 in -% art10.sty). When it is set here, it is nonzero, and breaks the -% footnotes on the first page of amsart.sty. - -% Extra vertical space, in addition to -% \parskip and \topsep, added when user -% leaves blank line before environment. -% (Changed from 3 +1 -2) - -%\partopsep 2pt plus 1pt minus 1pt - -% mess with \addcontentsline; \chapheadsize instead of \Huge - -\def\@part[#1]#2{\ifnum \c@secnumdepth >-1\relax % IF secnumdepth > -1 - \refstepcounter{part} % THEN step part counter - \def\@tempa{\addcontentsline{toc}{part}} % - \expandafter\@tempa\expandafter{\thepart % add toc line - \hspace{1em}#1}\else % ELSE add unnumbered line - \addcontentsline{toc}{part}{#1}\fi % FI - {\centering - \ifnum \c@secnumdepth >-1\relax % IF secnumdepth > -1 - \Large\bf Part \thepart % THEN Print 'Part' and number - \par\nobreak % in \Large bold. - \fi % FI - \chapheadsize \bf % - #2\markboth{}{}\par} - \nobreak % TeX penalty to prevent page break. - \vskip 3ex % Space between title and text. - \@afterheading % Routine called after part and - } % section heading. - -\def\@spart#1{{\centering - \chapheadsize \bf - #1\par} % Title. - \nobreak % TeX penalty to prevent page break. - \vskip 3ex % Space between title and text. - \@afterheading % Routine called after part and - } % section heading. - -% Normalize according to \parindent - -\leftmargini\parindent -\listparindent .8\parindent -\leftmarginii .8\parindent -\leftmarginiii .8\parindent -\leftmarginiv .8\parindent -\leftmarginv .8\parindent -\leftmarginvi .8\parindent -\leftmargin\leftmargini -\labelwidth\leftmargini\advance\labelwidth-\labelsep - -% Make \parsep 0 - -\def\@listI{\leftmargin\leftmargini - \parsep 0pt - \topsep 8pt plus 3pt minus 4pt% - \itemsep 4pt plus 2pt minus 1pt} - -\let\@listi\@listI -\@listi - -\def\@listii{\leftmargin\leftmarginii - \labelwidth\leftmarginii\advance\labelwidth-\labelsep - \topsep 4pt plus 2pt minus 1pt - \itemsep 2.5pt plus \p@ minus \p@ - \parsep \z@} - -\def\@listiii{\leftmargin\leftmarginiii - \labelwidth\leftmarginiii\advance\labelwidth-\labelsep - \topsep 2pt plus 1pt minus 1pt - \parsep \z@ \partopsep \p@ plus \z@ minus \p@ - \itemsep \topsep} - -% $Log: geomar10.sty,v $ -%Revision 1.5 1994/06/14 21:49:20 levy -%*** empty log message *** -% -%Revision 1.4 1994/06/14 21:48:58 levy -%*** empty log message *** -% -%Revision 1.3 1994/06/14 21:48:37 levy -%*** empty log message *** -% -%Revision 1.2 1993/12/21 05:16:58 levy -%corrected \footnotesize -% -%Revision 1.1 92/07/11 22:28:19 levy -%Initial revision -% -%Revision 1.1 92/04/07 09:09:06 levy -%Initial revision -% -%Revision 1.1 1992/03/20 22:38:55 levy -%Initial revision -% diff --git a/Master/texmf-dist/tex/latex/geomsty/geomar11.sty b/Master/texmf-dist/tex/latex/geomsty/geomar11.sty deleted file mode 100644 index 05e1601e7e7..00000000000 --- a/Master/texmf-dist/tex/latex/geomsty/geomar11.sty +++ /dev/null @@ -1,130 +0,0 @@ -% $Header: /u/levy/texts/geombook/RCS/geomar11.sty,v 1.2 1994/06/14 21:49:20 levy Exp levy $ - -% -% This is the geom style art11 file, by Silvio Levy. -% It contains modifications to art11.sty of 22 Dec 87 -% -% \typeout{Reading geomart11.sty $Revision: 1.2 $ (changes to art11.sty)} - -% make the \parsep 0pt - -\def\small{\@setsize\small{12pt}\xpt\@xpt - \abovedisplayskip 10pt plus2pt minus5pt - \belowdisplayskip \abovedisplayskip - \abovedisplayshortskip 0pt plus3pt - \belowdisplayshortskip 6pt plus3pt minus3pt - \def\@listi{\leftmargin\leftmargini \parsep 0pt - \itemsep 3pt plus 2pt minus 0pt - \topsep 6pt plus 2pt minus 2pt}} - -\def\footnotesize{\@setsize\footnotesize{11pt}\ixpt\@ixpt - \abovedisplayskip 8pt plus 2pt minus 4pt% - \belowdisplayskip \abovedisplayskip - \abovedisplayshortskip \z@ plus 1pt% - \belowdisplayshortskip 4pt plus 2pt minus 2pt - \def\@listi{\leftmargin\leftmargini %% Added 22 Dec 87 - \parsep 0pt - \topsep 4pt plus 2pt minus 2pt - \itemsep 2pt plus 1pt minus 1pt}} - -% Make chapter and section heads less huge - -\let\chapheadsize=\LARGE -\let\huge=\Large -\let\Large=\large - -% Increase the page size - -\textwidth 5.5in \oddsidemargin .6in \evensidemargin .4in - -\textheight = 44\baselineskip \advance\textheight by \topskip \topmargin -.25in - -% Increase the parindent - -\parindent 20pt - -% Following change commented out 940614 for the following imperfectly -% understood reason. When the partopsep is NOT set here, it is zero -% at the beginning of a run (even though defined to be 3 +1 -2 in -% art11.sty). When it is set here, it is nonzero, and breaks the -% footnotes on the first page of amsart.sty. - -% Extra vertical space, in addition to -% \parskip and \topsep, added when user -% leaves blank line before environment. -% (Changed from 3 +1 -2) - -%\partopsep 2pt plus 1pt minus 1pt - -% mess with \addcontentsline; \chapheadsize instead of \Huge - -\def\@part[#1]#2{\ifnum \c@secnumdepth >-1\relax % IF secnumdepth > -1 - \refstepcounter{part} % THEN step part counter - \def\@tempa{\addcontentsline{toc}{part}} % - \expandafter\@tempa\expandafter{\thepart % add toc line - \hspace{1em}#1}\else % ELSE add unnumbered line - \addcontentsline{toc}{part}{#1}\fi % FI - {\centering - \ifnum \c@secnumdepth >-1\relax % IF secnumdepth > -1 - \Large\bf Part \thepart % THEN Print 'Part' and number - \par\nobreak % in \Large bold. - \fi % FI - \chapheadsize \bf % - #2\markboth{}{}\par} - \nobreak % TeX penalty to prevent page break. - \vskip 3ex % Space between title and text. - \@afterheading % Routine called after part and - } % section heading. - -\def\@spart#1{{\centering - \chapheadsize \bf - #1\par} % Title. - \nobreak % TeX penalty to prevent page break. - \vskip 3ex % Space between title and text. - \@afterheading % Routine called after part and - } % section heading. - -% Normalize according to \parindent - -\leftmargini\parindent -\listparindent .8\parindent -\leftmarginii .8\parindent -\leftmarginiii .8\parindent -\leftmarginiv .8\parindent -\leftmarginv .8\parindent -\leftmarginvi .8\parindent -\leftmargin\leftmargini -\labelwidth\leftmargini\advance\labelwidth-\labelsep - -% Make \parsep 0 - -\def\@listI{\leftmargin\leftmargini - \parsep 0pt - \topsep 9pt plus 3pt minus 5pt% - \itemsep 4.5pt plus 2pt minus 1pt} - -\let\@listi\@listI -\@listi - -\def\@listii{\leftmargin\leftmarginii - \labelwidth\leftmarginii\advance\labelwidth-\labelsep - \topsep 4.5pt plus 2pt minus 1pt - \itemsep 2.5pt plus \p@ minus \p@ - \parsep \z@} - -\def\@listiii{\leftmargin\leftmarginiii - \labelwidth\leftmarginiii\advance\labelwidth-\labelsep - \topsep 2pt plus 1pt minus 1pt - \parsep \z@ \partopsep \p@ plus \z@ minus \p@ - \itemsep \topsep} - -% $Log: geomar11.sty,v $ -%Revision 1.2 1994/06/14 21:49:20 levy -%*** empty log message *** -% -%Revision 1.1 92/04/07 09:09:06 levy -%Initial revision -% -%Revision 1.1 1992/03/20 22:38:55 levy -%Initial revision -% diff --git a/Master/texmf-dist/tex/latex/geomsty/geomar12.sty b/Master/texmf-dist/tex/latex/geomsty/geomar12.sty deleted file mode 100644 index 27f3c9a4f71..00000000000 --- a/Master/texmf-dist/tex/latex/geomsty/geomar12.sty +++ /dev/null @@ -1,132 +0,0 @@ -% $Header: /u/levy/texts/geombook/RCS/geomar12.sty,v 1.3 1994/06/14 21:49:20 levy Exp levy $ - -% -% This is the geom style art12 file, by Silvio Levy. -% It contains modifications to art12.sty of 22 Dec 87 -% -% \typeout{Reading geomart12.sty $Revision: 1.3 $ (changes to art12.sty)} - -% make the \parsep 0pt - -\def\small{\@setsize\small{13.6pt}\xipt\@xipt -\abovedisplayskip 11pt plus3pt minus6pt% -\belowdisplayskip \abovedisplayskip -\abovedisplayshortskip \z@ plus3pt% -\belowdisplayshortskip 6.5pt plus3.5pt minus3pt -\def\@listi{\leftmargin\leftmargini \parsep 0pt - \itemsep 4.5pt plus 2pt minus 0pt - \topsep 9pt plus 3pt minus 5pt}} - -\def\footnotesize{\@setsize\footnotesize{12pt}\xpt\@xpt - \abovedisplayskip 10pt plus2pt minus5pt - \belowdisplayskip \abovedisplayskip - \abovedisplayshortskip 0pt plus3pt - \belowdisplayshortskip 6pt plus3pt minus3pt - \def\@listi{\leftmargin\leftmargini \parsep 0pt - \itemsep 3pt plus 2pt minus 0pt - \topsep 6pt plus 2pt minus 2pt}} - -% Make chapter and section heads less huge - -\let\chapheadsize=\LARGE -\let\huge=\Large -\let\Large=\large - -% Increase the page size - -\textwidth 5.5in \oddsidemargin .6in \evensidemargin .4in - -\textheight = 44\baselineskip \advance\textheight by \topskip \topmargin -.25in - -% Increase the parindent - -\parindent 20pt - -% Following change commented out 940614 for the following imperfectly -% understood reason. When the partopsep is NOT set here, it is zero -% at the beginning of a run (even though defined to be 3 +2 -2 in -% art10.sty). When it is set here, it is nonzero, and breaks the -% footnotes on the first page of amsart.sty. - -% Extra vertical space, in addition to -% \parskip and \topsep, added when user -% leaves blank line before environment. -% (Changed from 3 +2 -2) - -%\partopsep 2pt plus 1pt minus 1pt - -% mess with \addcontentsline; \chapheadsize instead of \Huge - -\def\@part[#1]#2{\ifnum \c@secnumdepth >-1\relax % IF secnumdepth > -1 - \refstepcounter{part} % THEN step part counter - \def\@tempa{\addcontentsline{toc}{part}} % - \expandafter\@tempa\expandafter{\thepart % add toc line - \hspace{1em}#1}\else % ELSE add unnumbered line - \addcontentsline{toc}{part}{#1}\fi % FI - {\centering - \ifnum \c@secnumdepth >-1\relax % IF secnumdepth > -1 - \Large\bf Part \thepart % THEN Print 'Part' and number - \par\nobreak % in \Large bold. - \fi % FI - \chapheadsize \bf % - #2\markboth{}{}\par} - \nobreak % TeX penalty to prevent page break. - \vskip 3ex % Space between title and text. - \@afterheading % Routine called after part and - } % section heading. - -\def\@spart#1{{\centering - \chapheadsize \bf - #1\par} % Title. - \nobreak % TeX penalty to prevent page break. - \vskip 3ex % Space between title and text. - \@afterheading % Routine called after part and - } % section heading. - -% Normalize according to \parindent - -\leftmargini\parindent -\listparindent .8\parindent -\leftmarginii .8\parindent -\leftmarginiii .8\parindent -\leftmarginiv .8\parindent -\leftmarginv .8\parindent -\leftmarginvi .8\parindent -\leftmargin\leftmargini -\labelwidth\leftmargini\advance\labelwidth-\labelsep - -% Make \parsep 0 - -\def\@listI{\leftmargin\leftmargini - \topsep 10pt plus 4pt minus 6pt% - \itemsep 5pt plus 2.5pt minus 1pt - \parsep \z@} - -\let\@listi\@listI -\@listi - -\def\@listii{\leftmargin\leftmarginii - \labelwidth\leftmarginii\advance\labelwidth-\labelsep - \topsep 5pt plus 2.5pt minus \p@ - \itemsep 2.5pt plus \p@ minus \p@ - \parsep \z@} - -\def\@listiii{\leftmargin\leftmarginiii - \labelwidth\leftmarginiii\advance\labelwidth-\labelsep - \topsep 2.5pt plus \p@ minus \p@ - \parsep \z@ \partopsep \p@ plus \z@ minus \p@ - \itemsep \topsep} - -% $Log: geomar12.sty,v $ -%Revision 1.3 1994/06/14 21:49:20 levy -%*** empty log message *** -% -%Revision 1.2 1994/06/14 21:48:58 levy -%*** empty log message *** -% -%Revision 1.1 92/04/07 09:09:07 levy -%Initial revision -% -%Revision 1.1 1992/03/20 22:38:55 levy -%Initial revision -% diff --git a/Master/texmf-dist/tex/latex/geomsty/geomart.sty b/Master/texmf-dist/tex/latex/geomsty/geomart.sty deleted file mode 100644 index 3cf2d58765c..00000000000 --- a/Master/texmf-dist/tex/latex/geomsty/geomart.sty +++ /dev/null @@ -1,193 +0,0 @@ -% $Header: /a/tampa/h/tampa_a/fac/levy/texts/geombook/RCS/geomart.sty,v 1.7 94/07/22 09:55:30 levy Exp Locker: levy $ - -% -% This is the geom style article file, by Silvio Levy. -% It contains modifications to article.sty of <16 Mar 88>. -% -% \typeout{Reading geomart.sty $Revision: 1.7 $ (changes to article.sty)} - -% Marginpars go on right side of page. - -\@mparswitchfalse - -% Input size-dependent information. \@ptsize.sty is defined in book.sty. - -\input geomar1\@ptsize.sty\relax - -% Layout parameters - -\tolerance 1000 -\clubpenalty 10000 -\widowpenalty 10000 -\hfuzz=.1pt - -% First two levels of enumerations are (a) and (i), respectively, -% rather than 1. and (a). - -\let\@@currentlabel\relax %assign initial value - -\def\labelenumi{\theenumi} -\def\theenumi{(\alph{enumi})} -\def\p@enumi{\@@currentlabel} - -\def\labelenumii{\theenumii} -\def\theenumii{(\roman{enumii})} -\def\p@enumii{\@@currentlabel} - -\def\p@enumiii{\@@currentlabel} - -\def\p@enumiv{\@@currentlabel} - -% Less space around contents of \fbox (2pt instead of 3pt) - -\fboxsep = 2pt - -% No explicit \@mkboth needed in \tableofcontents -% marks are automatically added by \section* - -\@ifundefined{contentsname}{\def\contentsname{Contents}}{} -\def\tableofcontents{{\starredcontentsfalse\section*{\contentsname}\@starttoc{toc}}} - -% Contents line for part - -\def\l@part#1#2{\addpenalty{\@secpenalty} - \addvspace{2em plus 1pt} % space above part line - \begingroup - \def\\{\unskip\ \ignorespaces} % deal with \\ in chapter titles --SL - \@tempdima 3em % width of box holding part number, used by - \parindent \z@ %% \numberline - \rightskip \@pnumwidth plus 3em % allow ragged right - \parfillskip -\rightskip % when line wraps around --SL - \hangindent 1.5em % hangindent is same as l@section below --SL - {\bf % set line in boldface - \leavevmode % TeX command to enter horizontal mode. - #1\hfil \hbox to\@pnumwidth{\hss #2}}\par - \nobreak % Never break after part entry - \endgroup} - -% Treat contents entry for section same as the others - -\def\l@section{\@dottedtocline{1}{0em}{2.3em}} -\def\l@subsection{\@dottedtocline{2}{2.3em}{3.2em}} -\def\l@subsubsection{\@dottedtocline{3}{5.5em}{4.1em}} -\def\l@paragraph{\@dottedtocline{4}{9.6em}{5em}} -\def\l@subparagraph{\@dottedtocline{5}{14.6em}{6em}} - -\def\l@ssection{\@dottedtocline{1}{0em}{0em}} -\def\l@ssubsection{\@dottedtocline{2}{2.3em}{0em}} -\def\l@ssubsubsection{\@dottedtocline{3}{5.5em}{0em}} -\def\l@sparagraph{\@dottedtocline{4}{9.6em}{0em}} -\def\l@ssubparagraph{\@dottedtocline{5}{14.6em}{0em}} - -% No explicit \@mkboth needed in \listoffigures \listoftables \thebibliography -% marks are automatically added by \section* - -\@ifundefined{listfigurename}{\def\listfigurename{List of Figures}}{} -\@ifundefined{listtablename}{\def\listtablename{List of Tables}}{} -\def\listoffigures{\section*{\listfigurename}\@starttoc{lof}} -\def\listoftables{\section*{\listtablename}\@starttoc{lot}} - -% no indentation for figure contents line, since there are -% no higher-level entries - -\def\l@figure{\@dottedtocline{1}{0em}{2.3em}} -\let\l@table\l@figure - -\@ifundefined{refname}{\def\refname{References}}{} -\def\thebibliography#1{\section*{\refname}\list - {[\arabic{enumi}]}{\settowidth\labelwidth{[#1]}\leftmargin\labelwidth - \advance\leftmargin\labelsep - \usecounter{enumi}} - \def\newblock{\hskip .11em plus .33em minus .07em} - \sloppy\clubpenalty4000\widowpenalty4000 - \sfcode`\.=1000\relax} - -% Index uses two columns and smaller type. - -\@ifundefined{indexname}{\def\indexname{Index}}{} -\def\theindex{\begingroup\section*{\indexname}\small - \parindent\z@ - \parskip\z@ plus .3pt\relax\let\item\@idxitem - \begin{multicols}2} -\def\endtheindex{\end{multicols}\endgroup} - -\def\glo#1{${}^{\dagger}$#1\index{\dag #1}} - -\@ifundefined{glossaryname}{\def\glossaryname{Glossary}}{} -\newenvironment{theglossary}% - {\begingroup\section*{\glossaryname}\small - \begin{multicols}2}% - {\end{multicols}\endgroup} -\def\entry{\medbreak\@ifnextchar[{\entry@}{\entry@@}} -\def\entry@@#1{\par\noindent{\bf #1.}\enspace\ignorespaces} -\def\entry@[#1]#2{\par\noindent{\bf #2} #1.\enspace\ignorespaces} - -% Indentation in index is smaller (12pt instead of 40pt) - -\def\@idxitem{\par\hangindent 12pt} - -% Allow more of the page to be taken by figures. - -\def\bottomfraction{.7} -\def\floatpagefraction{.7} - -% Captions at set with a width somewhat smaller than the main text width - -\newdimen\@captionmargin\@captionmargin=\parindent -\newdimen\@captionwidth\@captionwidth=\hsize -\advance\@captionwidth by -2\@captionmargin - -% left and right footers (normally set by RCS) - -\def\leftfoot{{}} -\def\rightfoot{{}} - -% Definition of 'headings' page style. - -\def\ps@headings{\let\@mkboth\markboth - \def\@oddfoot{\ifproofing\leftfoot\hfil\rightfoot\unskip\else\hfil\fi} - \def\@evenfoot{\ifproofing\leftfoot\hfil\rightfoot\unskip\else\hfil\fi} - \def\@evenhead{\footnotesize\rm\thepage\hfil\leftmark}% Left heading. - \def\@oddhead{\footnotesize\rm\hbox{}\rightmark\hfil\thepage}%Right heading - \def\ssectionmark##1{\markbothsame{##1}}% - \def\sectionmark##1{{% Expand the \ifnum, not the ##1 - \edef\@tempa{\ifnum \c@secnumdepth >\z@ \thesection. \fi}% - \expandafter \markbothsame \expandafter{\@tempa ##1}}}} - -\def\ps@plain{\let\@mkboth\markboth - \def\@oddfoot{\ifproofing\leftfoot\hfil\rightfoot\else\hfil\fi}% - \def\@evenfoot{\ifproofing\leftfoot\hfil\rightfoot\else\hfil\fi}% - \def\@evenhead{\hfil}\def\@oddhead{\hfil}} - -% Put the new \ps@headings into effect. - -\ps@headings - -% $Log: geomart.sty,v $ -%Revision 1.7 94/07/22 09:55:30 levy -%\contentsname etc. -% -%Revision 1.6 1994/04/08 22:04:06 levy -%initial value for @@currentlabel -% -%Revision 1.5 92/07/17 13:44:17 levy -%*** empty log message *** -% -%Revision 1.4 92/07/13 21:54:23 levy -%further cleaned up the environments -% -%Revision 1.3 92/07/13 08:49:21 levy -%theoremSt -> Theorem -% -%Revision 1.2 92/06/10 12:38:44 levy -%geomart12 -> geomar12 -% -%Revision 1.1 92/04/07 09:09:05 levy -%Initial revision -% -%Revision 1.3 1992/03/20 22:39:40 levy -%*** empty log message *** -% -%Revision 1.2 1992/03/20 19:17:42 levy -%*** empty log message *** -% diff --git a/Master/texmf-dist/tex/latex/geomsty/geombk10.sty b/Master/texmf-dist/tex/latex/geomsty/geombk10.sty deleted file mode 100644 index dba9e2b14ad..00000000000 --- a/Master/texmf-dist/tex/latex/geomsty/geombk10.sty +++ /dev/null @@ -1,157 +0,0 @@ -% $Header: /u/levy/texts/geombook/RCS/geombk10.sty,v 1.2 1993/12/21 05:16:58 levy Exp levy $ - -% -% This is the geom style bk10 file, by Silvio Levy. -% It contains modifications to bk10.sty of <24 Nov 89>. -% -% \typeout{Reading geombk10.sty $Revision: 1.2 $ (changes to bk10.sty)} - -% make the \parsep 0pt - -\def\small{\@setsize\small{11pt}\ixpt\@ixpt - \abovedisplayskip 8pt plus 2pt minus 4pt% - \belowdisplayskip \abovedisplayskip - \abovedisplayshortskip \z@ plus 1pt% - \belowdisplayshortskip 4pt plus 2pt minus 2pt - \def\@listi{\leftmargin\leftmargini %% Added 22 Dec 87 - \parsep 0pt - \topsep 4pt plus 2pt minus 2pt - \itemsep 2pt plus 1pt minus 1pt}} - -\def\footnotesize{\@setsize\footnotesize{9.5pt}\viiipt\@viiipt - \abovedisplayskip 7.2pt plus 2pt minus 4pt% - \belowdisplayskip \abovedisplayskip - \abovedisplayshortskip \z@ plus 1pt% - \belowdisplayshortskip 4pt plus 2pt minus 2pt - \def\@listi{\leftmargin\leftmargini %% Added 22 Dec 87 - \parsep 0pt - \topsep 4pt plus 2pt minus 2pt - \itemsep 2pt plus 1pt minus 1pt}} - -% Make chapter and section heads less huge - -\let\chapheadsize=\LARGE -\let\huge=\Large -\let\Large=\large - -% Increase the page size - -\textwidth 5.5in \oddsidemargin .6in \evensidemargin .4in - -\textheight = 44\baselineskip \advance\textheight by \topskip \topmargin -.25in - -% Increase the parindent - -\parindent 20pt - -% Extra vertical space, in addition to -% \parskip and \topsep, added when user -% leaves blank line before environment. -% (Changed from 3 +2 -2) - -\partopsep 2pt plus 1pt minus 1pt - -% Replaced \Huge by \chapheadsize, added +10pt at end - -\def\@makechapterhead#1{ % Heading for \chapter command - \vspace*{50pt} % Space at top of text page. - { \parindent 0pt \raggedright - \ifnum \c@secnumdepth >\m@ne % IF secnumdepth > -1 THEN - \huge\bf \@chapapp{} \thechapter % Print 'Chapter' and number. - \par - \vskip 20pt \fi % Space between number and title. - \chapheadsize \bf % Title. - #1\par - \nobreak % TeX penalty to prevent page break. - \vskip 40pt plus 10 pt % Space between title and text. - } } - -\def\@makeschapterhead#1{ % Heading for \chapter* command - \vspace*{50pt} % Space at top of page. - { \parindent 0pt \raggedright - \chapheadsize \bf % Title. - #1\par - \nobreak % TeX penalty to prevent page break. - \vskip 40pt plus 10pt % Space between title and text. - } } - -% Don't skip page if proofing - -\def\chapter{\ifproofing\clearpage\else\cleardoublepage\fi - \thispagestyle{chapter} % Page style of chapter page is 'plain' - \global\@topnum\z@ % Prevents figures from going at top of page. - \@afterindentfalse % Suppresses indent in first paragraph. Change - \secdef\@chapter\@schapter} % to \@afterindenttrue to have indent. - -% Define \object@type -% stepcounter section so subsidiary counters (e.g. theorems) get reset -% don't \typeout -% mess with \addcontentsline -% no need for \protect before \addvspace -% automatic label - -\def\@chapter[#1]#2{% - \ifnum \c@secnumdepth >\m@ne \def\object@type{chapter} - \refstepcounter{section}\refstepcounter{chapter} - \def\@tempa{\addcontentsline{toc}{chapter}}% - \edef\@tempb{\noexpand\numberline{\thechapter}}% - \expandafter\@tempa\expandafter{\@tempb #1}% - \else\addcontentsline{toc}{chapter}{#1}\fi - \chaptermark{#1}% - \addtocontents{lof}{\addvspace{10pt}} - \addtocontents{lot}{\addvspace{10pt}} - \if@twocolumn \@topnewpage[\@makechapterhead{#2}]% - \else \@makechapterhead{#2}\@afterheading \fi - \ifautolabel\label*{#2}\fi} - -% add mark and table of contents line - -\def\@schapter#1{% - \schaptermark{#1} - \ifstarredcontents\addcontentsline{toc}{chapter}{#1}\fi - \addtocontents{lof}{\addvspace{10pt}} - \addtocontents{lot}{\addvspace{10pt}} - \if@twocolumn \@topnewpage[\@makeschapterhead{#1}] - \else \@makeschapterhead{#1}\@afterheading\fi} - -% Normalize according to \parindent - -\leftmargini\parindent -\listparindent .8\parindent -\leftmarginii .8\parindent -\leftmarginiii .8\parindent -\leftmarginiv .8\parindent -\leftmarginv .8\parindent -\leftmarginvi .8\parindent -\leftmargin\leftmargini -\labelwidth\leftmargini\advance\labelwidth-\labelsep - -% Make \parsep 0 - -\def\@listI{\leftmargin\leftmargini - \topsep 6pt plus 3pt minus 3pt - \itemsep 3pt plus 2pt minus \p@ - \parsep \z@} -\let\@listi\@listI -\@listi - -\def\@listii{\leftmargin\leftmarginii - \labelwidth\leftmarginii\advance\labelwidth-\labelsep - \topsep 5pt plus 2.5pt minus \p@ - \itemsep 2.5pt plus \p@ minus \p@ - \parsep \z@} - -\def\@listiii{\leftmargin\leftmarginiii - \labelwidth\leftmarginiii\advance\labelwidth-\labelsep - \topsep 2.5pt plus \p@ minus \p@ - \parsep \z@ \partopsep \p@ plus \z@ minus \p@ - \itemsep \topsep} - -% $Log: geombk10.sty,v $ -%Revision 1.2 1993/12/21 05:16:58 levy -%corrected \footnotesize -% -%Revision 1.1 92/07/11 22:35:33 levy -%Initial revision -% - diff --git a/Master/texmf-dist/tex/latex/geomsty/geombk11.sty b/Master/texmf-dist/tex/latex/geomsty/geombk11.sty deleted file mode 100644 index 2c3e403fb94..00000000000 --- a/Master/texmf-dist/tex/latex/geomsty/geombk11.sty +++ /dev/null @@ -1,152 +0,0 @@ -% $Header: /u/levy/texts/geombook/RCS/geombk11.sty,v 1.1 1992/07/11 22:32:09 levy Exp levy $ - -% -% This is the geom style bk12 file, by Silvio Levy. -% It contains modifications to bk12.sty of <24 Nov 89>. -% -% \typeout{Reading geombk12.sty $Revision: 1.1 $ (changes to bk12.sty)} - -% make the \parsep 0pt - -\def\small{\@setsize\small{12pt}\xpt\@xpt - \abovedisplayskip 10pt plus2pt minus5pt - \belowdisplayskip \abovedisplayskip - \abovedisplayshortskip 0pt plus3pt - \belowdisplayshortskip 6pt plus3pt minus3pt - \def\@listi{\leftmargin\leftmargini \parsep 0pt - \itemsep 3pt plus 2pt minus 0pt - \topsep 6pt plus 2pt minus 2pt}} - -\def\footnotesize{\@setsize\footnotesize{11pt}\ixpt\@ixpt - \abovedisplayskip 8pt plus 2pt minus 4pt% - \belowdisplayskip \abovedisplayskip - \abovedisplayshortskip \z@ plus 1pt% - \belowdisplayshortskip 4pt plus 2pt minus 2pt - \def\@listi{\leftmargin\leftmargini %% Added 22 Dec 87 - \parsep 0pt - \topsep 4pt plus 2pt minus 2pt - \itemsep 2pt plus 1pt minus 1pt}} - -% Make chapter and section heads less huge - -\let\chapheadsize=\LARGE -\let\huge=\Large -\let\Large=\large - -% Increase the page size - -\textwidth 5.5in \oddsidemargin .6in \evensidemargin .4in - -\textheight = 44\baselineskip \advance\textheight by \topskip \topmargin -.25in - -% Increase the parindent - -\parindent 20pt - -% Extra vertical space, in addition to -% \parskip and \topsep, added when user -% leaves blank line before environment. -% (Changed from 3 +2 -2) - -\partopsep 2pt plus 1pt minus 1pt - -% Replaced \Huge by \chapheadsize, added +10pt at end - -\def\@makechapterhead#1{ % Heading for \chapter command - \vspace*{50pt} % Space at top of text page. - { \parindent 0pt \raggedright - \ifnum \c@secnumdepth >\m@ne % IF secnumdepth > -1 THEN - \huge\bf \@chapapp{} \thechapter % Print 'Chapter' and number. - \par - \vskip 20pt \fi % Space between number and title. - \chapheadsize \bf % Title. - #1\par - \nobreak % TeX penalty to prevent page break. - \vskip 40pt plus 10 pt % Space between title and text. - } } - -\def\@makeschapterhead#1{ % Heading for \chapter* command - \vspace*{50pt} % Space at top of page. - { \parindent 0pt \raggedright - \chapheadsize \bf % Title. - #1\par - \nobreak % TeX penalty to prevent page break. - \vskip 40pt plus 10pt % Space between title and text. - } } - -% Don't skip page if proofing - -\def\chapter{\ifproofing\clearpage\else\cleardoublepage\fi - \thispagestyle{chapter} % Page style of chapter page is 'plain' - \global\@topnum\z@ % Prevents figures from going at top of page. - \@afterindentfalse % Suppresses indent in first paragraph. Change - \secdef\@chapter\@schapter} % to \@afterindenttrue to have indent. - -% Define \object@type -% stepcounter section so subsidiary counters (e.g. theorems) get reset -% don't \typeout -% mess with \addcontentsline -% no need for \protect before \addvspace -% automatic label - -\def\@chapter[#1]#2{% - \ifnum \c@secnumdepth >\m@ne \def\object@type{chapter} - \refstepcounter{section}\refstepcounter{chapter} - \def\@tempa{\addcontentsline{toc}{chapter}}% - \edef\@tempb{\noexpand\numberline{\thechapter}}% - \expandafter\@tempa\expandafter{\@tempb #1}% - \else\addcontentsline{toc}{chapter}{#1}\fi - \chaptermark{#1}% - \addtocontents{lof}{\addvspace{10pt}} - \addtocontents{lot}{\addvspace{10pt}} - \if@twocolumn \@topnewpage[\@makechapterhead{#2}]% - \else \@makechapterhead{#2}\@afterheading \fi - \ifautolabel\label*{#2}\fi} - -% add mark and table of contents line - -\def\@schapter#1{% - \schaptermark{#1} - \ifstarredcontents\addcontentsline{toc}{chapter}{#1}\fi - \addtocontents{lof}{\addvspace{10pt}} - \addtocontents{lot}{\addvspace{10pt}} - \if@twocolumn \@topnewpage[\@makeschapterhead{#1}] - \else \@makeschapterhead{#1}\@afterheading\fi} - -% Normalize according to \parindent - -\leftmargini\parindent -\listparindent .8\parindent -\leftmarginii .8\parindent -\leftmarginiii .8\parindent -\leftmarginiv .8\parindent -\leftmarginv .8\parindent -\leftmarginvi .8\parindent -\leftmargin\leftmargini -\labelwidth\leftmargini\advance\labelwidth-\labelsep - -% Make \parsep 0 - -\def\@listI{\leftmargin\leftmargini - \topsep 6pt plus 3pt minus 3pt - \itemsep 3pt plus 2pt minus \p@ - \parsep \z@} -\let\@listi\@listI -\@listi - -\def\@listii{\leftmargin\leftmarginii - \labelwidth\leftmarginii\advance\labelwidth-\labelsep - \topsep 5pt plus 2.5pt minus \p@ - \itemsep 2.5pt plus \p@ minus \p@ - \parsep \z@} - -\def\@listiii{\leftmargin\leftmarginiii - \labelwidth\leftmarginiii\advance\labelwidth-\labelsep - \topsep 2.5pt plus \p@ minus \p@ - \parsep \z@ \partopsep \p@ plus \z@ minus \p@ - \itemsep \topsep} - -% $Log: geombk11.sty,v $ -%Revision 1.1 1992/07/11 22:32:09 levy -%Initial revision -% diff --git a/Master/texmf-dist/tex/latex/geomsty/geombk12.sty b/Master/texmf-dist/tex/latex/geomsty/geombk12.sty deleted file mode 100644 index 062484cb150..00000000000 --- a/Master/texmf-dist/tex/latex/geomsty/geombk12.sty +++ /dev/null @@ -1,157 +0,0 @@ -% $Header: /a/tampa/h/tampa_a/fac/levy/texts/geombook/RCS/geombk12.sty,v 1.3 92/06/18 16:56:17 levy Exp $ - -% -% This is the geom style bk12 file, by Silvio Levy. -% It contains modifications to bk12.sty of <24 Nov 89>. -% -% \typeout{Reading geombk12.sty $Revision: 1.3 $ (changes to bk12.sty)} - -% make the \parsep 0pt - -\def\small{\@setsize\small{13.6pt}\xipt\@xipt - \abovedisplayskip 11pt plus3pt minus6pt - \belowdisplayskip \abovedisplayskip - \abovedisplayshortskip 0pt plus3pt - \belowdisplayshortskip 6.5pt plus3.5pt minus3pt - \def\@listi{\leftmargin\leftmargini \parsep 0pt - \itemsep 4.5pt plus 2pt minus 0pt - \topsep 9pt plus 3pt minus 5pt}} - -\def\footnotesize{\@setsize\footnotesize{12pt}\xpt\@xpt - \abovedisplayskip 10pt plus2pt minus5pt - \belowdisplayskip \abovedisplayskip - \abovedisplayshortskip 0pt plus3pt - \belowdisplayshortskip 6pt plus3pt minus3pt - \def\@listi{\leftmargin\leftmargini \parsep 0pt - \itemsep 3pt plus 2pt minus 0pt - \topsep 6pt plus 2pt minus 2pt}} - -% Make chapter and section heads less huge - -\let\chapheadsize=\LARGE -\let\huge=\Large -\let\Large=\large - -% Increase the page size - -\textwidth 5.5in \oddsidemargin .6in \evensidemargin .4in - -\textheight = 44\baselineskip \advance\textheight by \topskip \topmargin -.25in - -% Increase the parindent - -\parindent 20pt - -% Extra vertical space, in addition to -% \parskip and \topsep, added when user -% leaves blank line before environment. -% (Changed from 3 +2 -2) - -\partopsep 2pt plus 1pt minus 1pt - -% Replaced \Huge by \chapheadsize, added +10pt at end - -\def\@makechapterhead#1{ % Heading for \chapter command - \vspace*{50pt} % Space at top of text page. - { \parindent 0pt \raggedright - \ifnum \c@secnumdepth >\m@ne % IF secnumdepth > -1 THEN - \huge\bf \@chapapp{} \thechapter % Print 'Chapter' and number. - \par - \vskip 20pt \fi % Space between number and title. - \chapheadsize \bf % Title. - #1\par - \nobreak % TeX penalty to prevent page break. - \vskip 40pt plus 10 pt % Space between title and text. - } } - -\def\@makeschapterhead#1{ % Heading for \chapter* command - \vspace*{50pt} % Space at top of page. - { \parindent 0pt \raggedright - \chapheadsize \bf % Title. - #1\par - \nobreak % TeX penalty to prevent page break. - \vskip 40pt plus 10pt % Space between title and text. - } } - -% Don't skip page if proofing - -\def\chapter{\ifproofing\clearpage\else\cleardoublepage\fi - \thispagestyle{chapter} % Page style of chapter page is 'plain' - \global\@topnum\z@ % Prevents figures from going at top of page. - \@afterindentfalse % Suppresses indent in first paragraph. Change - \secdef\@chapter\@schapter} % to \@afterindenttrue to have indent. - -% Define \object@type -% stepcounter section so subsidiary counters (e.g. theorems) get reset -% don't \typeout -% mess with \addcontentsline -% no need for \protect before \addvspace -% automatic label - -\def\@chapter[#1]#2{% - \ifnum \c@secnumdepth >\m@ne \def\object@type{chapter} - \refstepcounter{section}\refstepcounter{chapter} - \def\@tempa{\addcontentsline{toc}{chapter}}% - \edef\@tempb{\noexpand\numberline{\thechapter}}% - \expandafter\@tempa\expandafter{\@tempb #1}% - \else\addcontentsline{toc}{chapter}{#1}\fi - \chaptermark{#1}% - \addtocontents{lof}{\addvspace{10pt}} - \addtocontents{lot}{\addvspace{10pt}} - \if@twocolumn \@topnewpage[\@makechapterhead{#2}]% - \else \@makechapterhead{#2}\@afterheading \fi - \ifautolabel\label*{#2}\fi} - -% add mark and table of contents line - -\def\@schapter#1{% - \schaptermark{#1} - \ifstarredcontents\addcontentsline{toc}{chapter}{#1}\fi - \addtocontents{lof}{\addvspace{10pt}} - \addtocontents{lot}{\addvspace{10pt}} - \if@twocolumn \@topnewpage[\@makeschapterhead{#1}] - \else \@makeschapterhead{#1}\@afterheading\fi} - -% Normalize according to \parindent - -\leftmargini\parindent -\listparindent .8\parindent -\leftmarginii .8\parindent -\leftmarginiii .8\parindent -\leftmarginiv .8\parindent -\leftmarginv .8\parindent -\leftmarginvi .8\parindent -\leftmargin\leftmargini -\labelwidth\leftmargini\advance\labelwidth-\labelsep - -% Make \parsep 0 - -\def\@listI{\leftmargin\leftmargini - \topsep 6pt plus 3pt minus 3pt - \itemsep 3pt plus 2pt minus \p@ - \parsep \z@} -\let\@listi\@listI -\@listi - -\def\@listii{\leftmargin\leftmarginii - \labelwidth\leftmarginii\advance\labelwidth-\labelsep - \topsep 5pt plus 2.5pt minus \p@ - \itemsep 2.5pt plus \p@ minus \p@ - \parsep \z@} - -\def\@listiii{\leftmargin\leftmarginiii - \labelwidth\leftmarginiii\advance\labelwidth-\labelsep - \topsep 2.5pt plus \p@ minus \p@ - \parsep \z@ \partopsep \p@ plus \z@ minus \p@ - \itemsep \topsep} - -% $Log: geombk12.sty,v $ -%Revision 1.3 92/06/18 16:56:17 levy -%footers in chapter openers -% -%Revision 1.2 92/04/07 09:09:08 levy -%*** empty log message *** -% -%Revision 1.1 1992/03/20 22:38:55 levy -%Initial revision -% diff --git a/Master/texmf-dist/tex/latex/geomsty/geombook.sty b/Master/texmf-dist/tex/latex/geomsty/geombook.sty deleted file mode 100644 index a3ca2320aee..00000000000 --- a/Master/texmf-dist/tex/latex/geomsty/geombook.sty +++ /dev/null @@ -1,249 +0,0 @@ -% $Header: /a/tampa/h/tampa_a/fac/levy/texts/geombook/RCS/geombook.sty,v 1.13 94/07/22 09:55:37 levy Exp Locker: levy $ - -% -% This is the geom style book file, by Silvio Levy. -% It contains modifications to book.sty of <24 Nov 89>. -% -% \typeout{Reading geombook.sty $Revision: 1.13 $ (changes to book.sty)} - -% Marginpars go on right side of page. - -\@mparswitchfalse - -% Input size-dependent information. \@ptsize.sty is defined in book.sty. - -\input geombk1\@ptsize.sty\relax - -% Layout parameters - -\tolerance 1000 -\clubpenalty 10000 -\widowpenalty 10000 -\hfuzz=.1pt - -% syntatic sugar for \includeonly -% \chap1{34} expands to chap1/1.3,chap1/1.4 - -\def\chap#1#2{\ch@p#1#2!} -\def\ch@p#1#2{\if#2!\else chap#1/#1.#2,\expandafter\ch@p\expandafter#1\fi} - -% First two levels of enumerations are (a) and (i), respectively, -% rather than 1. and (a). - -\let\@@currentlabel\relax %assign initial value - -\def\labelenumi{\theenumi} -\def\theenumi{(\alph{enumi})} -\def\p@enumi{\@@currentlabel} - -\def\labelenumii{\theenumii} -\def\theenumii{(\roman{enumii})} -\def\p@enumii{\@@currentlabel} - -\def\p@enumiii{\@@currentlabel} - -\def\p@enumiv{\@@currentlabel} - -% Less space around contents of \fbox (2pt instead of 3pt) - -\fboxsep = 2pt - -% mess with \addcontentsline; \chapheadsize instead of \Huge - -\def\@part[#1]#2{\ifnum \c@secnumdepth >-2\relax % IF secnumdepth > -2 - \refstepcounter{part} % THEN step part counter - \def\@tempa{\addcontentsline{toc}{part}} % - \expandafter\@tempa\expandafter{\thepart % add toc line - \hspace{1em}#1}\else % ELSE add unnumbered line - \addcontentsline{toc}{part}{#1}\fi % FI - \markboth{}{} - {\centering - \ifnum \c@secnumdepth >-2\relax % IF secnumdepth > -2 - \huge\bf Part \thepart % THEN Print 'Part' and number - \par % in \huge bold. - \vskip 20pt \fi % Add space before title. - \chapheadsize \bf % FI - #2\par}\@endpart} - -\def\@spart#1{\ifnum \c@secnumdepth >-2\relax % IF secnumdepth > -2 - \def\@tempa{\addcontentsline{toc}{spart}} % - \expandafter\@tempa\expandafter{#1}\else % ELSE add unnumbered line - \addcontentsline{toc}{spart}{#1}\fi % FI - {\centering \chapheadsize \bf #1\par}\@endpart} - -% No explicit \@mkboth needed in \tableofcontents -% marks are automatically added by \chapter* - -\@ifundefined{contentsname}{\def\contentsname{Contents}}{} -\def\tableofcontents{\@restonecolfalse\if@twocolumn\@restonecoltrue\onecolumn - \fi{\starredcontentsfalse\chapter*{\contentsname}}% - \@starttoc{toc}\if@restonecol\twocolumn\fi} - -% Contents line for chapter - -\def\l@chapter#1#2{\addpenalty{-\@highpenalty} - \vskip 1.0em plus 1pt % space above chapter line - \@tempdima 1.5em % width of box holding chapter number - \begingroup - \def\\{\unskip\ \ignorespaces} % deal with \\ in chapter titles --SL - \hyphenpenalty10000 % prohibit hyphenation --SL - \parindent \z@ - \rightskip \@pnumwidth plus 3em % allow ragged right - \parfillskip -\rightskip % when line wraps around --SL - \hangindent 1.5em % hangindent is same as l@section below --SL - \bf % Boldface. - \leavevmode % TeX command to enter horizontal mode. - \advance\leftskip\@tempdima %% added 5 Feb 88 to conform to - \hskip -\leftskip %% 25 Jan 88 change to \numberline - #1\nobreak\hfil \nobreak\hbox to\@pnumwidth{\hss #2}\par - \penalty\@highpenalty %% added 24 May 89 as suggested by J. Leichter - \endgroup} - -% Contents line for part is the same as for chapter - -\let\l@part\l@chapter -\let\l@spart\l@chapter - -\let\l@schapter\l@chapter -\def\l@ssection{\@dottedtocline{1}{1.5em}{0em}} -\def\l@ssubsection{\@dottedtocline{2}{3.8em}{0em}} -\def\l@ssubsubsection{\@dottedtocline{3}{7.0em}{0em}} -\def\l@sparagraph{\@dottedtocline{4}{10em}{0em}} -\def\l@ssubparagraph{\@dottedtocline{5}{12em}{0em}} - -% No explicit \@mkboth needed in \listoffigures \listoftables \thebibliography -% marks are automatically added by \chapter* - -\@ifundefined{listfigurename}{\def\listfigurename{List of Figures}}{} -\@ifundefined{listtablename}{\def\listtablename{List of Tables}}{} -\def\listoffigures{\@restonecolfalse\if@twocolumn\@restonecoltrue\onecolumn - \fi\chapter*{\listfigurename}\@starttoc{lof}\if@restonecol - \twocolumn\fi} - -\def\listoftables{\@restonecolfalse\if@twocolumn\@restonecoltrue\onecolumn - \fi\chapter*{\listtablename}\@starttoc{lot}\if@restonecol - \twocolumn\fi} - -% no indentation for figure contents line, since there are -% no higher-level entries - -\def\l@figure{\@dottedtocline{1}{0em}{2.3em}} -\let\l@table\l@figure - -\@ifundefined{bibname}{\def\bibname{Bibliography}}{} -\def\thebibliography#1{\chapter*{\bibname}\list - {[\arabic{enumi}]}{\settowidth\labelwidth{[#1]}\leftmargin\labelwidth - \advance\leftmargin\labelsep - \usecounter{enumi}} - \def\newblock{\hskip .11em plus .33em minus .07em} - \sloppy\clubpenalty4000\widowpenalty4000 - \sfcode`\.=1000\relax} - -% Index uses two columns and smaller type. - -\@ifundefined{indexname}{\def\indexname{Index}}{} -\def\theindex{\begingroup\chapter*{\indexname}\small - \parindent\z@ - \parskip\z@ plus .3pt\relax\let\item\@idxitem - \begin{multicols}2} -\def\endtheindex{\end{multicols}\endgroup} - -\def\glo#1{${}^{\dagger}$#1\index{\dag #1}} - -\@ifundefined{glossaryname}{\def\glossaryname{Glossary}}{} -\newenvironment{theglossary}% - {\begingroup\chapter*{\glossaryname}\small - \begin{multicols}2}% - {\end{multicols}\endgroup} -\def\entry{\medbreak\@ifnextchar[{\entry@}{\entry@@}} -\def\entry@@#1{\par\noindent{\bf #1.}\enspace\ignorespaces} -\def\entry@[#1]#2{\par\noindent{\bf #2} #1.\enspace\ignorespaces} - -% Indentation in index is smaller (12pt instead of 40pt) - -\def\@idxitem{\par\hangindent 12pt} - -% Allow more of the page to be taken by figures. - -\def\bottomfraction{.7} -\def\floatpagefraction{.7} - -% Captions at set with a width somewhat smaller than the main text width - -\newdimen\@captionmargin\@captionmargin=\parindent -\newdimen\@captionwidth %not set here because depends on hsize - -% left and right footers (normally set by RCS) - -\def\leftfoot{{}} -\def\rightfoot{{}} - -% Definition of 'headings' page style. - -\def\ps@headings{\let\@mkboth\markboth - \def\@oddfoot{\ifproofing\leftfoot\hfil\rightfoot\else\hfil\fi}% - \def\@evenfoot{\ifproofing\leftfoot\hfil\rightfoot\else\hfil\fi}% - \def\@evenhead{\footnotesize\rm\thepage\hfil\leftmark}% Left heading. - \def\@oddhead{\footnotesize\rm\hbox{}\rightmark\hfil\thepage}%Right heading - \def\chaptermark##1{{% Expand the \ifnum, not the ##1 - \edef\@tempa{\ifnum \c@secnumdepth >\m@ne \@chapapp\ \thechapter. \fi}% - \expandafter \markboth \expandafter{\@tempa ##1}{}}}% - \def\schaptermark##1{\markboth {##1}{##1}}% - \def\ssectionmark##1{\markbothsame{##1}}% - \def\sectionmark##1{{% Expand the \ifnum, not the ##1 - \edef\@tempa{\ifnum \c@secnumdepth >\z@ \thesection. \fi}% - \expandafter \markright \expandafter{\@tempa ##1}}}} - -% footline in \ps@plain and \ps@chapter gets no page number - -\def\ps@chapter{\let\@mkboth\markboth - \def\@oddfoot{\ifproofing\leftfoot\hfil\rightfoot\else\hfil\fi}% - \def\@evenfoot{\ifproofing\leftfoot\hfil\rightfoot\else\hfil\fi}% - \def\@evenhead{\hfil}\def\@oddhead{\hfil}} - -\def\ps@plain{\let\@mkboth\@gobbletwo - \def\@oddhead{}\def\@oddfoot{}% - \def\@evenhead{}\let\@evenfoot\@oddfoot} - -% Put the new \ps@headings into effect. - -\ps@headings - -% $Log: geombook.sty,v $ -%Revision 1.13 94/07/22 09:55:37 levy -%\contentsname etc. -% -%Revision 1.12 1994/05/11 17:07:26 levy -%*** empty log message *** -% -%Revision 1.11 1994/05/08 06:05:01 levy -%schapter etc. -% -%Revision 1.10 1994/04/27 07:15:50 levy -%ssectionmark -% -%Revision 1.9 1994/04/08 22:04:06 levy -%initial value for @@currentlabel -% -%Revision 1.8 92/07/17 13:44:19 levy -%*** empty log message *** -% -%Revision 1.7 92/07/13 21:54:25 levy -%further cleaned up the environments -% -%Revision 1.6 92/07/13 08:46:31 levy -%theoremSt -> Theorem -% -%Revision 1.5 92/06/18 16:55:56 levy -%footers in chapter openers -%caption width error -% -%Revision 1.4 92/04/07 09:09:09 levy -%*** empty log message *** -% -%Revision 1.3 1992/03/20 22:39:40 levy -%*** empty log message *** -% -%Revision 1.2 1992/03/20 19:17:42 levy -%*** empty log message *** -% diff --git a/Master/texmf-dist/tex/latex/geomsty/geomenv.sty b/Master/texmf-dist/tex/latex/geomsty/geomenv.sty deleted file mode 100644 index 338ebc4b910..00000000000 --- a/Master/texmf-dist/tex/latex/geomsty/geomenv.sty +++ /dev/null @@ -1,189 +0,0 @@ -% $Header: /usr/home/levy/texts/geomsty/RCS/geomenv.sty,v 1.15 95/12/13 20:32:50 levy Exp Locker: levy $ - -\@ifundefined{@@newtheorem}{}{\endinput} - -% -% \newtheorem is modified so as to accept a (first) optional argument. -% If this is present, the new theorem type ``foo'' will spawn an inner -% environment ``foo@''. The optional argument contains two -% brace-delimited token sequences, be inserted before and after the inner -% environment starts. -% -\def\newtheorem{\@ifnextchar[{\@newtheorem}{\@newtheorem[{}{}]}}%] - -\long\def\@newtheorem[#1]{\@@newtheorem#1} - -\long\def\@@newtheorem#1#2#3{% - \newenvironment{#3}% - {\def\object@type{#3}#1\@ifnextchar[{\@enva{#3}{#2}}{\@envb{#3}{#2}}}%] - {\end{#3@}}% - \@ifnextchar[{\@othm{#3@}}{\@nnthm{#3}}%] -} - -\def\@nnthm#1#2{% -\@ifnextchar[{\@xnnthm{#1}{#2}}{\@ynnthm{#1}{#2}}} - -\def\unnumbered#1{\expandafter\let\csname the#1\endcsname\relax} - -\def\@xnnthm#1#2[#3]{\@definecounter{#1}\@addtoreset{#1}{#3}% -\expandafter\xdef\csname the#1\endcsname{\expandafter\noexpand - \csname the#3\endcsname \@thmcountersep \@thmcounter{#1}}% -\global\@namedef{#1@}{\@thm{#1}{#2}}\global\@namedef{end#1@}{\@endtheorem}} - -\def\@ynnthm#1#2{\@definecounter{#1}% -\expandafter\xdef\csname the#1\endcsname{\@thmcounter{#1}}% -\global\@namedef{#1@}{\@thm{#1}{#2}}\global\@namedef{end#1@}{\@endtheorem}} - -\def\@enva#1#2[#3]{\begin{#1@}[#3]#2} -\def\@envb#1#2{\begin{#1@}#2} - -% -% Avoid indentation after end of theorem-like environment. -% - -\def\end#1{\csname end#1\endcsname\@checkend{#1}% - \expandafter\endgroup \if@endpe \@doendpe \@restorepar \fi - \if@ignore \global\@ignorefalse \ignorespaces\fi} - -% -% \theoremintro allows the user to choose how the theorem take is -% going to look like. -% - -\def\theoremintro#1{\normalshape\bf#1. } -% -% cannot use \@ifempty for this test because #2 typically looks like -% \csname thetheorem\csname, and \thetheorem has been \let to \relax. -% -\def\thrmintro#1#2{#1% - \def\@tempa{#1}\ifx\@tempa\@empty\else - \expandafter\let\expandafter\@tempa#2% This gives \thetheorem - \ifx\@tempa\relax\else{ }\fi\fi#2} - -\def\@begintheorem#1#2{\trivlist\item[\hskip\labelsep - \theoremintro{\thrmintro{#1}{#2}}\hskip-\labelsep]} - -\def\@opargbegintheorem#1#2#3{\trivlist\item[\hskip \labelsep - \theoremintro{\thrmintro{#1}{#2} (#3)}\hskip-\labelsep]\ifautolabel\label*{#3}\fi} - -% -% \specialdigits causes digits and punctuation to become active -% and print in roman type. \regulardigits cancels that. -% - -\def\dowith#1{\let\@tempa#1% - \@tempa,\@tempa.\@tempa:\@tempa;\@tempa(\@tempa)\@tempa!\@tempa?% - \@tempa0\@tempa1\@tempa2\@tempa3\@tempa4% - \@tempa5\@tempa6\@tempa7\@tempa8\@tempa9} -% -\def\makeactive#1{\catcode`#1=13} -\def\makeother#1{\catcode\expandafter`\noexpand#1=12} -\def\makechoice#1{\edef#1{% - \noexpand\ifmmode\string#1% - \noexpand\else\noexpand\ifhmode\/\noexpand\fi% - {\noexpand\normalshape\string#1}\noexpand\fi}} -% -\def\regulardigits{\dowith\makeother} - -{\dowith\makeactive -\gdef\specialdigits{% -\dowith\makeactive -\let\@tempa\makechoice - \@tempa,\@tempa.\@tempa:\@tempa;\@tempa(\@tempa)\@tempa!\@tempa?% - \@tempa0\@tempa1\@tempa2\@tempa3\@tempa4% - \@tempa5\@tempa6\@tempa7\@tempa8\@tempa9}% -} - -% The proof environment takes an optional argument, which defaults -% to \prooftag (which should be set by theorem-like environments). -% This argument is stored in \provedbox (after being passed to -% \provedboxcontents), to be printed in the ``proved box'' at -% the end of the proof. It is also printed at the beginning of proof, -% after being passed to \proofintro. - -% If the proof -% ends with a displayed formula, it is recommented that the proved box -% be placed next to the formula (as if it were a tag). This is done -% by inserting \proved before the closing $$. In even more difficult -% cases (e.g., if the formula already has a tag, or is part of a -% multi-line display), plop \box\provedbox where we want the box to be. - -\def\prooftag{} -\def\setprooftag{\xdef\prooftag{\@currentlabel}} - -\def\proof{} -\renewenvironment{proof} - {\trivlist\item[]\@ifnextchar[{\pro@f}{\pro@f[\prooftag]}}%] - {\ifvoid\provedbox\else\hproved\fi\endtrivlist} - -% the next few lines, parallel to the Theorem setup, don't work for -% two reasons: \provedbox is set within a group and so disappears, and -% the nextchar seen by processproof is always \hskip. -%\newenvironment{proof} -% {\trivlist\item[\hskip\labelsep\process@proof\hskip-\labelsep]} -% {\ifvoid\provedbox\else\hproved\fi\endtrivlist} -%\def\process@proof{\@ifnextchar[{\pro@f}{\pro@f[\prooftag]}}%] - -\def\pro@f[#1]{\setbox\provedbox\hbox{\provedboxcontents{#1}}\proofintro{#1}} - -\def\proofintro#1{\expandafter\def\expandafter\@tempa\expandafter{#1}% - {\it Proof\ifx\@tempa\empty\else\ of #1\fi. }\ignorespaces} - -\def\provedboxcontents#1{\expandafter\def\expandafter\@tempa\expandafter{#1}% - \ifx\@tempa\empty$\square$\else\fbox{\small#1}\fi} - -\newbox\provedbox - -\def\proved{\ifmmode\eqno{\box\provedbox}\else\hproved\fi} - -\def\hproved{\unskip\nobreak\hfil\penalty50\hskip.5em\hbox{}\nobreak\hfil - \box\provedbox{\parfillskip=0pt\finalhyphendemerits=0\par}} - -% $Log: geomenv.sty,v $ -%Revision 1.15 95/12/13 20:32:50 levy -%make {proof} a redefinition instead of a definition -% -%Revision 1.14 95/07/22 13:32:31 levy -%put space after period in \theoremintro -%(while at the same time removing the \labelsep) -% -%Revision 1.13 93/08/18 08:35:24 levy -%> eliminated space for \newtheorem{justnumber}{} -%added definition of \unnumbered -% -%Revision 1.12 1993/03/16 23:55:14 levy -%*** empty log message *** -% -%Revision 1.11 93/03/07 23:08:41 levy -%removed a repeated invocation of \theoremintro in \opargbegintheorem -% -%Revision 1.10 1993/01/10 20:57:03 levy -%comparison in \proofintro should have \edef, not \def -% -%Revision 1.9 1993/01/10 17:11:12 levy -%*** empty log message *** -% -%Revision 1.8 92/10/01 15:31:59 levy -%fixed space in "Theorem ." -% -%Revision 1.7 92/07/17 13:44:21 levy -%*** empty log message *** -% -%Revision 1.6 92/07/13 21:54:27 levy -%further cleaned up the environments -% -%Revision 1.5 92/07/13 11:12:10 levy -%big change (abolished MakeStEnv) -% -%Revision 1.4 92/06/15 19:15:35 levy -%fixed disappearing punctuation in fancy italics -% -%Revision 1.3 92/06/03 11:25:24 levy -%active punctuation -% -%Revision 1.2 92/04/07 09:08:56 levy -%*** empty log message *** -% -%Revision 1.1 1992/03/21 02:42:28 levy -%Initial revision -% diff --git a/Master/texmf-dist/tex/latex/geomsty/geomeqns.sty b/Master/texmf-dist/tex/latex/geomsty/geomeqns.sty deleted file mode 100644 index 95e39630285..00000000000 --- a/Master/texmf-dist/tex/latex/geomsty/geomeqns.sty +++ /dev/null @@ -1,49 +0,0 @@ -% $Header: /u/levy/texts/geomsty/RCS/geomeqns.sty,v 1.6 95/07/01 02:23:17 levy Exp Locker: levy $ - -% format equation numbers like subsection numbers - -\def\@eqnnum{\hbox{\normalshape\bf \theequation.}} - -% set equations on left side - -\def\equation{$$ % $$ BRACE MATCHING HACK - \def\object@type{equation}\refstepcounter{equation}} -\def\endequation{\leqno \@eqnnum % $$ BRACE MATCHING HACK - $$\global\@ignoretrue} - -\def\eqnarray{\def\object@type{equation}\stepcounter{equation}% - \edef\@currentlabel{\theequation} - \global\@eqnswtrue\global\@eqcnt\z@\tabskip\@centering\let\\=\@eqncr - $$\halign to\displaywidth\bgroup\@eqnsel\hskip\@centering % $$BRACE MATCHING - $\displaystyle\tabskip\z@{##}$&\global\@eqcnt\@ne\hfil${}##{}$\hfil - &\global\@eqcnt\tw@ $\displaystyle\tabskip\z@{##}$\hfil - \tabskip\@centering&\llap{##}\tabskip\z@\cr} -\def\endeqnarray{\@@eqncr\egroup - \global\advance\c@equation\m@ne$$\global\@ignoretrue} -\def\@@eqncr{\let\@tempa\relax - \ifcase\@eqcnt \def\@tempa{& & &}\or \def\@tempa{& &} - \else \def\@tempa{&}\fi - \@tempa - \if@eqnsw\hbox to .01pt{}\rlap{\rm \hskip -\displaywidth\@eqnnum}% - \stepcounter{equation}\fi - \global\@eqnswtrue\global\@eqcnt\z@\cr} -\def\@eqncr{{\ifnum0=`}\fi\@ifstar{\global\@eqpen\@M - \@yeqncr}{\global\@eqpen\interdisplaylinepenalty \@yeqncr}% - \edef\@currentlabel{\theequation }} - -% $Log: geomeqns.sty,v $ -%Revision 1.6 95/07/01 02:23:17 levy -%fixed currentlabel inside eqnarray -% -%Revision 1.5 92/07/13 21:54:29 levy -%further cleaned up the environments -% -%Revision 1.4 92/07/13 08:46:04 levy -%theoremSt -> Theorem -% -%Revision 1.3 92/04/02 09:08:39 levy -%*** empty log message *** -% -%Revision 1.2 1992/03/20 19:17:42 levy -%*** empty log message *** -% diff --git a/Master/texmf-dist/tex/latex/geomsty/geomfig.sty b/Master/texmf-dist/tex/latex/geomsty/geomfig.sty deleted file mode 100644 index 6d2753a4df3..00000000000 --- a/Master/texmf-dist/tex/latex/geomsty/geomfig.sty +++ /dev/null @@ -1,168 +0,0 @@ -% $Header: /u/levy/texts/geomsty/RCS/geomfig.sty,v 1.10 95/07/20 13:42:16 levy Exp Locker: levy $ - -\@ifundefined{multifig}{}{\endinput} -\input geompsfi.sty - -% set \object@type - -\def\@xfloat#1[#2]{\ifhmode \@bsphack\@floatpenalty -\@Mii\else - \@floatpenalty-\@Miii\fi\def\@captype{#1}\ifinner - \@parmoderr\@floatpenalty\z@ - \else\@next\@currbox\@freelist{\@tempcnta\csname ftype@#1\endcsname - \multiply\@tempcnta\@xxxii\advance\@tempcnta\sixt@@n - \@tfor \@tempa :=#2\do - {\if\@tempa h\advance\@tempcnta \@ne\fi - \if\@tempa t\advance\@tempcnta \tw@\fi - \if\@tempa b\advance\@tempcnta 4\relax\fi - \if\@tempa p\advance\@tempcnta 8\relax\fi - }\global\count\@currbox\@tempcnta}\@fltovf\fi - \def\object@type{#1}% - \global\setbox\@currbox\vbox\bgroup - \hsize\columnwidth \@parboxrestore} - -% -% Higher-level environments for figures -% - -\newenvironment{Table}{\@ifnextchar[%] - {\@Float{table}}{\@Float{table}[htbp]}}{\end@Float{table}} -\newenvironment{Figure}{\@ifnextchar[%] - {\@Float{figure}}{\@Float{figure}[htbp]}}{\end@Float{figure}} -% -% #1 = type #2 = placement #3 = label #4 = title #5 = caption -% - -\def\@Float#1[#2]#3#4#5{% - \begin{#1}[#2]% - \def\the@label{#3}% - \def\the@title{#4}% - \def\the@caption{#5}% -} - -\def\end@Float#1{% - \expandafter\caption\expandafter[\the@title]{% - {\bf\the@title\ifx\the@caption\empty\else\ifx\the@title\empty\else. \fi\fi}% - \ignorespaces\the@caption}% - \expandafter\label\expandafter*\expandafter{\the@label}% - \end{#1}} - -\def\masterpicpath{} % Needs redefining -- may need change in catcodes - -% -% Definitions for figures -% -% Driver will look for figure in file .../chap3/2 (for book) or .../2 (art) -% -\ifx\@style\@book -\def\picpath{\masterpicpath chap\thechapter/\arabic{section}/} -\else -\def\picpath{\masterpicpath\thesection/} -\fi -% -% User macros: -% \fig, \doublefig, \triplefig -% followed by <optional placement>{filename}{title}{caption} -% -\def\fig{\multifig1} -\def\doublefig{\multifig2} -\def\triplefig{\multifig3} -\def\multifig#1{\ifvmode\else\unskip\fi\@ifnextchar[{\@fig#1}{\@fig#1[htbp]}} -% -\def\@vtick{\vrule depth6pt width.2pt} -\def\@htick{\vrule height.2pt width6pt} -\def\@figbox#1{\setbox0=\psfig{figure=\picpath #1}\dimen0=\wd0 - \ifproofing - \vbox{\offinterlineskip - \hbox to \dimen0{\@htick\hfil\@htick}\kern -.4pt - \hbox to \dimen0{\@vtick\hfil\@vtick}\kern -6pt - \box0 - \kern -6pt\hbox to \dimen0{\@vtick\hfil\@vtick}% - \kern -.4pt\hbox to \dimen0{\@htick\hfil\@htick}}% - \else\box0\fi} - -% -% #1 = number of parts #2 = placement #3 = filename(=label) #4 = title -% #5 = caption -% - -\def\@fig#1[#2]{% - \def\@tempb{\@@fig{#1}[#2]}% - \def\@tempa{\egroup\expandafter\@tempb\expandafter{\thea@label}}% - \bgroup\@sanitize\afterassignment\@tempa\gdef\thea@label} - -\def\@@fig#1[#2]#3#4#5{% - \begin{Figure}[#2]{#3}{#4}{#5}% - {\hyperactivelabels - \centerline{\ifnum#1=1 \@figbox{#3}\else\valign{\vfil##\vfil\cr - \@figbox{#3-1}\cr \noalign{\hfil}\@figbox{#3-2}\cr - \ifnum#1>2 \noalign{\hfil}\@figbox{#3-3}\cr\fi}\fi}}% - \end{Figure}% -} - -% -\let\hyperactivelabels\relax % redefine as appropriate -% - -\long\def\@caption#1[#2]#3{\par - \def\@tempa{\addcontentsline{\csname ext@#1\endcsname}{#1}} - \edef\@tempb{\noexpand\numberline{\csname the#1\endcsname}} - \expandafter\@tempa\expandafter{\@tempb\ignorespaces #2}\begingroup - \@parboxrestore - \normalsize - \@makecaption{\csname fnum@#1\endcsname}{% - \setlanguage\language % put in a whatsit so that later \unhbox - % will know what language it is - \ignorespaces #3}\par - \endgroup} - -\newskip\captionskip -\captionskip=10pt -% -% Redefined from book.sty. -% -\long\def\@makecaption#1#2{% - \vskip\captionskip - \setbox\@tempboxa\hbox{% - \ifproofing\@ifundefined{the@label}{} - {\hbox to 0pt{\vbox to 0pt{\vss\hbox{\tiny\the@label}\bigskip}\hss}}\fi - \small\sf{\bf #1. }\ignorespaces #2}% - \@captionwidth=\hsize \advance\@captionwidth-2\@captionmargin - \ifdim \wd\@tempboxa >\@captionwidth {% - \rightskip=\@captionmargin\leftskip=\@captionmargin - \unhbox\@tempboxa\par}% - \else - \hbox to\hsize{\hfil\box\@tempboxa\hfil}% - \fi} - -% $Log: geomfig.sty,v $ -%Revision 1.10 95/07/20 13:42:16 levy -%\captionskip -% -%Revision 1.9 1994/08/12 17:35:53 levy -%allows empty title in figure (ie. \fig{filename}{}{foo}) -%> allows _ ^ \ & # $ % ~ in file names -% -%Revision 1.8 93/09/16 22:14:30 levy -%language whatsit in caption -% -%Revision 1.7 92/07/17 13:44:23 levy -%*** empty log message *** -% -%Revision 1.6 92/06/25 22:31:08 levy -%tables -% -%Revision 1.5 92/06/18 16:55:16 levy -%caption width error -% -%Revision 1.4 92/06/10 12:42:10 levy -%geompsfig -> geompsfi -% -%Revision 1.3 92/05/27 02:08:42 levy -%moved \hyperactivelabels to before figure (instead of caption!) -% -%Revision 1.2 1992/04/07 09:43:26 levy -%commented out log line -% -% Revision 1.1 92/04/07 09:09:00 levy -% Initial revision - diff --git a/Master/texmf-dist/tex/latex/geomsty/geomfnt.sty b/Master/texmf-dist/tex/latex/geomsty/geomfnt.sty deleted file mode 100644 index 4e64a52bffc..00000000000 --- a/Master/texmf-dist/tex/latex/geomsty/geomfnt.sty +++ /dev/null @@ -1,135 +0,0 @@ -% $Header: /usr/home/levy/texts/geomsty/RCS/geomfnt.sty,v 1.2 95/07/03 14:44:31 levy Exp Locker: levy $ -% NFSS2 mods 95/06/18 by J Rawnsley - -\ifx\fmtname\format@e - \RequirePackage{amsfonts} - \RequirePackage{amssymb} -\else - \input newlfont.sty - \input amsfonts.sty - \input amssymb.sty -\fi - -\let\emptyset\varnothing -\let\epsilon\varepsilon %to agree with figure labels; also looks better - -\def\hide@fi{\fi} -\def\hide@else{\else} - -\ifx\DeclareMathAlphabet\@undefined - \def\mathss{\protect\pmathss} - \def\pmathss{\RIfM@\expandafter\mathss@\hide@else - \expandafter\nonmatherr@\expandafter\mathss\hide@fi} - \newmathalphabet*\mathss@{cmss}{m}{n} - \def\mathtt{\protect\pmathtt} - \def\pmathtt{\RIfM@\expandafter\mathtt@\hide@else - \expandafter\nonmatherr@\expandafter\mathtt\hide@fi} - \newmathalphabet*\mathtt@{cmtt}{m}{n} -% -% mods needed because of the Mittelbach-Schoepf font scheme -% -\def\bf{\ifmmode - \@warning{\string\bf\space ignored in mathmode; use \string\mathbf{...}}% - \else\protect\pbf\fi} -\def\tt{\ifmmode - \@warning{\string\tt\space ignored in mathmode; use \string\mathtt{...}}% - \else\protect\ptt\fi} -\def\rm{\ifmmode - \@warning{\string\rm\space ignored in mathmode; use \string\mathrm{...}}% - \else\protect\prm\fi} -\def\it{\ifmmode - \@warning{\string\it\space ignored in mathmode; use \string\mathit{...}}% - \else\protect\pit\fi} -\def\sf{\ifmmode - \@warning{\string\sf\space ignored in mathmode; use \string\mathss{...}}% - \else\protect\psf\fi} - \let\mathbf\bold -\else - \DeclareMathAlphabet\mathss{OT1}{cmss}{m}{n} - \DeclareMathAlphabet\mathtt{OT1}{cmtt}{m}{n} - \let\text\textrm - \let\bold\mathbf -\fi - -\let\sans\mathss -\let\type\mathtt - -\def\${{\protect\pdollar}} -\def\pdollar{\ifmmode\char`\$\else\text{\ifdim \fontdimen\@ne\font >\z@ - \sl \else \normalshape \fi\char`\$}\fi} - -% -% mod routines from amstex.sty -% -\def\bmod{\mskip-\medmuskip\mkern5mu\mathbin - {\operator@font mod}\penalty900 - \mkern5mu\mskip-\medmuskip} -\def\pmod#1{\allowbreak\ifinner\mkern8mu\else\mkern18mu\fi - ({\operator@font mod}\,\,#1)} -\def\pod#1{\allowbreak\ifinner\mkern8mu\else\mkern18mu\fi(#1)} -\def\mod#1{\allowbreak\ifinner\mkern12mu - \else\mkern18mu\fi{\operator@font mod}\,\,#1} - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%% -%% Math extension font -%% (from fontdef.ams) -%% -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - -\ifx\DeclareMathAlphabet\@undefined -\new@fontshape{cmex}{m}{n}{% - <5>cmex7 at5pt% - <6>cmex7 at6pt% - <7>cmex7% - <8>cmex8% - <9>cmex9% - <10>cmex10% - <11>cmex10 at10.95pt% - <12>cmex10 at12pt% - <14>cmex10 at14.4pt% - <17>cmex10 at17.28pt% - <20>cmex10 at20.74pt% - <25>cmex10 at24.88pt% - }{} - -\extra@def{cmex}{}{} - -\define@mathgroup\mv@normal{3}{cmex}{m}{n} -\define@mathgroup\mv@bold{3}{cmex}{b}{n} - -\new@mathgroup\cmss@group -\define@mathgroup\mv@normal\cmss@group{cmss}{m}{n} -\define@mathgroup\mv@bold\cmss@group{cmss}{b}{n} -\else - \catcode`\ =9 -\DeclareFontShape{OMX}{cmex}{m}{n}{% - <-8> cmex7% - <8>cmex8% - <9>cmex9% - <10> <10.95> <12> <14.4> <17.28> <20.74> <24.88>cmex10% - }{}% - \expandafter\let\csname OMX/cmex/m/n/10\endcsname\relax - \catcode`\ =10 - -\DeclareSymbolFont{cmss}{OT1}{cmss}{m}{n} -\fi - -%$Log: geomfnt.sty,v $ -%Revision 1.2 95/07/03 14:44:31 levy -%NFSS2 changes by John Rawnsley -% -%Revision 1.2 95/07/03 14:31:45 levy -%NFSS2 changes by John Rawnsley -% -%Revision 1.2 95/07/03 14:09:28 levy -%NFSS2 changes by John Rawnsley -% -%Revision 1.2 95/07/03 14:08:08 levy -%*** empty log message *** -% -%Revision 1.1 92/04/07 09:45:07 levy -%Initial revision -% -% Revision 1.1 92/04/07 09:09:01 levy -% Initial revision diff --git a/Master/texmf-dist/tex/latex/geomsty/geomindx.sty b/Master/texmf-dist/tex/latex/geomsty/geomindx.sty deleted file mode 100644 index 368ba4a3dcc..00000000000 --- a/Master/texmf-dist/tex/latex/geomsty/geomindx.sty +++ /dev/null @@ -1,72 +0,0 @@ -% $Header: /home/tampa_a/fac/levy/texts/geombook/RCS/index.sty,v 1.1 92/04/07 09:47:28 levy Exp $ - -\@ifundefined{@margin}{}{\endinput} - -% -% index and glossary macros -% -% the basic user-level command is \index, which, in proof mode -% merely prints the entry on the left margin. To revert to -% index-making behavior, type \makeindex. -% - -\newif\ifmakingindex\makingindexfalse -\def\makeindex{\if@filesw \newwrite\@indexfile - \immediate\openout\@indexfile=\jobname.idx - \makingindextrue\typeout{Writing index file \jobname.idx }\fi} - -\def\index#1{\@bsphack\ifproofing\marginindex{#1}\fi\ifmakingindex\begingroup - \set@key{#1}\@wrindex{\the\@key}\else\@esphack\fi} -\def\marginindex#1{{\everypar{}\insert\@margin{% - \vbox{\marginstyle\strut #1\hfil\strut}}}} -\def\marginstyle{\tiny \hsize=1in \parindent=0pt \hangindent=10pt - \hangafter=1 \rightskip=0pt plus 5em } -\newinsert\@margin \dimen\@margin=\maxdimen \count\@margin=0 \skip\@margin=0pt - -% -% change in output routine to account for new insertion class -% -\def\@makecol{\ifvoid\footins \setbox\@outputbox\box\@cclv - \else\setbox\@outputbox - \vbox{\boxmaxdepth \maxdepth - \unvbox\@cclv\vskip\skip\footins\footnoterule\unvbox\footins}\fi - \xdef\@freelist{\@freelist\@midlist}\gdef\@midlist{}\@combinefloats - \setbox\@outputbox\vbox to\@colht{\boxmaxdepth\maxdepth - \@texttop\dimen128=\dp\@outputbox - \ifvoid\@margin\else - \llap{\vbox to0pt {\kern4pt\box\@margin \vss}\kern .1in}\fi - \unvbox\@outputbox - \vskip-\dimen128\@textbottom} - \global\maxdepth\@maxdepth} - -% -% But \index does not print its argument. To index a word that -% actually appears in the text say \ix{...}. To index notation say \ixn$...$ -% or \ixninv$...$, depending on whether the word should appear or not. -% And just for symmetry, you can also use \ixinv, which equals \index: -% -% Text Notation -% -% Visible \ix \ixn -% Invisible \ixinv \ixninv -% -\def\ixinv{\index} % must not use \let, since meaning changes - % under \makeindex -\def\ix#1{#1\index{#1}} -\def\ixninv$#1${\index{$#1$}} -\def\ixn$#1${$#1$\index{$#1$}} - -% -% Some functions such as cross-referencing automatically invoke -% indexing. The particular format is defined here. -% The xfs for \labelindex are needed because \index doesn't expand -% -\def\labelindex#1{\@xf\@xf\@xf\index - \@xf\@xf\@xf{\@xf\cap@first\object@type\space``#1''}} -\def\refindex#1{\index{#1}} -{\catcode`\%=12 \gdef\refinvindex#1{\index{% #1}}} - -% $Log: index.sty,v $ -%Revision 1.1 92/04/07 09:47:28 levy -%Initial revision -% diff --git a/Master/texmf-dist/tex/latex/geomsty/geompsfi.sty b/Master/texmf-dist/tex/latex/geomsty/geompsfi.sty deleted file mode 100644 index d158531e711..00000000000 --- a/Master/texmf-dist/tex/latex/geomsty/geompsfi.sty +++ /dev/null @@ -1,632 +0,0 @@ -% $Header: /usr/home/levy/texts/geomsty/RCS/geompsfi.sty,v 1.18 95/12/06 13:40:51 levy Exp $ - -% This is geompsfig.sty, based on psfig.tex by Trevor Darrell (as -% modified by Stefan Bechtoslheim). -% -% It works with Latex and plain TeX (normally under the name geompsfi.tex). -% Thanks to Ket Richter for working out the changes for Plain tex. - -% Copyright 1991, 1992, 1993 Silvio Levy - -% This file is part of the Geom Latex style files. It is distributed in -% the hope that it will be useful, but WITHOUT ANY WARRANTY. The author -% makes no representation as to its suitability for any purpose. - -% Permission is granted for use and non-profit distribution of this -% file provided that this notice is clearly maintained. The right to -% distribute this file for profit or as part of any commercial -% product is specifically reserved for the author. If you make -% changes to this file you cannot distribute it under the same name, -% but you can distribute it under a different name provided it is not -% for profit of as part of a commercial product, and provided that the -% copyright line above and this notice are clearly maintained. - -% This version assumes that dimensions read from a PostScript file or -% from a .lab file are in bp (big points). Dimensions found in the -% source TeX file (as in \psfig{...,height=2in}) are true dimensions -% (that is, are not scaled pt -> bp). This is all as it should be. - -\edef\atcatcode{\the\catcode`\@} -\catcode`@=11 - -\newif\ifoldlabels \oldlabelsfalse -\expandafter\ifx\csname @ifundefined\endcsname\relax -\long\def\@ifundefined#1#2#3{\expandafter\ifx\csname - #1\endcsname\relax#2\else#3\fi} -\def\@iden#1{#1} -%\newdimen\@tempdima -\alloc@1\dimen\dimendef\insc@unt\@tempdima -\def\@warning#1{\message{Warning: #1.}} -\fi - -\@ifundefined{ps@init}{}{\endinput} - -\@ifundefined{hyperactivelabels}{\let\hyperactivelabels\relax}{} - -\newif\if@topspecials %false for Rokicki's dvips: \special is at bottom of box - % true for dvitps, dvi2ps - -\input driver.chg % driver-dependent definitions (generally a symlink) - -\newcount\psfc@a -\newcount\psfc@b -\newcount\psfc@c -\newcount\psfc@d -\newcount\psfc@e -\newcount\psfc@f -\newcount\psfc@g -\newcount\psfc@h -\newcount\psfc@i -\newcount\psfc@j -\newcount\psscale@count -\newtoks\psfigtoks@ -% A dimension register for temporarily storing a dimension in -% \@pDimenToSpNumber. -\newdimen\psfig@dimen -% -%\newwrite\@unused -%\def\typeout#1{{\let\protect\string\immediate\write\@unused{#1}}} - -% Identifying message is here. -% \typeout{psfig/tex 1.4.gcg / TeXPS}\fi -% -% @psdo control structure -- similar to Latex @for. -% I redefined these with different names so that psfig can -% be used with TeX as well as LaTeX, and so that it will not -% be vunerable to future changes in LaTeX's internal -% control structure. -\def\@nnil{\@nil} -\def\@empty{} -\def\@psdonoop#1\@@#2#3{} -\def\@psdo#1:=#2\do#3{\edef\@psdotmp{#2}\ifx\@psdotmp\@empty \else - \expandafter\@psdoloop#2,\@nil,\@nil\@@#1{#3}\fi} -\def\@psdoloop#1,#2,#3\@@#4#5{\def#4{#1}\ifx #4\@nnil \else - #5\def#4{#2}\ifx #4\@nnil \else#5\@ipsdoloop #3\@@#4{#5}\fi\fi} -\def\@ipsdoloop#1,#2\@@#3#4{\def#3{#1}\ifx #3\@nnil - \let\@nextwhile=\@psdonoop \else - #4\relax\let\@nextwhile=\@ipsdoloop\fi\@nextwhile#2\@@#3{#4}} -\def\@tpsdo#1:=#2\do#3{\xdef\@psdotmp{#2}\ifx\@psdotmp\@empty \else - \@tpsdoloop#2\@nil\@nil\@@#1{#3}\fi} -\def\@tpsdoloop#1#2\@@#3#4{\def#3{#1}\ifx #3\@nnil - \let\@nextwhile=\@psdonoop \else - #4\relax\let\@nextwhile=\@tpsdoloop\fi\@nextwhile#2\@@#3{#4}} -% -\def\psdraft{% - \def\@psdraft{0} - %\typeout{draft level now is \@psdraft \space.} -} -\def\psfull{% - \def\@psdraft{100} - %\typeout{draft level now is \@psdraft \space.} -} -\psfull -\newif\if@prologfile -\newif\if@postlogfile -\newif\if@noisy -\def\pssilent{% - \@noisyfalse -} -\def\psnoisy{% - \@noisytrue -} -%\psnoisy -\pssilent -% These are for the option list: -% a specification of the form a = b maps to calling \@p@@sa{b}. -\newif\if@bbllx -\newif\if@bblly -\newif\if@bburx -\newif\if@bbury -\newif\if@height -\newif\if@width -\newif\if@rheight -\newif\if@rwidth -\newif\if@clip -\newif\if@proportional -\newif\if@scale -\newif\if@verbose -\def\@p@@sclip#1{\@cliptrue} -\def\@p@@sproportional#1{\@proportionaltrue} -\def\@p@@sfile#1{% - %\typeout{file is #1} - \def\@p@sfile{#1.ps}% - \def\@labfile{#1.lab}% -} -\def\@p@@sfigure#1{% - \def\@p@sfile{#1.ps}% - \def\@labfile{#1.lab}% -} -% \@pDimenToSpNumber -% ================== -% Convert a dimension into scaled points. -% #1: the name of macro which will expand to the dimension in -% scaled points, without the unit 'sp' though, i.e. as a pure -% integer. -% #2: the dimension (not a dimension register, use -% \the if dimension is stored in a dimension register). -\def\@pDimenToSpNumber #1#2{% - \psfig@dimen = #2\relax - \edef#1{\number\psfig@dimen}% -} -\def\@p@@sbbllx#1{% - %\typeout{bbllx is #1} - \@bbllxtrue - \@pDimenToSpNumber{\@p@sbbllx}{#1}% -} -\def\@p@@sbblly#1{% - %\typeout{bblly is #1} - \@bbllytrue - \@pDimenToSpNumber{\@p@sbblly}{#1}% -} -\def\@p@@sbburx#1{% - %\typeout{bburx is #1} - \@bburxtrue - \@pDimenToSpNumber{\@p@sbburx}{#1}% -} -\def\@p@@sbbury#1{% - %\typeout{bbury is #1} - \@bburytrue - \@pDimenToSpNumber{\@p@sbbury}{#1}% -} -\def\@p@@sheight#1{% - \@heighttrue - \@pDimenToSpNumber{\@p@sheight}{#1}% - %\typeout{Height is \@p@sheight} -} -\def\@p@@swidth#1{% - %\typeout{Width is #1} - \@widthtrue - \@pDimenToSpNumber{\@p@swidth}{#1}% -} -\def\@p@@srheight#1{% - %\typeout{Reserved height is #1} - \@rheighttrue - \@pDimenToSpNumber{\@p@srheight}{#1}% -} -\def\@p@@srwidth#1{% - %\typeout{Reserved width is #1} - \@rwidthtrue - \@pDimenToSpNumber{\@p@srwidth}{#1}% -} -\def\@p@@ssilent#1{% - \@verbosefalse -} -\def\@p@@sscale #1{% - \def\@p@scale{#1}% - \@scaletrue -} - -\def\@p@@sprolog#1{\@prologfiletrue\def\@prologfileval{#1}} -\def\@p@@spostlog#1{\@postlogfiletrue\def\@postlogfileval{#1}} -\def\@cs@name#1{\csname #1\endcsname} -\def\@setparms#1=#2,{\def\@tempa{#2}\ifx\@tempa\@empty - \@warning{bad syntax (missing = or extra comma) in argument of \string\psfig}% - \else\@@setparms#1=#2,\fi} -\def\@@setparms#1=#2=,{\@cs@name{@p@@s#1}{#2}} -% -% Initialize the defaults. -% -\def\ps@init@parms{% - \@bbllxfalse \@bbllyfalse - \@bburxfalse \@bburyfalse - \@heightfalse \@widthfalse - \@rheightfalse \@rwidthfalse - \@scalefalse - \def\@p@sbbllx{}\def\@p@sbblly{}% - \def\@p@sbburx{}\def\@p@sbbury{}% - \def\@p@sheight{}\def\@p@swidth{}% - \def\@p@srheight{}\def\@p@srwidth{}% - \def\@p@sfile{}% - \def\@labfile{}% - \def\@p@scost{10}% - \def\@sc{}% - \@prologfiletrue - \@postlogfilefalse - \@clipfalse - \@proportionalfalse - \if@noisy - \@verbosetrue - \else - \@verbosefalse - \fi -} -% -% Go through the options setting things up. -% -\def\parse@ps@parms#1{% - \@psdo\@psfiga:=#1\do - {\expandafter\@setparms\@psfiga=,}% -} - -\newif\ifno@file -\newif\ifno@bb -\newif\ifnot@eof -\newif\if@bbmatch -\newif\if@crematch -\newif\ifmathematica -\newif\ifillustrator -\newread\ps@stream -\newread\lab@stream -\newcount\@linecount -\newcount\maxheaderlines -\maxheaderlines=100 - -% -% Scan header of file, looking for ``BoundingBox'' and ``Creator'' lines -% -\def\scan@header{% - \openin\ps@stream=\@p@sfile - \openin\lab@stream=\@labfile - \ifeof\ps@stream - \relax %needed so the \@warning won't cause trouble - \@warning{cannot open \@p@sfile} - \no@filetrue - \else - \not@eoftrue - \ifno@bb \@bbmatchfalse \else \@bbmatchtrue \fi - \@crematchfalse - \catcode`\%=12 - \catcode`\:=12 % in case punctuation is active (e.g., under french.sty) - \@linecount=\maxheaderlines - \loop - \read\ps@stream to \line@in - \global\psfigtoks@=\expandafter{\line@in} - \ifeof\ps@stream \not@eoffalse \fi - %\typeout{ looking at :: \the\psfigtoks@ } - \if@bbmatch \else \@bbtest{\psfigtoks@} \fi - \if@crematch \else \@cretest{\psfigtoks@} \fi - \if@crematch \if@bbmatch \not@eoffalse \fi \fi - \advance\@linecount-1 - \ifnum\@linecount=0 \not@eoffalse \fi - \ifnot@eof \repeat - \fi - \catcode`\%=14 -} - -% '% ' becomes a regular character for a very short time. -{ - \catcode`\%=12 - \catcode`\:=12 - \gdef\@bbtest#1{\expandafter\@bb@\the#1%%BoundingBox:\@bbtest\@bb@} - \global\long\def\@bb@#1%%BoundingBox:#2#3\@bb@{\ifx\@bbtest#2 - \else\@bbmatchtrue\expandafter\bb@cull\the\psfigtoks@\fi} - - \gdef\@cretest#1{\expandafter\@cre@\the#1%%Creator:\@cretest\@cre@} - \global\long\def\@cre@#1%%Creator:#2#3\@cre@{\ifx\@cretest#2 - \else\@crematchtrue\@mathtest{\psfigtoks@}\@illtest{\psfigtoks@}\fi} -} - -% -% Takes action if ``Creator'' line contains ``Mathematica'' or ``Illustrator'' -% -\def\@mathtest#1{\expandafter\@math@\the#1Mathematica\@mathtest\@math@} -\long\def\@math@#1Mathematica#2#3\@math@{\ifx\@mathtest#2 - \else\mathematicatrue \fi} - -\def\@illtest#1{\expandafter\@ill@\the#1Illustrator\@illtest\@ill@} -\long\def\@ill@#1Illustrator#2#3\@ill@{\ifx\@illtest#2 - \else\illustratortrue \fi} - -\def\bb@cull#1:{\expandafter\bb@@cull\@iden} -\long\def\bb@@cull#1 #2 #3 #4 {% - \@pDimenToSpNumber{\@p@sbbllx}{#1bp}% - \@pDimenToSpNumber{\@p@sbblly}{#2bp}% - \@pDimenToSpNumber{\@p@sbburx}{#3bp}% - \@pDimenToSpNumber{\@p@sbbury}{#4bp}% - \no@bbfalse -} - -% Compute \@bbw and \@bbh, the width and height of the -% bounding box. -\def\compute@bb{% - \no@bbfalse - \if@bbllx \else \no@bbtrue \fi - \if@bblly \else \no@bbtrue \fi - \if@bburx \else \no@bbtrue \fi - \if@bbury \else \no@bbtrue \fi - \scan@header - \ifno@file - \else - \ifno@bb - \@warning{no bounding box found in \@p@sfile} - \no@filetrue - \else - % Now compute the size of the bounding box. - \psfc@c=\@p@sbburx - \psfc@b=\@p@sbbury - \advance\psfc@c by -\@p@sbbllx - \advance\psfc@b by -\@p@sbblly - \edef\@bbw{\number\psfc@c} - \edef\@bbh{\number\psfc@b} - %\typeout{\string\compute@bb: bbh = \@bbh, bbw = \@bbw} - \fi - \fi -} - -% -% \in@hundreds performs #1 * (#2 / #3) correct to the hundreds, -% then leaves the result in \@result. -% -% note: #3 should be a big number, or a multiple of 10. -% -\def\in@hundreds #1#2#3{% - \psfc@g=#2 - \psfc@d=#3 - \divide\psfc@d 10 - \psfc@a=\psfc@g % First two digits #2/#3. - \divide\psfc@a by \psfc@d - \psfc@f=\psfc@a - \multiply\psfc@f by \psfc@d - \advance\psfc@g by -\psfc@f - \multiply\psfc@g by 10 - \psfc@f=\psfc@g % Third digit of #2/#3. - \divide\psfc@f by \psfc@d - \psfc@j=\psfc@f - \multiply\psfc@j by \psfc@d - \advance\psfc@g by -\psfc@j - \multiply\psfc@g by 10 - \psfc@j=\psfc@g % Third digit. - \divide\psfc@j by \psfc@d - \psfc@h=#1\psfc@i=0 - \psfc@e=\psfc@h - \multiply\psfc@e by \psfc@a - \advance\psfc@i by \psfc@e - \psfc@e=\psfc@h - \divide\psfc@e by 10 - \multiply\psfc@e by \psfc@f - \advance\psfc@i by \psfc@e - % - \psfc@e=\psfc@h - \divide\psfc@e by 100 - \multiply\psfc@e by \psfc@j - \advance\psfc@i by \psfc@e - \divide\psfc@i 10 - % - \edef\@result{\number\psfc@i} -} -% Scale a value #1 by the current scaling factor and reassign the new -% scaled value. -\def\@ScaleInHundreds #1{% - \in@hundreds{#1}{\@p@scale}{100}% - \edef#1{\@result}% -} -% -% -% Compute width from height. -\def\compute@wfromh{% - % computing : width = height * (bbw / bbh) - \in@hundreds{\@p@sheight}{\@bbw}{\@bbh}% - %\typeout{ \@p@sheight * \@bbw / \@bbh, = \@result } - \edef\@p@swidth{\@result}% - %\typeout{w from h: width is \@p@swidth}% -} -% -% Compute height from width. -% -\def\compute@hfromw{% - % computing : height = width * (bbh / bbw) - \in@hundreds{\@p@swidth}{\@bbh}{\@bbw}% - %\typeout{ \@p@swidth * \@bbh / \@bbw = \@result } - \edef\@p@sheight{\@result}% - %\typeout{h from w : height is \@p@sheight}% -} -% -% Compute height and width when both are given and proportionality -% must be preserved. -% -\def\compute@minhw{% - \in@hundreds{\@p@swidth}{\@bbh}{\@bbw}% - \ifnum\@p@sheight<\@result - \in@hundreds{\@p@sheight}{\@bbw}{\@bbh}% - \edef\@p@swidth{\@result}% - \else - \edef\@p@sheight{\@result}% - \fi -} -% -% Compute height and width, i.e. \@p@sheight and \@p@swidth. -% -\def\compute@handw{% - % If height is given. - \if@height - % If width is given - \if@width - \if@proportional - \compute@minhw - \fi - \else - % Height, no width: compute width. - \compute@wfromh - \fi - \else - % No height. - \if@width - % Width is given, no height though: compute it. - \compute@hfromw - \else - % Neither width no height is give. - \edef\@p@sheight{\@bbh} - \edef\@p@swidth{\@bbw} - \fi - \fi -} -% Compute the amount of space to reserve. Unless defined -% using rheight and rwidth when \psfig is called, these values -% default to \@p@sheight and \@p@swidth. -\def\compute@resv{% - \if@rheight \else \edef\@p@srheight{\@p@sheight} \fi - \if@rwidth \else \edef\@p@srwidth{\@p@swidth} \fi -} -% -% -% \psfig -% ====== -% usage: \psfig{file=, height=, width=, bbllx=, bblly=, bburx=, bbury=, -% rheight=, rwidth=, clip=, scale=, proportional=} -% -% "clip=" and "proportional=" are switches and take no value, -% but the `=' must be present. -% -\def\partest{\par} -\def\psfig#1{% - \vbox {% - \offinterlineskip - \ps@init@parms - \parse@ps@parms{#1}% - % Compute any missing sizes. - \compute@bb - \ifno@file\vbox{\hbox{{\tt\@p@sfile} not found}}% - \else - \compute@handw - \compute@resv - \if@scale - %\if@verbose \typeout{psfig: scaling by \@p@scale}\fi - % We now scale the width and height as reported to the PS printer. - \@ScaleInHundreds{\@p@swidth}% - \@ScaleInHundreds{\@p@sheight}% - \@ScaleInHundreds{\@p@srwidth}% - \@ScaleInHundreds{\@p@srheight}% - \fi - % - \ifnum\@p@scost<\@psdraft - %\if@verbose \typeout{psfig: including \@p@sfile \space}\fi - \if@topspecials\do@specials\fi - % Create a vbox to reserve the proper amount of space for the figure. - \vbox to \@p@srheight sp{% - \hbox to \@p@srwidth sp{}% - \vss - }% - \if@topspecials\else\do@specials\fi - \ifeof\lab@stream - %\if@verbose\typeout{psfig: no file \@labfile \space found}\fi - \else{% - \hyperactivelabels - \not@eoftrue - \loop - \read\lab@stream to \line@in \ifx\line@in\partest\else\line@in\fi - \ifeof\lab@stream \not@eoffalse \fi - \ifnot@eof \repeat - }\fi - \else - % Draft mode: reserve the space for the figure and print the path name. - \vbox to \@p@srheight sp{% - \hbox to \@p@srwidth sp{% - \if@verbose - \@p@sfile - \fi - }% - \vss - }% - \fi - \fi - }% -} - -\def\do@specials{\ps@init\ps@begin - \if@clip - %\if@verbose \typeout{(clip)} \fi - \ps@clip \fi - \if@prologfile \ps@prolog \fi \ps@include \if@postlogfile \ps@postlog \fi - \ps@end} - -\newbox\label@box -\newdimen\x@lab \newdimen\y@lab -\newdimen\x@aux \newdimen\y@aux -\newdimen\hair\hair=3pt -\def\setlabel#1#2#3#4#5{% - \setbox\label@box\hbox{$#1$}% - \x@lab.5\wd\label@box \x@lab#4\x@lab - \y@lab.5\ht\label@box\advance\y@lab.5\dp\label@box \y@lab#5\y@lab -% rotate lab clockwise by 22.5 degrees to get aux - \x@aux.92388\x@lab \advance\x@aux.38268\y@lab - \y@aux-.38268\x@lab \advance\y@aux.92388\y@lab -% choose - \ifdim\x@aux>0pt - \ifdim\y@aux>0pt - \ifdim\x@aux>\y@aux\advance\x@lab.7071\hair\advance\y@lab.7071\hair - \else\advance\y@lab\hair\fi - \else - \ifdim\x@aux>-\y@aux\advance\x@lab\hair - \else\advance\x@lab.7071\hair\advance\y@lab-.7071\hair\fi - \fi - \else - \ifdim\y@aux>0pt - \ifdim\x@aux>-\y@aux\advance\x@lab-.7071\hair\advance\y@lab.7071\hair - \else\advance\x@lab-\hair\fi - \else - \ifdim\x@aux>\y@aux\advance\y@lab-\hair - \else - \ifdim\x@aux<0pt - \advance\x@lab-.7071\hair\advance\y@lab-.7071\hair\fi - \fi - \fi - \fi - \advance\x@lab.5\wd\label@box - \advance\y@lab.5\ht\label@box\advance\y@lab.5\dp\label@box - \x@aux=#2bp \ifoldlabels \else \advance\x@aux by -\@p@sbbllx sp \fi - \y@aux=#3bp \ifoldlabels \else \advance\y@aux by -\@p@sbblly sp \fi - \in@hundreds{\x@aux}{\@p@swidth}{\@bbw} - \edef\@xpos{\@result} - \in@hundreds{\y@aux}{\@p@sheight}{\@bbh} - \edef\@ypos{\@result} - \vbox to 0pt{% - \vss\hbox to\@p@srwidth sp{\hskip \@xpos sp \hskip-\x@lab - \box\label@box\hss}\vskip \@ypos sp \vskip-\y@lab}} - -\catcode`@=\atcatcode - -% $Log: geompsfi.sty,v $ -%Revision 1.18 95/12/06 13:40:51 levy -%made geompsfi.tex work (\ifx\@ifundefined was wrong!) -% -%Revision 1.17 1994/06/23 04:36:58 levy -%added \ifoldlabels for compatibility with behavior before version 1.11 -% -%Revision 1.16 1994/04/29 00:19:21 levy -%combined with geompsfi.tex -% -%Revision 1.16 1994/04/29 00:03:40 levy -%leave plenty of space so patch geompsfi.tex works -% -%Revision 1.15 1994/04/03 07:07:57 levy -%removed hair correction when x@lab and y@lab are both zero -% -%Revision 1.14 1993/09/16 22:22:38 levy -%\catcode`\:=12 % in case punctuation is active (e.g., under french.sty) -% -%Revision 1.13 1993/08/27 23:04:27 levy -%removed "true" from PS dimensions (so it works with \magnifications) -% -%Revision 1.12 93/08/16 12:28:46 levy -%\ifundefined\hyperactivelabels -% -%Revision 1.11 93/07/19 02:17:24 levy -%.lab coordinates should be world coordinates -% -%Revision 1.10 93/03/05 10:59:38 levy -%error message when arguments of \psfig are incorrect -% -%Revision 1.9 1993/01/13 15:50:36 levy -%expressed things in bp (correctly) -% -%Revision 1.8 1993/01/10 20:56:04 levy -%inhundreds -> inthousands -% -%Revision 1.6 92/07/13 11:12:40 levy -%better error message when bounding box not found -% -%Revision 1.5 92/06/15 22:05:22 levy -%proportional scaling -% -%Revision 1.4 92/06/10 13:03:45 levy -%extend header from 10 to 15 lines -% -%Revision 1.3 92/06/10 12:41:14 levy -%scan header for "Creator" line -% -%Revision 1.2 92/04/07 09:09:17 levy -%*** empty log message *** -% -% Revision 1.1 92/03/31 14:12:38 levy -% Initial revision - diff --git a/Master/tlpkg/libexec/ctan2tds b/Master/tlpkg/libexec/ctan2tds index ee316fe203f..874a95ab146 100755 --- a/Master/tlpkg/libexec/ctan2tds +++ b/Master/tlpkg/libexec/ctan2tds @@ -214,6 +214,7 @@ chdir $startdir || die "chdir($startdir) failed: $!"; # back to raw 'garuda-c90', "&MAKEgaruda_c90", 'gene', "die 'skipping, complicated, some have sources, sorry'", 'genmisc', "die 'too complicated, sorry'", + 'geomsty', "die 'skipping, nonfree license'", 'germbib', "&MAKEgermbib", 'gfsartemisia',"&MAKEflatten", 'gfsbaskerville',"&MAKEflatten", diff --git a/Master/tlpkg/tlpsrc/collection-latexextra.tlpsrc b/Master/tlpkg/tlpsrc/collection-latexextra.tlpsrc index f2594170cf5..09dfcd568f5 100644 --- a/Master/tlpkg/tlpsrc/collection-latexextra.tlpsrc +++ b/Master/tlpkg/tlpsrc/collection-latexextra.tlpsrc @@ -213,7 +213,6 @@ depend gauss depend gcard depend gcite depend genmpage -depend geomsty depend ginpenc depend gloss depend glossaries diff --git a/Master/tlpkg/tlpsrc/geomsty.tlpsrc b/Master/tlpkg/tlpsrc/geomsty.tlpsrc deleted file mode 100644 index d95f2dab0dd..00000000000 --- a/Master/tlpkg/tlpsrc/geomsty.tlpsrc +++ /dev/null @@ -1,2 +0,0 @@ -name geomsty -category Package |