Re: The fast version of gtk-doc.xsl

On Sun, 2003-12-28 at 18:31, Callum wrote:
> First of all let me apologise for the binary attachment. Inside the
> tarball there is a drop-in replacement for gtk-doc.xsl. It is a factor of
> 20 faster than the docbook xsl and supports everything that glib, gdk and
> gtk use. It isn't perfect yet, but most of its problems are in the HTML it
> produces rather than its interpretation of docbook. It is also rather
> messy.
> It handles all the cross-references and links perfectly. It produces an
> index, but since I'm not entirely sure what is meant to be indexed, this
> doesn't really work. It doesn't handle the devhelp stuff either, but I
> think that fixing that is just a matter of an include and a call-template.
> I haven't yet written a DTD for what it supports, but there is a document
> to tell humans what it supports.
> Ultimately I'm not sure that using it as a general replacement for all
> gtk-doc is appropriate but creating a --fast option for people who are
> confident that their docbook conforms to this subset could be a good idea.

Wouldn't it be a lot more useful to work on figuring out just what parts
of the standard DocBook stylesheets make it slow.

There are two basic possibilities, as I see it:

 - The slowness is completely due to the size of the stylesheets. 
   Bigger stylesheets are slower. This would indicate most likely
   fixable problems in the libxslt code.

 - There is some particular feature in the DocBook stylesheets that
   is causing slowness. If this feature isn't used in the gtk-doc
   output, then again it is likely a bug in the libxslt code.
   If the feature is "used" in some way, and can't be made faster,
   then perhaps a parameter could be added to the XSLT stylesheets
   to disable just that one feature.

But it general, if you can write a new stylesheet that is 20x faster,
than that's some evidence that it should be pretty simple to make the 
existing stylesheets 5x faster.

I don't think we really want to be in the position of maintaining
a DocBook subset and a new set of stylesheets for that subset.


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]