- Drop SGML catalogs

- Drop DSSSL stylesheets
- Drop some DSSSL-related comments and Makefile code
This commit is contained in:
Gabor Kovesdan 2013-05-29 19:21:25 +00:00
parent 54acab8406
commit c94df498ed
Notes: svn2git 2020-12-08 03:00:23 +00:00
svn path=/projects/db5/; revision=41774
44 changed files with 1 additions and 1757 deletions
da_DK.ISO8859-1/share/xml
de_DE.ISO8859-1/share/xml
el_GR.ISO8859-7/share/xml
en_US.ISO8859-1/share/xml
es_ES.ISO8859-1/share/xml
fr_FR.ISO8859-1/share/xml
hu_HU.ISO8859-2/share/xml
it_IT.ISO8859-15/share/xml
ja_JP.eucJP/share/xml
mn_MN.UTF-8/share/xml
nl_NL.ISO8859-1/share/xml
pl_PL.ISO8859-2/share/xml
pt_BR.ISO8859-1/share/xml
ru_RU.KOI8-R/share/xml
share
sr_YU.ISO8859-2/share/xml
zh_CN.GB2312/share/xml
zh_TW.Big5/share/xml

View file

@ -1,2 +0,0 @@
PUBLIC "-//FreeBSD//DOCUMENT DocBook Stylesheet//EN"
"freebsd.dsl"

View file

@ -1,20 +0,0 @@
<!-- $FreeBSD$ -->
<!DOCTYPE style-sheet PUBLIC "-//James Clark//DTD DSSSL Style Sheet//EN" [
<!ENTITY freebsd.dsl PUBLIC "-//FreeBSD//DOCUMENT DocBook Language Neutral Stylesheet//EN" CDATA DSSSL>
]>
<style-sheet>
<style-specification use="docbook">
<style-specification-body>
<!-- Fix a problem with the Danish localisation. -->
(define (local-da-label-title-sep)
(list
(list (normalize "warning") ": ")
))
</style-specification-body>
</style-specification>
<external-specification id="docbook" document="freebsd.dsl">
</style-sheet>

View file

@ -1,2 +0,0 @@
PUBLIC "-//FreeBSD//DOCUMENT DocBook Stylesheet//EN"
"freebsd.dsl"

View file

@ -1,18 +0,0 @@
<!--
$FreeBSD$
$FreeBSDde: de-docproj/share/xml/freebsd.dsl,v 1.16 2010/12/17 13:16:39 jkois Exp $
basiert auf: 1.23
-->
<!DOCTYPE style-sheet PUBLIC "-//James Clark//DTD DSSSL Style Sheet//EN" [
<!ENTITY freebsd.dsl PUBLIC "-//FreeBSD//DOCUMENT DocBook Language Neutral Stylesheet//EN" CDATA DSSSL>
]>
<style-sheet>
<style-specification use="docbook">
<style-specification-body>
</style-specification-body>
</style-specification>
<external-specification id="docbook" document="freebsd.dsl">
</style-sheet>

View file

@ -1,2 +0,0 @@
PUBLIC "-//FreeBSD//DOCUMENT DocBook Stylesheet//EN"
"freebsd.dsl"

View file

@ -1,35 +0,0 @@
<!--
DSSSL style-sheet ãéá ìïñöïðïßçóç ôçò ÅëëçíéêÞò ôåêìçñßùóçò ôïõ FreeBSD
$FreeBSD$
%SOURCE% en_US.ISO8859-1/share/xml/freebsd.dsl
%SRCID% 1.23
-->
<!DOCTYPE style-sheet PUBLIC "-//James Clark//DTD DSSSL Style Sheet//EN" [
<!ENTITY freebsd.dsl PUBLIC "-//FreeBSD//DOCUMENT DocBook Language Neutral Stylesheet//EN" CDATA DSSSL>
]>
<style-sheet>
<style-specification use="docbook">
<style-specification-body>
(define (local-el-label-title-sep)
(list
(list (normalize "warning") ": ")
(list (normalize "caution") ": ")
(list (normalize "chapter") " ")
(list (normalize "sect1") " ")
(list (normalize "sect2") " ")
(list (normalize "sect3") " ")
(list (normalize "sect4") " ")
(list (normalize "sect5") " ")
))
</style-specification-body>
</style-specification>
<external-specification id="docbook" document="freebsd.dsl">
</style-sheet>

View file

@ -1,2 +0,0 @@
PUBLIC "-//FreeBSD//DOCUMENT DocBook Stylesheet//EN"
"freebsd.dsl"

View file

@ -1,14 +0,0 @@
<!-- $FreeBSD$ -->
<!DOCTYPE style-sheet PUBLIC "-//James Clark//DTD DSSSL Style Sheet//EN" [
<!ENTITY freebsd.dsl PUBLIC "-//FreeBSD//DOCUMENT DocBook Language Neutral Stylesheet//EN" CDATA DSSSL>
]>
<style-sheet>
<style-specification use="docbook">
<style-specification-body>
</style-specification-body>
</style-specification>
<external-specification id="docbook" document="freebsd.dsl">
</style-sheet>

View file

@ -1,2 +0,0 @@
PUBLIC "-//FreeBSD//DOCUMENT DocBook Stylesheet//EN"
"freebsd.dsl"

View file

@ -1,14 +0,0 @@
<!-- $FreeBSD$ -->
<!DOCTYPE style-sheet PUBLIC "-//James Clark//DTD DSSSL Style Sheet//EN" [
<!ENTITY freebsd.dsl PUBLIC "-//FreeBSD//DOCUMENT DocBook Language Neutral Stylesheet//EN" CDATA DSSSL>
]>
<style-sheet>
<style-specification use="docbook">
<style-specification-body>
</style-specification-body>
</style-specification>
<external-specification id="docbook" document="freebsd.dsl">
</style-sheet>

View file

@ -1,2 +0,0 @@
PUBLIC "-//FreeBSD//DOCUMENT DocBook Stylesheet//EN"
"freebsd.dsl"

View file

@ -1,30 +0,0 @@
<!--
The FreeBSD Documentation Project
The FreeBSD French Documentation Project
$Id: freebsd.dsl,v 1.13 2010-12-08 06:25:59 hrs Exp $
$FreeBSD$
Original revision: 1.17
-->
<!DOCTYPE style-sheet PUBLIC "-//James Clark//DTD DSSSL Style Sheet//EN" [
<!ENTITY freebsd.dsl PUBLIC "-//FreeBSD//DOCUMENT DocBook Language Neutral Stylesheet//EN" CDATA DSSSL>
]>
<style-sheet>
<style-specification use="docbook">
<style-specification-body>
<!-- Fix a problem with the French localisation. The bug was
submitted to authors of docbook project -->
(define (local-fr-label-title-sep)
(list
(list (normalize "warning") "\U-00A0;: ")
))
</style-specification-body>
</style-specification>
<external-specification id="docbook" document="freebsd.dsl">
</style-sheet>

View file

@ -1,2 +0,0 @@
PUBLIC "-//FreeBSD//DOCUMENT DocBook Stylesheet//EN"
"freebsd.dsl"

View file

@ -1,20 +0,0 @@
<!--
$FreeBSD$
The FreeBSD Hungarian Documentation Project
Translated by: Gabor Kovesdan <gabor@FreeBSD.org>
%SOURCE% en_US.ISO8859-1/share/xml/freebsd.dsl
%SRCID% 1.22
-->
<!DOCTYPE style-sheet PUBLIC "-//James Clark//DTD DSSSL Style Sheet//EN" [
<!ENTITY freebsd.dsl PUBLIC "-//FreeBSD//DOCUMENT DocBook Language Neutral Stylesheet//EN" CDATA DSSSL>
]>
<style-sheet>
<style-specification use="docbook">
<style-specification-body>
</style-specification-body>
</style-specification>
<external-specification id="docbook" document="freebsd.dsl">
</style-sheet>

