<..html private array/tabular..>
\def\:temp[#1]#2{%
<.init conds for @mkpream.>%
\setbox\@arstrutbox\hbox{}%
\@mkpream{#2}%
\edef\@preamble{%
<.ialign for html @array.>}%
\let\@startpbox\@@startpbox \let\@endpbox\@@endpbox
\let\tabularnewline\\%
\if #1t\vtop \else \if#1b\vbox \else \vcenter \fi\fi
\bgroup \def\v:TBL{#1}%
\let\par\@empty \let\protect\relax
\lineskip\z@skip\baselineskip\z@skip
\ifx \EndPicture\:UnDef
\SaveMkHalignConfig <.@array configuration for MkHalign.>%
\else \let\@sharp=##\fi \HRestore\noalign
\@preamble}
\HLet\@array=\:temp
<.set cr for @array.>
<.latex: show paragraphs in array par box.>
-_-_-
The next example fails under dblatex without the definition of \cr that follows.
<..set cr for @array..>
\let\oo:@array\@array
\def\@array{%
\ifx\EndPicture\:UnDef\else
\iffalse{\fi
\expandafter\let\expandafter\cr\csname 0cr\endcsname
\expandafter\let\expandafter\crcr\csname 0crcr\endcsname
\iffalse}\fi
\fi
\oo:@array
}
-_-_-
<..latex: show paragraphs in array par box..>
\let\:tempc=\@@startpbox
\append:defI\:tempc{\everypar{\HtmlPar}\a:arrayparbox}%
\HLet\@@startpbox=\:tempc
-_-_-
<..latex lttab..>+
\NewConfigure{arrayparbox}{1}
-_-_-
<..html private array/tabular..>+
\def\:tempc{\relax
\ifx \HCol\:UnDef \else \ifnum\HCol=1 \a:endarray\fi \fi
\crcr\ifx \EndPicture\:UnDef \EndMkHalign
\else \egroup\fi \egroup}
\HLet\endarray\:tempc
\def\:tempc{\relax
\ifx \HCol\:UnDef \else \ifnum\HCol=1 \a:endarray\fi \fi
\crcr\ifx \EndPicture\:UnDef
\EndMkHalign\else \egroup\fi \egroup $\egroup}
\HLet\endtabular\:tempc
\expandafter \let \csname endtabular*\endcsname=\endtabular
\expandafter\def\csname tabular*\endcsname#1{\tabular}
\expandafter\def\csname before:begintabular*\endcsname{\csname
before:begintabular\endcsname}
\expandafter\def\csname ontabular*:list\endcsname{\csname
ontabular:list\endcsname}
-_-_-
<..latex lttab..>+
\NewConfigure{endtabular}{1}
\NewConfigure{endarray}{1}
-_-_-