Tabbing

LaTeX disables: ‘\tabs’, ‘\tabsdone’, settabs, \+, \tabset, \cleartabs, and \settabs.

No need for ‘\:CheckOption{settabs-} \if:Option \else ....\fi’ because we can use ‘\Configure{settabs}{}{}{}{}{}’.

The following is from plain TeX.

The following is for ‘\outer\def\+{\settabs}’.

<..html tex settabs..>
 \def\gt:tab{\def\:temp##1.##2//{##1}\tmp:dim=\m:tab\wd\z@}
 <.set a settabs element.>
 <.set a settabs row.>
 -_-_-

<..config plain utilities..>+
 \def\E:tabalign#1{\def\e:tabalgn{\ifx \EndPicture\:UnDef #1\fi}}
 \def\c:settabs:{\c:def\:tempa{settabs}\futurelet\:temp\:tblgn}
 -_-_-

<..html tex settabs..>+
 \pend:def\settabs{\e:tabalgn}
 -_-_-

The \leavevmode below save from paragraph breaks between lines.

\Configure{settabs}[dec const]’ for table magnified by the given decimal constant. ‘\Configure{settabs}{at-settabs}{at \+}{at \cr}{before elem}{after elem}’ for user-defined configuration. The ‘at-settabs’ is useful for tables ‘\settabs..\+..\cr\+..\cr...’ that are defined within dedicated groups.

<..set a settabs element..>
 \def\t@bb@x{\if@cr\egroup <.last col; no dim.>%
   \else\hss\egroup  <.col dim.>%
       \global\setbox\tabsyet\hbox{\unhbox\tabsyet
       \global\setbox\@ne\lastbox}%
     \ifvoid\@ne\global\setbox\@ne\hbox to\wd\z@{}%
     \else\setbox\z@\hbox to\wd\@ne{\unhbox\z@}\fi
     \global\setbox\tabsdone\hbox{\box\@ne\unhbox\tabsdone}\fi
   \ifx \EndPicture\:UnDef \c:tabalgn \fi \box\z@
   \ifx \EndPicture\:UnDef \d:tabalgn \fi}
 -_-_-

<..col dim..>
 \edef\TabWidth{\expandafter\:temp\the\tmp:dim//}%
 -_-_-

<..last col; no dim..>
 \let\TabWidth=\empty
 -_-_-

<..set a settabs row..>
 \def\m@ketabbox{\begingroup
   \global\setbox\tabsyet\copy\tabs
   \global\setbox\tabsdone\null
   \def\cr{\@crtrue\crcr\egroup\egroup
     \ifus@  \ifx \EndPicture\:UnDef \a:tabalgn \fi
         \unvbox\z@\lastbox
         \ifx \EndPicture\:UnDef \b:tabalgn \fi
     \fi\endgroup
     \setbox\tabs\hbox{\unhbox\tabsyet\unhbox\tabsdone}}%
   \setbox\z@\vbox\bgroup\@crfalse
   <.ialign.>\bgroup&\t@bbox##\t@bb@x\crcr}
 -_-_-

\ifx \us@false\:UnDef 
   \def\:tempa{\expandafter\let\csname ifus@\endcsname|=} 
   \expandafter\:tempa\csname iftrue\endcsname 
\fi 

\ialign stands for initialized \halign.

<..ialign..>
 \everycr{}\tabskip\z@skip\TeXhalign
 -_-_-