7.3. Using ldp.dsl

The LDP uses a customized version of the DocBook DSSSL Style Sheet (as it is described on DocBook: The Definitive Guidey), which adds things like a white background and automatic generation of the table of contents you see at the beginning of HOWTOs. You can find the latest copy of the file at http://www.tldp.org/authors/tools/ldp.dsl.

Once you have the file ldp.dsl, place it in /usr/lib/sgml/stylesheets. You may need to do some changes on the SGML catalog of your system based on the location of your DocBook DSSSL files. My example uses the Cygnus tool set.

For doing this we add the following lines to the file /etc/sgml/catalog, by bringing it up under your favorite text editor:


PUBLIC "-//Norman Walsh//DOCUMENT DocBook HTML Stylesheet//EN"
  /usr/lib/sgml/stylesheets/nwalsh-modular/html/docbook.dsl(1)

PUBLIC "-//Norman Walsh//DOCUMENT DocBook Print Stylesheet//EN"
 /usr/lib/sgml/stylesheets/nwalsh-modular/print/docbook.dsl(2)

PUBLIC "-//Norman Walsh//DOCUMENT DSSSL Library//EN"
  /usr/lib/sgml/stylesheets/nwalsh-modular/lib/dblib.dsl

PUBLIC "-//Norman Walsh//DOCUMENT DSSSL Library V2//EN"
  /usr/lib/sgml/stylesheets/nwalsh-modular/lib/dblib.dsl

If you're using another DSSSL, point those two files to the location of the HTML and print DSSSL files. They're usually in directories called html and print.

With that complete, you can now generate HTML files:


bash$ mkdir HOWTO-HOWTO ; cd HOWTO-HOWTO
bash$  jade -t sgml -i html -d /usr/lib/sgml/stylesheets/ldp.dsl\#html ../HOWTO-HOWTO.sgml

The first command creates a new directory to put your files into. The second command (the jade one) generates individual HTML files for each section of your document. If you are going to something like RTF, you can do this:


bash$ jade -t rtf -d /usr/lib/sgml/stylesheets/ldp.dsl ../HOWTO-HOWTO.sgml

Tip

If you want that the html files that you generate in this way use a CSS stylesheet with name base.css you just need to add the following lines in the file ldp.dsl after the line with content ;; End of $verbatim-display$ redefinition


(define %stylesheet-type%
  ;; The type of the stylesheet to use
  "text/css")

(define %stylesheet%
  ;; Name of the css stylesheet to use, use value #f if you don't want to
  ;; use css stylesheets
  "base.css")