We have the definition ‘\def~{\penalty \@M \ }’ in TeX, and in LaTeX it is also defined through ‘\ ’. The relax is to avoid end-of-line for the control character.
<..config latex.ltx shared..>+
\let\sp:c=\ <.latex,plain sp.>
-_-_-
<..config plain shared..>
\let\sp:c=\space <.latex,plain sp.>%
-_-_-
<..latex,plain sp..>
\def\ {\relax\ifx \EndPicture\:UnDef \a:sp
\else \sp:c\fi}
\NewConfigure{ }[1]{\def\:temp{#1}%
\ifx \:temp\empty \let\a:sp=\sp:c\else\def\a:sp{#1}\fi}
\def\:nbsp{\leavevmode\special{t4ht@+\string&{35}x00A0{59}}x}
\Configure{ }{\:nbsp}
-_-_-
Had ‘\let\sp:c|=\ \relax’, but manual of TeXproject didn’t accept it.