diff --git a/src/docs/cmu-user/Makefile b/src/docs/cmu-user/Makefile
index 25924ef08619c4c69d629091d839c47cc4bf78ce..b554af243104b02de33e80f6a3950ca03e5fa940 100644
--- a/src/docs/cmu-user/Makefile
+++ b/src/docs/cmu-user/Makefile
@@ -70,7 +70,7 @@ all: cmu-user.pdf
 
 # the "-fix" option to hevea makes it run as many times as necessary
 # to resolve all cross-references and generate an index.
-%.html : %.tex $(FILES)
+%.html : %.tex $(FILES) cmu-user.hva
 	$(HEVEA) -fix cmu-user.hva $<
 	$(HACHA) -tocbis $@
 	-$(TIDY) -m *.html
@@ -105,6 +105,7 @@ clean:
 	rm -f *.log *.bbl *.blg *.ps *.pdf *.aux *.lof *.toc *.out *.ilg
 	rm -f *.vdx *.cdx *.tdx *.fdx *.idx *.cnd *.fnd *.tnd *.vnd *.haux
 	rm -f *.html *.hcnd *.htnd *.hvnd *.hfnd *.htoc
+	rm -f cmu-user.css
 
 index:
 	makeindex cmu-user.tdx -o cmu-user.tnd
diff --git a/src/docs/cmu-user/cmu-user.hva b/src/docs/cmu-user/cmu-user.hva
index 416d9f2adec79d7f381f606a48ce6f9484bf77d3..b3d7b3295397e51e0d391f42c7f3767f97b3bf0a 100644
--- a/src/docs/cmu-user/cmu-user.hva
+++ b/src/docs/cmu-user/cmu-user.hva
@@ -4,7 +4,7 @@
 % to HTML using Hevea. By Luc Maranget and Eric Marsden.
 
 \newif\ifhmode\hmodefalse
-\newcommand{\xspace}{}
+\newcommand{\pdfinfo}[1]{\@print{<!--} #1 \@print{-->}}
 \let\hbox\mbox
 \def\hfil{}
 \def\hfill{}
@@ -14,8 +14,11 @@
 \newcommand{\layout}[4][]
   {\@open{DIV}{align=left}
    [#4] \\
+   \begin{tabbing}
    \fcnname{#1}\fcnname{#2} #3 \@print{&nbsp;&nbsp;&nbsp;}
+   \end{tabbing}
    \@close{DIV}}
+\newcommand{\keys}[1]{\code{\&key}\@print{&nbsp;}\= #1}
 
 % \newcommand{\layout}[4][]
 %   {\begin{tabular}
@@ -26,13 +29,12 @@
 %    \end{tabular}}
 
 
-\newcommand{\fcntype}[1]{\@open{TT}{class=function-type}#1\@close{TT}}
-\newcommand{\argtype}[1]{\@open{TT}{class=argument-type}#1\@close{TT}}
-\newcommand{\fcnname}[1]{\@open{TT}{class=function-name}#1\@close{TT}}
-\newcommand{\var}[1]{\@open{TT}{class=variable}#1\@close{TT}}
-\newcommand{\code}[1]{\@open{TT}{class=code}#1\@close{TT}}
-\newcommand{\file}[1]{\@open{TT}{class=filename}#1\@close{TT}}
-
+\newcommand{\fcntype}[1]{\@styleattr{TT}{class=function-type}#1\@clearstyle}
+\newcommand{\argtype}[1]{\@styleattr{TT}{class=argument-type}#1\@clearstyle}
+\newcommand{\fcnname}[1]{\@styleattr{TT}{class=function-name}#1\@clearstyle}
+\newcommand{\var}[1]{\@styleattr{TT}{class=variable}#1\@clearstyle}
+\newcommand{\code}[1]{\@styleattr{TT}{class=code}#1\@clearstyle}
+\newcommand{\file}[1]{\@styleattr{TT}{class=filename}#1\@clearstyle}
 
 %% Define a new type
 %%
@@ -47,13 +49,13 @@
 
 %% Define a function
 %%
-%% \begin{defun}{pkg}{name}{params}
+%% \begin{defun}[suffix]{pkg}{name}{params}
 %%   \defunx[pkg]{name}{params}
 %%   description of function
 %% \end{defun}
-\newenvironment{defun}[3]
-  {\par\defunvspace\fnindexbold{#2}\label{FN:#2}%
-  \layout[#1]{#2}{#3}{Function}
+\newenvironment{defun}[4][]
+  {\par\defunvspace\fnindexbold{#3}\label{FN:#3#1}%
+  \layout[#2]{#3}{#4}{Function}
   \begin{quote}}
   {\end{quote}}
 \newcommand{\defunx}[3][\mbox{}]{%
@@ -62,13 +64,13 @@
 
 %% Define a macro
 %%
-%% \begin{defmac}{pkg}{name}{params}
+%% \begin{defmac}[suffix]{pkg}{name}{params}
 %%   \defmacx[pkg]{name}{params}
 %%   description of macro
 %% \end{defmac}
-\newenvironment{defmac}[3]{%
-  \par\defunvspace\fnindexbold{#2}\label{FN:#2}%
-  \layout[#1]{#2}{#3}{Macro}
+\newenvironment{defmac}[4][]{%
+  \par\defunvspace\fnindexbold{#3}\label{FN:#3#1}%
+  \layout[#2]{#3}{#4}{Macro}
   \begin{quote}}
   {\end{quote}}
 \newcommand{\defmacx}[3][\mbox{}]{%
@@ -112,8 +114,8 @@
 \newenvironment{lisp}
   {\@open{BLOCKQUOTE}{CLASS=lisp} \begin{alltt}}
   {\end{alltt}\@close{BLOCKQUOTE}}
-\newcommand{\cmucl}{CMUCL}
-  
+\newcommand{\cmucl}{{\scshape cmucl}}
+
 
 % there are no page numbers in HTML, so we need to override certain
 % cross-referencing macros
@@ -134,7 +136,7 @@
 
 
 % disable ``this document generated by'' footer
-\setcounter{footer}{0}
+\def\@footer{}
 
 % \htmlhead{\@print{
 % <a href="../../">CMUCL</a> -&gt
@@ -165,12 +167,19 @@
 \setcounter{cuttingdepth}{10}
 
 \input{report.hva}
-\input{fancysection.hva}
+%%\input{fancysection.hva}
+\usepackage{color}
 \definecolor{chapter}{rgb}{1, 1, 0.74}
 \definecolor{part}{rgb}{1, 1, 0.81}
 \definecolor{section}{rgb}{1, 1, 0.83}
 \definecolor{subsection}{rgb}{1, 1, 0.89}
 \definecolor{subsubsection}{rgb}{1, 1, 0.93}
+\newstyle{.chapter}{padding:0.5ex;background-color:\@getstylecolor{chapter}}
+\newstyle{.section} {padding:.5ex;background-color:\@getstylecolor{section}}%
+\newstyle{.subsection} {padding:0.3ex;background-color:\@getstylecolor{subsection}}%
+\newstyle{.subsubsection} {padding:0.5ex;background-color:\@getstylecolor{subsubsection}}%
+\newstyle{.paragraph} {padding:0.5ex;background-color:\@getstylecolor{paragraph}}%
 \renewcommand{\@bodyargs}{}
 
+
 % EOF