>  - The user.tex document does some tricks with square hooks that cause 
> them: 
>   + to be written as GIF files 
 
A \big? is internally defined as a construct ‘\left?\right.’, where 
normally costructs of the form ‘\left?...\right?’ are used for larger 
formulas (that TeX4ht converts to formulas}.  I changed, at least for 
the time being, the definition of \big to avoid creating pictures for 
its arguments. 
 
>   + to not be recognised as equal (i.e., two [’s in two places will be 
>     written as two GIF files). 
 
This is a problem that I don’t have a satisfying solution for it 
(except of providing some tools that allow with minimal user 
intervention to eliminate duplications).  At some point I toyed with 
the idea of using a perl script to reduce duplications, but I shelved 
it as a low priority task. 
 
> This is unpleasant, and I wonder if TeX4ht can do something about it (I 
> do realize that it is weird trickery in the source that causes the 
> problems to begin with). 
 
The code is fine in this case.  TeX4ht should take the full blame. 
 
> The following document demonstrates: 
> 
>   \documentstyle[fullpage]{article} 
>   \input tex4ht.sty 
> 
>   \def\unit#1{\hbox{\tt #1}} % ... \unit{-x foo} ... 
>   \def\meta#1{{\it #1\/}}    % ... <blah> ... 
> 
>   \newenvironment{command}{\def\[{$\bigl[$}\def\]{$\bigr]$}\def\|{$\big\vert$}% 
>     \parindent=-2em\advance\leftskip by -\parindent\vskip -\parskip~\par 
>     \begingroup\tt\textfont0=\font}{% 
>     ~\endgroup\par\advance\hoffset by \parindent} 
> 
>   \Preamble{html} 
>   \begin{document} 
>   \EndPreamble 
> 
>   \begin{command} 
>     /sbin/lilo 
>       \unit{\[ -C \meta{config\_file} \]} 
>       \unit{-q} 
>       \unit{\[ -m \meta{map\_file} \]} 
>       \unit{\[ -v $\ldots$ \]} 
>   \end{command} 
> 
>   \end{document} 
>