;; $Id: dbtitle.dsl,v 1.2 2003/01/15 08:24:13 adicarlo Exp $ ;; ;; This file is part of the Modular DocBook Stylesheet distribution. ;; See ../README or http://docbook.sourceforge.net/projects/dsssl/ ;; ;; So we can pass different sosofo's to this routine and get identical ;; treatment (see REFNAME in dbrfntry.dsl) ;; (define ($lowtitlewithsosofo$ tlevel sosofo) (let ((tgi (cond ((equal? tlevel 1) "H1") ((equal? tlevel 2) "H2") ((equal? tlevel 3) "H3") ((equal? tlevel 4) "H4") ((equal? tlevel 5) "H5") (else "P")))) (if (< tlevel 6) (make element gi: tgi sosofo) (make element gi: "P" (make element gi: "B" sosofo))))) (define ($lowtitle$ tlevel) ($lowtitlewithsosofo$ tlevel (process-children))) (define ($runinhead$) (let* ((title (data (current-node))) (titlelen (string-length title)) (lastchar (if (> titlelen 0) (string-ref title (- titlelen 1)) ".")) (punct (if (or (= titlelen 0) (member lastchar %content-title-end-punct%)) "" %default-title-end-punct%))) (make element gi: "B" (process-children) (literal punct " ")))) (element title (make element gi: "P" (make element gi: "B" (process-children-trim)))) (element titleabbrev (empty-sosofo)) (mode title-mode (element title (process-children))) (mode subtitle-mode (element subtitle (make sequence (literal (if (first-sibling?) "" "; ")) (process-children)))) (mode head-title-mode ;; TITLE in an HTML HEAD (default (process-children)) (element graphic (empty-sosofo)) (element inlinegraphic (empty-sosofo)))