diff options
Diffstat (limited to 'Master/texmf-dist/tex/latex/bidi/extrafootnotefeatures.def')
-rw-r--r-- | Master/texmf-dist/tex/latex/bidi/extrafootnotefeatures.def | 802 |
1 files changed, 482 insertions, 320 deletions
diff --git a/Master/texmf-dist/tex/latex/bidi/extrafootnotefeatures.def b/Master/texmf-dist/tex/latex/bidi/extrafootnotefeatures.def index aa17588e35f..d8b03a322b5 100644 --- a/Master/texmf-dist/tex/latex/bidi/extrafootnotefeatures.def +++ b/Master/texmf-dist/tex/latex/bidi/extrafootnotefeatures.def @@ -7,48 +7,146 @@ %% bidi.dtx (with options: `extrafootnotefeatures.def') %% %% ______________________________________ -%% Copyright © 2009–2011 VAFA KHALIGHI +%% Copyright © 2009–2012 Vafa Khalighi %% %% License information appended. %% %% -\ProvidesFile{extrafootnotefeatures}[2011/08/01 v0.2 bidi extra footnote features for XeTeX engine] -\newif\if@parafootRTL -\newcommand{\setRTLparagraphfootnotes}{\@parafootRTLtrue} -\newcommand{\setLTRparagraphfootnotes}{\@parafootRTLfalse} +\ProvidesFile{extrafootnotefeatures}[2012/01/01 v0.3 bidi extra footnote features for XeTeX engine] +\g@addto@macro\document{\textwidthfootnoterule} +\bidi@ensure@newcommand{\setRTLparagraphfootnotes}{\@parafootRTLtrue} +\bidi@ensure@newcommand{\setLTRparagraphfootnotes}{\@parafootRTLfalse} +\long\def\@footnotetext#1{% + \begingroup + \setbox\footins + \vbox{\if@RTL@footnote\@RTLtrue\else\@RTLfalse\fi + \def\baselinestretch{\m@m@footnote@spacing}% + \reset@font\foottextfont + \interlinepenalty\interfootnotelinepenalty + \splittopskip\footnotesep + \splitmaxdepth \dp\strutbox \floatingpenalty \@MM + \hsize\columnwidth \@parboxrestore + \bidi@footnotetext@dir{#1}% + \protected@edef\@currentlabel{\csname p@footnote\endcsname\@thefnmark}\@makefntext + {\rule\z@\footnotesep\ignorespaces{\foottextfont #1}% + \@finalstrut\strutbox}}% + \bidi@footnotetext@after + \insert\footins{\unvbox\footins}% + \endgroup% + \m@mmf@prepare} +\long\def\@RTLfootnotetext#1{% + \begingroup + \setbox\footins + \vbox{\@RTLtrue% + \def\baselinestretch{\m@m@footnote@spacing}% + \reset@font\RTLfoottextfont + \interlinepenalty\interfootnotelinepenalty + \splittopskip\footnotesep + \splitmaxdepth \dp\strutbox \floatingpenalty \@MM + \hsize\columnwidth \@parboxrestore + \bidi@footnotetext@dir{#1}% + \protected@edef\@currentlabel{\csname p@footnote\endcsname\@thefnmark}\@makefntext + {\rule\z@\footnotesep\ignorespaces{\RTLfoottextfont #1}% + \@finalstrut\strutbox}}% + \bidi@footnotetext@after + \insert\footins{\unvbox\footins}% + \endgroup% + \m@mmf@prepare} +\long\def\@LTRfootnotetext#1{% + \begingroup + \setbox\footins + \vbox{\@RTLfalse% + \def\baselinestretch{\m@m@footnote@spacing}% + \reset@font\LTRfoottextfont + \interlinepenalty\interfootnotelinepenalty + \splittopskip\footnotesep + \splitmaxdepth \dp\strutbox \floatingpenalty \@MM + \hsize\columnwidth \@parboxrestore + \bidi@footnotetext@dir{#1}% + \protected@edef\@currentlabel{\csname p@footnote\endcsname\@thefnmark}\@makefntext + {\rule\z@\footnotesep\ignorespaces{\LTRfoottextfont #1}% + \@finalstrut\strutbox}}% + \bidi@footnotetext@after + \insert\footins{\unvbox\footins}% + \endgroup% + \m@mmf@prepare} +\renewcommand{\@mpfootnotetext}[1]{% + \global\setbox\@mpfootins\vbox{\if@RTL@footnote\@RTLtrue\else\@RTLfalse\fi% + \unvbox\@mpfootins + \def\baselinestretch{\m@m@footnote@spacing}% + \foottextfont \hsize\columnwidth \@parboxrestore + \protected@edef\@currentlabel{% + \csname p@mpfootnote\endcsname\@thefnmark}% + \color@begingroup + \reset@font% + \bidi@footnotetext@dir{#1} + \ifnum\c@mpfootnote=1\if@RTL\global\let\bidi@footnoterule\right@footnote\else\global\let\bidi@footnoterule\left@footnote\fi\fi + \@makefntext{% + \rule\z@\footnotesep\ignorespaces{\foottextfont #1}% + \@finalstrut\strutbox}% + \color@endgroup}} +\renewcommand{\@mpLTRfootnotetext}[1]{% + \global\setbox\@mpfootins\vbox{\@RTLfalse% + \unvbox\@mpfootins + \def\baselinestretch{\m@m@footnote@spacing}% + \LTRfoottextfont \hsize\columnwidth \@parboxrestore + \protected@edef\@currentlabel{% + \csname p@mpfootnote\endcsname\@thefnmark}% + \color@begingroup + \reset@font% + \bidi@footnotetext@dir{#1} + \ifnum\c@mpfootnote=1\if@RTL\global\let\bidi@footnoterule\right@footnote\else\global\let\bidi@footnoterule\left@footnote\fi\fi + \@makefntext{% + \rule\z@\footnotesep\ignorespaces{\LTRfoottextfont #1}% + \@finalstrut\strutbox}% + \color@endgroup}} +\renewcommand{\@mpRTLfootnotetext}[1]{% + \global\setbox\@mpfootins\vbox{\@RTLtrue% + \unvbox\@mpfootins + \def\baselinestretch{\m@m@footnote@spacing}% + \RTLfoottextfont \hsize\columnwidth \@parboxrestore + \protected@edef\@currentlabel{% + \csname p@mpfootnote\endcsname\@thefnmark}% + \color@begingroup + \reset@font% + \bidi@footnotetext@dir{#1} + \ifnum\c@mpfootnote=1\if@RTL\global\let\bidi@footnoterule\right@footnote\else\global\let\bidi@footnoterule\left@footnote\fi\fi + \@makefntext{% + \rule\z@\footnotesep\ignorespaces{\RTLfoottextfont #1}% + \@finalstrut\strutbox}% + \color@endgroup}} \let\m@mold@footnotetext\@footnotetext \let\m@mold@LTRfootnotetext\@LTRfootnotetext \let\m@mold@RTLfootnotetext\@RTLfootnotetext \let\m@mold@mpfootnotetext\@mpfootnotetext \let\m@mold@mpLTRfootnotetext\@mpLTRfootnotetext \let\m@mold@mpRTLfootnotetext\@mpRTLfootnotetext -\newcommand{\normalfootnotes}{% +\bidi@ensure@newcommand{\normalfootnotes}{% \let\@footnotetext\m@mold@footnotetext \let\@LTRfootnotetext\m@mold@LTRfootnotetext \let\@RTLfootnotetext\m@mold@RTLfootnotetext \let\@mpfootnotetext\m@mold@mpfootnotetext \let\@mpLTRfootnotetext\m@mold@mpLTRfootnotetext \let\@mpRTLfootnotetext\m@mold@mpRTLfootnotetext} -\newif\if@RTLcolumnfootnotes -\newcommand*{\RTLcolumnfootnotes}{\@RTLcolumnfootnotestrue} -\newcommand*{\LTRcolumnfootnotes}{\@RTLcolumnfootnotesfalse} -\g@addto@macro\document{\textwidthfootnoterule} -\newcommand*{\setSingleSpace}[1]{% +\@ifclassloaded{memoir}{\let\plainfootnotes\normalfootnotes}{} +\bidi@ensure@newcommand*{\RTLcolumnfootnotes}{\@RTLcolumnfootnotestrue} +\bidi@ensure@newcommand*{\LTRcolumnfootnotes}{\@RTLcolumnfootnotesfalse} +\bidi@ensure@newcommand*{\setSingleSpace}[1]{% \def\m@m@singlespace{#1}% \def\m@m@footnote@spacing{#1}% \def\m@m@float@spacing{#1} % } \setSingleSpace{1} \newinsert\sideins -\newcommand*{\multiplefootnotemarker}{3sp} -\newcommand*{\m@mmf@prepare}{% +\bidi@ensure@newcommand*{\multiplefootnotemarker}{3sp} +\bidi@ensure@newcommand*{\m@mmf@prepare}{% \kern-\multiplefootnotemarker \kern\multiplefootnotemarker\relax} -\newlength{\footmarkwidth} -\newlength{\footmarksep} -\newlength{\footparindent} -\newcommand*{\footmarkstyle}[1]{\def\footscript##1{#1}} -\newcommand{\footfootmark}{% +\bidi@ensure@newlength{\footmarkwidth} +\bidi@ensure@newlength{\footmarksep} +\bidi@ensure@newlength{\footparindent} +\bidi@ensure@newcommand*{\footmarkstyle}[1]{\def\footscript##1{#1}} +\bidi@ensure@newcommand{\footfootmark}{% \ifdim\footmarkwidth < \z@ \llap{\hb@xt@ -\footmarkwidth{% \hss\normalfont\footscript{\@thefnmark}}% @@ -63,33 +161,35 @@ \footmarkstyle{\textsuperscript{#1}} \setlength{\footmarkwidth}{1.8em} \setlength{\footparindent}{1em} -\newcommand{\m@mdoextrafeet}{\extrafeetins} -\newcommand*{\extrafeetins}{% +\bidi@ensure@newcommand{\m@mdoextrafeet}{\extrafeetins} +\bidi@ensure@newcommand*{\extrafeetins}{% \setbox\@outputbox \vbox{% \boxmaxdepth \@maxdepth \unvbox\@outputbox \ifvoid\footinsv@r\else\@footstartv@r\@footgroupv@r\fi \extrafeetinshook}} -\newcommand{\extrafeetinshook}{} -\newcommand{\foottextfont}{\footnotesize} -\newlength{\footinsdim} +\bidi@ensure@newcommand{\extrafeetinshook}{} +\bidi@ensure@newcommand{\foottextfont}{\footnotesize} +\bidi@ensure@newcommand{\LTRfoottextfont}{\footnotesize} +\bidi@ensure@newcommand{\RTLfoottextfont}{\footnotesize} +\bidi@ensure@newlength{\footinsdim} \setlength{\footinsdim}{8in} % standard for \dimen\footins -\newcommand{\@preamfntext}{% +\bidi@ensure@newcommand{\@preamfntext}{% \interlinepenalty\interfootnotelinepenalty \floatingpenalty \@MM \splittopskip=\footnotesep \splitmaxdepth=\dp\strutbox \@parboxrestore} -\newcommand{\m@mdoextrafeetmini}{% +\bidi@ensure@newcommand{\m@mdoextrafeetmini}{% \extrafeetminihook} -\newcommand{\extrafeetendmini}{% +\bidi@ensure@newcommand{\extrafeetendmini}{% \ifvoid\@mpfootinsv@r\else \vskip\skip\@mpfootins \normalcolor\footnoterule\mp@footgroupv@r \fi \extrafeetendminihook} -\newcommand{\extrafeetendminihook}{} -\newcommand{\m@mdoextrafeetendmini}{\extrafeetendmini} +\bidi@ensure@newcommand{\extrafeetendminihook}{} +\bidi@ensure@newcommand{\m@mdoextrafeetendmini}{\extrafeetendmini} \def\endminipage{% \par \unskip @@ -104,7 +204,7 @@ \color@endgroup \egroup \expandafter\@iiiparbox\@mpargs{\unvbox\@tempboxa}} -\newcommand{\m@make@footstart}[1]{% +\bidi@ensure@newcommand{\m@make@footstart}[1]{% \@namedef{@footstart#1}{% \vskip\bigskipamount \leftskip=\z@ @@ -115,20 +215,20 @@ \count\footinsv@r=1000 % no magnifcation \dimen\footinsv@r=\footinsdim \m@make@footstart{v@r} -\newcommand{\@footgroupv@r}{} +\bidi@ensure@newcommand{\@footgroupv@r}{} \newinsert\@mpfootinsv@r -\newcommand{\mp@footgroupv@r}{} +\bidi@ensure@newcommand{\mp@footgroupv@r}{} \newcount\m@m@k \newdimen\m@m@h -\newcommand*{\m@mrigidbalance}[3]{\setbox0=\box#1 \m@m@k=#2 \m@m@h=#3 +\bidi@ensure@newcommand*{\m@mrigidbalance}[3]{\setbox0=\box#1 \m@m@k=#2 \m@m@h=#3 \@@line{\if@RTLcolumnfootnotes\beginR\fi\splittopskip=\m@m@h \vbadness=\@M \hfilneg \valign{##\vfill\cr\m@mdosplits}\if@RTLcolumnfootnotes\endR\fi}} -\newcommand*{\m@mdosplits}{\ifnum\m@m@k>0 \noalign{\hfil}\m@msplitoff +\bidi@ensure@newcommand*{\m@mdosplits}{\ifnum\m@m@k>0 \noalign{\hfil}\m@msplitoff \global\advance\m@m@k-1\cr\m@mdosplits\fi} -\newcommand*{\m@msplitoff}{\dimen0=\ht0 +\bidi@ensure@newcommand*{\m@msplitoff}{\dimen0=\ht0 \divide\dimen0 by\m@m@k \advance\dimen0 by\m@m@h \setbox2 \vsplit0 to \dimen0 \unvbox2 } -\newcommand{\twocolumnfootnotes}{% +\bidi@ensure@newcommand{\twocolumnfootnotes}{% \@namedef{foottextfontv@r}{\foottextfont}% % [RS] \let\@footnotetext\@twocolfootnotetext \let\@LTRfootnotetext\@twocolLTRfootnotetext @@ -142,7 +242,7 @@ \let\@mpRTLfootnotetext\@mptwocolRTLfootnotetext \m@make@mptwocol@footgroup{v@r}% \let\mp@footgroupv@r\@mptwocol@footgroupv@r} -\newcommand{\@twocolfootnotetext}[1]{\insert\footinsv@r{\if@RTL@footnote\@RTLtrue\else\@RTLfalse\fi% +\bidi@ensure@newcommand{\@twocolfootnotetext}[1]{\insert\footinsv@r{\if@RTL@footnote\@RTLtrue\else\@RTLfalse\fi% \def\baselinestretch{\m@m@footnote@spacing}% \reset@font\foottextfont \@preamfntext @@ -152,35 +252,41 @@ \@twocolfootfmt{#1}% \color@endgroup}% \m@mmf@prepare} -\newcommand{\@twocolLTRfootnotetext}[1]{\insert\footinsv@r{\if@RTLcolumnfootnotes\beginL\fi\@RTLfalse% +\bidi@ensure@newcommand{\@twocolLTRfootnotetext}[1]{\insert\footinsv@r{\if@RTLcolumnfootnotes\beginL\fi\@RTLfalse% \def\baselinestretch{\m@m@footnote@spacing}% - \reset@font\foottextfont + \reset@font\LTRfoottextfont \@preamfntext \protected@edef\@currentlabel{% \csname p@footnote\endcsname\@thefnmark}% \color@begingroup - \@twocolfootfmt{#1}% + \@twocolLTRfootfmt{#1}% \color@endgroup}% \m@mmf@prepare} -\newcommand{\@twocolRTLfootnotetext}[1]{\insert\footinsv@r{\@RTLtrue% +\bidi@ensure@newcommand{\@twocolRTLfootnotetext}[1]{\insert\footinsv@r{\@RTLtrue% \def\baselinestretch{\m@m@footnote@spacing}% - \reset@font\foottextfont + \reset@font\RTLfoottextfont \@preamfntext \protected@edef\@currentlabel{% \csname p@footnote\endcsname\@thefnmark}% \color@begingroup - \@twocolfootfmt{#1}% + \@twocolRTLfootfmt{#1}% \color@endgroup}% \m@mmf@prepare} -\newcommand{\@preamtwofmt}{% +\bidi@ensure@newcommand{\@preamtwofmt}{% \hsize .45\hsize \parindent=\z@ \tolerance=5000\relax \leavevmode} -\newcommand{\@twocolfootfmt}[1]{% +\bidi@ensure@newcommand{\@twocolfootfmt}[1]{% \@preamtwofmt {\footfootmark\strut {\foottextfont #1}\strut\par}\allowbreak} -\newcommand{\@mptwocolfootnotetext}[1]{% +\bidi@ensure@newcommand{\@twocolLTRfootfmt}[1]{% + \@preamtwofmt + {\footfootmark\strut {\LTRfoottextfont #1}\strut\par}\allowbreak} +\bidi@ensure@newcommand{\@twocolRTLfootfmt}[1]{% + \@preamtwofmt + {\footfootmark\strut {\RTLfoottextfont #1}\strut\par}\allowbreak} +\bidi@ensure@newcommand{\@mptwocolfootnotetext}[1]{% \global\setbox\@mpfootinsv@r\vbox{\if@RTL@footnote\@RTLtrue\else\@RTLfalse\fi% \unvbox\@mpfootinsv@r \def\baselinestretch{\m@m@footnote@spacing}% @@ -192,48 +298,48 @@ \@twocolfootfmt{#1}% \color@endgroup}% \m@mmf@prepare} -\newcommand{\@mptwocolLTRfootnotetext}[1]{% +\bidi@ensure@newcommand{\@mptwocolLTRfootnotetext}[1]{% \global\setbox\@mpfootinsv@r\vbox{\@RTLfalse% \unvbox\@mpfootinsv@r \def\baselinestretch{\m@m@footnote@spacing}% - \reset@font\foottextfont + \reset@font\LTRfoottextfont \hsize\columnwidth \@parboxrestore \if@RTLcolumnfootnotes\beginL\fi \protected@edef\@currentlabel{% \csname p@mpfootnote\endcsname\@thefnmark}% \color@begingroup - \@twocolfootfmt{#1}% + \@twocolLTRfootfmt{#1}% \color@endgroup}% \m@mmf@prepare} -\newcommand{\@mptwocolRTLfootnotetext}[1]{% +\bidi@ensure@newcommand{\@mptwocolRTLfootnotetext}[1]{% \global\setbox\@mpfootinsv@r\vbox{\@RTLtrue% \unvbox\@mpfootinsv@r \def\baselinestretch{\m@m@footnote@spacing}% - \reset@font\foottextfont + \reset@font\RTLfoottextfont \hsize\columnwidth \@parboxrestore \protected@edef\@currentlabel{% \csname p@mpfootnote\endcsname\@thefnmark}% \color@begingroup - \@twocolfootfmt{#1}% + \@twocolRTLfootfmt{#1}% \color@endgroup}% \m@mmf@prepare} -\newcommand{\twocolumnfootstyle}[1]{% +\bidi@ensure@newcommand{\twocolumnfootstyle}[1]{% \m@make@twocolfootnotetext{#1}% \m@make@mptwocolfootnotetext{#1}% \m@make@twocolfootfmt{#1}% \m@make@twocol@footgroup{#1}% \m@make@mptwocol@footgroup{#1}% \m@make@footstart{#1}% - \@namelongdef{@footnotetext#1}##1{% + \bidi@namelongdef{@footnotetext#1}##1{% \@nameuse{@twocolfootnotetext#1}{##1}}% - \@namelongdef{@mpfootnotetext#1}##1{% + \bidi@namelongdef{@mpfootnotetext#1}##1{% \@nameuse{@mptwocolfootnotetext#1}{##1}}% \@namedef{@footgroup#1}{\@nameuse{@twocol@footgroup#1}}% \@namedef{mp@footgroup#1}{\@nameuse{@mptwocol@footgroup#1}}% \expandafter\dimen\csname footins#1\endcsname=2\footinsdim \expandafter\count\csname footins#1\endcsname=500\relax} -\newcommand{\m@make@twocolfootnotetext}[1]{% - \@namelongdef{@twocolfootnotetext#1}##1{% +\bidi@ensure@newcommand{\m@make@twocolfootnotetext}[1]{% + \bidi@namelongdef{@twocolfootnotetext#1}##1{% \insert\@nameuse{footins#1}{% \def\baselinestretch{\m@m@footnote@spacing}% \reset@font\@nameuse{foottextfont#1}% @@ -244,8 +350,8 @@ \@nameuse{@twocolfootfmt#1}{##1}% \color@endgroup}% \m@mmf@prepare}} -\newcommand{\m@make@mptwocolfootnotetext}[1]{% -\@namelongdef{@mptwocolfootnotetext#1}##1{% +\bidi@ensure@newcommand{\m@make@mptwocolfootnotetext}[1]{% +\bidi@namelongdef{@mptwocolfootnotetext#1}##1{% \global\setbox\@nameuse{@mpfootins#1}\vbox{% \unvbox\@nameuse{@mpfootins#1} \def\baselinestretch{\m@m@footnote@spacing}% @@ -256,20 +362,20 @@ \color@begingroup \@nameuse{@twocolfootfmt#1}{##1}% \color@endgroup}\m@mmf@prepare}} -\newcommand{\m@make@twocolfootfmt}[1]{% +\bidi@ensure@newcommand{\m@make@twocolfootfmt}[1]{% \@namedef{@twocolfootfmt#1}##1{% \@preamtwofmt {\@nameuse{footfootmark#1}\strut {\@nameuse{foottextfont#1}##1}\strut\par}\allowbreak}} -\newcommand{\m@make@twocol@footgroup}[1]{% +\bidi@ensure@newcommand{\m@make@twocol@footgroup}[1]{% \@namedef{@twocol@footgroup#1}{{% \@nameuse{foottextfont#1} \splittopskip=\ht\strutbox \m@mrigidbalance{\@nameuse{footins#1}}{\tw@}{\splittopskip}}}} -\newcommand{\m@make@mptwocol@footgroup}[1]{% +\bidi@ensure@newcommand{\m@make@mptwocol@footgroup}[1]{% \@namedef{@mptwocol@footgroup#1}{{% \@nameuse{foottextfont#1} \splittopskip=\ht\strutbox \m@mrigidbalance{\@nameuse{@mpfootins#1}}{\tw@}{\splittopskip}}}} -\newcommand{\threecolumnfootnotes}{% +\bidi@ensure@newcommand{\threecolumnfootnotes}{% \@namedef{foottextfontv@r}{\foottextfont}% % [RS] \let\@footnotetext\@threecolfootnotetext \let\@LTRfootnotetext\@threecolLTRfootnotetext @@ -283,7 +389,7 @@ \let\@mpRTLfootnotetext\@mpthreecolRTLfootnotetext \m@make@mpthreecol@footgroup{v@r}% \let\mp@footgroupv@r\@mpthreecol@footgroupv@r} -\newcommand{\@threecolfootnotetext}[1]{\insert\footinsv@r{\if@RTL@footnote\@RTLtrue\else\@RTLfalse\fi% +\bidi@ensure@newcommand{\@threecolfootnotetext}[1]{\insert\footinsv@r{\if@RTL@footnote\@RTLtrue\else\@RTLfalse\fi% \def\baselinestretch{\m@m@footnote@spacing}% \reset@font\foottextfont \@preamfntext @@ -292,33 +398,39 @@ \color@begingroup \@threecolfootfmt{#1}% \color@endgroup}\m@mmf@prepare} -\newcommand{\@threecolLTRfootnotetext}[1]{\insert\footinsv@r{\if@RTLcolumnfootnotes\beginL\fi\@RTLfalse% +\bidi@ensure@newcommand{\@threecolLTRfootnotetext}[1]{\insert\footinsv@r{\if@RTLcolumnfootnotes\beginL\fi\@RTLfalse% \def\baselinestretch{\m@m@footnote@spacing}% - \reset@font\foottextfont + \reset@font\LTRfoottextfont \@preamfntext \protected@edef\@currentlabel{% \csname p@footnote\endcsname\@thefnmark}% \color@begingroup - \@threecolfootfmt{#1}% + \@threecolLTRfootfmt{#1}% \color@endgroup}\m@mmf@prepare} -\newcommand{\@threecolRTLfootnotetext}[1]{\insert\footinsv@r{\@RTLtrue% +\bidi@ensure@newcommand{\@threecolRTLfootnotetext}[1]{\insert\footinsv@r{\@RTLtrue% \def\baselinestretch{\m@m@footnote@spacing}% - \reset@font\foottextfont + \reset@font\RTLfoottextfont \@preamfntext \protected@edef\@currentlabel{% \csname p@footnote\endcsname\@thefnmark}% \color@begingroup - \@threecolfootfmt{#1}% + \@threecolRTLfootfmt{#1}% \color@endgroup}\m@mmf@prepare} -\newcommand{\@preamthreefmt}{% +\bidi@ensure@newcommand{\@preamthreefmt}{% \hsize .3\hsize \parindent=\z@ \tolerance=5000\relax \leavevmode} -\newcommand{\@threecolfootfmt}[1]{% +\bidi@ensure@newcommand{\@threecolfootfmt}[1]{% \@preamthreefmt {\footfootmark\strut {\foottextfont #1}\strut\par}\allowbreak} -\newcommand{\@mpthreecolfootnotetext}[1]{% +\bidi@ensure@newcommand{\@threecolLTRfootfmt}[1]{% + \@preamthreefmt + {\footfootmark\strut {\LTRfoottextfont #1}\strut\par}\allowbreak} +\bidi@ensure@newcommand{\@threecolRTLfootfmt}[1]{% + \@preamthreefmt + {\footfootmark\strut {\RTLfoottextfont #1}\strut\par}\allowbreak} +\bidi@ensure@newcommand{\@mpthreecolfootnotetext}[1]{% \global\setbox\@mpfootinsv@r\vbox{\if@RTL@footnote\@RTLtrue\else\@RTLfalse\fi% \unvbox\@mpfootinsv@r \def\baselinestretch{\m@m@footnote@spacing}% @@ -329,46 +441,46 @@ \color@begingroup \@threecolfootfmt{#1}% \color@endgroup}\m@mmf@prepare} -\newcommand{\@mpthreecolLTRfootnotetext}[1]{% +\bidi@ensure@newcommand{\@mpthreecolLTRfootnotetext}[1]{% \global\setbox\@mpfootinsv@r\vbox{\@RTLfalse% \unvbox\@mpfootinsv@r \def\baselinestretch{\m@m@footnote@spacing}% - \reset@font\foottextfont + \reset@font\LTRfoottextfont \hsize\columnwidth \@parboxrestore \if@RTLcolumnfootnotes\beginL\fi \protected@edef\@currentlabel{% \csname p@mpfootnote\endcsname\@thefnmark}% \color@begingroup - \@threecolfootfmt{#1}% + \@threecolLTRfootfmt{#1}% \color@endgroup}\m@mmf@prepare} -\newcommand{\@mpthreecolRTLfootnotetext}[1]{% +\bidi@ensure@newcommand{\@mpthreecolRTLfootnotetext}[1]{% \global\setbox\@mpfootinsv@r\vbox{\@RTLtrue% \unvbox\@mpfootinsv@r \def\baselinestretch{\m@m@footnote@spacing}% - \reset@font\foottextfont + \reset@font\RTLfoottextfont \hsize\columnwidth \@parboxrestore \protected@edef\@currentlabel{% \csname p@mpfootnote\endcsname\@thefnmark}% \color@begingroup - \@threecolfootfmt{#1}% + \@threecolRTLfootfmt{#1}% \color@endgroup}\m@mmf@prepare} -\newcommand{\threecolumnfootstyle}[1]{% +\bidi@ensure@newcommand{\threecolumnfootstyle}[1]{% \m@make@threecolfootnotetext{#1}% \m@make@mpthreecolfootnotetext{#1}% \m@make@threecolfootfmt{#1}% \m@make@threecol@footgroup{#1}% \m@make@mpthreecol@footgroup{#1}% \m@make@footstart{#1}% - \@namelongdef{@footnotetext#1}##1{% + \bidi@namelongdef{@footnotetext#1}##1{% \@nameuse{@threecolfootnotetext#1}{##1}}% - \@namelongdef{@mpfootnotetext#1}##1{% + \bidi@namelongdef{@mpfootnotetext#1}##1{% \@nameuse{@mpthreecolfootnotetext#1}{##1}}% \@namedef{@footgroup#1}{\@nameuse{@threecol@footgroup#1}}% \@namedef{mp@footgroup#1}{\@nameuse{@mpthreecol@footgroup#1}}% \expandafter\dimen\csname footins#1\endcsname=3\footinsdim \expandafter\count\csname footins#1\endcsname=333\relax} -\newcommand{\m@make@threecolfootnotetext}[1]{% -\@namelongdef{@threecolfootnotetext#1}##1{% +\bidi@ensure@newcommand{\m@make@threecolfootnotetext}[1]{% +\bidi@namelongdef{@threecolfootnotetext#1}##1{% \insert\@nameuse{footins#1}{% \def\baselinestretch{\m@m@footnote@spacing}% \reset@font\@nameuse{foottextfont#1}% @@ -378,8 +490,8 @@ \color@begingroup \@nameuse{@threecolfootfmt#1}{##1}% \color@endgroup}\m@mmf@prepare}} -\newcommand{\m@make@mpthreecolfootnotetext}[1]{% -\@namelongdef{@mpthreecolfootnotetext#1}##1{% +\bidi@ensure@newcommand{\m@make@mpthreecolfootnotetext}[1]{% +\bidi@namelongdef{@mpthreecolfootnotetext#1}##1{% \global\setbox\@nameuse{@mpfootins#1}\vbox{% \unvbox\@nameuse{@mpfootins#1} \def\baselinestretch{\m@m@footnote@spacing}% @@ -390,20 +502,20 @@ \color@begingroup \@nameuse{@threecolfootfmt#1}{##1}% \color@endgroup}\m@mmf@prepare}} -\newcommand{\m@make@threecolfootfmt}[1]{% -\@namelongdef{@threecolfootfmt#1}##1{% +\bidi@ensure@newcommand{\m@make@threecolfootfmt}[1]{% +\bidi@namelongdef{@threecolfootfmt#1}##1{% \@preamthreefmt {\@nameuse{footfootmark#1}\strut {\@nameuse{foottextfont#1}##1}\strut\par}\allowbreak}} -\newcommand{\m@make@threecol@footgroup}[1]{% +\bidi@ensure@newcommand{\m@make@threecol@footgroup}[1]{% \@namedef{@threecol@footgroup#1}{{% \@nameuse{foottextfont#1} \splittopskip=\ht\strutbox \m@mrigidbalance{\@nameuse{footins#1}}{\thr@@}{\splittopskip}}}} -\newcommand{\m@make@mpthreecol@footgroup}[1]{% +\bidi@ensure@newcommand{\m@make@mpthreecol@footgroup}[1]{% \@namedef{@mpthreecol@footgroup#1}{{% \@nameuse{foottextfont#1} \splittopskip=\ht\strutbox \m@mrigidbalance{\@nameuse{@mpfootins#1}}{\thr@@}{\splittopskip}}}} -\newcommand{\fourcolumnfootnotes}{% +\bidi@ensure@newcommand{\fourcolumnfootnotes}{% \@namedef{foottextfontv@r}{\foottextfont}% % [RS] \let\@footnotetext\@fourcolfootnotetext \let\@LTRfootnotetext\@fourcolLTRfootnotetext @@ -417,7 +529,7 @@ \let\@mpRTLfootnotetext\@mpfourcolRTLfootnotetext \m@make@mpfourcol@footgroup{v@r}% \let\mp@footgroupv@r\@mpfourcol@footgroupv@r} -\newcommand{\@fourcolfootnotetext}[1]{\insert\footinsv@r{\if@RTL@footnote\@RTLtrue\else\@RTLfalse\fi% +\bidi@ensure@newcommand{\@fourcolfootnotetext}[1]{\insert\footinsv@r{\if@RTL@footnote\@RTLtrue\else\@RTLfalse\fi% \def\baselinestretch{\m@m@footnote@spacing}% \reset@font\foottextfont \@preamfntext @@ -427,35 +539,41 @@ \@fourcolfootfmt{#1}% \color@endgroup}% \m@mmf@prepare} -\newcommand{\@fourcolLTRfootnotetext}[1]{\insert\footinsv@r{\if@RTLcolumnfootnotes\beginL\fi\@RTLfalse% +\bidi@ensure@newcommand{\@fourcolLTRfootnotetext}[1]{\insert\footinsv@r{\if@RTLcolumnfootnotes\beginL\fi\@RTLfalse% \def\baselinestretch{\m@m@footnote@spacing}% - \reset@font\foottextfont + \reset@font\LTRfoottextfont \@preamfntext \protected@edef\@currentlabel{% \csname p@footnote\endcsname\@thefnmark}% \color@begingroup - \@fourcolfootfmt{#1}% + \@fourcolLTRfootfmt{#1}% \color@endgroup}% \m@mmf@prepare} -\newcommand{\@fourcolRTLfootnotetext}[1]{\insert\footinsv@r{\@RTLtrue% +\bidi@ensure@newcommand{\@fourcolRTLfootnotetext}[1]{\insert\footinsv@r{\@RTLtrue% \def\baselinestretch{\m@m@footnote@spacing}% - \reset@font\foottextfont + \reset@font\RTLfoottextfont \@preamfntext \protected@edef\@currentlabel{% \csname p@footnote\endcsname\@thefnmark}% \color@begingroup - \@fourcolfootfmt{#1}% + \@fourcolRTLfootfmt{#1}% \color@endgroup}% \m@mmf@prepare} -\newcommand{\@preamfourfmt}{% +\bidi@ensure@newcommand{\@preamfourfmt}{% \hsize .25\hsize \parindent=\z@ \tolerance=5000\relax \leavevmode} -\newcommand{\@fourcolfootfmt}[1]{% +\bidi@ensure@newcommand{\@fourcolfootfmt}[1]{% \@preamfourfmt {\footfootmark\strut {\foottextfont #1}\strut\par}\allowbreak} -\newcommand{\@mpfourcolfootnotetext}[1]{% +\bidi@ensure@newcommand{\@fourcolLTRfootfmt}[1]{% + \@preamfourfmt + {\footfootmark\strut {\LTRfoottextfont #1}\strut\par}\allowbreak} +\bidi@ensure@newcommand{\@fourcolRTLfootfmt}[1]{% + \@preamfourfmt + {\footfootmark\strut {\RTLfoottextfont #1}\strut\par}\allowbreak} +\bidi@ensure@newcommand{\@mpfourcolfootnotetext}[1]{% \global\setbox\@mpfootinsv@r\vbox{\if@RTL@footnote\@RTLtrue\else\@RTLfalse\fi% \unvbox\@mpfootinsv@r \def\baselinestretch{\m@m@footnote@spacing}% @@ -467,48 +585,48 @@ \@fourcolfootfmt{#1}% \color@endgroup}% \m@mmf@prepare} -\newcommand{\@mpfourcolLTRfootnotetext}[1]{% +\bidi@ensure@newcommand{\@mpfourcolLTRfootnotetext}[1]{% \global\setbox\@mpfootinsv@r\vbox{\@RTLfalse% \unvbox\@mpfootinsv@r \def\baselinestretch{\m@m@footnote@spacing}% - \reset@font\foottextfont + \reset@font\LTRfoottextfont \hsize\columnwidth \@parboxrestore \if@RTLcolumnfootnotes\beginL\fi \protected@edef\@currentlabel{% \csname p@mpfootnote\endcsname\@thefnmark}% \color@begingroup - \@fourcolfootfmt{#1}% + \@fourcolLTRfootfmt{#1}% \color@endgroup}% \m@mmf@prepare} -\newcommand{\@mpfourcolRTLfootnotetext}[1]{% +\bidi@ensure@newcommand{\@mpfourcolRTLfootnotetext}[1]{% \global\setbox\@mpfootinsv@r\vbox{\@RTLtrue% \unvbox\@mpfootinsv@r \def\baselinestretch{\m@m@footnote@spacing}% - \reset@font\foottextfont + \reset@font\RTLfoottextfont \hsize\columnwidth \@parboxrestore \protected@edef\@currentlabel{% \csname p@mpfootnote\endcsname\@thefnmark}% \color@begingroup - \@fourcolfootfmt{#1}% + \@fourcolRTLfootfmt{#1}% \color@endgroup}% \m@mmf@prepare} -\newcommand{\fourcolumnfootstyle}[1]{% +\bidi@ensure@newcommand{\fourcolumnfootstyle}[1]{% \m@make@fourcolfootnotetext{#1}% \m@make@mpfourcolfootnotetext{#1}% \m@make@fourcolfootfmt{#1}% \m@make@fourcol@footgroup{#1}% \m@make@mpfourcol@footgroup{#1}% \m@make@footstart{#1}% - \@namelongdef{@footnotetext#1}##1{% + \bidi@namelongdef{@footnotetext#1}##1{% \@nameuse{@fourcolfootnotetext#1}{##1}}% - \@namelongdef{@mpfootnotetext#1}##1{% + \bidi@namelongdef{@mpfootnotetext#1}##1{% \@nameuse{@mpfourcolfootnotetext#1}{##1}}% \@namedef{@footgroup#1}{\@nameuse{@fourcol@footgroup#1}}% \@namedef{mp@footgroup#1}{\@nameuse{@mpfourcol@footgroup#1}}% \expandafter\dimen\csname footins#1\endcsname=2\footinsdim \expandafter\count\csname footins#1\endcsname=500\relax} -\newcommand{\m@make@fourcolfootnotetext}[1]{% - \@namelongdef{@fourcolfootnotetext#1}##1{% +\bidi@ensure@newcommand{\m@make@fourcolfootnotetext}[1]{% + \bidi@namelongdef{@fourcolfootnotetext#1}##1{% \insert\@nameuse{footins#1}{% \def\baselinestretch{\m@m@footnote@spacing}% \reset@font\@nameuse{foottextfont#1}% @@ -519,8 +637,8 @@ \@nameuse{@fourcolfootfmt#1}{##1}% \color@endgroup}% \m@mmf@prepare}} -\newcommand{\m@make@mpfourcolfootnotetext}[1]{% -\@namelongdef{@mpfourcolfootnotetext#1}##1{% +\bidi@ensure@newcommand{\m@make@mpfourcolfootnotetext}[1]{% +\bidi@namelongdef{@mpfourcolfootnotetext#1}##1{% \global\setbox\@nameuse{@mpfootins#1}\vbox{% \unvbox\@nameuse{@mpfootins#1} \def\baselinestretch{\m@m@footnote@spacing}% @@ -531,20 +649,20 @@ \color@begingroup \@nameuse{@fourcolfootfmt#1}{##1}% \color@endgroup}\m@mmf@prepare}} -\newcommand{\m@make@fourcolfootfmt}[1]{% +\bidi@ensure@newcommand{\m@make@fourcolfootfmt}[1]{% \@namedef{@fourcolfootfmt#1}##1{% \@preamfourfmt {\@nameuse{footfootmark#1}\strut {\@nameuse{foottextfont#1}##1}\strut\par}\allowbreak}} -\newcommand{\m@make@fourcol@footgroup}[1]{% +\bidi@ensure@newcommand{\m@make@fourcol@footgroup}[1]{% \@namedef{@fourcol@footgroup#1}{{% \@nameuse{foottextfont#1} \splittopskip=\ht\strutbox \m@mrigidbalance{\@nameuse{footins#1}}{4}{\splittopskip}}}} -\newcommand{\m@make@mpfourcol@footgroup}[1]{% +\bidi@ensure@newcommand{\m@make@mpfourcol@footgroup}[1]{% \@namedef{@mpfourcol@footgroup#1}{{% \@nameuse{foottextfont#1} \splittopskip=\ht\strutbox \m@mrigidbalance{\@nameuse{@mpfootins#1}}{4}{\splittopskip}}}} -\newcommand{\fivecolumnfootnotes}{% +\bidi@ensure@newcommand{\fivecolumnfootnotes}{% \@namedef{foottextfontv@r}{\foottextfont}% % [RS] \let\@footnotetext\@fivecolfootnotetext \let\@LTRfootnotetext\@fivecolLTRfootnotetext @@ -558,7 +676,7 @@ \let\@mpRTLfootnotetext\@mpfivecolRTLfootnotetext \m@make@mpfivecol@footgroup{v@r}% \let\mp@footgroupv@r\@mpfivecol@footgroupv@r} -\newcommand{\@fivecolfootnotetext}[1]{\insert\footinsv@r{\if@RTL@footnote\@RTLtrue\else\@RTLfalse\fi% +\bidi@ensure@newcommand{\@fivecolfootnotetext}[1]{\insert\footinsv@r{\if@RTL@footnote\@RTLtrue\else\@RTLfalse\fi% \def\baselinestretch{\m@m@footnote@spacing}% \reset@font\foottextfont \@preamfntext @@ -568,35 +686,41 @@ \@fivecolfootfmt{#1}% \color@endgroup}% \m@mmf@prepare} -\newcommand{\@fivecolLTRfootnotetext}[1]{\insert\footinsv@r{\if@RTLcolumnfootnotes\beginL\fi\@RTLfalse% +\bidi@ensure@newcommand{\@fivecolLTRfootnotetext}[1]{\insert\footinsv@r{\if@RTLcolumnfootnotes\beginL\fi\@RTLfalse% \def\baselinestretch{\m@m@footnote@spacing}% - \reset@font\foottextfont + \reset@font\LTRfoottextfont \@preamfntext \protected@edef\@currentlabel{% \csname p@footnote\endcsname\@thefnmark}% \color@begingroup - \@fivecolfootfmt{#1}% + \@fivecolLTRfootfmt{#1}% \color@endgroup}% \m@mmf@prepare} -\newcommand{\@fivecolRTLfootnotetext}[1]{\insert\footinsv@r{\@RTLtrue% +\bidi@ensure@newcommand{\@fivecolRTLfootnotetext}[1]{\insert\footinsv@r{\@RTLtrue% \def\baselinestretch{\m@m@footnote@spacing}% - \reset@font\foottextfont + \reset@font\RTLfoottextfont \@preamfntext \protected@edef\@currentlabel{% \csname p@footnote\endcsname\@thefnmark}% \color@begingroup - \@fivecolfootfmt{#1}% + \@fivecolRTLfootfmt{#1}% \color@endgroup}% \m@mmf@prepare} -\newcommand{\@preamfivefmt}{% +\bidi@ensure@newcommand{\@preamfivefmt}{% \hsize .2\hsize \parindent=\z@ \tolerance=5000\relax \leavevmode} -\newcommand{\@fivecolfootfmt}[1]{% +\bidi@ensure@newcommand{\@fivecolfootfmt}[1]{% \@preamfivefmt {\footfootmark\strut {\foottextfont #1}\strut\par}\allowbreak} -\newcommand{\@mpfivecolfootnotetext}[1]{% +\bidi@ensure@newcommand{\@fivecolLTRfootfmt}[1]{% + \@preamfivefmt + {\footfootmark\strut {\LTRfoottextfont #1}\strut\par}\allowbreak} +\bidi@ensure@newcommand{\@fivecolRTLfootfmt}[1]{% + \@preamfivefmt + {\footfootmark\strut {\RTLfoottextfont #1}\strut\par}\allowbreak} +\bidi@ensure@newcommand{\@mpfivecolfootnotetext}[1]{% \global\setbox\@mpfootinsv@r\vbox{\if@RTL@footnote\@RTLtrue\else\@RTLfalse\fi% \unvbox\@mpfootinsv@r \def\baselinestretch{\m@m@footnote@spacing}% @@ -608,48 +732,48 @@ \@fivecolfootfmt{#1}% \color@endgroup}% \m@mmf@prepare} -\newcommand{\@mpfivecolLTRfootnotetext}[1]{% +\bidi@ensure@newcommand{\@mpfivecolLTRfootnotetext}[1]{% \global\setbox\@mpfootinsv@r\vbox{\@RTLfalse% \unvbox\@mpfootinsv@r \def\baselinestretch{\m@m@footnote@spacing}% - \reset@font\foottextfont + \reset@font\LTRfoottextfont \hsize\columnwidth \@parboxrestore \if@RTLcolumnfootnotes\beginL\fi \protected@edef\@currentlabel{% \csname p@mpfootnote\endcsname\@thefnmark}% \color@begingroup - \@fivecolfootfmt{#1}% + \@fivecolLTRfootfmt{#1}% \color@endgroup}% \m@mmf@prepare} -\newcommand{\@mpfivecolRTLfootnotetext}[1]{% +\bidi@ensure@newcommand{\@mpfivecolRTLfootnotetext}[1]{% \global\setbox\@mpfootinsv@r\vbox{\@RTLtrue% \unvbox\@mpfootinsv@r \def\baselinestretch{\m@m@footnote@spacing}% - \reset@font\foottextfont + \reset@font\RTLfoottextfont \hsize\columnwidth \@parboxrestore \protected@edef\@currentlabel{% \csname p@mpfootnote\endcsname\@thefnmark}% \color@begingroup - \@fivecolfootfmt{#1}% + \@fivecolRTLfootfmt{#1}% \color@endgroup}% \m@mmf@prepare} -\newcommand{\fivecolumnfootstyle}[1]{% +\bidi@ensure@newcommand{\fivecolumnfootstyle}[1]{% \m@make@fivecolfootnotetext{#1}% \m@make@mpfivecolfootnotetext{#1}% \m@make@fivecolfootfmt{#1}% \m@make@fivecol@footgroup{#1}% \m@make@mpfivecol@footgroup{#1}% \m@make@footstart{#1}% - \@namelongdef{@footnotetext#1}##1{% + \bidi@namelongdef{@footnotetext#1}##1{% \@nameuse{@fivecolfootnotetext#1}{##1}}% - \@namelongdef{@mpfootnotetext#1}##1{% + \bidi@namelongdef{@mpfootnotetext#1}##1{% \@nameuse{@mpfivecolfootnotetext#1}{##1}}% \@namedef{@footgroup#1}{\@nameuse{@fivecol@footgroup#1}}% \@namedef{mp@footgroup#1}{\@nameuse{@mpfivecol@footgroup#1}}% \expandafter\dimen\csname footins#1\endcsname=2\footinsdim \expandafter\count\csname footins#1\endcsname=500\relax} -\newcommand{\m@make@fivecolfootnotetext}[1]{% - \@namelongdef{@fivecolfootnotetext#1}##1{% +\bidi@ensure@newcommand{\m@make@fivecolfootnotetext}[1]{% + \bidi@namelongdef{@fivecolfootnotetext#1}##1{% \insert\@nameuse{footins#1}{% \def\baselinestretch{\m@m@footnote@spacing}% \reset@font\@nameuse{foottextfont#1}% @@ -660,8 +784,8 @@ \@nameuse{@fivecolfootfmt#1}{##1}% \color@endgroup}% \m@mmf@prepare}} -\newcommand{\m@make@mpfivecolfootnotetext}[1]{% -\@namelongdef{@mpfivecolfootnotetext#1}##1{% +\bidi@ensure@newcommand{\m@make@mpfivecolfootnotetext}[1]{% +\bidi@namelongdef{@mpfivecolfootnotetext#1}##1{% \global\setbox\@nameuse{@mpfootins#1}\vbox{% \unvbox\@nameuse{@mpfootins#1} \def\baselinestretch{\m@m@footnote@spacing}% @@ -672,20 +796,20 @@ \color@begingroup \@nameuse{@fivecolfootfmt#1}{##1}% \color@endgroup}\m@mmf@prepare}} -\newcommand{\m@make@fivecolfootfmt}[1]{% +\bidi@ensure@newcommand{\m@make@fivecolfootfmt}[1]{% \@namedef{@fivecolfootfmt#1}##1{% \@preamfivefmt {\@nameuse{footfootmark#1}\strut {\@nameuse{foottextfont#1}##1}\strut\par}\allowbreak}} -\newcommand{\m@make@fivecol@footgroup}[1]{% +\bidi@ensure@newcommand{\m@make@fivecol@footgroup}[1]{% \@namedef{@fivecol@footgroup#1}{{% \@nameuse{foottextfont#1} \splittopskip=\ht\strutbox \m@mrigidbalance{\@nameuse{footins#1}}{5}{\splittopskip}}}} -\newcommand{\m@make@mpfivecol@footgroup}[1]{% +\bidi@ensure@newcommand{\m@make@mpfivecol@footgroup}[1]{% \@namedef{@mpfivecol@footgroup#1}{{% \@nameuse{foottextfont#1} \splittopskip=\ht\strutbox \m@mrigidbalance{\@nameuse{@mpfootins#1}}{5}{\splittopskip}}}} -\newcommand{\sixcolumnfootnotes}{% +\bidi@ensure@newcommand{\sixcolumnfootnotes}{% \@namedef{foottextfontv@r}{\foottextfont}% % [RS] \let\@footnotetext\@sixcolfootnotetext \let\@LTRfootnotetext\@sixcolLTRfootnotetext @@ -699,7 +823,7 @@ \let\@mpRTLfootnotetext\@mpsixcolRTLfootnotetext \m@make@mpsixcol@footgroup{v@r}% \let\mp@footgroupv@r\@mpsixcol@footgroupv@r} -\newcommand{\@sixcolfootnotetext}[1]{\insert\footinsv@r{\if@RTL@footnote\@RTLtrue\else\@RTLfalse\fi% +\bidi@ensure@newcommand{\@sixcolfootnotetext}[1]{\insert\footinsv@r{\if@RTL@footnote\@RTLtrue\else\@RTLfalse\fi% \def\baselinestretch{\m@m@footnote@spacing}% \reset@font\foottextfont \@preamfntext @@ -709,35 +833,41 @@ \@sixcolfootfmt{#1}% \color@endgroup}% \m@mmf@prepare} -\newcommand{\@sixcolLTRfootnotetext}[1]{\insert\footinsv@r{\if@RTLcolumnfootnotes\beginL\fi\@RTLfalse% +\bidi@ensure@newcommand{\@sixcolLTRfootnotetext}[1]{\insert\footinsv@r{\if@RTLcolumnfootnotes\beginL\fi\@RTLfalse% \def\baselinestretch{\m@m@footnote@spacing}% - \reset@font\foottextfont + \reset@font\LTRfoottextfont \@preamfntext \protected@edef\@currentlabel{% \csname p@footnote\endcsname\@thefnmark}% \color@begingroup - \@sixcolfootfmt{#1}% + \@sixcolLTRfootfmt{#1}% \color@endgroup}% \m@mmf@prepare} -\newcommand{\@sixcolRTLfootnotetext}[1]{\insert\footinsv@r{\@RTLtrue% +\bidi@ensure@newcommand{\@sixcolRTLfootnotetext}[1]{\insert\footinsv@r{\@RTLtrue% \def\baselinestretch{\m@m@footnote@spacing}% - \reset@font\foottextfont + \reset@font\RTLfoottextfont \@preamfntext \protected@edef\@currentlabel{% \csname p@footnote\endcsname\@thefnmark}% \color@begingroup - \@sixcolfootfmt{#1}% + \@sixcolRTLfootfmt{#1}% \color@endgroup}% \m@mmf@prepare} -\newcommand{\@preamsixfmt}{% +\bidi@ensure@newcommand{\@preamsixfmt}{% \hsize .16\hsize \parindent=\z@ \tolerance=5000\relax \leavevmode} -\newcommand{\@sixcolfootfmt}[1]{% +\bidi@ensure@newcommand{\@sixcolfootfmt}[1]{% \@preamsixfmt {\footfootmark\strut {\foottextfont #1}\strut\par}\allowbreak} -\newcommand{\@mpsixcolfootnotetext}[1]{\if@RTL@footnote\@RTLtrue\else\@RTLfalse\fi% +\bidi@ensure@newcommand{\@sixcolLTRfootfmt}[1]{% + \@preamsixfmt + {\footfootmark\strut {\LTRfoottextfont #1}\strut\par}\allowbreak} +\bidi@ensure@newcommand{\@sixcolRTLfootfmt}[1]{% + \@preamsixfmt + {\footfootmark\strut {\RTLfoottextfont #1}\strut\par}\allowbreak} +\bidi@ensure@newcommand{\@mpsixcolfootnotetext}[1]{\if@RTL@footnote\@RTLtrue\else\@RTLfalse\fi% \global\setbox\@mpfootinsv@r\vbox{% \unvbox\@mpfootinsv@r \def\baselinestretch{\m@m@footnote@spacing}% @@ -749,48 +879,48 @@ \@sixcolfootfmt{#1}% \color@endgroup}% \m@mmf@prepare} -\newcommand{\@mpsixcolLTRfootnotetext}[1]{\@RTLfalse% +\bidi@ensure@newcommand{\@mpsixcolLTRfootnotetext}[1]{\@RTLfalse% \global\setbox\@mpfootinsv@r\vbox{% \unvbox\@mpfootinsv@r \def\baselinestretch{\m@m@footnote@spacing}% - \reset@font\foottextfont + \reset@font\LTRfoottextfont \hsize\columnwidth \@parboxrestore \if@RTLcolumnfootnotes\beginL\fi \protected@edef\@currentlabel{% \csname p@mpfootnote\endcsname\@thefnmark}% \color@begingroup - \@sixcolfootfmt{#1}% + \@sixcolLTRfootfmt{#1}% \color@endgroup}% \m@mmf@prepare} -\newcommand{\@mpsixcolRTLfootnotetext}[1]{\@RTLtrue% +\bidi@ensure@newcommand{\@mpsixcolRTLfootnotetext}[1]{\@RTLtrue% \global\setbox\@mpfootinsv@r\vbox{% \unvbox\@mpfootinsv@r \def\baselinestretch{\m@m@footnote@spacing}% - \reset@font\foottextfont + \reset@font\RTLfoottextfont \hsize\columnwidth \@parboxrestore \protected@edef\@currentlabel{% \csname p@mpfootnote\endcsname\@thefnmark}% \color@begingroup - \@sixcolfootfmt{#1}% + \@sixcolRTLfootfmt{#1}% \color@endgroup}% \m@mmf@prepare} -\newcommand{\sixcolumnfootstyle}[1]{% +\bidi@ensure@newcommand{\sixcolumnfootstyle}[1]{% \m@make@sixcolfootnotetext{#1}% \m@make@mpsixcolfootnotetext{#1}% \m@make@sixcolfootfmt{#1}% \m@make@sixcol@footgroup{#1}% \m@make@mpsixcol@footgroup{#1}% \m@make@footstart{#1}% - \@namelongdef{@footnotetext#1}##1{% + \bidi@namelongdef{@footnotetext#1}##1{% \@nameuse{@sixcolfootnotetext#1}{##1}}% - \@namelongdef{@mpfootnotetext#1}##1{% + \bidi@namelongdef{@mpfootnotetext#1}##1{% \@nameuse{@mpsixcolfootnotetext#1}{##1}}% \@namedef{@footgroup#1}{\@nameuse{@sixcol@footgroup#1}}% \@namedef{mp@footgroup#1}{\@nameuse{@mpsixcol@footgroup#1}}% \expandafter\dimen\csname footins#1\endcsname=2\footinsdim \expandafter\count\csname footins#1\endcsname=500\relax} -\newcommand{\m@make@sixcolfootnotetext}[1]{% - \@namelongdef{@sixcolfootnotetext#1}##1{% +\bidi@ensure@newcommand{\m@make@sixcolfootnotetext}[1]{% + \bidi@namelongdef{@sixcolfootnotetext#1}##1{% \insert\@nameuse{footins#1}{% \def\baselinestretch{\m@m@footnote@spacing}% \reset@font\@nameuse{foottextfont#1}% @@ -801,8 +931,8 @@ \@nameuse{@sixcolfootfmt#1}{##1}% \color@endgroup}% \m@mmf@prepare}} -\newcommand{\m@make@mpsixcolfootnotetext}[1]{% -\@namelongdef{@mpsixcolfootnotetext#1}##1{% +\bidi@ensure@newcommand{\m@make@mpsixcolfootnotetext}[1]{% +\bidi@namelongdef{@mpsixcolfootnotetext#1}##1{% \global\setbox\@nameuse{@mpfootins#1}\vbox{% \unvbox\@nameuse{@mpfootins#1} \def\baselinestretch{\m@m@footnote@spacing}% @@ -813,20 +943,20 @@ \color@begingroup \@nameuse{@sixcolfootfmt#1}{##1}% \color@endgroup}\m@mmf@prepare}} -\newcommand{\m@make@sixcolfootfmt}[1]{% +\bidi@ensure@newcommand{\m@make@sixcolfootfmt}[1]{% \@namedef{@sixcolfootfmt#1}##1{% \@preamsixfmt {\@nameuse{footfootmark#1}\strut {\@nameuse{foottextfont#1}##1}\strut\par}\allowbreak}} -\newcommand{\m@make@sixcol@footgroup}[1]{% +\bidi@ensure@newcommand{\m@make@sixcol@footgroup}[1]{% \@namedef{@sixcol@footgroup#1}{{% \@nameuse{foottextfont#1} \splittopskip=\ht\strutbox \m@mrigidbalance{\@nameuse{footins#1}}{6}{\splittopskip}}}} -\newcommand{\m@make@mpsixcol@footgroup}[1]{% +\bidi@ensure@newcommand{\m@make@mpsixcol@footgroup}[1]{% \@namedef{@mpsixcol@footgroup#1}{{% \@nameuse{foottextfont#1} \splittopskip=\ht\strutbox \m@mrigidbalance{\@nameuse{@mpfootins#1}}{6}{\splittopskip}}}} -\newcommand{\sevencolumnfootnotes}{% +\bidi@ensure@newcommand{\sevencolumnfootnotes}{% \@namedef{foottextfontv@r}{\foottextfont}% % [RS] \let\@footnotetext\@sevencolfootnotetext \let\@LTRfootnotetext\@sevencolLTRfootnotetext @@ -840,7 +970,7 @@ \let\@mpRTLfootnotetext\@mpsevencolRTLfootnotetext \m@make@mpsevencol@footgroup{v@r}% \let\mp@footgroupv@r\@mpsevencol@footgroupv@r} -\newcommand{\@sevencolfootnotetext}[1]{\insert\footinsv@r{\if@RTL@footnote\@RTLtrue\else\@RTLfalse\fi% +\bidi@ensure@newcommand{\@sevencolfootnotetext}[1]{\insert\footinsv@r{\if@RTL@footnote\@RTLtrue\else\@RTLfalse\fi% \def\baselinestretch{\m@m@footnote@spacing}% \reset@font\foottextfont \@preamfntext @@ -850,35 +980,41 @@ \@sevencolfootfmt{#1}% \color@endgroup}% \m@mmf@prepare} -\newcommand{\@sevencolLTRfootnotetext}[1]{\insert\footinsv@r{\if@RTLcolumnfootnotes\beginL\fi\@RTLfalse% +\bidi@ensure@newcommand{\@sevencolLTRfootnotetext}[1]{\insert\footinsv@r{\if@RTLcolumnfootnotes\beginL\fi\@RTLfalse% \def\baselinestretch{\m@m@footnote@spacing}% - \reset@font\foottextfont + \reset@font\LTRfoottextfont \@preamfntext \protected@edef\@currentlabel{% \csname p@footnote\endcsname\@thefnmark}% \color@begingroup - \@sevencolfootfmt{#1}% + \@sevencolLTRfootfmt{#1}% \color@endgroup}% \m@mmf@prepare} -\newcommand{\@sevencolRTLfootnotetext}[1]{\insert\footinsv@r{\@RTLtrue% +\bidi@ensure@newcommand{\@sevencolRTLfootnotetext}[1]{\insert\footinsv@r{\@RTLtrue% \def\baselinestretch{\m@m@footnote@spacing}% - \reset@font\foottextfont + \reset@font\RTLfoottextfont \@preamfntext \protected@edef\@currentlabel{% \csname p@footnote\endcsname\@thefnmark}% \color@begingroup - \@sevencolfootfmt{#1}% + \@sevencolRTLfootfmt{#1}% \color@endgroup}% \m@mmf@prepare} -\newcommand{\@preamsevenfmt}{% +\bidi@ensure@newcommand{\@preamsevenfmt}{% \hsize .142\hsize \parindent=\z@ \tolerance=5000\relax \leavevmode} -\newcommand{\@sevencolfootfmt}[1]{% +\bidi@ensure@newcommand{\@sevencolfootfmt}[1]{% \@preamsevenfmt {\footfootmark\strut {\foottextfont #1}\strut\par}\allowbreak} -\newcommand{\@mpsevencolfootnotetext}[1]{\if@RTL@footnote\@RTLtrue\else\@RTLfalse\fi% +\bidi@ensure@newcommand{\@sevencolLTRfootfmt}[1]{% + \@preamsevenfmt + {\footfootmark\strut {\LTRfoottextfont #1}\strut\par}\allowbreak} +\bidi@ensure@newcommand{\@sevencolRTLfootfmt}[1]{% + \@preamsevenfmt + {\footfootmark\strut {\RTLfoottextfont #1}\strut\par}\allowbreak} +\bidi@ensure@newcommand{\@mpsevencolfootnotetext}[1]{\if@RTL@footnote\@RTLtrue\else\@RTLfalse\fi% \global\setbox\@mpfootinsv@r\vbox{% \unvbox\@mpfootinsv@r \def\baselinestretch{\m@m@footnote@spacing}% @@ -890,48 +1026,48 @@ \@sevencolfootfmt{#1}% \color@endgroup}% \m@mmf@prepare} -\newcommand{\@mpsevencolLTRfootnotetext}[1]{\@RTLfalse% +\bidi@ensure@newcommand{\@mpsevencolLTRfootnotetext}[1]{\@RTLfalse% \global\setbox\@mpfootinsv@r\vbox{% \unvbox\@mpfootinsv@r \def\baselinestretch{\m@m@footnote@spacing}% - \reset@font\foottextfont + \reset@font\LTRfoottextfont \hsize\columnwidth \@parboxrestore \if@RTLcolumnfootnotes\beginL\fi \protected@edef\@currentlabel{% \csname p@mpfootnote\endcsname\@thefnmark}% \color@begingroup - \@sevencolfootfmt{#1}% + \@sevencolLTRfootfmt{#1}% \color@endgroup}% \m@mmf@prepare} -\newcommand{\@mpsevencolRTLfootnotetext}[1]{\@RTLtrue% +\bidi@ensure@newcommand{\@mpsevencolRTLfootnotetext}[1]{\@RTLtrue% \global\setbox\@mpfootinsv@r\vbox{% \unvbox\@mpfootinsv@r \def\baselinestretch{\m@m@footnote@spacing}% - \reset@font\foottextfont + \reset@font\RTLfoottextfont \hsize\columnwidth \@parboxrestore \protected@edef\@currentlabel{% \csname p@mpfootnote\endcsname\@thefnmark}% \color@begingroup - \@sevencolfootfmt{#1}% + \@sevencolRTLfootfmt{#1}% \color@endgroup}% \m@mmf@prepare} -\newcommand{\sevencolumnfootstyle}[1]{% +\bidi@ensure@newcommand{\sevencolumnfootstyle}[1]{% \m@make@sevencolfootnotetext{#1}% \m@make@mpsevencolfootnotetext{#1}% \m@make@sevencolfootfmt{#1}% \m@make@sevencol@footgroup{#1}% \m@make@mpsevencol@footgroup{#1}% \m@make@footstart{#1}% - \@namelongdef{@footnotetext#1}##1{% + \bidi@namelongdef{@footnotetext#1}##1{% \@nameuse{@sevencolfootnotetext#1}{##1}}% - \@namelongdef{@mpfootnotetext#1}##1{% + \bidi@namelongdef{@mpfootnotetext#1}##1{% \@nameuse{@mpsevencolfootnotetext#1}{##1}}% \@namedef{@footgroup#1}{\@nameuse{@sevencol@footgroup#1}}% \@namedef{mp@footgroup#1}{\@nameuse{@mpsevencol@footgroup#1}}% \expandafter\dimen\csname footins#1\endcsname=2\footinsdim \expandafter\count\csname footins#1\endcsname=500\relax} -\newcommand{\m@make@sevencolfootnotetext}[1]{% - \@namelongdef{@sevencolfootnotetext#1}##1{% +\bidi@ensure@newcommand{\m@make@sevencolfootnotetext}[1]{% + \bidi@namelongdef{@sevencolfootnotetext#1}##1{% \insert\@nameuse{footins#1}{% \def\baselinestretch{\m@m@footnote@spacing}% \reset@font\@nameuse{foottextfont#1}% @@ -942,8 +1078,8 @@ \@nameuse{@sevencolfootfmt#1}{##1}% \color@endgroup}% \m@mmf@prepare}} -\newcommand{\m@make@mpsevencolfootnotetext}[1]{% -\@namelongdef{@mpsevencolfootnotetext#1}##1{% +\bidi@ensure@newcommand{\m@make@mpsevencolfootnotetext}[1]{% +\bidi@namelongdef{@mpsevencolfootnotetext#1}##1{% \global\setbox\@nameuse{@mpfootins#1}\vbox{% \unvbox\@nameuse{@mpfootins#1} \def\baselinestretch{\m@m@footnote@spacing}% @@ -954,20 +1090,20 @@ \color@begingroup \@nameuse{@sevencolfootfmt#1}{##1}% \color@endgroup}\m@mmf@prepare}} -\newcommand{\m@make@sevencolfootfmt}[1]{% +\bidi@ensure@newcommand{\m@make@sevencolfootfmt}[1]{% \@namedef{@sevencolfootfmt#1}##1{% \@preamsevenfmt {\@nameuse{footfootmark#1}\strut {\@nameuse{foottextfont#1}##1}\strut\par}\allowbreak}} -\newcommand{\m@make@sevencol@footgroup}[1]{% +\bidi@ensure@newcommand{\m@make@sevencol@footgroup}[1]{% \@namedef{@sevencol@footgroup#1}{{% \@nameuse{foottextfont#1} \splittopskip=\ht\strutbox \m@mrigidbalance{\@nameuse{footins#1}}{7}{\splittopskip}}}} -\newcommand{\m@make@mpsevencol@footgroup}[1]{% +\bidi@ensure@newcommand{\m@make@mpsevencol@footgroup}[1]{% \@namedef{@mpsevencol@footgroup#1}{{% \@nameuse{foottextfont#1} \splittopskip=\ht\strutbox \m@mrigidbalance{\@nameuse{@mpfootins#1}}{7}{\splittopskip}}}} -\newcommand{\eightcolumnfootnotes}{% +\bidi@ensure@newcommand{\eightcolumnfootnotes}{% \@namedef{foottextfontv@r}{\foottextfont}% % [RS] \let\@footnotetext\@eightcolfootnotetext \let\@LTRfootnotetext\@eightcolLTRfootnotetext @@ -981,7 +1117,7 @@ \let\@mpRTLfootnotetext\@mpeightcolRTLfootnotetext \m@make@mpeightcol@footgroup{v@r}% \let\mp@footgroupv@r\@mpeightcol@footgroupv@r} -\newcommand{\@eightcolfootnotetext}[1]{\insert\footinsv@r{\if@RTL@footnote\@RTLtrue\else\@RTLfalse\fi% +\bidi@ensure@newcommand{\@eightcolfootnotetext}[1]{\insert\footinsv@r{\if@RTL@footnote\@RTLtrue\else\@RTLfalse\fi% \def\baselinestretch{\m@m@footnote@spacing}% \reset@font\foottextfont \@preamfntext @@ -991,35 +1127,41 @@ \@eightcolfootfmt{#1}% \color@endgroup}% \m@mmf@prepare} -\newcommand{\@eightcolLTRfootnotetext}[1]{\insert\footinsv@r{\if@RTLcolumnfootnotes\beginL\fi\@RTLfalse% +\bidi@ensure@newcommand{\@eightcolLTRfootnotetext}[1]{\insert\footinsv@r{\if@RTLcolumnfootnotes\beginL\fi\@RTLfalse% \def\baselinestretch{\m@m@footnote@spacing}% - \reset@font\foottextfont + \reset@font\LTRfoottextfont \@preamfntext \protected@edef\@currentlabel{% \csname p@footnote\endcsname\@thefnmark}% \color@begingroup - \@eightcolfootfmt{#1}% + \@eightcolLTRfootfmt{#1}% \color@endgroup}% \m@mmf@prepare} -\newcommand{\@eightcolRTLfootnotetext}[1]{\insert\footinsv@r{\@RTLtrue% +\bidi@ensure@newcommand{\@eightcolRTLfootnotetext}[1]{\insert\footinsv@r{\@RTLtrue% \def\baselinestretch{\m@m@footnote@spacing}% - \reset@font\foottextfont + \reset@font\RTLfoottextfont \@preamfntext \protected@edef\@currentlabel{% \csname p@footnote\endcsname\@thefnmark}% \color@begingroup - \@eightcolfootfmt{#1}% + \@eightcolRTLfootfmt{#1}% \color@endgroup}% \m@mmf@prepare} -\newcommand{\@preameightfmt}{% +\bidi@ensure@newcommand{\@preameightfmt}{% \hsize .125\hsize \parindent=\z@ \tolerance=5000\relax \leavevmode} -\newcommand{\@eightcolfootfmt}[1]{% +\bidi@ensure@newcommand{\@eightcolfootfmt}[1]{% \@preameightfmt {\footfootmark\strut {\foottextfont #1}\strut\par}\allowbreak} -\newcommand{\@mpeightcolfootnotetext}[1]{% +\bidi@ensure@newcommand{\@eightcolLTRfootfmt}[1]{% + \@preameightfmt + {\footfootmark\strut {\LTRfoottextfont #1}\strut\par}\allowbreak} +\bidi@ensure@newcommand{\@eightcolRTLfootfmt}[1]{% + \@preameightfmt + {\footfootmark\strut {\RTLfoottextfont #1}\strut\par}\allowbreak} +\bidi@ensure@newcommand{\@mpeightcolfootnotetext}[1]{% \global\setbox\@mpfootinsv@r\vbox{\if@RTL@footnote\@RTLtrue\else\@RTLfalse\fi% \unvbox\@mpfootinsv@r \def\baselinestretch{\m@m@footnote@spacing}% @@ -1031,48 +1173,48 @@ \@eightcolfootfmt{#1}% \color@endgroup}% \m@mmf@prepare} -\newcommand{\@mpeightcolLTRfootnotetext}[1]{% +\bidi@ensure@newcommand{\@mpeightcolLTRfootnotetext}[1]{% \global\setbox\@mpfootinsv@r\vbox{\@RTLfalse% \unvbox\@mpfootinsv@r \def\baselinestretch{\m@m@footnote@spacing}% - \reset@font\foottextfont + \reset@font\LTRfoottextfont \hsize\columnwidth \@parboxrestore \if@RTLcolumnfootnotes\beginL\fi \protected@edef\@currentlabel{% \csname p@mpfootnote\endcsname\@thefnmark}% \color@begingroup - \@eightcolfootfmt{#1}% + \@eightcolLTRfootfmt{#1}% \color@endgroup}% \m@mmf@prepare} -\newcommand{\@mpeightcolRTLfootnotetext}[1]{% +\bidi@ensure@newcommand{\@mpeightcolRTLfootnotetext}[1]{% \global\setbox\@mpfootinsv@r\vbox{\@RTLtrue% \unvbox\@mpfootinsv@r \def\baselinestretch{\m@m@footnote@spacing}% - \reset@font\foottextfont + \reset@font\RTLfoottextfont \hsize\columnwidth \@parboxrestore \protected@edef\@currentlabel{% \csname p@mpfootnote\endcsname\@thefnmark}% \color@begingroup - \@eightcolfootfmt{#1}% + \@eightcolRTLfootfmt{#1}% \color@endgroup}% \m@mmf@prepare} -\newcommand{\eightcolumnfootstyle}[1]{% +\bidi@ensure@newcommand{\eightcolumnfootstyle}[1]{% \m@make@eightcolfootnotetext{#1}% \m@make@mpeightcolfootnotetext{#1}% \m@make@eightcolfootfmt{#1}% \m@make@eightcol@footgroup{#1}% \m@make@mpeightcol@footgroup{#1}% \m@make@footstart{#1}% - \@namelongdef{@footnotetext#1}##1{% + \bidi@namelongdef{@footnotetext#1}##1{% \@nameuse{@eightcolfootnotetext#1}{##1}}% - \@namelongdef{@mpfootnotetext#1}##1{% + \bidi@namelongdef{@mpfootnotetext#1}##1{% \@nameuse{@mpeightcolfootnotetext#1}{##1}}% \@namedef{@footgroup#1}{\@nameuse{@eightcol@footgroup#1}}% \@namedef{mp@footgroup#1}{\@nameuse{@mpeightcol@footgroup#1}}% \expandafter\dimen\csname footins#1\endcsname=2\footinsdim \expandafter\count\csname footins#1\endcsname=500\relax} -\newcommand{\m@make@eightcolfootnotetext}[1]{% - \@namelongdef{@eightcolfootnotetext#1}##1{% +\bidi@ensure@newcommand{\m@make@eightcolfootnotetext}[1]{% + \bidi@namelongdef{@eightcolfootnotetext#1}##1{% \insert\@nameuse{footins#1}{% \def\baselinestretch{\m@m@footnote@spacing}% \reset@font\@nameuse{foottextfont#1}% @@ -1083,8 +1225,8 @@ \@nameuse{@eightcolfootfmt#1}{##1}% \color@endgroup}% \m@mmf@prepare}} -\newcommand{\m@make@mpeightcolfootnotetext}[1]{% -\@namelongdef{@mpeightcolfootnotetext#1}##1{% +\bidi@ensure@newcommand{\m@make@mpeightcolfootnotetext}[1]{% +\bidi@namelongdef{@mpeightcolfootnotetext#1}##1{% \global\setbox\@nameuse{@mpfootins#1}\vbox{% \unvbox\@nameuse{@mpfootins#1} \def\baselinestretch{\m@m@footnote@spacing}% @@ -1095,20 +1237,20 @@ \color@begingroup \@nameuse{@eightcolfootfmt#1}{##1}% \color@endgroup}\m@mmf@prepare}} -\newcommand{\m@make@eightcolfootfmt}[1]{% +\bidi@ensure@newcommand{\m@make@eightcolfootfmt}[1]{% \@namedef{@eightcolfootfmt#1}##1{% \@preameightfmt {\@nameuse{footfootmark#1}\strut {\@nameuse{foottextfont#1}##1}\strut\par}\allowbreak}} -\newcommand{\m@make@eightcol@footgroup}[1]{% +\bidi@ensure@newcommand{\m@make@eightcol@footgroup}[1]{% \@namedef{@eightcol@footgroup#1}{{% \@nameuse{foottextfont#1} \splittopskip=\ht\strutbox \m@mrigidbalance{\@nameuse{footins#1}}{8}{\splittopskip}}}} -\newcommand{\m@make@mpeightcol@footgroup}[1]{% +\bidi@ensure@newcommand{\m@make@mpeightcol@footgroup}[1]{% \@namedef{@mpeightcol@footgroup#1}{{% \@nameuse{foottextfont#1} \splittopskip=\ht\strutbox \m@mrigidbalance{\@nameuse{@mpfootins#1}}{8}{\splittopskip}}}} -\newcommand{\ninecolumnfootnotes}{% +\bidi@ensure@newcommand{\ninecolumnfootnotes}{% \@namedef{foottextfontv@r}{\foottextfont}% % [RS] \let\@footnotetext\@ninecolfootnotetext \let\@LTRfootnotetext\@ninecolLTRfootnotetext @@ -1122,7 +1264,7 @@ \let\@mpRTLfootnotetext\@mpninecolRTLfootnotetext \m@make@mpninecol@footgroup{v@r}% \let\mp@footgroupv@r\@mpninecol@footgroupv@r} -\newcommand{\@ninecolfootnotetext}[1]{\insert\footinsv@r{\if@RTL@footnote\@RTLtrue\else\@RTLfalse\fi% +\bidi@ensure@newcommand{\@ninecolfootnotetext}[1]{\insert\footinsv@r{\if@RTL@footnote\@RTLtrue\else\@RTLfalse\fi% \def\baselinestretch{\m@m@footnote@spacing}% \reset@font\foottextfont \@preamfntext @@ -1132,35 +1274,41 @@ \@ninecolfootfmt{#1}% \color@endgroup}% \m@mmf@prepare} -\newcommand{\@ninecolLTRfootnotetext}[1]{\insert\footinsv@r{\if@RTLcolumnfootnotes\beginL\fi\@RTLfalse% +\bidi@ensure@newcommand{\@ninecolLTRfootnotetext}[1]{\insert\footinsv@r{\if@RTLcolumnfootnotes\beginL\fi\@RTLfalse% \def\baselinestretch{\m@m@footnote@spacing}% - \reset@font\foottextfont + \reset@font\LTRfoottextfont \@preamfntext \protected@edef\@currentlabel{% \csname p@footnote\endcsname\@thefnmark}% \color@begingroup - \@ninecolfootfmt{#1}% + \@ninecolLTRfootfmt{#1}% \color@endgroup}% \m@mmf@prepare} -\newcommand{\@ninecolRTLfootnotetext}[1]{\insert\footinsv@r{\@RTLtrue% +\bidi@ensure@newcommand{\@ninecolRTLfootnotetext}[1]{\insert\footinsv@r{\@RTLtrue% \def\baselinestretch{\m@m@footnote@spacing}% - \reset@font\foottextfont + \reset@font\RTLfoottextfont \@preamfntext \protected@edef\@currentlabel{% \csname p@footnote\endcsname\@thefnmark}% \color@begingroup - \@ninecolfootfmt{#1}% + \@ninecolRTLfootfmt{#1}% \color@endgroup}% \m@mmf@prepare} -\newcommand{\@preamninefmt}{% +\bidi@ensure@newcommand{\@preamninefmt}{% \hsize .1\hsize \parindent=\z@ \tolerance=5000\relax \leavevmode} -\newcommand{\@ninecolfootfmt}[1]{% +\bidi@ensure@newcommand{\@ninecolfootfmt}[1]{% \@preamninefmt {\footfootmark\strut {\foottextfont #1}\strut\par}\allowbreak} -\newcommand{\@mpninecolfootnotetext}[1]{% +\bidi@ensure@newcommand{\@ninecolLTRfootfmt}[1]{% + \@preamninefmt + {\footfootmark\strut {\LTRfoottextfont #1}\strut\par}\allowbreak} +\bidi@ensure@newcommand{\@ninecolRTLfootfmt}[1]{% + \@preamninefmt + {\footfootmark\strut {\RTLfoottextfont #1}\strut\par}\allowbreak} +\bidi@ensure@newcommand{\@mpninecolfootnotetext}[1]{% \global\setbox\@mpfootinsv@r\vbox{\if@RTL@footnote\@RTLtrue\else\@RTLfalse\fi% \unvbox\@mpfootinsv@r \def\baselinestretch{\m@m@footnote@spacing}% @@ -1172,48 +1320,48 @@ \@ninecolfootfmt{#1}% \color@endgroup}% \m@mmf@prepare} -\newcommand{\@mpninecolLTRfootnotetext}[1]{% +\bidi@ensure@newcommand{\@mpninecolLTRfootnotetext}[1]{% \global\setbox\@mpfootinsv@r\vbox{\@RTLfalse% \unvbox\@mpfootinsv@r \def\baselinestretch{\m@m@footnote@spacing}% - \reset@font\foottextfont + \reset@font\LTRfoottextfont \hsize\columnwidth \@parboxrestore \if@RTLcolumnfootnotes\beginL\fi \protected@edef\@currentlabel{% \csname p@mpfootnote\endcsname\@thefnmark}% \color@begingroup - \@ninecolfootfmt{#1}% + \@ninecolLTRfootfmt{#1}% \color@endgroup}% \m@mmf@prepare} -\newcommand{\@mpninecolRTLfootnotetext}[1]{% +\bidi@ensure@newcommand{\@mpninecolRTLfootnotetext}[1]{% \global\setbox\@mpfootinsv@r\vbox{\@RTLtrue% \unvbox\@mpfootinsv@r \def\baselinestretch{\m@m@footnote@spacing}% - \reset@font\foottextfont + \reset@font\RTLfoottextfont \hsize\columnwidth \@parboxrestore \protected@edef\@currentlabel{% \csname p@mpfootnote\endcsname\@thefnmark}% \color@begingroup - \@ninecolfootfmt{#1}% + \@ninecolRTLfootfmt{#1}% \color@endgroup}% \m@mmf@prepare} -\newcommand{\ninecolumnfootstyle}[1]{% +\bidi@ensure@newcommand{\ninecolumnfootstyle}[1]{% \m@make@ninecolfootnotetext{#1}% \m@make@mpninecolfootnotetext{#1}% \m@make@ninecolfootfmt{#1}% \m@make@ninecol@footgroup{#1}% \m@make@mpninecol@footgroup{#1}% \m@make@footstart{#1}% - \@namelongdef{@footnotetext#1}##1{% + \bidi@namelongdef{@footnotetext#1}##1{% \@nameuse{@ninecolfootnotetext#1}{##1}}% - \@namelongdef{@mpfootnotetext#1}##1{% + \bidi@namelongdef{@mpfootnotetext#1}##1{% \@nameuse{@mpninecolfootnotetext#1}{##1}}% \@namedef{@footgroup#1}{\@nameuse{@ninecol@footgroup#1}}% \@namedef{mp@footgroup#1}{\@nameuse{@mpninecol@footgroup#1}}% \expandafter\dimen\csname footins#1\endcsname=2\footinsdim \expandafter\count\csname footins#1\endcsname=500\relax} -\newcommand{\m@make@ninecolfootnotetext}[1]{% - \@namelongdef{@ninecolfootnotetext#1}##1{% +\bidi@ensure@newcommand{\m@make@ninecolfootnotetext}[1]{% + \bidi@namelongdef{@ninecolfootnotetext#1}##1{% \insert\@nameuse{footins#1}{% \def\baselinestretch{\m@m@footnote@spacing}% \reset@font\@nameuse{foottextfont#1}% @@ -1224,8 +1372,8 @@ \@nameuse{@ninecolfootfmt#1}{##1}% \color@endgroup}% \m@mmf@prepare}} -\newcommand{\m@make@mpninecolfootnotetext}[1]{% -\@namelongdef{@mpninecolfootnotetext#1}##1{% +\bidi@ensure@newcommand{\m@make@mpninecolfootnotetext}[1]{% +\bidi@namelongdef{@mpninecolfootnotetext#1}##1{% \global\setbox\@nameuse{@mpfootins#1}\vbox{% \unvbox\@nameuse{@mpfootins#1} \def\baselinestretch{\m@m@footnote@spacing}% @@ -1236,20 +1384,20 @@ \color@begingroup \@nameuse{@ninecolfootfmt#1}{##1}% \color@endgroup}\m@mmf@prepare}} -\newcommand{\m@make@ninecolfootfmt}[1]{% +\bidi@ensure@newcommand{\m@make@ninecolfootfmt}[1]{% \@namedef{@ninecolfootfmt#1}##1{% \@preamninefmt {\@nameuse{footfootmark#1}\strut {\@nameuse{foottextfont#1}##1}\strut\par}\allowbreak}} -\newcommand{\m@make@ninecol@footgroup}[1]{% +\bidi@ensure@newcommand{\m@make@ninecol@footgroup}[1]{% \@namedef{@ninecol@footgroup#1}{{% \@nameuse{foottextfont#1} \splittopskip=\ht\strutbox \m@mrigidbalance{\@nameuse{footins#1}}{9}{\splittopskip}}}} -\newcommand{\m@make@mpninecol@footgroup}[1]{% +\bidi@ensure@newcommand{\m@make@mpninecol@footgroup}[1]{% \@namedef{@mpninecol@footgroup#1}{{% \@nameuse{foottextfont#1} \splittopskip=\ht\strutbox \m@mrigidbalance{\@nameuse{@mpfootins#1}}{9}{\splittopskip}}}} -\newcommand{\tencolumnfootnotes}{% +\bidi@ensure@newcommand{\tencolumnfootnotes}{% \@namedef{foottextfontv@r}{\foottextfont}% % [RS] \let\@footnotetext\@tencolfootnotetext \let\@LTRfootnotetext\@tencolLTRfootnotetext @@ -1263,7 +1411,7 @@ \let\@mpRTLfootnotetext\@mptencolRTLfootnotetext \m@make@mptencol@footgroup{v@r}% \let\mp@footgroupv@r\@mptencol@footgroupv@r} -\newcommand{\@tencolfootnotetext}[1]{\insert\footinsv@r{\if@RTL@footnote\@RTLtrue\else\@RTLfalse\fi% +\bidi@ensure@newcommand{\@tencolfootnotetext}[1]{\insert\footinsv@r{\if@RTL@footnote\@RTLtrue\else\@RTLfalse\fi% \def\baselinestretch{\m@m@footnote@spacing}% \reset@font\foottextfont \@preamfntext @@ -1273,35 +1421,41 @@ \@tencolfootfmt{#1}% \color@endgroup}% \m@mmf@prepare} -\newcommand{\@tencolLTRfootnotetext}[1]{\insert\footinsv@r{\if@RTLcolumnfootnotes\beginL\fi\@RTLfalse% +\bidi@ensure@newcommand{\@tencolLTRfootnotetext}[1]{\insert\footinsv@r{\if@RTLcolumnfootnotes\beginL\fi\@RTLfalse% \def\baselinestretch{\m@m@footnote@spacing}% - \reset@font\foottextfont + \reset@font\LTRfoottextfont \@preamfntext \protected@edef\@currentlabel{% \csname p@footnote\endcsname\@thefnmark}% \color@begingroup - \@tencolfootfmt{#1}% + \@tencolLTRfootfmt{#1}% \color@endgroup}% \m@mmf@prepare} -\newcommand{\@tencolRTLfootnotetext}[1]{\insert\footinsv@r{\@RTLtrue% +\bidi@ensure@newcommand{\@tencolRTLfootnotetext}[1]{\insert\footinsv@r{\@RTLtrue% \def\baselinestretch{\m@m@footnote@spacing}% - \reset@font\foottextfont + \reset@font\RTLfoottextfont \@preamfntext \protected@edef\@currentlabel{% \csname p@footnote\endcsname\@thefnmark}% \color@begingroup - \@tencolfootfmt{#1}% + \@tencolRTLfootfmt{#1}% \color@endgroup}% \m@mmf@prepare} -\newcommand{\@preamtenfmt}{% +\bidi@ensure@newcommand{\@preamtenfmt}{% \hsize .1\hsize \parindent=\z@ \tolerance=5000\relax \leavevmode} -\newcommand{\@tencolfootfmt}[1]{% +\bidi@ensure@newcommand{\@tencolfootfmt}[1]{% \@preamtenfmt {\footfootmark\strut {\foottextfont #1}\strut\par}\allowbreak} -\newcommand{\@mptencolfootnotetext}[1]{% +\bidi@ensure@newcommand{\@tencolLTRfootfmt}[1]{% + \@preamtenfmt + {\footfootmark\strut {\LTRfoottextfont #1}\strut\par}\allowbreak} +\bidi@ensure@newcommand{\@tencolRTLfootfmt}[1]{% + \@preamtenfmt + {\footfootmark\strut {\RTLfoottextfont #1}\strut\par}\allowbreak} +\bidi@ensure@newcommand{\@mptencolfootnotetext}[1]{% \global\setbox\@mpfootinsv@r\vbox{\if@RTL@footnote\@RTLtrue\else\@RTLfalse\fi% \unvbox\@mpfootinsv@r \def\baselinestretch{\m@m@footnote@spacing}% @@ -1313,48 +1467,48 @@ \@tencolfootfmt{#1}% \color@endgroup}% \m@mmf@prepare} -\newcommand{\@mptencolLTRfootnotetext}[1]{% +\bidi@ensure@newcommand{\@mptencolLTRfootnotetext}[1]{% \global\setbox\@mpfootinsv@r\vbox{\@RTLfalse% \unvbox\@mpfootinsv@r \def\baselinestretch{\m@m@footnote@spacing}% - \reset@font\foottextfont + \reset@font\LTRfoottextfont \hsize\columnwidth \@parboxrestore \if@RTLcolumnfootnotes\beginL\fi \protected@edef\@currentlabel{% \csname p@mpfootnote\endcsname\@thefnmark}% \color@begingroup - \@tencolfootfmt{#1}% + \@tencolLTRfootfmt{#1}% \color@endgroup}% \m@mmf@prepare} -\newcommand{\@mptencolRTLfootnotetext}[1]{% +\bidi@ensure@newcommand{\@mptencolRTLfootnotetext}[1]{% \global\setbox\@mpfootinsv@r\vbox{\@RTLtrue% \unvbox\@mpfootinsv@r \def\baselinestretch{\m@m@footnote@spacing}% - \reset@font\foottextfont + \reset@font\RTLfoottextfont \hsize\columnwidth \@parboxrestore \protected@edef\@currentlabel{% \csname p@mpfootnote\endcsname\@thefnmark}% \color@begingroup - \@tencolfootfmt{#1}% + \@tencolRTLfootfmt{#1}% \color@endgroup}% \m@mmf@prepare} -\newcommand{\tencolumnfootstyle}[1]{% +\bidi@ensure@newcommand{\tencolumnfootstyle}[1]{% \m@make@tencolfootnotetext{#1}% \m@make@mptencolfootnotetext{#1}% \m@make@tencolfootfmt{#1}% \m@make@tencol@footgroup{#1}% \m@make@mptencol@footgroup{#1}% \m@make@footstart{#1}% - \@namelongdef{@footnotetext#1}##1{% + \bidi@namelongdef{@footnotetext#1}##1{% \@nameuse{@tencolfootnotetext#1}{##1}}% - \@namelongdef{@mpfootnotetext#1}##1{% + \bidi@namelongdef{@mpfootnotetext#1}##1{% \@nameuse{@mptencolfootnotetext#1}{##1}}% \@namedef{@footgroup#1}{\@nameuse{@tencol@footgroup#1}}% \@namedef{mp@footgroup#1}{\@nameuse{@mptencol@footgroup#1}}% \expandafter\dimen\csname footins#1\endcsname=2\footinsdim \expandafter\count\csname footins#1\endcsname=500\relax} -\newcommand{\m@make@tencolfootnotetext}[1]{% - \@namelongdef{@tencolfootnotetext#1}##1{% +\bidi@ensure@newcommand{\m@make@tencolfootnotetext}[1]{% + \bidi@namelongdef{@tencolfootnotetext#1}##1{% \insert\@nameuse{footins#1}{% \def\baselinestretch{\m@m@footnote@spacing}% \reset@font\@nameuse{foottextfont#1}% @@ -1365,8 +1519,8 @@ \@nameuse{@tencolfootfmt#1}{##1}% \color@endgroup}% \m@mmf@prepare}} -\newcommand{\m@make@mptencolfootnotetext}[1]{% -\@namelongdef{@mptencolfootnotetext#1}##1{% +\bidi@ensure@newcommand{\m@make@mptencolfootnotetext}[1]{% +\bidi@namelongdef{@mptencolfootnotetext#1}##1{% \global\setbox\@nameuse{@mpfootins#1}\vbox{% \unvbox\@nameuse{@mpfootins#1} \def\baselinestretch{\m@m@footnote@spacing}% @@ -1377,20 +1531,20 @@ \color@begingroup \@nameuse{@tencolfootfmt#1}{##1}% \color@endgroup}\m@mmf@prepare}} -\newcommand{\m@make@tencolfootfmt}[1]{% +\bidi@ensure@newcommand{\m@make@tencolfootfmt}[1]{% \@namedef{@tencolfootfmt#1}##1{% \@preamtenfmt {\@nameuse{footfootmark#1}\strut {\@nameuse{foottextfont#1}##1}\strut\par}\allowbreak}} -\newcommand{\m@make@tencol@footgroup}[1]{% +\bidi@ensure@newcommand{\m@make@tencol@footgroup}[1]{% \@namedef{@tencol@footgroup#1}{{% \@nameuse{foottextfont#1} \splittopskip=\ht\strutbox \m@mrigidbalance{\@nameuse{footins#1}}{10}{\splittopskip}}}} -\newcommand{\m@make@mptencol@footgroup}[1]{% +\bidi@ensure@newcommand{\m@make@mptencol@footgroup}[1]{% \@namedef{@mptencol@footgroup#1}{{% \@nameuse{foottextfont#1} \splittopskip=\ht\strutbox \m@mrigidbalance{\@nameuse{@mpfootins#1}}{10}{\splittopskip}}}} -\newcommand{\m@munvxh}[1]{% +\bidi@ensure@newcommand{\m@munvxh}[1]{% \setbox0=\vbox{\unvbox#1% \global\setbox1=\lastbox}% \unhbox1 @@ -1398,17 +1552,17 @@ \unskip \unpenalty \hskip\m@mipn@skip} -\newcommand{\m@mungebox}{% +\bidi@ensure@newcommand{\m@mungebox}{% \setbox0=\hbox{\m@munvxh0}% \dp0=\z@ \ht0=\footfudgefactor\wd0 \box0 \penalty0} \newskip\m@mipn@skip -\newcommand*{\m@minterparanoteglue}[1]{% +\bidi@ensure@newcommand*{\m@minterparanoteglue}[1]{% {\foottextfont\global\m@mipn@skip=#1\relax}} \m@minterparanoteglue{1em plus.4em minus.4em} -\newcommand*{\m@mmakehboxofhboxes}{% +\bidi@ensure@newcommand*{\m@mmakehboxofhboxes}{% \if@parafootRTL\@RTLtrue\else\@RTLfalse\fi% \setbox0=\hbox{}% \loop @@ -1417,10 +1571,10 @@ \ifhbox2 \setbox0=\hbox{\box2\unhbox0} \repeat} -\newcommand*{\m@mremovehboxes}{\setbox0=\lastbox +\bidi@ensure@newcommand*{\m@mremovehboxes}{\setbox0=\lastbox \ifhbox0{\m@mremovehboxes}\unhbox0 \fi} -\newcommand*{\footfudgefiddle}{64} -\newcommand{\paragraphfootnotes}{% +\bidi@ensure@newcommand*{\footfudgefiddle}{64} +\bidi@ensure@newcommand{\paragraphfootnotes}{% \@namedef{foottextfontv@r}{\foottextfont}% % [RS] \let\@footnotetext\@parafootnotetext \let\@LTRfootnotetext\@paraLTRfootnotetext @@ -1439,7 +1593,7 @@ \multiply\dimen0 by 1024 \divide\dimen0 by \hsize \multiply\dimen0 by \footfudgefiddle \xdef\footfudgefactor{\expandafter\strip@pt\dimen0 }}} -\newcommand{\@parafootnotetext}[1]{\insert\footinsv@r{\@RTLfalse +\bidi@ensure@newcommand{\@parafootnotetext}[1]{\insert\footinsv@r{\@RTLfalse \def\baselinestretch{\m@m@footnote@spacing}% \reset@font\foottextfont \@preamfntext @@ -1450,33 +1604,41 @@ \noindent \@parafootfmt{\if@RTL@footnote\beginR\else\beginL\fi#1\if@RTL@footnote\endR\else\endL\fi}% \color@endgroup}% \m@mungebox}\m@mmf@prepare} -\newcommand{\@paraLTRfootnotetext}[1]{\insert\footinsv@r{\@RTLfalse +\bidi@ensure@newcommand{\@paraLTRfootnotetext}[1]{\insert\footinsv@r{\@RTLfalse \def\baselinestretch{\m@m@footnote@spacing}% - \reset@font\foottextfont + \reset@font\LTRfoottextfont \@preamfntext \protected@edef\@currentlabel{% \csname p@footnote\endcsname\@thefnmark}% \setbox0=\vbox{\hsize=\maxdimen \color@begingroup - \noindent \@parafootfmt{\beginL#1\endL}% + \noindent \@paraLTRfootfmt{\beginL#1\endL}% \color@endgroup}% \m@mungebox}\m@mmf@prepare} -\newcommand{\@paraRTLfootnotetext}[1]{\insert\footinsv@r{\@RTLfalse +\bidi@ensure@newcommand{\@paraRTLfootnotetext}[1]{\insert\footinsv@r{\@RTLfalse \def\baselinestretch{\m@m@footnote@spacing}% - \reset@font\foottextfont + \reset@font\RTLfoottextfont \@preamfntext \protected@edef\@currentlabel{% \csname p@footnote\endcsname\@thefnmark}% \setbox0=\vbox{\hsize=\maxdimen \color@begingroup - \noindent \@parafootfmt{\beginR#1\endR}% + \noindent \@paraRTLfootfmt{\beginR#1\endR}% \color@endgroup}% \m@mungebox}\m@mmf@prepare} -\newcommand{\@parafootfmt}[1]{% +\bidi@ensure@newcommand{\@parafootfmt}[1]{% \parindent=\z@ \parfillskip=0pt \@plus 1fil {\footfootmark\strut {\foottextfont #1}\penalty-10}} -\newcommand{\@mpparafootnotetext}[1]{% +\bidi@ensure@newcommand{\@paraLTRfootfmt}[1]{% + \parindent=\z@ + \parfillskip=0pt \@plus 1fil + {\footfootmark\strut {\LTRfoottextfont #1}\penalty-10}} +\bidi@ensure@newcommand{\@paraRTLfootfmt}[1]{% + \parindent=\z@ + \parfillskip=0pt \@plus 1fil + {\footfootmark\strut {\RTLfoottextfont #1}\penalty-10}} +\bidi@ensure@newcommand{\@mpparafootnotetext}[1]{% \global\setbox\@mpfootinsv@r\vbox{\@RTLfalse% \unvbox\@mpfootinsv@r \def\baselinestretch{\m@m@footnote@spacing}% @@ -1489,42 +1651,42 @@ \noindent \@parafootfmt{\if@RTL@footnote\beginR\else\beginL\fi#1\if@RTL@footnote\endR\else\endL\fi}% \color@endgroup}% \m@mungebox}\m@mmf@prepare} -\newcommand{\@mpparaLTRfootnotetext}[1]{% +\bidi@ensure@newcommand{\@mpparaLTRfootnotetext}[1]{% \global\setbox\@mpfootinsv@r\vbox{\@RTLfalse% \unvbox\@mpfootinsv@r \def\baselinestretch{\m@m@footnote@spacing}% - \reset@font\foottextfont + \reset@font\LTRfoottextfont \hsize\columnwidth \@parboxrestore \protected@edef\@currentlabel{% \csname p@mpfootnote\endcsname\@thefnmark}% \setbox0=\vbox{\hsize=\maxdimen \color@begingroup - \noindent \@parafootfmt{\beginL#1\endL}% + \noindent \@paraLTRfootfmt{\beginL#1\endL}% \color@endgroup}% \m@mungebox}\m@mmf@prepare} -\newcommand{\@mpparaRTLfootnotetext}[1]{% +\bidi@ensure@newcommand{\@mpparaRTLfootnotetext}[1]{% \global\setbox\@mpfootinsv@r\vbox{\@RTLfalse% \unvbox\@mpfootinsv@r \def\baselinestretch{\m@m@footnote@spacing}% - \reset@font\foottextfont + \reset@font\RTLfoottextfont \hsize\columnwidth \@parboxrestore \protected@edef\@currentlabel{% \csname p@mpfootnote\endcsname\@thefnmark}% \setbox0=\vbox{\hsize=\maxdimen \color@begingroup - \noindent \@parafootfmt{\beginR#1\endR}% + \noindent \@paraRTLfootfmt{\beginR#1\endR}% \color@endgroup}% \m@mungebox}\m@mmf@prepare} -\newcommand{\paragraphfootstyle}[1]{% +\bidi@ensure@newcommand{\paragraphfootstyle}[1]{% \m@make@parafootnotetext{#1}% \m@make@mpparafootnotetext{#1}% \m@make@parafootfmt{#1}% \m@make@para@footgroup{#1}% \m@make@mppara@footgroup{#1}% \m@make@para@footstart{#1}% - \@namelongdef{@footnotetext#1}##1{% + \bidi@namelongdef{@footnotetext#1}##1{% \@nameuse{@parafootnotetext#1}{##1}}% - \@namelongdef{@mpfootnotetext#1}##1{% + \bidi@namelongdef{@mpfootnotetext#1}##1{% \@nameuse{@mpparafootnotetext#1}{##1}}% \@namedef{@footgroup#1}{\@nameuse{@para@footgroup#1}}% \@namedef{mp@footgroup#1}{\@nameuse{@mppara@footgroup#1}}% @@ -1536,8 +1698,8 @@ \multiply\dimen0 by 1024 \divide\dimen0 by \hsize \multiply\dimen0 by 64 \xdef\footfudgefactor{\expandafter\strip@pt\dimen0 }}} -\newcommand{\m@make@parafootnotetext}[1]{% -\@namelongdef{@parafootnotetext#1}##1{% +\bidi@ensure@newcommand{\m@make@parafootnotetext}[1]{% +\bidi@namelongdef{@parafootnotetext#1}##1{% \insert\@nameuse{footins#1}{ \def\baselinestretch{\m@m@footnote@spacing}% \reset@font\@nameuse{foottextfont#1}% @@ -1549,8 +1711,8 @@ \noindent \@nameuse{@parafootfmt#1}{##1}% \color@endgroup}% \m@mungebox}\m@mmf@prepare}} -\newcommand{\m@make@mpparafootnotetext}[1]{% -\@namelongdef{@mpparafootnotetext#1}##1{% +\bidi@ensure@newcommand{\m@make@mpparafootnotetext}[1]{% +\bidi@namelongdef{@mpparafootnotetext#1}##1{% \global\setbox\@nameuse{@mpfootins#1}\vbox{% \unvbox\@nameuse{@mpfootins#1} \def\baselinestretch{\m@m@footnote@spacing}% @@ -1563,27 +1725,27 @@ \noindent \@nameuse{@parafootfmt#1}{##1}% \color@endgroup}% \m@mungebox}\m@mmf@prepare}} -\newcommand{\m@make@parafootfmt}[1]{% -\@namelongdef{@parafootfmt#1}##1{% +\bidi@ensure@newcommand{\m@make@parafootfmt}[1]{% +\bidi@namelongdef{@parafootfmt#1}##1{% \parindent=\z@ \parfillskip=0pt \@plus 1fil {\@nameuse{footfootmark#1}\strut {\@nameuse{foottextfont#1}##1}\penalty-10}}} -\newcommand{\m@make@para@footgroup}[1]{% +\bidi@ensure@newcommand{\m@make@para@footgroup}[1]{% \@namedef{@para@footgroup#1}{% \unvbox\@nameuse{footins#1} \m@mmakehboxofhboxes \setbox0=\hbox{\unhbox0 \m@mremovehboxes}% \@nameuse{foottextfont#1}% \noindent\unhbox0\par}} -\newcommand{\m@make@mppara@footgroup}[1]{% +\bidi@ensure@newcommand{\m@make@mppara@footgroup}[1]{% \@namedef{@mppara@footgroup#1}{% \unvbox\@nameuse{@mpfootins#1} \m@mmakehboxofhboxes \setbox0=\hbox{\unhbox0 \m@mremovehboxes}% \@nameuse{foottextfont#1}% \noindent\unhbox0\par}} -\newcommand{\m@make@para@footstart}[1]{% +\bidi@ensure@newcommand{\m@make@para@footstart}[1]{% \@namedef{@para@footstart#1}{% \vskip\bigskipamount \leftskip=\z@ @@ -1591,11 +1753,11 @@ \parindent=\z@ \vskip\skip\@nameuse{footins#1}% \footnoterule}} -\newcommand*{\m@m@makecolfloats}{% +\bidi@ensure@newcommand*{\m@m@makecolfloats}{% \xdef\@freelist{\@freelist\@midlist}% \global\let\@midlist\@empty \@combinefloats} -\newcommand*{\m@m@makecoltext}{% +\bidi@ensure@newcommand*{\m@m@makecoltext}{% \ifvbox\@kludgeins \@makespecialcolbox \else @@ -1606,8 +1768,8 @@ \vskip -\dimen@ \@textbottom}% \fi} -\newcommand*{\m@m@makecolintro}{} -\newcommand*{\m@mopfootnote}{\setbox\@outputbox \vbox{% +\bidi@ensure@newcommand*{\m@m@makecolintro}{} +\bidi@ensure@newcommand*{\m@mopfootnote}{\setbox\@outputbox \vbox{% \boxmaxdepth\@maxdepth \@tempdima\dp\@cclv \unvbox\@cclv @@ -1618,7 +1780,7 @@ \footnoterule \unvbox \footins \color@endgroup}} -\newcommand*{\m@mopsidebar}{% +\bidi@ensure@newcommand*{\m@mopsidebar}{% \ifvoid\sideins\else \setbox\@outputbox \vbox{% \sidecontents @@ -1636,17 +1798,17 @@ \m@mopsidebar \m@m@makecoltext \global \maxdepth \@maxdepth} -\newcommand{\feetabovefloat}{\gdef\@makecol{\mem@makecol}} +\bidi@ensure@newcommand{\feetabovefloat}{\gdef\@makecol{\mem@makecol}} \feetabovefloat% %% -%% Copyright © 2009–2011 VAFA KHALIGHI <vafaklg@gmail.com> +%% Copyright © 2009–2012 Vafa Khalighi <vafaklg@gmail.com> %% %% It may be distributed and/or modified under the LaTeX Project Public License, %% version 1.3c or higher (your choice). The latest version of %% this license is at: http://www.latex-project.org/lppl.txt %% %% This work is “author-maintained” (as per LPPL maintenance status) -%% by VAFA KHALIGHI. +%% by Vafa Khalighi. %% %% %% |