summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/latex/onlyamsmath
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2006-12-31 22:36:12 +0000
committerKarl Berry <karl@freefriends.org>2006-12-31 22:36:12 +0000
commit4bce4544a9d409cae7156a9e8ec7c5cd83d03aee (patch)
tree40be61d36f6017c972004b7ebfe375423bb410e1 /Master/texmf-dist/source/latex/onlyamsmath
parente7c4147cc5e3ed9a9baa218d7eebad637ff38800 (diff)
new (old) package onlyamsmath
git-svn-id: svn://tug.org/texlive/trunk@3067 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/source/latex/onlyamsmath')
-rw-r--r--Master/texmf-dist/source/latex/onlyamsmath/Makefile56
-rw-r--r--Master/texmf-dist/source/latex/onlyamsmath/onlyamsmath.dtx314
-rw-r--r--Master/texmf-dist/source/latex/onlyamsmath/onlyamsmath.ins22
3 files changed, 392 insertions, 0 deletions
diff --git a/Master/texmf-dist/source/latex/onlyamsmath/Makefile b/Master/texmf-dist/source/latex/onlyamsmath/Makefile
new file mode 100644
index 00000000000..e194a0fea8c
--- /dev/null
+++ b/Master/texmf-dist/source/latex/onlyamsmath/Makefile
@@ -0,0 +1,56 @@
+# $Id: Makefile,v 1.2 2001/03/12 17:22:36 harders Exp $
+
+.SUFFIXES: .sty .ins .dtx .dvi .ps
+
+
+.ins.sty:
+ latex $<
+
+.dtx.dvi:
+ latex $<
+ latex $<
+ makeindex -s gind.ist $(*D)/$(*F)
+ makeindex -s gglo.ist -o $(*D)/$(*F).gls $(*D)/$(*F).glo
+ latex $<
+
+.dvi.ps:
+ dvips -o $(*D)/$(*F).ps $(*D)/$(*F)
+
+
+all: onlyamsmath onlyamsmath.dvi onlyamsmath.ps message
+
+onlyamsmathtest.dvi:
+ latex onlyamsmathtest
+
+
+onlyamsmath:
+ latex onlyamsmath.ins
+
+
+
+clean:
+ @-rm -f onlyamsmath.{glo,gls,idx,ilg,ind,aux,log,toc}
+ @-rm -f onlyamsmathtest.{log,aux}
+ @-rm -f *~
+
+distclean: clean
+ @-rm -f onlyamsmath.{sty,dvi,ps}
+ @-rm -f onlyamsmathtest.{dvi,ps}
+
+tar: all clean
+ echo Lege onlyamsmath.tar.gz an
+ -rm -f onlyamsmath.tar.gz
+ cd ..; tar czf onlyamsmath.tar.gz \
+ onlyamsmath/README onlyamsmath/Makefile \
+ onlyamsmath/onlyamsmath.{dtx,ins,dvi} \
+ onlyamsmath/onlyamsmathtest.tex \
+ onlyamsmath/onlyamsmath.xml
+ mv ../onlyamsmath.tar.gz .
+
+
+message:
+ @echo "Please copy onlyamsmath.sty to a directory"
+ @echo "in the LaTeX search path"
+ @echo "Then run \`latex onlyamsmathtest' to see an example"
+
+
diff --git a/Master/texmf-dist/source/latex/onlyamsmath/onlyamsmath.dtx b/Master/texmf-dist/source/latex/onlyamsmath/onlyamsmath.dtx
new file mode 100644
index 00000000000..f4c1ee14d75
--- /dev/null
+++ b/Master/texmf-dist/source/latex/onlyamsmath/onlyamsmath.dtx
@@ -0,0 +1,314 @@
+% \iffalse meta comment
+% File: onlyams.dtx Copyright (C) 2001 Harald Harders
+% $Id:$
+% \fi
+%
+% \iffalse
+%
+%<*package>
+\def\onlyamspackagename{onlyams}
+\def\onlyamsversion{0.04}
+\def\onlyamsfiledate{2001/10/04}
+\def\onlyamsdocdate{2001/10/04}
+%</package>
+%<*driver>
+\documentclass[fleqn]{ltxdoc}
+\usepackage{amsmath}
+\newlength{\tempdima}%
+\makeatletter
+\renewenvironment{table}[1][]{%
+ \@float{table}[#1]%
+ \centering%
+ \setlength{\tempdima}{\abovecaptionskip}%
+ \setlength{\abovecaptionskip}{\belowcaptionskip}%
+ \setlength{\belowcaptionskip}{\tempdima}%
+ }{%
+\end@float
+}
+\makeatother
+\newcommand{\PrintBibliography}{%
+\begin{thebibliography}{9}
+\bibitem{amsmath1999}
+ {\em User's Guide for the amsmath Package}.
+ \newblock American Mathematical Society, 1999/12/13.
+\end{thebibliography}
+}
+\EnableCrossrefs
+\CodelineIndex
+\DoNotIndex{\def,\edef,\let,\newcommand,\newenvironment,\newcounter}
+\DoNotIndex{\setcounter,\space,\begingroup,\endgroup}
+\CodelineNumbered
+\RecordChanges
+\CheckSum{94}
+\begin{document}
+ \title{The \texttt{onlyamsmath} package\thanks{This file is version
+ \onlyamsversion\ last revision \onlyamsfiledate, documentation
+ from \onlyamsdocdate.}}
+ \author{Harald Harders\\\texttt{h.harders@tu-bs.de}}
+ \date{File date \onlyamsfiledate, compiled \today}
+ \DocInput{onlyamsmath.dtx}
+\end{document}
+%</driver>
+% \fi
+%
+% \changes{0.01}{2001/09/21}{First version}
+%
+% \maketitle
+% \begin{abstract}
+% \noindent
+% This package inhibits the usage of plain \TeX\ and on demand of
+% standard \LaTeX\ math environments.
+% This is useful for class writers who want to force their clients to
+% use the environments provided by the amsmath package.
+% \end{abstract}
+%
+% \tableofcontents
+%
+% \section*{Copyright}
+% Copyright 2001 Harald Harders.
+%
+% This program can be redistributed and/or modified under the terms
+% of the LaTeX Project Public License Distributed from CTAN
+% archives in directory macros/latex/base/lppl.txt; either
+% version 1 of the License, or any later version.
+%
+% \section{Usage of the package}
+%
+% Just load the package using |\usepackage[|options|]{onlyamsmath}|.
+% If no option is given only the plain \TeX\ environment |$$|\dots|$$|
+% is ``destroyed''.
+% This environment leads to centred equations even with the global
+% option |fleqn| (\emph{f}orce \emph{l}eft \emph{eq}uatio\emph{n}s)
+% switched on:
+% $$
+% a=b\,.
+% $$
+%
+% One further option is \verb|eqnarray| to switch off
+% the |eqnarray| and |eqnarray*| environments that add an unwished
+% space before and after the aligned part of the formula as shown
+% here:
+% \begin{eqnarray*}
+% a&=&b\,.
+% \end{eqnarray*}
+% A better result is achieved using the |align| environment provided
+% by |amsmath.sty|:
+% \begin{align*}
+% a&=b\,.
+% \end{align*}
+%
+% The most brutal option is |all| that inhibits the writer to use any
+% of the \TeX\ and \LaTeX\ math environments for non-inlined equations
+% I know (|$$|\dots|$$|, |eqnarray|, |eqnarray*|, |displaymath|.
+% The inlined mathematical modes (|$|\dots|$|, |\(|\dots|\)|) still
+% work.
+%
+% Then instead use the environments provided by |amsmath.sty|:
+% |equation|, |align|, |gather|, |flalign|, |multiline|, |alignat|,
+% and |split|. All environments except |split| have a starred
+% variant. See the User's Guide of the |amsmath| package for further
+% details \cite{amsmath1999}.
+%
+% There are two more options that control the behaviour of the package
+% if you still use one of the ``forbidden'' environments.
+% If using |error| which is the default \LaTeX\ generates an error
+% message that reminds you to use the environments of the |amsmath|
+% package.
+%
+% If using |warning| \LaTeX\ only produces warnings and proceeds.
+%
+% \section*{Acknowledgement}
+%
+% David Kastrup (David.Kastrup@t-online.de) has
+% written the part handling |$$|.
+% I just have changed the call of the command producing the error
+% message.
+% Since I do not understand his code please don't ask me things
+% regarding it.
+%
+% \StopEventually{\PrintBibliography \PrintChanges \PrintIndex}
+%
+% \section{The implementation}
+% \iffalse
+%<*package>
+% \fi
+%
+% Package header:
+% \begin{macrocode}
+\ProvidesPackage{onlyamsmath}[\onlyamsfiledate\space
+v\onlyamsversion\space destroy the standard math environments]
+% \end{macrocode}
+% Load |amsmath| package:
+% \begin{macrocode}
+\RequirePackage{amsmath}
+% \end{macrocode}
+% \subsection{Options}
+% All options set a boolean variable which is named simular to the
+% option name.
+%
+% \changes{0.02}{2001/09/21}{Added switch \texttt{nodollardollar}}%
+% \changes{0.03}{2001/09/22}{Removed switches \texttt{dollardollar}
+% and \texttt{nodollardollar}}%
+% Define the |eqnarray| option:
+% \begin{macrocode}
+\newif\ifonlyams@eqnarray
+\DeclareOption{eqnarray}{\onlyams@eqnarraytrue}
+% \end{macrocode}
+% Define the |all| option:
+% \begin{macrocode}
+\newif\ifonlyams@all
+\DeclareOption{all}{
+ \onlyams@alltrue
+ \onlyams@eqnarraytrue
+}
+% \end{macrocode}
+% Define the |error| and |warning| options:
+% \begin{macrocode}
+\newif\ifonlyams@error
+\onlyams@errortrue
+\DeclareOption{error}{\onlyams@errortrue}
+\DeclareOption{warning}{\onlyams@errorfalse}
+% \end{macrocode}
+% Set the default options:
+% \begin{macrocode}
+\ExecuteOptions{error}
+% \end{macrocode}
+% Process the options:
+% \begin{macrocode}
+\ProcessOptions\relax
+% \end{macrocode}
+% \subsection{Commands}
+%
+% \begin{macro}{\onlyams@error}
+% Define a command that produces the error resp.\ warning messages.
+% The argument specifies the name of the environment that produced the
+% message.
+% \begin{macrocode}
+\newcommand{\onlyams@error}[1]{%
+ \ifonlyams@error
+ \PackageError{onlyamsmath}{Environment #1 used}{Please use only the
+ environments provided by the amsmath package.}%
+ \else
+ \PackageWarning{onlyamsmath}{Environment #1 used, please use
+ \MessageBreak only the environments provided by the amsmath
+ \MessageBreak package}%
+ \fi
+}
+% \end{macrocode}
+% \end{macro}
+% \changes{0.04}{2001/09/23}{Removed code that forbids
+% \texttt{\textbackslash [}\dots\texttt{\textbackslash ]}}%
+%
+% Here follows the part that is only executed when one of the options
+% |eqnarray| or |all| is used:
+% \begin{macrocode}
+\ifonlyams@eqnarray
+% \end{macrocode}
+% \begin{macro}{\onlyams@eqnarray}
+% Copy the original |\eqnarray| command which is called by the commands
+% |\begin{eqnarray}| and |\begin{eqnarray*}| to be able to call it
+% after producing the correspondig error message:
+% \begin{macrocode}
+ \let\onlyams@eqnarray\eqnarray
+% \end{macrocode}
+% \end{macro}
+% \begin{environment}{eqnarray}
+% Redefine the |\eqnarray| command:
+% \begin{macrocode}
+ \def\eqnarray{%
+% \end{macrocode}
+% First generate an error or warning message:
+% \begin{macrocode}
+ \onlyams@error{eqnarray or eqnarray*}%
+% \end{macrocode}
+% Then call the original |eqnarray| environment:
+% \begin{macrocode}
+ \onlyams@eqnarray}
+\fi
+% \end{macrocode}
+% \end{environment}
+% Here follows the part that is only executed when the option |all| is
+% used:
+% \begin{macrocode}
+\ifonlyams@all
+% \end{macrocode}
+% \begin{environment}{displaymath}
+% Redefine the |\displaymath| command:
+% \begin{macrocode}
+ \def\displaymath{%
+% \end{macrocode}
+% First generate an error or warning message:
+% \begin{macrocode}
+ \onlyams@error{displaymath}%
+% \end{macrocode}
+% Then call the |\[| environment which normally is called by the
+% |displaymath| environment:
+% \begin{macrocode}
+ \[}
+% \end{macrocode}
+% \end{environment}
+% \begin{macrocode}
+\fi
+% \end{macrocode}
+% Redefine the |$$| environment.
+% This part wass written by David Kastrup. Please don't ask me anything
+% about it.
+% \changes{0.03}{2001/09/22}{Changed definition of
+% \texttt{\textbackslash dollarcode}, by David Kastrup}%
+% \begin{macro}{\dollarcode}
+% \begin{macrocode}
+\def\dollarcode{\ifx\protect\@typeset@protect
+ \expandafter\futurelet\expandafter\next\expandafter\checkdsp
+ \else \expandafter$\fi}
+% \end{macrocode}
+% \end{macro}
+% \begin{macrocode}
+\begingroup
+\lccode`\~=`\$
+\lowercase{\endgroup\let~}\dollarcode
+% \end{macrocode}
+% \begin{macro}{\defdsp}
+% \begin{macrocode}
+\def\checkdsp{\ifx\next\dollarcode\expandafter\dspcomplain
+ \else\expandafter$\fi}
+% \end{macrocode}
+% \end{macro}
+% Now comes the part that I understand and in which I have made
+% changes.
+% \begin{macro}{\dspcomplain}
+% This command controls the complaint when using |$$|.
+% \begin{macrocode}
+\def\dspcomplain#1{%
+% \end{macrocode}
+% If mathmode is active the code has found the second |$$| of the
+% environment.
+% The complaint has already made and it is not necessary to do
+% generate one.
+% The environment has to be closed by using |\]|:
+% \begin{macrocode}
+ \ifmmode
+ \expandafter \]%
+ \else
+% \end{macrocode}
+% If the mathmode isn't active the first |$$| of a mathematical
+% environment has been found.
+% First generate the warning or error message:
+% \begin{macrocode}
+ \onlyams@error{$$ $$}%
+% \end{macrocode}
+% Then start the mathmode by using |\[|:
+% \begin{macrocode}
+ \expandafter \[
+ \fi}
+% \end{macrocode}
+% \end{macro}
+% Activate the complaining behaviour at |\begin{document}| to ensure
+% that packages that internally use |$$| can do that without an error:
+% \begin{macrocode}
+\AtBeginDocument{\catcode`\$=13 }
+% \end{macrocode}
+% \iffalse
+%</package>
+% \fi
+% \Finale
+
diff --git a/Master/texmf-dist/source/latex/onlyamsmath/onlyamsmath.ins b/Master/texmf-dist/source/latex/onlyamsmath/onlyamsmath.ins
new file mode 100644
index 00000000000..76dde3650b0
--- /dev/null
+++ b/Master/texmf-dist/source/latex/onlyamsmath/onlyamsmath.ins
@@ -0,0 +1,22 @@
+%% $Id: onlyamsmath.ins,v 1.2 2001/03/12 09:17:56 harders Exp $
+\def\batchfile{onlyamsmath.ins}
+\input docstrip.tex
+\preamble
+
+ onlyamsmath package
+
+ Copyright 2001 Harald Harders
+
+ This program can be redistributed and/or modified under the terms
+ of the LaTeX Project Public License Distributed from CTAN
+ archives in directory macros/latex/base/lppl.txt; either
+ version 1 of the License, or any later version.
+
+ h.harders@tu-bs.de
+
+\endpreamble
+% Files
+%%%%%%%%%%%%%%%%%%%%%%
+\generateFile{onlyamsmath.sty}{f}{\from{onlyamsmath.dtx}{package}}
+
+\Msg{* Fertig}