View file

@ -1,2 +0,0 @@
PUBLIC "-//FreeBSD//DOCUMENT DocBook Stylesheet//EN"
"freebsd.dsl"

View file

@ -1,31 +0,0 @@
<!--
The FreeBSD Italian Documentation Project
$FreeBSD$
Original revision: 1.20
-->
<!DOCTYPE style-sheet PUBLIC "-//James Clark//DTD DSSSL Style Sheet//EN" [
<!ENTITY freebsd.dsl PUBLIC "-//FreeBSD//DOCUMENT DocBook Language Neutral Stylesheet//EN" CDATA DSSSL>
]>
<style-sheet>
<style-specification use="docbook">
<style-specification-body>
(define (local-it-label-title-sep)
(list
(list (normalize "warning") ": ")
(list (normalize "caution") ": ")
(list (normalize "chapter") " ")
(list (normalize "sect1") " ")
(list (normalize "sect2") " ")
(list (normalize "sect3") " ")
(list (normalize "sect4") " ")
(list (normalize "sect5") " ")
))
</style-specification-body>
</style-specification>
<external-specification id="docbook" document="freebsd.dsl">
</style-sheet>

View file

@ -1,2 +0,0 @@
PUBLIC "-//FreeBSD//DOCUMENT DocBook Stylesheet//EN"
"freebsd.dsl"

View file

@ -1,14 +0,0 @@
<!-- $FreeBSD$ -->
<!DOCTYPE style-sheet PUBLIC "-//James Clark//DTD DSSSL Style Sheet//EN" [
<!ENTITY freebsd.dsl PUBLIC "-//FreeBSD//DOCUMENT DocBook Language Neutral Stylesheet//EN" CDATA DSSSL>
]>
<style-sheet>
<style-specification use="docbook">
<style-specification-body>
</style-specification-body>
</style-specification>
<external-specification id="docbook" document="freebsd.dsl">
</style-sheet>

View file

@ -1,2 +0,0 @@
PUBLIC "-//FreeBSD//DOCUMENT DocBook Stylesheet//EN"
"freebsd.dsl"

View file

@ -1,27 +0,0 @@
<!--
The FreeBSD Mongolian Documentation Project
Original revision 1.22
$FreeBSD$
-->
<!DOCTYPE style-sheet PUBLIC "-//James Clark//DTD DSSSL Style Sheet//EN" [
<!ENTITY freebsd.dsl PUBLIC "-//FreeBSD//DOCUMENT DocBook Language Neutral Stylesheet//EN" CDATA DSSSL>
]>
<style-sheet>
<style-specification use="docbook">
<style-specification-body>
(define (local-mn-label-title-sep)
(list
(list (normalize "warning") ": ")
(list (normalize "caution") ": ")
))
</style-specification-body>
</style-specification>
<external-specification id="docbook" document="freebsd.dsl">
</style-sheet>

View file

@ -1,2 +0,0 @@
PUBLIC "-//FreeBSD//DOCUMENT DocBook Stylesheet//EN"
"freebsd.dsl"

View file

@ -1,20 +0,0 @@
<!--
The FreeBSD Documentation Project
$FreeBSD$
%SOURCE% en_US.ISO8859-1/share/xml/freebsd.dsl
%SRCID% 41645
-->
<!DOCTYPE style-sheet PUBLIC "-//James Clark//DTD DSSSL Style Sheet//EN" [
<!ENTITY freebsd.dsl PUBLIC "-//FreeBSD//DOCUMENT DocBook Language Neutral Stylesheet//EN" CDATA DSSSL>
]>
<style-sheet>
<style-specification use="docbook">
<style-specification-body>
</style-specification-body>
</style-specification>
<external-specification id="docbook" document="freebsd.dsl">
</style-sheet>

View file

@ -1,2 +0,0 @@
PUBLIC "-//FreeBSD//DOCUMENT DocBook Stylesheet//EN"
"freebsd.dsl"

View file

@ -1,20 +0,0 @@
<!--
The FreeBSD Polish Documentation Project
$FreeBSD$
Original revision: 1.22
-->
<!-- $FreeBSD$ -->
<!DOCTYPE style-sheet PUBLIC "-//James Clark//DTD DSSSL Style Sheet//EN" [
<!ENTITY freebsd.dsl PUBLIC "-//FreeBSD//DOCUMENT DocBook Language Neutral Stylesheet//EN" CDATA DSSSL>
]>
<style-sheet>
<style-specification use="docbook">
<style-specification-body>
</style-specification-body>
</style-specification>
<external-specification id="docbook" document="freebsd.dsl">
</style-sheet>

View file

@ -1,2 +0,0 @@
PUBLIC "-//FreeBSD//DOCUMENT DocBook Stylesheet//EN"
"freebsd.dsl"

View file

@ -1,74 +0,0 @@
<!--
The FreeBSD Documentation Project
The FreeBSD Brazilian Portuguese Documentation Project
Original revision: r38826
$FreeBSD$
-->
<!DOCTYPE style-sheet PUBLIC "-//James Clark//DTD DSSSL Style Sheet//EN" [
<!ENTITY freebsd.dsl PUBLIC "-//FreeBSD//DOCUMENT DocBook Language Neutral Stylesheet//EN" CDATA DSSSL>
<!ENTITY % output.html "IGNORE">
<!ENTITY % output.print "IGNORE">
<!ENTITY % lang.ptbr.dsssl "IGNORE">
]>
<style-sheet>
<style-specification use="docbook">
<style-specification-body>
<!-- Brazilian Portuguese Localization-->
(define %default-language% "pt_br")
<![ %lang.ptbr.dsssl; [
(define %gentext-language% "pt_br")
]]>
<![ %output.html; [
(define ($email-footer$)
(make sequence
(make element gi: "p"
attributes: (list (list "align" "center"))
(make element gi: "small"
(literal "Este, e outros documentos, podem ser obtidos em ")
(create-link
(list (list "HREF" "ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/"))
(literal "ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/"))
(literal ".")))
(make element gi: "p"
attributes: (list (list "align" "center"))
(make element gi: "small"
(literal "Para perguntas sobre FreeBSD, leia a ")
(create-link
(list (list "HREF" "http://www.FreeBSD.org/docs.html"))
(literal "documenta\U-00E7;\U-00E3;o"))
(literal " antes de contatar <")
(create-link
(list (list "HREF" "mailto:questions@FreeBSD.org"))
(literal "questions@FreeBSD.org"))
(literal ">.")
(make empty-element gi: "br")
(literal "Para perguntas sobre esta documenta\U-00E7;\U-00E3;o, envie e-mail para <")
(create-link (list (list "HREF" "mailto:doc@FreeBSD.org"))
(literal "doc@FreeBSD.org"))
(literal ">.")))))
(define (local-ptbr-label-title-sep)
(list
(list (normalize "warning") ": ")
(list (normalize "caution") ": ")
(list (normalize "chapter") " ")
(list (normalize "sect1") " ")
(list (normalize "sect2") " ")
(list (normalize "sect3") " ")
(list (normalize "sect4") " ")
(list (normalize "sect5") " ")
))
]]>
</style-specification-body>
</style-specification>
<external-specification id="docbook" document="freebsd.dsl">
</style-sheet>

View file

@ -1,2 +0,0 @@
PUBLIC "-//FreeBSD//DOCUMENT DocBook Stylesheet//EN"
"freebsd.dsl"

View file

