summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/mh/empheq.sty
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2006-01-12 23:59:08 +0000
committerKarl Berry <karl@freefriends.org>2006-01-12 23:59:08 +0000
commitd625e47ffd1453f40c42192234fa3ac1c234e835 (patch)
tree0bf7402a698b8cd9d903a42faec6014447102246 /Master/texmf-dist/tex/latex/mh/empheq.sty
parentd686f7c132a166a69afcf546ef992527fbeca48f (diff)
mh
git-svn-id: svn://tug.org/texlive/trunk@1090 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/mh/empheq.sty')
-rw-r--r--Master/texmf-dist/tex/latex/mh/empheq.sty985
1 files changed, 985 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/latex/mh/empheq.sty b/Master/texmf-dist/tex/latex/mh/empheq.sty
new file mode 100644
index 00000000000..94d5f2bf8b9
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/mh/empheq.sty
@@ -0,0 +1,985 @@
+%%
+%% This is file `empheq.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% empheq.dtx (with options: `empheq')
+%%
+%% It may be distributed and/or modified under the
+%% conditions 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 distributions of LaTeX
+%% version 2003/12/01 or later.
+%%
+%% This work has the LPPL maintenance status "maintained".
+%%
+%% The Current Maintainer of this work is Morten H\o gholm.
+%%
+%% This work consists of the files empheq.dtx and empheq.ins and the
+%% derived files empheq.sty and ntheorem.fix
+%%
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{empheq}
+ [2004/10/10 v2.11a
+ Emphasizing equations (MH)
+ ]
+\RequirePackage{mhsetup}[2004/10/10]
+\MHInternalSyntaxOn
+\MH_new_boolean:n {overload_ams}
+\DeclareOption{overload}{
+ \MH_set_boolean_T:n {overload_ams}
+}
+\MH_new_boolean:n {overload_amsII}
+\DeclareOption{overload2}{
+ \MH_set_boolean_T:n {overload_ams}
+ \MH_set_boolean_T:n {overload_amsII}
+}
+\MH_new_boolean:n {good_mult}
+\DeclareOption{oldmultline}{\MH_set_boolean_F:n {good_mult}}
+\DeclareOption{newmultline}{\MH_set_boolean_T:n {good_mult}}
+\DeclareOption{ntheorem}{\AtEndOfPackage{\input{ntheorem.fix}}}
+\DeclareOption*{
+ \PassOptionsToPackage{\CurrentOption}{mathtools}
+}
+\ExecuteOptions{newmultline}
+\ProcessOptions\relax
+\MHInternalSyntaxOff
+\RequirePackage{mathtools}[2004/10/10]
+\MHInternalSyntaxOn
+\AtEndOfPackage{\MHInternalSyntaxOff}
+\newcount\l_EQ_equationtype_int
+\newcount\l_EQ_alignmentmode_int
+\if@fleqn
+ \iftagsleft@
+ \l_EQ_alignmentmode_int=4
+ \else:
+ \l_EQ_alignmentmode_int=\thr@@
+ \fi:
+\else:
+ \iftagsleft@
+ \l_EQ_alignmentmode_int=\tw@
+ \else:
+ \l_EQ_alignmentmode_int=\@ne
+ \fi:
+\fi:
+\newdimen\l_EQ_totalwidth_dim
+\newdimen\l_EQ_displaywidth_dim
+\def\EmphEqdisplaywidth{\l_EQ_displaywidth_dim}
+\newdimen\l_EQ_temp_linewidth_dim
+\newdimen\EmphEqdelimitershortfall
+\newcount\EmphEqdelimiterfactor
+\EmphEqdelimiterfactor950
+\EmphEqdelimitershortfall\p@
+\newdimen\g_EQ_toptag_height_dim
+\newdimen\g_EQ_bottomtag_depth_dim
+\newdimen\g_EQ_toprow_height_dim
+\newdimen\g_EQ_bottomrow_depth_dim
+\newdimen\g_EQ_widesttag_dim
+\def\EmphEqtagwidth{\g_EQ_widesttag_dim}
+\def\EQ_outerbox:{}
+\def\EQ_innerbox:{}
+\def\EQ_left_side:{}
+\def\EQ_right_side:{}
+\newsavebox\EQ_mathdisplay_box
+\def\EmphEqdisplayheight{\ht\EQ_mathdisplay_box}
+\def\EmphEqdisplaydepth{\dp\EQ_mathdisplay_box}
+\newsavebox\EQ_tag_box
+\def\EQ_complete_mathdisplay:{}
+\def\EQ_getbody:n #1{%
+ \def\EQ_complete_mathdisplay:{}\def\EQ_mathbody:{#1}}
+\newenvironment{EmphEqMainEnv}{\collect@body\EQ_getbody:n}{%
+ \if_num:w \l_EQ_equationtype_int=\z@ %ZeroCheckpoint
+ \EQ_upgrade_error:
+ \else:
+ \EQ_post_process:
+ \ignorespacesafterend
+ \fi:}
+\def\EQ_post_process:{%
+ \EQ_initialize:
+ \EQ_begin_equation:
+ \MH_if_boolean:nT {outer_mult}{
+ \setkeys{\MT_options_name:}{
+ firstline-afterskip=0pt,
+ lastline-preskip=0pt,
+ multlined-width=0pt,
+ }
+ \ifodd \l_EQ_alignmentmode_int
+ \setkeys{\MT_options_name:}{multlined-pos=b}
+ \else:
+ \setkeys{\MT_options_name:}{multlined-pos=t}
+ \fi:
+ \g@addto@macro\EQ_complete_mathdisplay:{
+ \begin{MTmultlined}\relax}
+ }
+ \g@addto@macro\EQ_complete_mathdisplay:\EQ_mathbody:
+ \MH_if_boolean:nT {outer_mult}{
+ \g@addto@macro\EQ_complete_mathdisplay:{\end{MTmultlined}}
+ }
+ \EQ_end_equation:
+ \edef\EQ_hyperref_link_fint{\number\Hy@linkcounter}
+ \savecounters@
+ \EQ_typeset_tags:
+ \edef\l_EQ_equation_fint{\number\c@equation}
+ \restorecounters@
+ \Hy@linkcounter=\EQ_hyperref_link_fint
+ \settowidth\l_EQ_totalwidth_dim{%
+ $\EQ_left_side:\EQ_innerbox:{}\EQ_right_side:$}%
+ \MH_if_boolean:nTF {outer_mult}
+ { \def\EQ_next:{_mult} }
+ { \def\EQ_next:{} }
+ \@nameuse{EQ_modify_linewidth_
+ \romannumeral\l_EQ_equationtype_int\EQ_next: :}%
+ \EQ_typeset_display:
+ \@nameuse{find_displaywidth_
+ \romannumeral\l_EQ_equationtype_int\EQ_next: :}
+ \MH_addtolength:dn
+ \l_EQ_totalwidth_dim{\l_EQ_displaywidth_dim}
+ \savebox\EQ_mathdisplay_box[\l_EQ_totalwidth_dim][c]{%
+ $\EQ_left_side:
+ \EQ_innerbox:{%
+ \if_case:w \l_EQ_alignmentmode_int\or:
+ \makebox[\l_EQ_displaywidth_dim][c]
+ {\usebox{\EQ_mathdisplay_box}}%
+ \or:
+ \makebox[\l_EQ_displaywidth_dim][c]
+ {\usebox{\EQ_mathdisplay_box}}%
+ \or:
+ \makebox[\l_EQ_displaywidth_dim][l]{%
+ \if_num:w \l_EQ_equationtype_int=5 \else:
+ \if_num:w \l_EQ_equationtype_int=6 \else:
+ \kern-\@mathmargin
+ \fi:
+ \fi:
+ \usebox{\EQ_mathdisplay_box}}%
+ \or:
+ \makebox[\l_EQ_displaywidth_dim][l]{%
+ \if_num:w \l_EQ_equationtype_int=5 \else:
+ \if_num:w \l_EQ_equationtype_int=6 \else:
+ \kern-\@mathmargin
+ \fi:
+ \fi:
+ \usebox{\EQ_mathdisplay_box}}%
+ \fi:}%
+ \EQ_right_side:$}%
+ \begin{AmSequation*}
+ \@nameuse{EQ_place_display_
+ \romannumeral\l_EQ_equationtype_int\EQ_next: :}
+ \if_dim:w \g_EQ_widesttag_dim>\z@
+ \MH_set_boolean_T:n {show_manual_tags}
+ \if_case:w \l_EQ_alignmentmode_int
+ \or: \EQ_place_tag:N r %#1
+ \or: \EQ_place_tag:N l %#2
+ \or: \EQ_place_tag:N r %#3
+ \or: \EQ_place_tag:N l %#4
+ \fi:
+ \fi:
+ \end{AmSequation*}
+ \global\c@equation=\l_EQ_equation_fint\relax
+}
+\def\EQ_initialize:{%
+ \m@th
+ \MH_let:NwN\SetTagPlusEndMark\EQ_tag_plus_endmark:
+ \MH_let:NwN\SetOnlyEndMark\EQ_only_endmark:
+ \l_EQ_temp_linewidth_dim\linewidth
+ \g_EQ_toprow_height_dim\z@
+ \g_EQ_bottomrow_depth_dim\z@
+ \g_EQ_toptag_height_dim\z@
+ \g_EQ_bottomtag_depth_dim\z@
+ \g_EQ_widesttag_dim\z@
+ \xdef\g_EQ_latest_nonzerodepth_row_fint{\z@}
+ \edef\EQ_restore_tex_delimiter:{%
+ \delimiterfactor\the\delimiterfactor
+ \delimitershortfall\the\delimitershortfall\relax}%
+ \g@addto@macro\EQ_complete_mathdisplay:
+ \EQ_restore_tex_delimiter:
+ \delimitershortfall\EmphEqdelimitershortfall
+ \delimiterfactor\EmphEqdelimiterfactor
+ \MH_let:NwN\intertext@\EQ_intertext:
+ \EQ_displaybreak:}
+\def\EQ_intertext:{%
+ \def\intertext##1{\PackageError{empheq}{%
+ You~cannot~use~\string\intertext\space inside~the~`empheq'
+ \MessageBreak
+ environment,~as~`empheq'~creates~an~unbreakable~box}\@eha}}
+\def\EQ_displaybreak:{%
+ \def\dspbrk@[##1]{\PackageWarning{empheq}{%
+ You~cannot~use~\string\displaybreak\space inside~the~`empheq'%
+ \MessageBreak
+ environment,~as~`empheq'~creates~an~unbreakable~box.}}}
+\def\EQ_new_equationtype:nnn #1#2#3{%
+ \define@key{#1}{#2}[true]{%
+ \l_EQ_equationtype_int=#3\relax
+ \def\EQ_begin_equation:
+ {\g@addto@macro{\EQ_complete_mathdisplay:}{\begin{#2}}}%
+ \def\EQ_end_equation:
+ {\g@addto@macro{\EQ_complete_mathdisplay:}{\end{#2}}}}}
+\def\EQ_new_equationtype_arg:nnn #1#2#3{%
+ \define@key{#1}{#2}{%
+ \l_EQ_equationtype_int=#3\relax
+ \def\EQ_begin_equation:
+ {\g@addto@macro{\EQ_complete_mathdisplay:}{\begin{#2}{##1}}}%
+ \def\EQ_end_equation:
+ {\g@addto@macro{\EQ_complete_mathdisplay:}{\end{#2}}}}}
+\def\EQ_typeset_tags:{%
+ \sbox\EQ_tag_box{%
+ \parbox{.5\maxdimen}{%
+ \hbadness\@M
+ \EQ_prevent_vertical_space:
+ \EQ_typeset_tags_hook:
+ \MH_let:NwN\set@gather@field\EQ_set_gather_field:
+ \MH_let:NwN\set@field\EQ_set_align_field:
+ \MH_set_boolean_T:n {continue_measuring}
+ \global\g_EQ_temprow_int\m@ne
+ \MH_let:NwN \EQ_saved_maketag:n \maketag@@@
+ \def\maketag@@@##1{
+ \EQ_maketag:Nn \EQ_saved_maketag:n {##1}}
+ \EQ_complete_mathdisplay:}}}
+\def\EQ_predisplay_adjustment:{%
+ \if_dim:w \g_EQ_toprow_height_dim<\baselineskip
+ \vskip\g_EQ_toprow_height_dim
+ \vskip-\baselineskip
+ \else:
+ \vskip-\normallineskip
+ \fi:
+ \if_dim:w \g_EQ_toptag_height_dim>\g_EQ_toprow_height_dim
+ \if_dim:w \g_EQ_toptag_height_dim>\baselineskip
+ \vskip-\g_EQ_toptag_height_dim
+ \vskip\baselineskip
+ \vskip-\normallineskip
+ \fi:
+ \fi:}
+\def\EQ_postdisplay_adjustment:{%
+ \if_dim:w \g_EQ_bottomrow_depth_dim<\dp\strutbox
+ \vskip\g_EQ_bottomrow_depth_dim
+ \vskip-\dp\strutbox
+ \fi:
+ \if_dim:w \g_EQ_bottomtag_depth_dim>\g_EQ_bottomrow_depth_dim
+ \if_dim:w \g_EQ_bottomtag_depth_dim>\dp\strutbox
+ \vskip-\g_EQ_bottomtag_depth_dim
+ \vskip\dp\strutbox
+ \fi:
+ \fi:}
+\def\EQ_typeset_display:{%
+ \sbox\EQ_mathdisplay_box{%
+ \parbox{\l_EQ_temp_linewidth_dim}{%
+ \EQ_predisplay_adjustment:
+ \EQ_prevent_vertical_space:
+ \EQ_typeset_display_hook:
+ \def\maketag@@@##1{\EQ_maketag:Nn \vphantom{##1}}%
+ \EQ_complete_mathdisplay:
+ \EQ_postdisplay_adjustment:}}}
+\def\EQ_prevent_vertical_space:{%
+ \nointerlineskip
+ \abovedisplayskip\z@ \belowdisplayskip\z@\relax}
+\def\EQ_maketag:Nn #1#2{%
+ \setboxz@h{#2}%
+ \if_num:w \row@=\@ne
+ \global \g_EQ_toptag_height_dim = \ht\z@
+ \fi:
+ \global \g_EQ_bottomtag_depth_dim=\dp\z@
+ \xdef\g_EQ_latest_nonzerodepth_row_fint{\number\row@}
+ \@tempdima=\wd\z@
+ \if_dim:w \@tempdima > \g_EQ_widesttag_dim
+ \global \g_EQ_widesttag_dim = \@tempdima
+ \fi:
+ #1{#2}%
+}
+\def\EQ_set_gather_field:{%
+ \iftagsleft@
+ \global\lineht@\ht\z@
+ \else:
+ \global\lineht@\dp\z@
+ \fi:
+ \kern\eqnshift@
+ %\boxz@ % Original amsmath version
+ \EQ_measure_gather:
+ \phantom{\boxz@}%
+ \hfil}
+\def\EQ_measure_gather:{%
+ \if_num:w \row@=\@ne
+ \g_EQ_toprow_height_dim=\ht\z@
+ \fi:
+ \g_EQ_bottomrow_depth_dim=\dp\z@
+ \global\g_EQ_toprow_height_dim\g_EQ_toprow_height_dim
+ \global\g_EQ_bottomrow_depth_dim\g_EQ_bottomrow_depth_dim}
+\def\EQ_set_align_field:{%
+ \column@plus
+ \iftagsleft@
+ \if_dim:w \ht\z@>\lineht@
+ \global\lineht@\ht\z@
+ \fi:
+ \else:
+ \if_dim:w \dp\z@>\lineht@
+ \global\lineht@\dp\z@
+ \fi:
+ \fi:
+ %\boxz@ % Original amsmath version
+ \MH_if_boolean:nT {continue_measuring}{ \EQ_measure_align: }
+ \phantom{\boxz@}}
+\newcount\g_EQ_temprow_int
+\MH_new_boolean:n {still_in_samerow}
+\MH_new_boolean:n {continue_measuring}
+\def\EQ_measure_align:{%
+ \if_num:w \g_EQ_temprow_int=\row@
+ \MH_set_boolean_T:n {still_in_samerow}
+ \else:
+ \if_num:w \g_EQ_temprow_int>\row@
+ \global\MH_set_boolean_F:n {continue_measuring}
+ \fi:
+ \MH_set_boolean_F:n {still_in_samerow}
+ \global\@tempdimc=\@tempdimb
+ \global\@tempdimb=\g_EQ_bottomrow_depth_dim
+ \fi:
+ \MH_if_boolean:nTF {continue_measuring}{
+ \global\g_EQ_temprow_int=\row@
+ \@tempcnta=\row@
+ \if_num:w \@tempcnta=\z@
+ \@tempdima=\g_EQ_toprow_height_dim
+ \g_EQ_toprow_height_dim=\ht\z@\relax
+ \if_dim:w \g_EQ_toprow_height_dim<\@tempdima
+ \g_EQ_toprow_height_dim\@tempdima
+ \fi:
+ \fi:
+ \MH_if_boolean:nTF {still_in_samerow}{
+ \@tempdima=\g_EQ_bottomrow_depth_dim
+ \g_EQ_bottomrow_depth_dim=\dp\z@\relax
+ \if_dim:w \g_EQ_bottomrow_depth_dim<\@tempdima
+ \g_EQ_bottomrow_depth_dim\@tempdima
+ \fi:
+ }{
+ \g_EQ_bottomrow_depth_dim\dp\z@\relax
+ }
+ }{
+ \global\g_EQ_bottomrow_depth_dim=\@tempdimc
+ }
+ \global\g_EQ_toprow_height_dim\g_EQ_toprow_height_dim
+ \global\g_EQ_bottomrow_depth_dim\g_EQ_bottomrow_depth_dim}
+\def\EQ_place_tag:N #1{%
+ \tag*{\makebox[\g_EQ_widesttag_dim][#1]{%
+ \EQ_vertical_tag_adjustment:n {\usebox{\EQ_tag_box}}}}}
+\def\EQ_vertical_tag_adjustment:n #1{{%
+ \@tempdima\z@\@tempdimb\z@
+ \@tempdimc=\dp\strutbox
+ \if_dim:w \g_EQ_toprow_height_dim<\baselineskip
+ \MH_setlength:dn
+ \@tempdima{\g_EQ_toprow_height_dim-\baselineskip}
+ \else:
+ \MH_setlength:dn \@tempdima{-\normallineskip}
+ \fi:
+ \if_dim:w \g_EQ_toptag_height_dim>\g_EQ_toprow_height_dim
+ \if_dim:w \g_EQ_toptag_height_dim>\baselineskip
+ \MH_addtolength:dn \@tempdima
+ {-\g_EQ_toptag_height_dim+\baselineskip-\normallineskip}
+ \fi:
+ \fi:
+ \if_dim:w \g_EQ_bottomrow_depth_dim<\@tempdimc
+ \MH_setlength:dn \@tempdimb
+ {\g_EQ_bottomrow_depth_dim-\@tempdimc}
+ \fi:
+ \if_dim:w \g_EQ_bottomtag_depth_dim>\g_EQ_bottomrow_depth_dim
+ \if_dim:w \g_EQ_bottomtag_depth_dim<\@tempdimc
+ \else:
+ \MH_addtolength:dn \@tempdimb
+ {-\g_EQ_bottomtag_depth_dim+\@tempdimc}
+ \fi:
+ \fi:
+ \raisebox{-0.5\@tempdima+0.5\@tempdimb}{#1}}}%
+\def\EQ_use_mathdisplay:{%
+ \EQ_outerbox:{\usebox{\EQ_mathdisplay_box}}}
+\def\EQ_options_name:{EmphEqOpt}
+\MH_keyval_alias_with_addon:nnnn {EmphEqEnv}{equation}{gather}
+ {\EQ_disable_linebreak:}
+\MH_keyval_alias_with_addon:nnnn {EmphEqEnv}{equation*}{gather*}
+ {\EQ_disable_linebreak:}
+\def\EQ_disable_linebreak:{%
+ \MH_let:NwN \EQ_saved_Let: \Let@
+ \def\Let@{\def\\{%
+ \PackageError{empheq}{You~ cannot~ use~ \string\\~ in~ equation!}
+ {\@eha}}
+ \MH_let:NwN \Let@ \EQ_saved_Let:
+ }%
+}
+\EQ_new_equationtype:nnn {EmphEqEnv}{align}{1}
+\EQ_new_equationtype:nnn {EmphEqEnv}{align*}{2}
+\def\EQ_modify_linewidth_i:{%
+ \if_num:w \maxfields@=\tw@
+ \else:
+ \setlength{\l_EQ_temp_linewidth_dim}{%
+ \linewidth-\l_EQ_totalwidth_dim-\widthof{\EQ_outerbox:{}}}%
+ \fi:}
+\def\EQ_modify_linewidth_ii:{\EQ_modify_linewidth_i:}
+\def\find_displaywidth_i:{%
+ \MH_setlength:dn \l_EQ_displaywidth_dim
+ {\l_EQ_temp_linewidth_dim-\alignsep@}
+ \if_case:w \l_EQ_alignmentmode_int
+ \or: % #1:
+ \MH_addtolength:dn \l_EQ_displaywidth_dim{-\alignsep@}%
+ \or: % #2:
+ \MH_addtolength:dn \l_EQ_displaywidth_dim{-\alignsep@}%
+ \or: % #3:
+ \MH_addtolength:dn \l_EQ_displaywidth_dim{-\@mathmargin}%
+ \or: % #4:
+ \MH_addtolength:dn \l_EQ_displaywidth_dim{-\@mathmargin}%
+ \fi:}
+\def\find_displaywidth_ii:{\find_displaywidth_i:}
+\def\EQ_place_display_i: {\EQ_use_mathdisplay:}
+\def\EQ_place_display_ii:{\EQ_place_display_i:}
+\EQ_new_equationtype:nnn {EmphEqEnv}{gather}{3}
+\EQ_new_equationtype:nnn {EmphEqEnv}{gather*}{4}
+\def\EQ_modify_linewidth_iii:{}
+\def\EQ_modify_linewidth_iv:{\EQ_modify_linewidth_iii:}
+\def\find_displaywidth_iii:{%
+ \MH_setlength:dn \l_EQ_displaywidth_dim{\totwidth@}%
+ \if_case:w \l_EQ_alignmentmode_int \or: \or: % #1 & #2:
+ \or: % #3:
+ \MH_addtolength:dn \l_EQ_displaywidth_dim{-\@mathmargin}%
+ \or: % #4:
+ \MH_addtolength:dn \l_EQ_displaywidth_dim{-\@mathmargin}%
+ \fi:}
+\def\find_displaywidth_iv:{\find_displaywidth_iii:}
+\def\EQ_place_display_iii:{\EQ_use_mathdisplay:}
+\def\EQ_place_display_iv: {\EQ_place_display_iii:}
+\MH_keyval_alias_with_addon:nnnn {EmphEqEnv}{multline}
+ {flalign}{\MH_set_boolean_T:n {multline}}
+\MH_keyval_alias_with_addon:nnnn {EmphEqEnv}{multline*}
+ {flalign*}{\MH_set_boolean_T:n {multline}}
+\MH_new_boolean:n {multline}
+\def\EQ_multline_modify_linewidth_tag:{%
+ \if_case:w \l_EQ_alignmentmode_int
+ \or: % #1:
+ \MH_addtolength:dn \l_EQ_temp_linewidth_dim{%
+ -\g_EQ_widesttag_dim-\multlinetaggap-\multlinegap}%
+ \or:
+ \MH_addtolength:dn \l_EQ_temp_linewidth_dim{%
+ -\g_EQ_widesttag_dim-\multlinetaggap-\multlinegap}%
+ \or:
+ \MH_addtolength:dn \l_EQ_temp_linewidth_dim{%
+ -\@mathmargin-\g_EQ_widesttag_dim-\multlinetaggap}%
+ \or:
+ \MH_addtolength:dn
+ \l_EQ_temp_linewidth_dim{-\@mathmargin-\multlinegap}%
+ \fi:
+}
+\def\EQ_multline_modify_linewidth_notag:{%
+ \if_case:w \l_EQ_alignmentmode_int\or:
+ \MH_addtolength:dn \l_EQ_temp_linewidth_dim{-2\multlinegap}
+ \or:
+ \MH_addtolength:dn \l_EQ_temp_linewidth_dim{-2\multlinegap}
+ \or:
+ \MH_addtolength:dn
+ \l_EQ_temp_linewidth_dim{-\@mathmargin-\multlinegap}%
+ \or:
+ \MH_addtolength:dn
+ \l_EQ_temp_linewidth_dim{-\@mathmargin-\multlinegap}%
+ \fi:
+}
+\MH_let:NwN \MTmultlined \multlined
+\MH_let:NwN \endMTmultlined \endmultlined
+\MH_if_boolean:nTF {good_mult}{
+\MH_keyval_alias_with_addon:nnnn {EmphEqEnv}{multline}{gather}
+ {\MH_set_boolean_T:n {outer_mult}}
+\MH_keyval_alias_with_addon:nnnn {EmphEqEnv}{multline*}{gather*}
+ {\MH_set_boolean_T:n {outer_mult}}
+\def\EQ_modify_linewidth_iii_mult:{
+ \setlength{\l_EQ_temp_linewidth_dim}{%
+ \linewidth-\widthof{\EQ_outerbox:{}}}%
+ \if_dim:w \g_EQ_widesttag_dim>\z@
+ \EQ_multline_modify_linewidth_tag:
+ \else:
+ \EQ_multline_modify_linewidth_notag:
+ \fi:
+ \MH_setlength:dn \l_MT_multwidth_dim{\l_EQ_temp_linewidth_dim}
+}
+\def\EQ_modify_linewidth_iv_mult:{\EQ_modify_linewidth_iii_mult:}
+\def\find_displaywidth_iii_mult:{%
+ \MH_setlength:dn \l_EQ_displaywidth_dim{\totwidth@}%
+ \if_case:w \l_EQ_alignmentmode_int \or: \or: % #1 & #2:
+ \or: % #3:
+ \MH_addtolength:dn \l_EQ_displaywidth_dim{-\@mathmargin}%
+ \or: % #4:
+ \MH_addtolength:dn \l_EQ_displaywidth_dim{-\@mathmargin}%
+ \fi:}
+\def\find_displaywidth_iv_mult:{\find_displaywidth_iii_mult:}
+\def\EQ_place_display_iii_mult:{
+ \if_case:w \l_EQ_alignmentmode_int
+ \or: % #1:
+ \if_dim:w \g_EQ_widesttag_dim>\z@
+ \abovedisplayshortskip=\abovedisplayskip
+ \rlap{
+ \kern-.5\linewidth
+ \kern\multlinegap
+ \EQ_use_mathdisplay:
+ }
+ \else:
+ \EQ_use_mathdisplay:
+ \fi:
+ \or: % #2:
+ \if_dim:w \g_EQ_widesttag_dim>\z@
+ \llap{
+ \EQ_use_mathdisplay:
+ \kern-.5\linewidth
+ \kern\multlinegap
+ }%
+ \else:
+ \EQ_use_mathdisplay:
+ \fi:
+ \or: % #3:
+ \EQ_use_mathdisplay:
+ \or: % #4:
+ \EQ_use_mathdisplay:
+ \fi:
+}
+\def\EQ_place_display_iv_mult: {\EQ_place_display_iii_mult:}
+}{
+\def\EQ_generic_multline:nnnnn #1#2#3#4#5{%
+ \hskip1sp#2#3{{}#5}#4%
+ \if:w *#1\relax\else:\notag\fi:}
+\def\multleft{\@ifstar{%
+ \MH_if_boolean:nTF {multlined}{
+ \def\EQ_next:{\EQ_multlined_left:n}
+ }{
+ \def\EQ_next:{
+ \EQ_generic_multline:nnnnn {*}{}{\mathrlap}{&&&&&}}
+ }
+ \EQ_next:}{%
+ \MH_if_boolean:nTF {multlined}{
+ \def\EQ_next:{\EQ_multlined_left:n}%
+ }{
+ \def\EQ_next:{
+ \EQ_generic_multline:nnnnn {}{}{\mathrlap}{&&&&&}}
+ }
+ \EQ_next:}}%
+\def\multcenter{\@ifstar{%
+ \MH_if_boolean:nTF {multlined}{
+ \def\EQ_next:{\EQ_multlined_center:n}%
+ }{
+ \def\EQ_next:{
+ \EQ_generic_multline:nnnnn {*}{&&}{\mathclap}{&&&}}
+ }
+ \EQ_next:}{%
+ \MH_if_boolean:nTF {multlined}{
+ \def\EQ_next:{\EQ_multlined_center:n }%
+ }{
+ \def\EQ_next:{
+ \EQ_generic_multline:nnnnn {}{&&}{\mathclap}{&&&}}
+ }
+ \EQ_next:}}%
+\def\multright{\@ifstar{%
+ \MH_if_boolean:nTF {multlined}{
+ \def\EQ_next:{\EQ_multlined_right:n }%
+ }{
+ \def\EQ_next:{
+ \EQ_generic_multline:nnnnn {*}{&&&&&}{\mathllap}{}}
+ }
+ \EQ_next:}{%
+ \MH_if_boolean:nTF {multlined}{
+ \def\EQ_next:{\EQ_multlined_right:n }%
+ }{
+ \def\EQ_next:{
+ \EQ_generic_multline:nnnnn {}{&&&&&}{\mathllap}{}}
+ }
+ \EQ_next:}}
+\def\multfirst{%
+ \MH_if_boolean:nTF {multlined}{
+ \def\EQ_next:{\EQ_multlined_left:n }%
+ }{
+ \if_case:w \l_EQ_alignmentmode_int
+ \or: % #1:
+ \def\EQ_next:{\multleft}%
+ \or: % #2:
+ \def\EQ_next:{\multleft*}%
+ \or: % #3:
+ \def\EQ_next:{\multleft}%
+ \or: % #4:
+ \def\EQ_next:{\multleft*}%
+ \fi:
+ }
+ \EQ_next:}
+\def\multmiddle{%
+ \def\EQ_next:{%
+ \MH_if_boolean:nTF {multlined}{
+ \expandafter\EQ_multlined_center:n
+ }{
+ \expandafter\multcenter
+ }
+ }%
+ \@ifstar{\EQ_next:}{\EQ_next:}}
+\def\multlast{%
+ \MH_if_boolean:nTF {multlined}{
+ \def\EQ_next:{\EQ_multlined_right:n }%
+ }{
+ \if_case:w \l_EQ_alignmentmode_int
+ \or: % #1:
+ \def\EQ_next:{\multright*}%
+ \or: % #2:
+ \def\EQ_next:{\multright}%
+ \or: % #3:
+ \def\EQ_next:{\multright*}%
+ \or: % #4:
+ \def\EQ_next:{\multright}%
+ \fi:
+ }
+ \EQ_next:}
+\MH_new_boolean:n {multlined}
+\newdimen\multlinedwidth
+\MH_setlength:dn \multlinedwidth{.7\linewidth}
+\renewenvironment{multlined}%
+ {\MH_nospace_ifnextchar:Nnn [ {\EQ_multlined_I:w}
+ {\EQ_multlined_I:w[c]}
+ }
+ { \endaligned }
+\def\EQ_multlined_I:w[#1]{%
+ \MH_nospace_ifnextchar:Nnn[ {\EQ_multlined_II:w[#1]}
+ {\EQ_multlined_II:w[#1][\multlinedwidth]}}
+\def\EQ_multlined_II:w[#1][#2]{%
+ \MH_set_boolean_T:n {multlined}
+ \MH_let:NwN \Let@\MT_saved_Let:
+ \if:w t#1\relax \EQ_multlined_III:nn {#1}{#2}%
+ \else:
+ \if:w b#1\relax \EQ_multlined_III:nn {#1}{#2}%
+ \else:
+ \if:w c#1\relax \EQ_multlined_III:nn {#1}{#2}%
+ \else:
+ \EQ_multlined_III:nn {#2}{#1}%
+ \fi:
+ \fi:
+ \fi:
+ \mkern-\thinmuskip
+ \EQ_next:}
+\def\EQ_multlined_III:nn #1#2{%
+ \def\EQ_next:{\setlength\multlinedwidth{#2}%
+ \start@aligned{#1}{\thr@@}}}
+\def\EQ_multlined_left:n #1{%
+ \mathrlap{#1}&\hskip.5\multlinedwidth&&\hskip.5\multlinedwidth&&}
+\def\EQ_multlined_center:n #1{%
+ &\hskip.5\multlinedwidth&&\mathclap{#1}\hskip.5\multlinedwidth&&}
+\def\EQ_multlined_right:n #1{%
+ &\hskip.5\multlinedwidth&&\hskip.5\multlinedwidth&&\mathllap{#1}}
+}
+\EQ_new_equationtype:nnn {EmphEqEnv}{flalign}{5}
+\EQ_new_equationtype:nnn {EmphEqEnv}{flalign*}{6}
+\def\EQ_modify_linewidth_v:{%
+ \setlength{\l_EQ_temp_linewidth_dim}{%
+ \linewidth-\l_EQ_totalwidth_dim-\widthof{\EQ_outerbox:{}}}%
+ \if_dim:w \g_EQ_widesttag_dim>\z@
+ \MH_if_boolean:nTF {multline}{
+ \EQ_multline_modify_linewidth_tag:
+ }{
+ \if_case:w \l_EQ_alignmentmode_int
+ \or: % #1:
+ \MH_addtolength:dn \l_EQ_temp_linewidth_dim
+ {-\g_EQ_widesttag_dim-\mintagsep}
+ \or: % #2:
+ \MH_addtolength:dn \l_EQ_temp_linewidth_dim
+ {-\g_EQ_widesttag_dim-\mintagsep}%
+ \or: % #3:
+ \MH_addtolength:dn \l_EQ_temp_linewidth_dim
+ {-\g_EQ_widesttag_dim-\mintagsep}
+ \or: % #4:
+ \MH_addtolength:dn \l_EQ_temp_linewidth_dim
+ {-\@mathmargin}
+ \fi:
+ }
+ \else:
+ \MH_if_boolean:nT {multline}{
+ \EQ_multline_modify_linewidth_notag:
+ }
+ \fi:}
+\def\EQ_modify_linewidth_vi:{\EQ_modify_linewidth_v:}
+\def\find_displaywidth_v:{%
+ \MH_setlength:dn
+ \l_EQ_displaywidth_dim{\l_EQ_temp_linewidth_dim}}
+\def\find_displaywidth_vi:{\find_displaywidth_v:}
+\def\EQ_place_display_v:{%
+ \if_case:w \l_EQ_alignmentmode_int
+ \or: % #1:
+ \if_dim:w \g_EQ_widesttag_dim>\z@
+ \MH_if_boolean:nTF {multline}{
+ \rlap{\kern\multlinegap \kern-.5\linewidth
+ \EQ_use_mathdisplay:
+ \kern-\mintagsep \kern\multlinetaggap}%
+ }{
+ \rlap{\kern-.5\linewidth\EQ_use_mathdisplay:}%
+ }
+ \else:
+ \EQ_use_mathdisplay:
+ \fi:
+ \or: % #2:
+ \if_dim:w \g_EQ_widesttag_dim>\z@
+ \MH_if_boolean:nTF {multline}{
+ \llap{\kern-\mintagsep \kern\multlinetaggap
+ \EQ_use_mathdisplay:
+ \kern\multlinegap \kern-.5\linewidth}%
+ }{
+ \llap{\EQ_use_mathdisplay:\kern-.5\linewidth}%
+ }
+ \else:
+ \EQ_use_mathdisplay:
+ \fi:
+ \or: % #3:
+ \MH_if_boolean:nF {multline}{ \kern-\multlinetaggap }
+ \EQ_use_mathdisplay:
+ \or: % #4:
+ \if_dim:w \g_EQ_widesttag_dim>\z@
+ \else:
+ \MH_if_boolean:nF {multline}{ \kern-\@mathmargin }
+ \fi:
+ \EQ_use_mathdisplay:
+ \fi:
+ \MH_set_boolean_F:n {multline}}
+\def\EQ_place_display_vi:{\EQ_place_display_v:}
+\EQ_new_equationtype_arg:nnn {EmphEqEnv}{alignat}{7}
+\EQ_new_equationtype_arg:nnn {EmphEqEnv}{alignat*}{8}
+\def\EQ_modify_linewidth_vii:{}
+\def\EQ_modify_linewidth_viii:{\EQ_modify_linewidth_vii:}
+\def\find_displaywidth_vii:{%
+ \MH_setlength:dn \l_EQ_displaywidth_dim{\totwidth@}%
+ \if_case:w \l_EQ_alignmentmode_int
+ \or: % #1:
+ \or: % #2:
+ \or: % #3:
+ \MH_addtolength:dn \l_EQ_displaywidth_dim{-\eqnshift@}%
+ \or: % #4:
+ \MH_addtolength:dn \l_EQ_displaywidth_dim{-\@mathmargin}%
+ \fi:}
+\def\find_displaywidth_viii:{\find_displaywidth_vii:}
+\def\EQ_place_display_vii:{\EQ_use_mathdisplay:}
+\def\EQ_place_display_viii:{\EQ_place_display_vii:}
+\define@key{\EQ_options_name:}{box}{\def\EQ_outerbox:{#1}}
+\MH_keyval_alias:nnn {\EQ_options_name:}{outerbox}{box}
+\def\EQ_marginbox:nn #1#2{%
+ \settowidth{\@tempdima}{#2}%
+ \makebox[\z@]{\hspace{\@tempdima}#1{#2}}}
+\define@key{\EQ_options_name:}{marginbox}{%
+ \def\EQ_outerbox:{\EQ_marginbox:nn {#1}}}
+\define@key{\EQ_options_name:}{innerbox}{\def\EQ_innerbox:{#1}}
+\define@key{\EQ_options_name:}{left}{\def\EQ_left_side:{#1}}
+\define@key{\EQ_options_name:}{right}{\def\EQ_right_side:{#1}}
+\newcommand*\empheqset[1]{\setkeys{\EQ_options_name:}{#1}}
+\def\EQ_upgrade_error:{%
+ \PackageError{empheq}
+ {You~ are~ using~ the~ old~ syntax!\MessageBreak
+ The~ `empheq'~ environment~ takes~ a~ mandatory~
+ argument~ now.\MessageBreak
+ You~ need~ to~ exit~ and~ change~ your~ source~ file.}
+ {It~ won't~ work,~ trust me.~ Press~ `X'~ now.}}
+\define@key{\EQ_options_name:}{boxtype}{\EQ_upgrade_error:}
+\define@key{\EQ_options_name:}{Left}{\EQ_upgrade_error:}
+\define@key{\EQ_options_name:}{Right}{\EQ_upgrade_error:}
+\newenvironment{empheq}[2][]{%
+ \setkeys{EmphEqEnv}{#2}\setkeys{\EQ_options_name:}{#1}%
+ \EmphEqMainEnv}{\endEmphEqMainEnv}
+\newcommand*\DeclareLeftDelimiter[2][]{%
+ \EQ_declare_left_delimiter:nnnn {#1}{#2}{}{}%
+ \EQ_declare_left_delimiter:nnnn {#1}{#2}{big}{\EQ_innerbox:}}
+\def\EQ_declare_left_delimiter:nnnn #1#2#3#4{%
+ \@namedef{empheq#3\expandafter\@gobble\string#2}{%
+ \left#2%
+ \mkern-\thinmuskip
+ \vphantom{#4{\parbox{.5\maxdimen}{%
+ \EQ_predisplay_adjustment:
+ \EQ_prevent_vertical_space:
+ \usebox{\EQ_tag_box}%
+ \EQ_postdisplay_adjustment:}}}%
+ \right.%
+ \kern-\nulldelimiterspace #1}}
+\newcommand*\DeclareRightDelimiter[2][]{%
+ \EQ_declare_right_delimiter:nnnn {#1}{#2}{}{}%
+ \EQ_declare_right_delimiter:nnnn {#1}{#2}{big}{\EQ_innerbox:}}
+\def\EQ_declare_right_delimiter:nnnn #1#2#3#4{%
+ \@namedef{empheq#3\expandafter\@gobble\string#2}{%
+ \kern-\nulldelimiterspace
+ #1%
+ \left.%
+ \vphantom{#4{\parbox{.5\maxdimen}{%
+ \EQ_predisplay_adjustment:
+ \EQ_prevent_vertical_space:
+ \usebox{\EQ_tag_box}%
+ \EQ_postdisplay_adjustment:}}}%
+ \mkern-\thinmuskip
+ \right#2}}
+\DeclareLeftDelimiter{\lbrace}
+\DeclareRightDelimiter{\rbrace}
+\DeclareLeftDelimiter{\lbrack}
+\DeclareRightDelimiter{\rbrack}
+\DeclareLeftDelimiter{\langle}
+\DeclareRightDelimiter{\rangle}
+\DeclareLeftDelimiter{\lvert}
+\DeclareRightDelimiter{\rvert}
+\DeclareLeftDelimiter{\lVert}
+\DeclareRightDelimiter{\rVert}
+\DeclareLeftDelimiter{\lfloor}
+\DeclareRightDelimiter{\rfloor}
+\DeclareLeftDelimiter{\lceil}
+\DeclareRightDelimiter{\rceil}
+\DeclareLeftDelimiter{\lparen}
+\DeclareRightDelimiter{\rparen}
+\def\EQ_typeset_tags_hook:{}
+\def\EQ_typeset_display_hook:{}
+\g@addto@macro\EQ_typeset_display_hook:{
+ \def\SK@@label#1>#2\SK@{}
+}
+\@namedef{SK@AmSequation} {\SK@equationtrue}
+\@namedef{SK@AmSequation*} {\SK@equationtrue}
+\@namedef{SK@AmSalign} {\SK@equationtrue}
+\@namedef{SK@AmSalign*} {\SK@equationtrue}
+\@namedef{SK@AmSalignat} {\SK@equationtrue}
+\@namedef{SK@AmSalignat*} {\SK@equationtrue}
+\@namedef{SK@AmSgather} {\SK@equationtrue}
+\@namedef{SK@AmSgather*} {\SK@equationtrue}
+\@namedef{SK@AmSmultline} {\SK@equationtrue}
+\@namedef{SK@AmSmultline*} {\SK@equationtrue}
+\@namedef{SK@AmSflalign} {\SK@equationtrue}
+\@namedef{SK@AmSflalign*} {\SK@equationtrue}
+\AtBeginDocument{
+ \@ifundefined{Hy@linkcounter}{\newcount\Hy@linkcounter}{}
+}
+\g@addto@macro\EQ_typeset_display_hook:{
+ \MH_let:NwN \hyper@refstepcounter\@gobble
+}
+\g@addto@macro\EQ_typeset_tags_hook:{
+ \MH_let:NwN\TagsPlusEndmarks\relax
+ \MH_let:NwN\RestoreTags\relax
+}
+\g@addto@macro\EQ_typeset_display_hook:{
+ \MH_let:NwN\TagsPlusEndmarks\relax
+ \MH_let:NwN\RestoreTags\relax
+}
+\g@addto@macro\EQ_typeset_display_hook:{
+ \MH_let:NwN\ltx@label\MT_gobblelabel:w
+ \MH_let:NwN \GenericError \@gobblefour
+}
+\AtBeginDocument{%
+ \@ifpackageloaded{fancybox}{%
+ \@ifpackageloaded{color}{\definecolor{shadowcolor}{rgb}{0,0,0}}%
+ {\newcommand*\textcolor[2]{\normalcolor{#2}}}%
+ \MH_new_boolean:n {shadowbox_star}
+ \renewcommand*\shadowbox{%
+ \@ifstar{\MH_set_boolean_T:n {shadowbox_star}
+ \VerbBox\EQ_shadowbox:n}
+ {\MH_set_boolean_F:n {shadowbox_star}
+ \VerbBox\EQ_shadowbox:n}}
+ \def\EQ_shadowbox:n #1{%
+ \sbox{\z@}{\fbox{#1}}%
+ \MH_if_boolean:nTF {shadowbox_star}{
+ \MH_setlength:dn \@tempdima{\z@}%
+ }{
+ \MH_setlength:dn \@tempdima{\dp\z@+\shadowsize}%
+ }
+ \raisebox{\@tempdima}{%
+ \makebox[\z@][l]{%
+ \kern\shadowsize \textcolor{shadowcolor}{%
+ \rule[-\dp\z@-\shadowsize]{\wd\z@}{\shadowsize}}%
+ }%
+ \usebox\z@\textcolor{shadowcolor}{%
+ \rule[-\dp\z@-\shadowsize]{\shadowsize}{\ht\z@+\dp\z@}}}}%
+ }{}%
+}
+\def\EQ_overload_ams_begin:n #1{%
+ \MH_let:cc {AmS#1}{#1}%
+ \MH_let:cc {AmS#1*}{#1*}
+}
+\def\EQ_overload_ams_end:n #1{%
+ \MH_let:cc {endAmS#1}{endAmSalign}
+}
+\AtBeginDocument{
+ \EQ_overload_ams_begin:n {equation}
+ \MH_let:cc {endAmSequation}{endequation}
+ \MH_let:cc {endAmSequation*}{endequation*}
+ \MH_if_boolean:nT {overload_ams}{
+ \def\EQ_renew_ams_environment:n #1{%
+ \MaybeMHPrecedingSpacesOff
+ \renewenvironment{#1}[1][]{%
+ \setkeys{\EQ_options_name:}{##1}%
+ \setkeys{EmphEqEnv}{AmS#1}%
+ \EmphEqMainEnv
+ }{\endEmphEqMainEnv}
+ \MHPrecedingSpacesOn
+ }
+ \EQ_new_equationtype:nnn {EmphEqEnv}{AmSalign} {1}
+ \EQ_new_equationtype:nnn {EmphEqEnv}{AmSalign*} {2}
+ \EQ_new_equationtype:nnn {EmphEqEnv}{AmSgather} {3}
+ \EQ_new_equationtype:nnn {EmphEqEnv}{AmSgather*} {4}
+ \EQ_new_equationtype:nnn {EmphEqEnv}{AmSflalign} {5}
+ \EQ_new_equationtype:nnn {EmphEqEnv}{AmSflalign*}{6}
+ \EQ_new_equationtype_arg:nnn {EmphEqEnv}{AmSalignat} {7}
+ \EQ_new_equationtype_arg:nnn {EmphEqEnv}{AmSalignat*}{8}
+ \EQ_overload_ams_begin:n {gather}
+ \MH_let:cc {endAmSgather}{endgather}
+ \MH_let:cc {endAmSgather*}{endAmSgather}
+ \EQ_renew_ams_environment:n {gather}
+ \EQ_renew_ams_environment:n {gather*}
+ \EQ_overload_ams_begin:n {equation}
+ \MH_keyval_alias_with_addon:nnnn {EmphEqEnv} {AmSequation}
+ {AmSgather}{\EQ_disable_linebreak:}
+ \MH_keyval_alias_with_addon:nnnn {EmphEqEnv}{AmSequation*}
+ {AmSgather*}{\EQ_disable_linebreak:}
+ \EQ_renew_ams_environment:n {equation}
+ \EQ_renew_ams_environment:n {equation*}
+ \EQ_overload_ams_begin:n {align}
+ \MH_let:cc {endAmSalign}{endalign}
+ \EQ_overload_ams_end:n {align*}
+ \EQ_renew_ams_environment:n {align}
+ \EQ_renew_ams_environment:n {align*}
+ \EQ_overload_ams_begin:n {flalign}
+ \EQ_overload_ams_end:n {flalign}
+ \EQ_overload_ams_end:n {flalign*}
+ \EQ_renew_ams_environment:n {flalign}
+ \EQ_renew_ams_environment:n {flalign*}
+ \EQ_overload_ams_begin:n {alignat}
+ \EQ_overload_ams_end:n {alignat}
+ \EQ_overload_ams_end:n {alignat*}
+ \MaybeMHPrecedingSpacesOff
+ \newcommand*\EQ_alignat_optional:w [1][]{
+ \setkeys{\EQ_options_name:}{#1}
+ \EmphEqMainEnv}
+ \MHPrecedingSpacesOn
+ \renewenvironment{alignat}[1]{
+ \setkeys{EmphEqEnv}{AmSalignat=#1}
+ \EQ_alignat_optional:w}
+ {\endEmphEqMainEnv}
+ \renewenvironment{alignat*}[1]{%
+ \setkeys{EmphEqEnv}{AmSalignat*=#1}%
+ \EQ_alignat_optional:w}%
+ {\endEmphEqMainEnv}
+ \DeclareRobustCommand{\[}{\begin{AmSequation*}}
+ \DeclareRobustCommand{\]}{\end{AmSequation*}}
+ \MH_keyval_alias:nnn {EmphEqEnv}{gather} {AmSgather}
+ \MH_keyval_alias:nnn {EmphEqEnv}{gather*} {AmSgather*}
+ \MH_keyval_alias:nnn {EmphEqEnv}{align} {AmSalign}
+ \MH_keyval_alias:nnn {EmphEqEnv}{align*} {AmSalign*}
+ \MH_keyval_alias:nnn {EmphEqEnv}{flalign} {AmSflalign}
+ \MH_keyval_alias:nnn {EmphEqEnv}{flalign*}{AmSflalign*}
+ \MH_keyval_alias:nnn {EmphEqEnv}{alignat} {AmSalignat}
+ \MH_keyval_alias:nnn {EmphEqEnv}{alignat*}{AmSalignat*}
+ \MH_if_boolean:nT {good_mult}{
+ \EQ_overload_ams_begin:n {multline}
+ \MH_let:cc {endAmSmultline}{endmultline}
+ \MH_let:cc {endAmSmultline*}{endAmSmultline}
+ \MH_keyval_alias_with_addon:nnnn {EmphEqEnv}{AmSmultline}
+ {AmSgather}{\MH_set_boolean_T:n {outer_mult}}
+ \MH_keyval_alias_with_addon:nnnn {EmphEqEnv}{AmSmultline*}
+ {AmSgather*}{\MH_set_boolean_T:n {outer_mult}}
+ \EQ_renew_ams_environment:n {multline}
+ \EQ_renew_ams_environment:n {multline*}
+ }
+ \MH_if_boolean:nT {overload_amsII}{
+ \MH_protected:\def\[#1\]{\begin{equation*} #1\end{equation*}}
+ \MH_if_boolean:nF {good_mult}{
+ \EQ_overload_ams_begin:n {multline}
+ \MH_keyval_alias_with_addon:nnnn {EmphEqEnv}{AmSmultline}
+ {AmSflalign}{\MH_set_boolean_T:n {multline}}
+ \MH_keyval_alias_with_addon:nnnn {EmphEqEnv}{AmSmultline*}
+ {AmSflalign*}{\MH_set_boolean_T:n {multline}}
+ \EQ_renew_ams_environment:n {multline}
+ \EQ_renew_ams_environment:n {multline*}
+ }
+ }
+ }
+}
+\endinput
+%%
+%% End of file `empheq.sty'.