git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: user-manual.html invalid HTML

From
Jeff King <peff@peff.net>
Date
Aug 21, 2010, 06:21 UTC
Message-ID
<20100821062122.GA28735@coredump.intra.peff.net>
In-Reply-To
<20100820050401.GC25013@burratino>
On Fri, Aug 20, 2010 at 12:04:02AM -0500, Jonathan Nieder wrote:
Show 14 quoted lines
> > The versions I build locally have:
> > 
> > <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
> >     "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
> > 
> > in each HTML file, which is added by asciidoc.  Maybe the package you
> > are looking at was built with an older version of asciidoc that doesn't
> > do this (I don't actually know the history of this feature, but it seems
> > to me that this is something asciidoc should be doing, not git).
> 
> It looks like the HTML for user-manual.html (unlike the reference
> manual and other articles) is not generated by asciidoc after all;
> instead, the rule in Documentation/Makefile uses xsltproc directly to
> convert the asciidoc-generated XML to HTML.
Thanks for tracking this down.
> Apparently the caller is supposed to set the
> chunker.output.doctype-public parameter.
> http://www.sagehill.net/docbookxsl/Chunking.html#OutputDoctype

Your patch works fine for me, though I am using the exact same toolchain as you. I have no idea if older docbook's will work less well.

> + <xsl:output method="html"
> +     encoding="UTF-8" indent="no"
> +     doctype-public="-//W3C//DTD HTML 4.01//EN"
> +     doctype-system="http://www.w3.org/TR/html4/strict.dtd" />

My asciidoc-generated pages are xhtml. We are using "html/docbook.xsl" from docbook, and now "xhtml", so probably some form of html is right. But is html4 strict right? With nothing else to go on, it seems a good guess to me, but I'm wondering if you actually found the answer somewhere.

Also, while testing your patch, I found and fixed the following buglet:
-- >8 --
Subject: [PATCH] docs: fix Makefile dependency for user manual

We use our custom xsl file to build the user manual, so make sure we depend on it. We don't use it anywhere else, so we can stick it straight in the rule.

Signed-off-by: Jeff King <peff@peff.net>
---
 Documentation/Makefile |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/Documentation/Makefile b/Documentation/Makefile
index a4c4063..e117bc4 100644
--- a/Documentation/Makefile
+++ b/Documentation/Makefile
@@ -279,7 +279,7 @@ $(patsubst %,%.html,$(API_DOCS) technical/api-index): %.html : %.txt
 XSLT = docbook.xsl
 XSLTOPTS = --xinclude --stringparam html.stylesheet docbook-xsl.css
 
-user-manual.html: user-manual.xml
+user-manual.html: user-manual.xml $(XSLT)
 	$(QUIET_XSLTPROC)$(RM) $@+ $@ && \
 	xsltproc $(XSLTOPTS) -o $@+ $(XSLT) $< && \
 	mv $@+ $@
-- 
1.7.2.2.350.g9c7e
Previous: Jonathan NiederNext: Junio C Hamano
Message 8 of 10 in “X-Debbugs-Cc didn't make it to git@vger.kernel.org”
  1. jidanni@jidanni.orgDec 3, 2008
  2. git-doc CSS dependent, breaks down in text browsersjidanni@jidanni.org, Dec 11, 2008
  3. Jeff KingDec 12, 2008
  4. user-manual.html invalid HTMLjidanni@jidanni.org, Dec 11, 2008
  5. Jeff KingDec 12, 2008
  6. jidanni@jidanni.orgDec 12, 2008
  7. Jonathan NiederAug 20, 2010
  8. Jeff KingAug 21, 2010
  9. Junio C HamanoAug 22, 2010
  10. jidanni@jidanni.orgJan 8, 2009

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.