@ -1,82 +0,0 @@
<!--
The FreeBSD Russian Documentation Project
$FreeBSD$
$FreeBSDru: frdp/doc/ru_RU.KOI8-R/share/xml/freebsd.dsl,v 1.18 2006/08/08 07:49:39 marck Exp $
Original revision: r26925
-->
<!DOCTYPE style-sheet PUBLIC "-//James Clark//DTD DSSSL Style Sheet//EN" [
<!ENTITY freebsd.dsl PUBLIC "-//FreeBSD//DOCUMENT DocBook Language Neutral Stylesheet//EN" CDATA DSSSL>
]>
<style-sheet>
<style-specification use="docbook">
<style-specification-body>
<!-- Convert " ... " to '' ... '' in the HTML output. -->
(element quote
(make sequence
(literal "''")
(process-children)
(literal "''")))
<!-- Fix a problem with the Russian localization (dbl1ru.dsl). -->
(define (local-ru-label-title-sep)
(list
(list (normalize "warning") ": ")
(list (normalize "caution") ": ")
))
;; Fix punctuation for authors list in russian localization (original
;; version is in share/xml/docbook/dsssl/modular/common/dbcommon.dsl).
(define (author-list-string #!optional (author (current-node)))
(let* ((author-node-list (select-elements
(descendants
(ancestor (normalize "authorgroup") author))
(normalize "author")))
(corpauthor-node-list (select-elements
(descendants
(ancestor (normalize "authorgroup") author))
(normalize "corpauthor")))
(othercredit-node-list (select-elements
(descendants
(ancestor (normalize "authorgroup") author))
(normalize "othercredit")))
(editor-node-list (select-elements
(descendants
(ancestor (normalize "authorgroup")))
(normalize "editor")))
(author-count (if (have-ancestor? (normalize "authorgroup") author)
(+ (node-list-length author-node-list)
(node-list-length corpauthor-node-list)
(node-list-length othercredit-node-list)
(node-list-length editor-node-list))
1))
(this-count (if (have-ancestor? (normalize "authorgroup") author)
(+ (node-list-length (preced author)) 1)
1)))
(string-append
(author-string author)
(if (> author-count 1)
(if (> (- author-count this-count) 1)
(gentext-listcomma)
(if (= (- author-count this-count) 1)
(gentext-lastlistcomma)
""))
"")
(if (and (> author-count 1)
(not (last-sibling? author)))
" "
""))))
</style-specification-body>
</style-specification>
<external-specification id="docbook" document="freebsd.dsl">
</style-sheet>

View file

@ -2,9 +2,6 @@
# $FreeBSD$
# For more than 30 adjust %callout-graphics-number-limit%
# in doc/share/xml/freebsd-html.dsl
for i in `jot 9 1`
do
convert -size 101x101 xc:green -transparent green -fill black -draw 'circle 50,50 50' -fill white -stroke none -pointsize 90 -gravity center -kerning -5 -font Helvetica-bold -draw "text 0,5 \"$i\"" -scale '12x12' $i.png

View file

@ -51,12 +51,6 @@
# CSS_SHEET Full path to a CSS stylesheet suitable for DocBook.
# Default is ${DOC_PREFIX}/share/misc/docbook.css
#
#
# SPELLCHECK Use the special spellcheck.dsl stylesheet to render
# HTML that is suitable for processing through a
# spellchecker. For example, PGP keys and filenames
# will be omitted from this output.
#
# Package building options:
#
# BZIP2_PACKAGE Use bzip2(1) utility to compress package tarball
@ -76,9 +70,6 @@ RENDERENGINE?= jade
XMLDECL?= /usr/local/share/sgml/docbook/dsssl/modular/dtds/decls/xml.dcl
DSLHTML?= ${DOC_PREFIX}/share/xml/spellcheck.dsl
DSLPRINT?= ${DOC_PREFIX}/share/xml/default.dsl
XSLPROF?= /usr/local/share/xsl/docbook/profiling/profile.xsl
XSLXHTML?= ${DOC_PREFIX}/${LANGCODE}/share/xsl/freebsd-xhtml.xsl
XSLXHTMLCHUNK?= ${DOC_PREFIX}/${LANGCODE}/share/xsl/freebsd-xhtml-chunk.xsl
@ -116,8 +107,6 @@ KNOWN_FORMATS= html html.tar html-split html-split.tar \
CSS_SHEET?= ${DOC_PREFIX}/share/misc/docbook.css
PRINTOPTS?= -ioutput.print -d ${DSLPRINT} ${PRINTFLAGS}
.if defined(WWWFREEBSDORG)
HTMLFLAGS+= -V %html-header-script%
.endif

View file

@ -211,8 +211,7 @@ IMAGES_LIB_DIR?= ${.CURDIR}/../../../share/images
# The name of the directory *in* the document directory where files and
# directory hierarchies should be copied to. "images" is too generic, and
# might clash with local document images, so use "imagelib" by default
# instead. If you redefine this then you must also update the
# %callout-graphics-path% variable in the .dsl file.
# instead.
#
LOCAL_IMAGES_LIB_DIR?= imagelib
CLEANDIRS+= ${LOCAL_IMAGES_LIB_DIR}

View file

@ -1,26 +0,0 @@
-- ...................................................................... --
-- FreeBSD SGML Public Identifiers ...................................... --
-- $FreeBSD$
--
PUBLIC "-//FreeBSD//DTD DocBook XML V4.5-Based Extension//EN"
"freebsd45.dtd"
PUBLIC "-//FreeBSD//DOCUMENT DocBook Stylesheet//EN"
"freebsd.dsl"
PUBLIC "-//FreeBSD//DOCUMENT DocBook Language Neutral Stylesheet//EN"
"freebsd.dsl"
PUBLIC "-//FreeBSD//DOCUMENT DocBook Print Stylesheet//EN"
"freebsd-print.dsl"
PUBLIC "-//FreeBSD//DOCUMENT DocBook Print Lanugage Neutral Stylesheet//EN"
"freebsd-print.dsl"
PUBLIC "-//FreeBSD//DOCUMENT DocBook Common Stylesheet//EN"
"freebsd-common.dsl"
PUBLIC "-//FreeBSD//DOCUMENT DocBook Common Lanugage Neutral Stylesheet//EN"
"freebsd-common.dsl"

View file

@ -1,16 +0,0 @@
<?xml version="1.0"?>
<!DOCTYPE catalog PUBLIC "-//OASIS//DTD Entity Resolution XML Catalog V1.0//EN"
"http://www.oasis-open.org/committees/entity/release/1.0/catalog.dtd">
<!-- $FreeBSD$ -->
<catalog xmlns="urn:oasis:names:tc:entity:xmlns:xml:catalog">
<rewriteSystem systemIdStartString="http://www.FreeBSD.org/XML/cwd/"
rewritePrefix="./"/>
<rewriteURI uriStartString="http://www.FreeBSD.org/XML/cwd/"
rewritePrefix="./"/>
<public
publicId="-//FreeBSD//ENTITIES FreeBSD Automatically Generated Entities//EN"
uri="autogen.ent" />
</catalog>

View file

@ -1,14 +0,0 @@
<!-- $FreeBSD$ -->
<!DOCTYPE style-sheet PUBLIC "-//James Clark//DTD DSSSL Style Sheet//EN" [
<!ENTITY freebsd.dsl PUBLIC "-//FreeBSD//DOCUMENT DocBook Stylesheet//EN" CDATA DSSSL>
]>
<style-sheet>
<style-specification use="freebsd">
<style-specification-body>
</style-specification-body>
</style-specification>
<external-specification id="freebsd" document="freebsd.dsl">
</style-sheet>

View file

@ -1,336 +0,0 @@
<!-- $FreeBSD$ -->
<!DOCTYPE style-sheet PUBLIC "-//James Clark//DTD DSSSL Style Sheet//EN">
<style-sheet>
<style-specification>
<style-specification-body>
(declare-flow-object-class formatting-instruction
"UNREGISTERED::James Clark//Flow Object Class::formatting-instruction")
(define %section-autolabel%
#t)
(define %label-preface-sections%
#f)
(define %may-format-variablelist-as-table%
#f)
(define %indent-programlisting-lines%
#f)
(define %indent-screen-lines%
#f)
(define (article-titlepage-recto-elements)
(list (normalize "title")
(normalize "subtitle")
(normalize "corpauthor")
(normalize "authorgroup")
(normalize "author")
(normalize "releaseinfo")
(normalize "copyright")
(normalize "pubdate")
(normalize "revhistory")
(normalize "legalnotice")
(normalize "abstract")))
(define %admon-graphics%
;; Use graphics in admonitions?
#f)
(define %admon-graphics-path%
;; Path to admonition images
"./imagelib/admon/")
(define ($admon-graphic$ #!optional (nd (current-node)))
;; Admonition graphic file
(string-append %admon-graphics-path% (case-fold-down (gi nd)) ".png"))
(define %show-all-trademark-symbols%
;; Show all the trademark symbols, not just the required
;; symbols.
#f)
<!-- Slightly deeper customisations -->
<!-- We would like the author attributions to show up in line
with the section they refer to. Authors who made the same
contribution should be listed in a single <authorgroup> and
only one of the <author> elements should contain a <contrib>
element that describes what the whole authorgroup was
responsible for. For example:
<chapterinfo>
<authorgroup>
<author>
<firstname>Bob</firstname>
<surname>Jones</surname>
<contrib>Contributed by </contrib>
</author>
<author>
<firstname>Sarah</firstname>
<surname>Lee</surname>
</author>
</authorgroup>
</chapterinfo>
Would show up as "Contributed by Bob Jones and Sarah Lee". Each
authorgroup shows up as a separate sentence. -->
(element chapterinfo
(process-children))
(element sect1info
(process-children))
(element sect2info
(process-children))
(element sect3info
(process-children))
(element sect4info
(process-children))
(element sect5info
(process-children))
(element (chapterinfo authorgroup author)
(literal (author-list-string)))
(element (sect1info authorgroup author)
(literal (author-list-string)))
(element (sect2info authorgroup author)
(literal (author-list-string)))
(element (sect3info authorgroup author)
(literal (author-list-string)))
(element (sect4info authorgroup author)
(literal (author-list-string)))
(element (sect5info authorgroup author)
(literal (author-list-string)))
(define (custom-authorgroup)
($italic-seq$
(make sequence
(process-node-list (select-elements (descendants (current-node))
(normalize "contrib")))
(process-children)
(literal ". "))))
(element (chapterinfo authorgroup)
(custom-authorgroup))
(element (sect1info authorgroup)
(custom-authorgroup))
(element (sect2info authorgroup)
(custom-authorgroup))
(element (sect3info authorgroup)
(custom-authorgroup))
(element (sect4info authorgroup)
(custom-authorgroup))
(element (sect5info authorgroup)
(custom-authorgroup))
<!-- I want things marked up with 'sgmltag' eg.,
<para>You can use <sgmltag>para</sgmltag> to indicate
paragraphs.</para>
to automatically have the opening and closing braces inserted,
and it should be in a mono-spaced font. -->
(element sgmltag ($mono-seq$
(make sequence
(literal "<")
(process-children)
(literal ">"))))
<!-- Add double quotes around <errorname> text. -->
(element errorname
(make sequence
($mono-seq$ (process-children))
))
<!-- John Fieber's 'instant' translation specification had
'<command>' rendered in a mono-space font, and '<application>'
rendered in bold.
Norm's stylesheet doesn't do this (although '<command>' is
rendered in bold).
Configure the stylesheet to behave more like John's. -->
(element command ($mono-seq$))
(element envar ($mono-seq$))
<!-- Warnings and cautions are put in boxed tables to make them stand
out. The same effect can be better achieved using CSS or similar,
so have them treated the same as <important>, <note>, and <tip>
-->
(element warning ($admonition$))
(element (warning title) (empty-sosofo))
(element (warning para) ($admonpara$))
(element (warning simpara) ($admonpara$))
(element caution ($admonition$))
(element (caution title) (empty-sosofo))
(element (caution para) ($admonpara$))
(element (caution simpara) ($admonpara$))
<!-- Tell the stylesheet about our local customisations -->
(element hostid
(if %hyphenation%
(urlwrap)
($mono-seq$)))
(element username ($mono-seq$))
(element groupname ($mono-seq$))
(element devicename ($mono-seq$))
(element maketarget ($mono-seq$))
(element makevar ($mono-seq$))
<!-- Override generate-anchor. This is used to generate a unique ID for
each element that can be linked to. The element-id function calls
this one if there's no ID attribute that it can use. Normally, we
would just use the current element number. However, if it's a
a question then use the question's number, as determined by the
question-answer-label function.
This generates anchors of the form "Qx.y.", where x.y is the
question label. This will probably break if question-answer-label
is changed to generate something that might be the same for two
different questions (for example, if question numbering restarts
for each qandaset. -->
(define (generate-anchor #!optional (nd (current-node)))
(cond
((equal? (gi nd) (normalize "question"))
(string-append "Q" (question-answer-label)))
(else
(string-append "AEN" (number->string (all-element-number nd))))))
(define (xref-biblioentry target)
(let* ((abbrev (node-list-first
(node-list-filter-out-pis (children target))))
(label (attribute-string (normalize "xreflabel") target)))
(if biblio-xref-title
(let* ((citetitles (select-elements (descendants target)
(normalize "citetitle")))
(titles (select-elements (descendants target)
(normalize "title")))
(isbn (select-elements (descendants target)
(normalize "isbn")))
(publisher (select-elements (descendants target)
(normalize "publishername")))
(title (if (node-list-empty? citetitles)
(node-list-first titles)
(node-list-first citetitles))))
(with-mode xref-title-mode
(make sequence
(process-node-list title))))
(if biblio-number
(make sequence
(literal "[" (number->string (bibentry-number target)) "]"))
(if label
(make sequence
(literal "[" label "]"))
(if (equal? (gi abbrev) (normalize "abbrev"))
(make sequence
(process-node-list abbrev))
(make sequence
(literal "[" (id target) "]"))))))))
<!-- The (create-link) procedure should be used by all FreeBSD
stylesheets to create links. It calls (can-link-here) to
determine whether it's okay to make a link in the current
position.
This check is necessary because links aren't allowed in,
for example, <question> tags since the latter cause links
to be created by themselves. Obviously, nested links lead
to all kinds of evil. This normally wouldn't be a problem
since no one in their right mind will put a <ulink> or
<link> in a <question>, but it comes up when someone uses,
say, a man page entity (e.g., &man.ls.1;); the latter may
cause a link to be created, but its use inside a <question>
is perfectly legal.
The (can-link-here) routine isn't perfect; in fact, it's a
hack and an ugly one at that. Ideally, it would detect if
the currect output would wind up in an <a> tag and return
#f if that's the case. Slightly less ideally it would
check the current mode and return #f if, say, we're
currently in TOC mode. Right now, it makes a best guess
attempt at guessing which tags might cause links to be
generated. -->
(define (can-link-here)
(cond ((has-ancestor-member? (current-node)
'("TITLE" "QUESTION")) #f)
(#t #t)))
(define (create-link attrlist target)
(if (can-link-here)
(make element gi: "A"
attributes: attrlist
target)
target))
;; Standard boolean XNOR (NOT Exclusive OR).
(define (xnor x y)
(or (and x y)
(and (not x) (not y))))
;; Standard boolean XOR (Exclusive OR).
(define (xor x y)
(not (xnor x y)))
;; Determine if a given node is in a title.
(define (is-in-title? node)
(has-ancestor-member? node (list (normalize "title"))))
;; Number of references to a trademark before the current
;; reference in each chunk. Trademarks in title tags, and
;; trademarks in normal text (actually just text that is not in
;; title tags) are counted separately.
(define ($chunk-trademark-number$ trademark)
(let* ((trademarks (select-elements
(descendants (chunk-parent trademark))
(normalize "trademark"))))
(let loop ((nl trademarks) (num 1))
(if (node-list-empty? nl)
num
(if (node-list=? (node-list-first nl) trademark)
num
(if (and (string=? (data trademark)
(data (node-list-first nl)))
(xnor (is-in-title? trademark)
(is-in-title? (node-list-first nl))))
(loop (node-list-rest nl) (+ num 1))
(loop (node-list-rest nl) num)))))))
;; Determine if we should show a trademark symbol. Either in
;; first occurrence in the proper context, if the role
;; attribute is set to force, or if %show-all-trademark-symbols%
;; is set to true.
(define (show-tm-symbol? trademark)
(or %show-all-trademark-symbols%
(= ($chunk-trademark-number$ trademark) 1)
(equal? (attribute-string (normalize "role") trademark) "force")))
(element (acronym remark)
(let* ((role (attribute-string (normalize "role"))))
(if (not (equal? role "acronym"))
($charseq$)
(empty-sosofo))))
(define (local-en-label-title-sep)
(list
(list (normalize "warning") ": ")
(list (normalize "caution") ": ")
(list (normalize "chapter") " ")
(list (normalize "sect1") " ")
(list (normalize "sect2") " ")
(list (normalize "sect3") " ")
(list (normalize "sect4") " ")
(list (normalize "sect5") " ")
))
</style-specification-body>
</style-specification>
</style-sheet>

View file

@ -1,389 +0,0 @@
<!-- $FreeBSD$ -->
<!DOCTYPE style-sheet PUBLIC "-//James Clark//DTD DSSSL Style Sheet//EN" [
<!ENTITY % output.rtf.images "IGNORE">
<!ENTITY % output.print "IGNORE">
]>
<style-sheet>
<style-specification>
<style-specification-body>
(declare-flow-object-class formatting-instruction
"UNREGISTERED::James Clark//Flow Object Class::formatting-instruction")
<!-- RTF with images ............................................ -->
<![ %output.rtf.images [
(define %graphic-default-extension%
"png")
(define %callout-graphics%
;; Use graphics in callouts?
#f)
]]>
<!-- Print only ................................................... -->
<![ %output.print; [
(define withpgpkeys
#f)
;; If a link is entered as "file://localhost/usr/ports" in the docs
;; then we only want to display "/usr/ports" in printed form.
(define (fix-url url)
(if (and (> (string-length url) 15)
(string=? (substring url 0 16) "file://localhost"))
(substring url 16 (string-length url))
url))
(element (primaryie ulink)
(indexentry-link (current-node)))
(element (secondaryie ulink)
(indexentry-link (current-node)))
(element (tertiaryie ulink)
(indexentry-link (current-node)))
;; Override the count-footnote? definition from dbblock.dsl
;; to fix a bug. Basically, the original procedure would count
;; all ulink elements when doing %footnote-ulinks%. It's
;; actually harder than that, because ulink elements with no
;; content shouldn't generate footnotes (the ulink element
;; definition just inserts the url attribute in-line, thus there
;; is no need for a footnote with the url). So, when we figure
;; out which footnotes to count for the purpose of determining
;; footnote numbers, we only count the ulink elements containing
;; content.
(define (count-footnote? footnote)
;; don't count footnotes in comments (unless you're showing comments)
;; or footnotes in tables which are handled locally in the table
(if (or (and (has-ancestor-member? footnote (list (normalize "comment")))
(not %show-comments%))
(has-ancestor-member? footnote (list (normalize "tgroup")))
(and (has-ancestor-member? footnote (list (normalize "ulink")))
(node-list-empty? (children footnote))))
#f
#t))
(element ulink
(make sequence
(if (node-list-empty? (children (current-node)))
(literal (fix-url (attribute-string (normalize "url"))))
(make sequence
($charseq$)
(if %footnote-ulinks%
(if (and (equal? (print-backend) 'tex) bop-footnotes)
(make sequence
($ss-seq$ + (literal (footnote-number (current-node))))
(make page-footnote
(make paragraph
font-size: (* %footnote-size-factor% %bf-size%)
font-posture: 'upright
quadding: %default-quadding%
line-spacing: (* (* %footnote-size-factor% %bf-size%)
%line-spacing-factor%)
space-before: %para-sep%
space-after: %para-sep%
start-indent: %footnote-field-width%
first-line-start-indent: (- %footnote-field-width%)
(make line-field
field-width: %footnote-field-width%
(literal (footnote-number (current-node))
(gentext-label-title-sep (normalize "footnote"))))
(literal (fix-url (attribute-string (normalize "url")))))))
($ss-seq$ + (literal (footnote-number (current-node)))))
(if (and %show-ulinks%
(not (equal? (fix-url (attribute-string (normalize "url")))
(data-of (current-node)))))
(make sequence
(literal " (")
(if %hyphenation%
(make formatting-instruction data:
(string-append "\\url{"
(fix-url (attribute-string
(normalize "url")))
"}"))
(literal (fix-url (attribute-string (normalize "url")))))
(literal ")"))
(empty-sosofo)))))))
(define (toc-depth nd)
(if (string=? (gi nd) (normalize "book"))
3
1))
(element programlisting
(if (and (equal? (attribute-string (normalize "role")) "pgpkey")
(not withpgpkeys))
(empty-sosofo)
(next-match)))
(element legalnotice
(if (equal? (attribute-string (normalize "role")) "trademarks")
(make sequence
(process-children))
(next-match)))
(define %body-start-indent%
0pi)
(define (book-titlepage-verso-elements)
(list (normalize "title")
(normalize "subtitle")
(normalize "corpauthor")
(normalize "authorgroup")
(normalize "author")
(normalize "editor")
(normalize "edition")
(normalize "pubdate")
(normalize "copyright")
(normalize "abstract")
(normalize "legalnotice")
(normalize "revhistory")
(normalize "isbn")))
;; Norm's stylesheets are smart about working out what sort of
;; object to display. But this bites us. Since we know that the
;; first item is going to be displayable, always use that.
(define (find-displayable-object objlist notlist extlist)
(let loop ((nl objlist))
(if (node-list-empty? nl)
(empty-node-list)
(let* ((objdata (node-list-filter-by-gi
(children (node-list-first nl))
(list (normalize "videodata")
(normalize "audiodata")
(normalize "imagedata"))))
(filename (data-filename objdata))
(extension (file-extension filename))
(notation (attribute-string (normalize "format") objdata)))
(node-list-first nl)))))
;; Printed formats always use .eps images.
(define %graphic-default-extension%
"eps")
;; Including bitmaps in the PS and PDF output tends to scale them
;; horribly. The solution is to scale them down by 50%.
;;
;; You could do this with 'imagedata scale="50"' in the source,
;; but that will affect all the output formats that we use (because
;; there is only one 'imagedata' per image).
;;
;; Solution is to have the authors include the "FORMAT" attribute,
;; set to PNG or EPS as appropriate, but to omit the extension.
;; If we're using the tex-backend, and the FORMAT is PNG, and the
;; author hasn't already set a scale, then set scale to 0.5.
;; Otherwise, use the supplied scale, or 1, as appropriate.
(define ($graphic$ fileref
#!optional (display #f) (format #f)
(scale #f) (align #f))
(let* ((graphic-format (if format format ""))
(graphic-scale (if scale
(/ (string->number scale) 100)
(if (and tex-backend
(equal? graphic-format "PNG"))
0.5 1)))
(graphic-align (cond ((equal? align (normalize "center"))
'center)
((equal? align (normalize "right"))
'end)
(else
'start))))
(make external-graphic
entity-system-id: (graphic-file fileref)
notation-system-id: graphic-format
scale: graphic-scale
display?: display
display-alignment: graphic-align)))
;; Display TeX and LaTeX properly by sending direct formatting
;; commands to the TeX backend.
(element application
(if (equal? "TeX" (data (current-node)))
(make formatting-instruction data:
"\\TeX{}")
(if (equal? "LaTeX" (data (current-node)))
(make formatting-instruction data:
"\\LaTeX{}")
($bold-seq$))))
;; The special FreeBSD version of the trademark tag handling.
;; This function was more or less taken from the DocBook DSSSL
;; stylesheets by Norman Walsh.
(element trademark
(if (show-tm-symbol? (current-node))
(make sequence
($charseq$)
(cond
((equal? (attribute-string "class") (normalize "copyright"))
(literal "\copyright-sign;"))
((equal? (attribute-string "class") (normalize "registered"))
(literal "\registered-sign;"))
((equal? (attribute-string "class") (normalize "service"))
($ss-seq$ + (literal "SM")))
(else
(literal "\trade-mark-sign;"))))
($charseq$)))
;; Make the trademark functions think print output has chunks.
(define (chunk-parent nd)
(sgml-root-element nd))
(define minimal-section-labels #f)
(define max-section-level-labels
(if minimal-section-labels 3 10))
(define ($section-title$)
(let* ((sect (current-node))
(info (info-element))
(exp-children (if (node-list-empty? info)
(empty-node-list)
(expand-children (children info)
(list (normalize "bookbiblio")
(normalize "bibliomisc")
(normalize "biblioset")))))
(parent-titles (select-elements (children sect) (normalize "title")))
(info-titles (select-elements exp-children (normalize "title")))
(titles (if (node-list-empty? parent-titles)
info-titles
parent-titles))
(subtitles (select-elements exp-children (normalize "subtitle")))
(renderas (inherited-attribute-string (normalize "renderas") sect))
(hlevel ;; the apparent section level;
(if renderas ;; if not real section level,
(string->number ;; then get the apparent level
(substring renderas 4 5)) ;; from "renderas",
(SECTLEVEL))) ;; else use the real level
(hs (HSIZE (- 4 hlevel))))
(make sequence
(make paragraph
font-family-name: %title-font-family%
font-weight: (if (< hlevel 5) 'bold 'medium)
font-posture: (if (< hlevel 5) 'upright 'italic)
font-size: hs
line-spacing: (* hs %line-spacing-factor%)
space-before: (* hs %head-before-factor%)
space-after: (if (node-list-empty? subtitles)
(* hs %head-after-factor%)
0pt)
start-indent: (if (or (>= hlevel 3)
(member (gi) (list (normalize "refsynopsisdiv")
(normalize "refsect1")
(normalize "refsect2")
(normalize "refsect3"))))
%body-start-indent%
0pt)
first-line-start-indent: 0pt
quadding: %section-title-quadding%
keep-with-next?: #t
heading-level: (if %generate-heading-level% (+ hlevel 1) 0)
;; SimpleSects are never AUTO numbered...they aren't hierarchical
(if (> hlevel (- max-section-level-labels 1))
(empty-sosofo)
(if (string=? (element-label (current-node)) "")
(empty-sosofo)
(literal (element-label (current-node))
(gentext-label-title-sep (gi sect)))))
(element-title-sosofo (current-node)))
(with-mode section-title-mode
(process-node-list subtitles))
($section-info$ info))))
;; Expand a literal tab character to spaces in elements like
;; programlisting.
(define %default-tab-spacing% 8)
(define ($verbatim-display$ indent line-numbers?)
(let* ((width-in-chars (if (attribute-string (normalize "width"))
(string->number
(attribute-string (normalize "width")))
%verbatim-default-width%))
(fsize (lambda () (if (or (attribute-string (normalize "width"))
(not %verbatim-size-factor%))
(/ (/ (- %text-width%
(inherited-start-indent))
width-in-chars)
0.7)
(* (inherited-font-size)
%verbatim-size-factor%))))
(vspace-before (if (INBLOCK?)
0pt
(if (INLIST?)
%para-sep%
%block-sep%)))
(vspace-after (if (INBLOCK?)
0pt
(if (INLIST?)
0pt
%block-sep%))))
(make paragraph
use: verbatim-style
space-before: (if (and (string=? (gi (parent))
(normalize "entry"))
(absolute-first-sibling?))
0pt
vspace-before)
space-after: (if (and (string=? (gi (parent))
(normalize "entry"))
(absolute-last-sibling?))
0pt
vspace-after)
font-size: (fsize)
line-spacing: (* (fsize) %line-spacing-factor%)
start-indent: (if (INBLOCK?)
(inherited-start-indent)
(+ %block-start-indent%
(inherited-start-indent)))
(if (or indent line-numbers?)
($linespecific-line-by-line$ indent line-numbers?)
(let loop ((kl (children (current-node)))
(tabsp %default-tab-spacing%)
(res (empty-sosofo)))
(if (node-list-empty? kl)
res
(loop
(node-list-rest kl)
(cond
((char=? (node-property
'char (node-list-first kl)
default: #\U-0000) #\U-0009)
%default-tab-spacing%)
((char=? (node-property
'char (node-list-first kl)
default: #\U-0000) #\U-000D)
%default-tab-spacing%)
(#t ;; normal char or element node
(- (if (= (modulo tabsp %default-tab-spacing%) 0)
%default-tab-spacing%
(modulo tabsp %default-tab-spacing%))
(modulo (string-length (data (node-list-first kl)))
%default-tab-spacing%))))
(let ((c (node-list-first kl)))
(if (char=? (node-property
'char c
default: #\U-0000) #\U-0009)
(sosofo-append res
(let sploop
((spc
(if (= tabsp 0)
%default-tab-spacing%
tabsp)))
(if (> spc 0)
(sosofo-append
(literal " ")
(sploop (- spc 1)))
(empty-sosofo))))
(sosofo-append res
(process-node-list c)))))))))))
]]>
</style-specification-body>
</style-specification>
</style-sheet>

View file

@ -1,22 +0,0 @@
<!-- $FreeBSD$ -->
<!DOCTYPE style-sheet PUBLIC "-//James Clark//DTD DSSSL Style Sheet//EN" [
<!ENTITY docbook.dsl PUBLIC "-//Norman Walsh//DOCUMENT DocBook Print Stylesheet//EN" CDATA DSSSL>
<!ENTITY freebsd.dsl PUBLIC "-//FreeBSD//DOCUMENT DocBook Print Stylesheet//EN" CDATA DSSSL>
<!ENTITY freebsd-common.dsl PUBLIC "-//FreeBSD//DOCUMENT DocBook Common Stylesheet//EN" CDATA DSSSL>
]>
<style-sheet>
<style-specification use="freebsd freebsd-common docbook">
<style-specification-body>
(declare-flow-object-class formatting-instruction
"UNREGISTERED::James Clark//Flow Object Class::formatting-instruction")
</style-specification-body>
</style-specification>
<external-specification id="freebsd" document="freebsd.dsl">
<external-specification id="freebsd-common" document="freebsd-common.dsl">
<external-specification id="docbook" document="docbook.dsl">
</style-sheet>

View file

@ -1,72 +0,0 @@
<!-- $FreeBSD$ -->
<!--
The current generation of open source SGML aware spellcheckers are
insufficient for our needs. They produce far too many false positives
since they just ignore the tags themselves but still spellcheck the
contents of all tags. This stylesheet specifically omits the output
of tags that may contain data that should not be spellchecked. For
example, the contents of <filename> tags should not be spellchecked.
-->
<!DOCTYPE style-sheet PUBLIC "-//James Clark//DTD DSSSL Style Sheet//EN" [
<!ENTITY freebsd.dsl PUBLIC "-//FreeBSD//DOCUMENT DocBook Stylesheet//EN" CDATA DSSSL>
<!ENTITY % output.print "IGNORE">
<!ENTITY % output.html "IGNORE">
]>
<style-sheet>
<style-specification use="docbook">
<style-specification-body>
<![ %output.html; [
<!--
(element programlisting
(if (equal? (normalize "pgpfingerprint") (attribute-string "role"))
(empty-sosofo)
(if (equal? (normalize "pgpkey") (attribute-string "role"))
(empty-sosofo)
(next-match))))
-->
(element command
(empty-sosofo))
(element devicename
(empty-sosofo))
(element email
(empty-sosofo))
(element filename
(empty-sosofo))
(element hostid
(empty-sosofo))
(element otheraddr
(empty-sosofo))
(element programlisting
(empty-sosofo))
(element screen
(empty-sosofo))
(element ulink
(empty-sosofo))
(element username
(empty-sosofo))
]]>
</style-specification-body>
</style-specification>
<external-specification id="docbook" document="freebsd.dsl">
</style-sheet>

View file

@ -1,2 +0,0 @@
PUBLIC "-//FreeBSD//DOCUMENT DocBook Stylesheet//EN"
"freebsd.dsl"

View file

@ -1,21 +0,0 @@
<!-- $FreeBSD$ -->
<!DOCTYPE style-sheet PUBLIC "-//James Clark//DTD DSSSL Style Sheet//EN" [
<!ENTITY freebsd.dsl PUBLIC "-//FreeBSD//DOCUMENT DocBook Language Neutral Stylesheet//EN" CDATA DSSSL>
<!ENTITY % lang.sr.dsssl "IGNORE">
]>
<style-sheet>
<style-specification use="docbook">
<style-specification-body>
<![ %lang.sr.dsssl; [
(define %gentext-language% "sr")
]]>
</style-specification-body>
</style-specification>
<external-specification id="docbook" document="freebsd.dsl">
</style-sheet>

View file

@ -1,2 +0,0 @@
PUBLIC "-//FreeBSD//DOCUMENT DocBook Stylesheet//EN"
"freebsd.dsl"

View file

@ -1,378 +0,0 @@
<!--
DocBook Language Specific Style Sheet for Localization (Simplified Chinese).
Original Revision: 1.23
$FreeBSD$
-->
<!DOCTYPE style-sheet PUBLIC "-//James Clark//DTD DSSSL Style Sheet//EN" [
<!ENTITY freebsd.dsl PUBLIC "-//FreeBSD//DOCUMENT DocBook Language Neutral Stylesheet//EN" CDATA DSSSL>
]>
<style-sheet>
<style-specification use="docbook">
<style-specification-body>
;; 修改自/usr/local/share/xml/docbook/dsssl/modular/print/dbcompon.dsl
;; Id: dbcompon.dsl,v 1.5 2003/04/29 06:33:10 adicarlo Exp
;; 使每章的标题显示为“第XX章”
;; 其它容器格式不变
(define ($component-title$)
(let* ((info (cond
((equal? (gi) (normalize "appendix"))
(select-elements (children (current-node)) (normalize "docinfo")))
((equal? (gi) (normalize "article"))
(node-list-filter-by-gi (children (current-node))
(list (normalize "artheader")
(normalize "articleinfo"))))
((equal? (gi) (normalize "bibliography"))
(select-elements (children (current-node)) (normalize "docinfo")))
((equal? (gi) (normalize "chapter"))
(select-elements (children (current-node)) (normalize "docinfo")))
((equal? (gi) (normalize "dedication"))
(empty-node-list))
((equal? (gi) (normalize "glossary"))
(select-elements (children (current-node)) (normalize "docinfo")))
((equal? (gi) (normalize "index"))
(select-elements (children (current-node)) (normalize "docinfo")))
((equal? (gi) (normalize "preface"))
(select-elements (children (current-node)) (normalize "docinfo")))
((equal? (gi) (normalize "reference"))
(select-elements (children (current-node)) (normalize "docinfo")))
((equal? (gi) (normalize "setindex"))
(select-elements (children (current-node)) (normalize "docinfo")))
(else
(empty-node-list))))
(exp-children (if (node-list-empty? info)
(empty-node-list)
(expand-children (children info)
(list (normalize "bookbiblio")
(normalize "bibliomisc")
(normalize "biblioset")))))
(parent-titles (select-elements (children (current-node)) (normalize "title")))
(titles (if (node-list-empty? parent-titles)
(select-elements exp-children (normalize "title"))
parent-titles))
(parent-subttl (select-elements (children (current-node)) (normalize "subtitle")))
(subtitles (if (node-list-empty? parent-subttl)
(select-elements exp-children (normalize "subtitle"))
parent-subttl)))
(make sequence
(make paragraph
font-family-name: %title-font-family%
font-weight: 'bold
font-size: (HSIZE 4)
line-spacing: (* (HSIZE 4) %line-spacing-factor%)
space-before: (* (HSIZE 4) %head-before-factor%)
start-indent: 0pt
first-line-start-indent: 0pt
quadding: %component-title-quadding%
heading-level: (if %generate-heading-level% 1 0)
keep-with-next?: #t
(if (string=? (element-label) "")
(empty-sosofo)
(if (equal? (gi) (normalize "chapter"))
(literal "第" (element-label)
(gentext-element-name-space (current-node))
(gentext-label-title-sep (gi))
)
(literal (gentext-element-name-space (current-node))
(element-label)
(gentext-label-title-sep (gi))
)
) ;; if结构结束
)
)
(make paragraph
font-family-name: %title-font-family%
font-weight: 'bold
font-posture: 'italic
font-size: (HSIZE 6)
line-spacing: (* (HSIZE 6) %line-spacing-factor%)
; space-before: (* (HSIZE 5) %head-before-factor%)
start-indent: 0pt
first-line-start-indent: 0pt
quadding: %component-title-quadding%
heading-level: (if %generate-heading-level% 1 0)
keep-with-next?: #t
(if (node-list-empty? titles)
(element-title-sosofo) ;; get a default!
(with-mode component-title-mode
(make sequence
(process-node-list titles))))
)
(make paragraph
font-family-name: %title-font-family%
font-weight: 'bold
font-posture: 'italic
font-size: (HSIZE 3)
line-spacing: (* (HSIZE 3) %line-spacing-factor%)
space-before: (* 0.5 (* (HSIZE 3) %head-before-factor%))
space-after: 1pt
start-indent: 0pt
first-line-start-indent: 0pt
quadding: %component-subtitle-quadding%
keep-with-next?: #t
(with-mode component-title-mode
(make sequence
(process-node-list subtitles)))
)
(if (equal? (gi) (normalize "index"))
(empty-sosofo)
(make rule
length: %body-width%
display-alignment: 'start
space-before: 0pt
space-after: 0pt
line-spacing: 1pt
line-thickness: 0.5pt))
)))
;; 修改自/usr/local/share/xml/docbook/dsssl/modular/print/dbcompon.dsl
;; Id: dbcompon.dsl,v 1.5 2003/04/29 06:33:10 adicarlo Exp
;; 使页眉显示“第XX章”
;; 其它容器格式不变
(mode hf-mode
(element title
(let* ((component (ancestor-member (current-node)
(component-element-list)))
(chaporapp (or (equal? (gi component) (normalize "chapter"))
(equal? (gi component) (normalize "appendix")))))
(if %chap-app-running-heads%
(make sequence
(if (and chaporapp
%chapter-autolabel%
(or %chap-app-running-head-autolabel%
(attribute-string (normalize "label") component)))
(if (equal? (gi component) (normalize "chapter"))
(literal "第" (element-label component)
(gentext-element-name-space component)
(gentext-label-title-sep (gi component)))
(literal (gentext-element-name-space component)
(element-label component)
(gentext-label-title-sep (gi component)))
) ;; if结构结束
(empty-sosofo))
(process-children-trim))
(empty-sosofo))))
(element titleabbrev
(if %chap-app-running-heads%
(make sequence
(if (or (have-ancestor? (normalize "chapter"))
(have-ancestor? (normalize "appendix")))
(if (have-ancestor? (normalize "chapter"))
(literal "第" (element-label (parent))
(gentext-element-name-space (parent))
(gentext-label-title-sep (gi (parent))))
(literal (gentext-element-name-space (parent))
(element-label (parent))
(gentext-label-title-sep (gi (parent))))
) ;; if结构结束
(empty-sosofo))
(process-children-trim))
(empty-sosofo)))
(element refentrytitle
(if %chap-app-running-heads%
(process-children-trim)
(empty-sosofo)))
(element refdescriptor
(if %chap-app-running-heads%
(process-children-trim)
(empty-sosofo)))
(element refname
(if %chap-app-running-heads%
(process-children-trim)
(empty-sosofo)))
;; Graphics aren't allowed in headers and footers...
(element graphic
(empty-sosofo))
(element inlinegraphic
(empty-sosofo))
)
<!--
修改自 /usr/local/share/xml/docbook/dsssl/modular/print/dbprint.dsl
Id: dbprint.dsl,v 1.6 2004/10/09 19:46:33 petere78 Exp
按中文书写习惯,每段开头须空两格。
但是在注释、列表等特定位置虽然也使用了SGML的<para></para>标记,却不应空两格。
故只有<para></para>处于文章内一般位置时,才需要空两格。
-->
(define ($paragraph$)
(if (or (equal? (print-backend) 'tex)
(equal? (print-backend) #f))
;; avoid using country: characteristic because of a JadeTeX bug...
(make paragraph
first-line-start-indent: 0pt
space-before: %para-sep%
space-after: (if (INLIST?)
0pt
%para-sep%)
quadding: %default-quadding%
hyphenate?: %hyphenation%
language: (dsssl-language-code)
(if (equal? (gi) (normalize "para"))
(if (member (gi (parent (current-node)))
(list (normalize "article")
(normalize "book")
(normalize "abstract")
(normalize "chapter")
(normalize "sect1")
(normalize "sect2")
(normalize "sect3")
(normalize "sect4")
(normalize "sect5")
)
)
(literal "  ")
(empty-sosofo)
)
(empty-sosofo)
)
(process-children-trim))
(make paragraph
first-line-start-indent: 0pt
space-before: %para-sep%
space-after: (if (INLIST?)
0pt
%para-sep%)
quadding: %default-quadding%
hyphenate?: %hyphenation%
language: (dsssl-language-code)
country: (dsssl-country-code)
(if (equal? (gi) (normalize "para"))
(if (member (gi (parent (current-node)))
(list (normalize "article")
(normalize "book")
(normalize "abstract")
(normalize "chapter")
(normalize "sect1")
(normalize "sect2")
(normalize "sect3")
(normalize "sect4")
(normalize "sect5")
)
)
(literal "  ")
(empty-sosofo)
)
(empty-sosofo)
)
(process-children-trim))))
;; 对于要强调的部分,中文习惯于只用粗体,斜体字不够醒目
;; 修改自/usr/local/share/xml/docbook/dsssl/modular/print/dbinline.dsl
;; Id: dbinline.dsl,v 1.7 2003/03/25 19:53:56 adicarlo Exp
(element emphasis
($bold-seq$)
)
(define (local-zhcn-label-title-sep)
(list
(list (normalize "warning") ": ")
(list (normalize "caution") ": ")
(list (normalize "chapter") " ")
(list (normalize "sect1") " ")
(list (normalize "sect2") " ")
(list (normalize "sect3") " ")
(list (normalize "sect4") " ")
(list (normalize "sect5") " ")
))
<!-- 等同于 <book lang="zh_cn"> -->
(define %default-language% "zh_cn")
;; 中文专有的开关output.for.print
;; 在输出打印格式时和在为打印格式生成索引表时均被使能
;; 目前使用该开关的场合:
;; 1. legalnotice.sgml内控制中文字体许可证的显示
;; 2. freebsd.dsl内控制索引文件名
;; 实现该开关的场合:
;; share/mk/doc.local.mk 在目标print.index的实现代码中和PRINTFLAGS赋值
;; share/xml/l10n.ent 定义该开关
<![ %output.for.print; [
(define html-index-filename "print.index")
]]>
;; 指定RTF中的中文字体以迁就OpenOffice。否则OpenOffice不显示标记为
;; Arial, Times New Roman, Courier New 等西文字体的汉字。
;; Microsoft Word (Viewer)有较强的自适应能力,即使按照指定字体名找不到字型,
;; 也会自动寻找替代字型。
;; 复制自/usr/local/share/xml/docbook/dsssl/modular/print/dbparam.dsl
;; Jade/OpenJade的命令行参数"-V rtf-backend"更优先的决定此开关值。
(define rtf-backend #f)
(declare-initial-value font-family-name
(cond
(rtf-backend "AR PL New Sung")
(else "Times New Roman")
)
)
(define %refentry-name-font-family%
(cond
(rtf-backend "AR PL New Sung")
(else "Courier New")
)
)
(define %title-font-family%
(cond
(rtf-backend "AR PL New Sung")
(else "Arial")
)
)
(define %body-font-family%
(cond
(rtf-backend "AR PL New Sung")
(else "Times New Roman")
)
)
(define %mono-font-family%
(cond
(rtf-backend "AR PL New Sung")
(else "Courier New")
)
)
(define %admon-font-family%
(cond
(rtf-backend "AR PL New Sung")
(else "Arial")
)
)
(define %guilabel-font-family%
(cond
(rtf-backend "AR PL New Sung")
(else "Arial")
)
)
</style-specification-body>
</style-specification>
<external-specification id="docbook" document="freebsd.dsl">
</style-sheet>

View file

@ -1,2 +0,0 @@
PUBLIC "-//FreeBSD//DOCUMENT DocBook Stylesheet//EN"
"freebsd.dsl"

View file

@ -1,14 +0,0 @@
<!-- $FreeBSD$ -->
<!DOCTYPE style-sheet PUBLIC "-//James Clark//DTD DSSSL Style Sheet//EN" [
<!ENTITY freebsd.dsl PUBLIC "-//FreeBSD//DOCUMENT DocBook Language Neutral Stylesheet//EN" CDATA DSSSL>
]>
<style-sheet>
<style-specification use="docbook">
<style-specification-body>
</style-specification-body>
</style-specification>
<external-specification id="docbook" document="freebsd.dsl">
</style-sheet>