<..@array configuration for MkHalign..>
\ifx \recall:ar\:UnDef
\pend:def\@array{\recall:ar}%
\edef\recall:ar{%
\noexpand\ifx \noexpand\EndPicture\noexpand\:UnDef \noexpand\else
\arrayrulewidth=\the\arrayrulewidth
\doublerulesep=\the\doublerulesep
\arraycolsep=\the\arraycolsep
\tabcolsep=\the\tabcolsep
\noexpand\fi }%
\fi
\arrayrulewidth=\z@ \doublerulesep=\z@
\arraycolsep=\z@ \tabcolsep=\z@
\Configure{MkHalign}
{\@array:a}%
{\@array:b\ProperTrTrue}%
{\a:putHBorder\InitHBorder
<.cond eliminate pre cline tr.>%
\ifProperTr{\@array:c}}%
{\ifProperTr{\@array:d}%
<.end cond eliminate pre cline tr.>%
\a:putHBorder\InitHBorder}%
{\ifProperTr{\@array:e}\RecallMkHalignConfig\recall:ar}%
{\ifProperTr{\@array:f}}
-_-_-
<..latex lttab..>+
\def\ignoreEndTr{\expandafter
\ifx \csname :AfterHline\endcsname\relax\else
\expandafter\ignore:EndTr
\fi}
\def\ignore:EndTr{%
\o:noalign:{\global\futurelet\:AfterHline}%
}
\long\def\ifProperTr#1{%
\ifx \:AfterHline\end
#1\global\let\:AfterHline\endinput #1 is \@array:f
\global\let\Needs:@array:d\@array:d
\else \ifx \:AfterHline\endinput
\ifx \Needs:@array:d\@array:d
#1\global\let\Needs:@array:d\:UnDef
\fi
\global\let\:AfterHline\relax
\else #1%
\fi\fi}
\def\ProperTrTrue{\global\let\:AfterHline=\relax}
\NewConfigure{putHBorder}{1}
-_-_-
<..shared html latex array/tabular..>+
\def\:temp{<.set hooks of array.>\o:array:}
\HLet\array=\:temp
\ifx \:@tabular:\:UnDef \let\:@tabular:=\empty \fi
-_-_-
<..set hooks of array..>
\let\@array:a=\a:array \let\@array:b=\b:array
\let\@array:c=\c:array \let\@array:d=\d:array
\let\@array:e=\e:array \let\@array:f=\f:array
-_-_-
<..latex lttab..>+
\def\:tempc{<.set hooks of tabular.>\o:tabular:}
\HLet\tabular=\:tempc
-_-_-
<..array/tabular of latex..>+
\def\:tempc{%
\leavevmode \hbox \bgroup \:@tabular:
$\let\@acol\@tabacol \let\@classz\@tabclassz
\let\@classiv\@tabclassiv \let\\\@tabularcr
\@tabarray}
\HLet\@tabular=\:tempc
-_-_-
<..set hooks of tabular..>
\let\@array:a=\a:tabular \let\@array:b=\b:tabular
\let\@array:c=\c:tabular \let\@array:d=\d:tabular
\let\@array:e=\e:tabular \let\@array:f=\f:tabular
-_-_-
The ‘\@tabular’ above to capture both ‘\begin{tabular}’ and ‘\begin{tabular*}’.
<..html latex array/tabular Config util..>
\NewConfigure{array}{6}
\NewConfigure{tabular}{6}
\NewConfigure{VBorder}{4}
\NewConfigure{HBorder}[9]{\c:def\a:HBorder{#1}%
\c:def\b:HBorder{#2}\c:def\c:HBorder{#3}\c:def\d:HBorder{#4}%
\c:def\e:HBorder{#5}\c:def\f:HBorder{#6}\c:def\g:HBorder{#7}%
\c:def\h:HBorder{#8}\c:def\i:HBorder{#9}\c:HBRD}
\def\c:HBRD#1{\c:def\j:HBorder{#1}}
<.configuring @().>
-_-_-
‘\@nextchar’ holds the contents of ‘@{...}’
<..configuring @()..>
\def\:temp{\@addtopreamble{\@nextchar
\csname a:@{}\endcsname}} \HLet\@tabclassiv=\:temp
\def\:temp{\@addtopreamble{$\@nextchar
$\csname a:@{}\endcsname}} \HLet\@arrayclassiv=\:temp
\NewConfigure{@{}}{1}
\Configure{@{}}{}
-_-_-