diff options
author | Karl Berry <karl@freefriends.org> | 2006-12-31 22:36:12 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2006-12-31 22:36:12 +0000 |
commit | 4bce4544a9d409cae7156a9e8ec7c5cd83d03aee (patch) | |
tree | 40be61d36f6017c972004b7ebfe375423bb410e1 /Master/texmf-dist/source/latex/onlyamsmath | |
parent | e7c4147cc5e3ed9a9baa218d7eebad637ff38800 (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')
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} |