%\iffalse % MetaComment %% %% + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + %% | Copyright(C) 1997-2010 by F. Bosisio | %% | | %% | This program can be redistributed and/or modified under | %% | the terms of the LaTeX Project Public License, either | %% | version 1.3 of this license or (at your option) any later | %% | version. The latest version of this license is in | %% | http://www.latex-project.org/lppl.txt | %% | and version 1.3 or later is part of all LaTeX distributions | %% | version 2005/12/01 or later. | %% | | %% | This work has the LPPL maintenance status `maintained'. | %% | The Current Maintainer of this work is F. Bosisio. | %% | | %% | This work consists of files envmath.dtx and envmath.html | %% | and of the derived files envmath.sty and envmath.pdf. | %% | | %% | E-mail: fbosisio@bigfoot.com | %% | CTAN location: macros/latex/contrib/bosisio/ | %% + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + %% %% If you make any improvment, find any bug or have %% any suggestion, please let me know about it. %% %<*package,driver> %\fi % \def\FileName{envmath} %\iffalse % MetaComment % %<*package> %\fi \def\fileversion{2.5} \def\filedate{2010/02/10} \def\docdate{2005/04/09} \def\filedescr{Extended math environments (FB)} % %\iffalse % MetaComment % %<*dtx> %- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - % This section is the installation driver % \def\batchfile{\FileName.dtx} % \input docstrip % \keepsilent % \askforoverwritefalse % \generateFile{\FileName.sty}{f}{\from{\FileName.dtx}{package}} % \generateFile{\FileName.drv}{f}{\from{\FileName.dtx}{driver}} % \Msg{******************************************************} \Msg{*} \Msg{* To produce the documentation run the} \Msg{* file `\FileName.drv' through LaTeX.} \Msg{*} \Msg{******************************************************} % \endbatchfile % % End of the installation driver %- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - % % % This section is the documentation driver % %<+driver>\documentclass[12pt,a4paper]{ltxdoc} %<+driver> \EnableCrossrefs %<+driver> \CodelineIndex %<+driver> \RecordChanges %<+driver> %\OnlyDescription % Uncomment not to see the implementation %<+driver>\begin{document} %<+driver> \DocInput{\FileName.dtx} %<+driver> \PrintIndex %<+driver> \PrintChanges %<+driver>\end{document} % % End of the documentation driver %- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - %<*package> %\fi % % \changes{v0.1}{20 April 1997}{First release (basic environments)} % \changes{v0.2}{10 May 1997}{Added the ``*-form'' of environments} % \changes{v1.0}{24 May 1997}{Documentation added} % \changes{v1.1}{18 October 1997}{``EQNarray'' and ``EqSystem'' environments} % \changes{v1.2}{5 November 1997}{Options to behave like ``Standard'' LateX} % \changes{v1.3}{8 November 1997}{Documentation updated} % \changes{v2.0}{20 December 1997}{Separated from package ``mathcmd''} % \changes{v2.1}{4 February 1998}{``MultiLine'' and ``EqSystem'' environments % reimplemented; ``EQNarray'' environment and % ``CONTINUE'' command made obsolete} % \changes{v2.2}{6 February 1998}{``@StandartEquation'' deferred % ``AtBeginDocument''; some ``def'' replaced % by ``newcommand*''; documentation updated} % \changes{v2.3}{5 March 1999}{Added copyright notice and changed addresses} % \changes{v2.4}{9 April 2005}{Usage of the double-quote character (") avoided} % \changes{v2.5}{10 February 2010}{Package renamed from ``mathenv'' to % ``envmath'' to avoid name conflicts} %\iffalse % MetaComment % The previous change was requested by Karl Berry (karl@freefriends.org) %\fi % % \MakeShortVerb{\|} % % \title{Package \texttt{\FileName}\thanks{This is version \fileversion, % last revised \filedate; documentation date \docdate}} % \author{F. Bosisio\\\normalsize E-mail: \texttt{fbosisio@bigfoot.com}} % \date{\filedate} % \maketitle % % \begin{abstract} % Documentation for the package \texttt{\FileName}. % \end{abstract} % % \section{Introduction} % This package provides some useful math-commands and enviroments, % which are simpler to use and prettier then their standard \LaTeX{} % counterpart. % % In particular some commands are redefined\footnote{See the options % in next section if you don't want these comand to be redefined}, so % care should be taken, expecially when including this package in an % already existent \LaTeX{} file. % % \noindent % The redefined commands are:\\ % |\(|, |\)|, |\[|, |\]|, |\{| and |\}| \\ % The effect of ``|\(| \dots |\)|'' can still be achieved by the % \LaTeX{} equivalent commands ``|\begin{math}| \dots |\end{math}|'' % or ``|$| \dots |$|''. % % \noindent % Similarly, the effect of ``|\[| \dots |\]|'' can be achieved by % the \LaTeX{} equivalent commands % ``|\begin{displaymath}| \ldots |\end{displaymath}|'' % or ``|$$| \dots |$$|''. % % \noindent % The ``|\{|'' and ``|\}|'' commands are the more error-prone, since % one may try to use ``|\left\{|'', which now is incorrect, because % the ``|\{|'' command already contains a ``|\left|'' declaration. % In the rare occasions where a brace of normal size is needed, one % can use the \LaTeX{} commands ``|\lbrace|'' and ``|\rbrace|'' % % \noindent % Also the ``|equation|'' environment has been changed, but it is % completly compatible with the original definition, so it should % be safe, perhaps except when the first character of the equation % is an open square bracket or it is placed in a moving argument: % in fact, the new version of this command is fragile, and this is % true also for most of the commands defined by this package. % % \section{Backward compatibility} % The package has been renamed from ``|mathenv|'' to ``|envmath|'', % in order to avoid conflicts with another package with the same name: % if you were using the ``old'' package, you need to change your \LaTeX{} % files in order to include the new ones.\\ % Alternatively, you can also rename the package to give it the ``old'' % name (you need to change also the ``|\def\FileName{...}|'' line inside % the ``|sty|''-file), but you must take care not to have another package % with the same name installed on your system. % % \section{The options} % At now, five options are available with the \texttt{\FileName} % package. % % \noindent % The ``|RedefEquation|''/``|StdEquation|'' and % ``|RedefBrackets|''/``|StdBrackets|'' options control % whether the ``|equation|'' environment and the brace commands % ``|\(|'', ``|\(|'', ``|\)|'', ``|\[|'', ``|\]|'', ``|\{|'' and ``|\}| % should be redefined or retain their original \LaTeX{} meaning. % More precisely, ``|RedefEquation|'' (default) redefines the % ``equation'' environment to have an optional argument (used as a % label), while ``|StdEquation|'' leaves it unchanged. In the first % case, the ``equation'' environment will be equivalent to the % ``Equation'' environment (capitalized!) described below, whereas in % the second case they will be different. % Similarly, the ``|RedefBrackets|'' option (default) makes the % brackets command to be redefined, whilst ``|StdBrackets|'' leave % them their original meaning. % Also a ``|Standard|'' option exists, which amounts to specify both % the ``|StdEquation|'' and ``|StdBrackets|'' options, thus making the % package fully standard, which may be useful when sending your % \LaTeX{} files to someone else. % % \section{Math-mode environments} % This package provides three math-mode environments, each with a % ``*-form'' which does not generates numbers. % % \subsection{The \texttt{Equation} environment} % The ``|Equation|'' environment has an optional argument % which is used as a label to reference it. % \begin{verbatim} % \begin{Equation}[label] % ... % \end{Equation} % \end{verbatim} % If the ``|RedefEquation|'' option is in effect (default), % then the ``|equation|'' environment is redefined to have % the same optional argument as ``|Equation|''. % % There is also a *-form, which does not generate a number % (so this *-form is really a ``displaymath'' and not an % equation, but it has been added for simmetry and for making % it easier to add or remove the number to a formula). % % \noindent % The *-form has an optional argument like the non-* form, % which is disregarded by the environment and is added only % for simmetry reasons. % \begin{verbatim} % \begin{equation*}[disregarded-label] % ... % \end{equation*} % \end{verbatim} % % \subsection{The \texttt{MultiLine} equation environment} % The ``|MultiLine|'' environment is intended for formulas % that don't fit on a single line, and so must be broken % across lines. % % \noindent % As for the |Equation| environment above, it has an optional % argument which is used as a label. % % \noindent % All the lines but the first are automatically indented by % the lenght ``|\MultiLineIndent|'', which is rougthly what % one expects, but can be changed at any time by the user % with ``|\setlenght{\MultiLineIndent}{...}|''. % You can also control the alignment of the continuation rows % by placing an optional |&| in the first row: is such a case % all the others line will \emph{not} be indented % by ``|\MultiLineIndent|'' but wil behave \emph{as if} there % there were an ampersand in front of them (i.e. they will be % left-aligned at the right of the \& in the first row). % % \noindent % Each line but the last must end with a ``|\\|'' command % (which can have an optional argument to add some vertical % space between lines). % When the line is broken in the middle (e.g. after a ``+'' % sign) and not at the end (i.e. after a ``='' or similar), the % *-form ``|\\*|'' may be used to indicate the line-break, the % difference being in an extra space added at the beginning of % the next line. % The width of a thise space defaults to 1em and can be changed % by the user with ``|\setlenght{\MultiLineStarIndent}{...}|''. % % \begin{verbatim} % \begin{MultiLine}[label] % ... [&]= ... = \\ % = ... + \\* % + ... = \\ % = ... % \end{MultiLine} % \end{verbatim} % % Also this environment has a *-form which differs only in that % it does not generate an equation number. % \begin{verbatim} % \begin{MultiLine*}[disregarded-label] % ... [&]= ... = \\ % = ... + \\* % + ... = \\ % = ... % \end{MultiLine*} % \end{verbatim} % % \subsection{The \texttt{System} environment} % The ``|System|'' environment is used for grouping a set of % equations together inside a left brace, with one only % equation number. % % \noindent % Again there is an optional argument to indicate a label and % each equation is separated by a ``|\\|'' or ``|\\*|'' command, % as for the ``|MultiLine|'' environment. % % \noindent % The rows (except the ones ended with the *-form ``|\\*|'') % may optionally contain one ``|&|'', which is usually used % when some text should be added to the equation. % \begin{verbatim} % \begin{System}[label] % ... = ... [& ...] \\ % ... = ... + \\* % + ... [& ...] \\ % ... = ... [& ...] % \end{System} % \end{verbatim} % % A *-form which does not generate any number is also provided. % \begin{verbatim} % \begin{System*}[disregarded-label] % ... = ... [& ...] \\ % ... = ... + \\* % + ... [& ...] \\ % ... = ... [& ...] % \end{System*} % \end{verbatim} % % \subsection{The \texttt{EqSystem} environment} % The ``|EqSystem|'' environment is used for grouping a set of % equations together inside a left brace, each with its own % equation number. % % \noindent % Again there is an optional argument to indicate a label and % each equation is separated by a ``|\\|'' or ``|\\*|'' command. % % \noindent % The rows may optionally contain one ``|&|'', which is % usually used when some text should be added to the equation. % \begin{verbatim} % \begin{EqSystem}[label] % ... = ... [& ...] \\ % (1.1) % ... = ... + \\* % (1.2) % + ... [& ...] \\ % (1.3) % ... = ... [& ...] % (1.4) % \end{EqSystem} % \end{verbatim} % % A *-form is also provided: it differs in that each equation % is numbered with the same number but with a lowercase letter % added, i.e. like (1.1a), (1.1b), etc. instead of (1.1), % (1.2) and so on. % \begin{verbatim} % \begin{EqSystem*}[label] % ... = ... [& ...] \\ % (1.5a) % ... = ... + \\* % (1.5b) % + ... [& ...] \\ % (1.5c) % ... = ... [& ...] % (1.5d) % \end{EqSystem*} % \end{verbatim} % In both cases, if the optional argument is present, each % equation can be referenced by |\ref{