diff --git a/el_GR.ISO8859-7/share/sgml/catalog b/el_GR.ISO8859-7/share/sgml/catalog
index fd6e7e7862..ae2a5e7e44 100644
--- a/el_GR.ISO8859-7/share/sgml/catalog
+++ b/el_GR.ISO8859-7/share/sgml/catalog
@@ -1,20 +1,23 @@
-- ...................................................................... --
-- FreeBSD SGML Public Identifiers ...................................... --
-- $FreeBSD$
--
PUBLIC "-//FreeBSD//DOCUMENT DocBook Stylesheet//EN"
"freebsd.dsl"
PUBLIC "-//FreeBSD//ENTITIES DocBook Mailing List Entities//EL"
"mailing-lists.ent"
PUBLIC "-//FreeBSD//ENTITIES DocBook BookInfo Entities//EL"
"bookinfo.ent"
PUBLIC "-//FreeBSD//ENTITIES DocBook Team Entities//EL"
"teams.ent"
PUBLIC "-//FreeBSD//ENTITIES DocBook Trademark Entities//EL"
"trademarks.ent"
+
+PUBLIC "-//FreeBSD//ENTITIES DocBook Language Specific Entities//EN"
+ "l10n.ent"
diff --git a/el_GR.ISO8859-7/share/sgml/freebsd.dsl b/el_GR.ISO8859-7/share/sgml/freebsd.dsl
index 8111343bd1..c3d10d4f6c 100644
--- a/el_GR.ISO8859-7/share/sgml/freebsd.dsl
+++ b/el_GR.ISO8859-7/share/sgml/freebsd.dsl
@@ -1,258 +1,248 @@
]>
-
-
- (define %html-header-tags%
- '(("META" ("HTTP-EQUIV" "Content-Type")
- ("CONTENT" "text/html; charset=ISO-8859-7"))))
-
-
(define %refentry-xref-link% #t)
(define ($email-footer$)
(make sequence
(make element gi: "p"
attributes: (list (list "align" "center"))
(make element gi: "small"
(literal "Áõôü ôï êåßìåíï, êáé Üëëá êåßìåíá, ìðïñåß íá âñåèåß óôï ")
(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 "Ãéá åñùôÞóåéò ó÷åôéêÜ ìå ôï FreeBSD, äéáâÜóôå ôçí ")
(create-link
(list (list "HREF" "http://www.FreeBSD.org/docs.html"))
(literal "ôåêìçñßùóç"))
(literal " ðñéí íá åðéêïéíùíÞóåôå ìå ôçí <")
(create-link
(list (list "HREF" "mailto:questions@FreeBSD.org"))
(literal "questions@FreeBSD.org"))
(literal ">.")
(make empty-element gi: "br")
(literal "Ãéá åñùôÞóåéò ó÷åôéêÜ ìå áõôÞ ôçí ôåêìçñßùóç, óôåßëôå e-mail óôçí <")
(create-link (list (list "HREF" "mailto:doc@FreeBSD.org"))
(literal "doc@FreeBSD.org"))
(literal ">.")))))
]]>
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))))
]]>
(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") " ")
))
diff --git a/el_GR.ISO8859-7/share/sgml/l10n.ent b/el_GR.ISO8859-7/share/sgml/l10n.ent
new file mode 100644
index 0000000000..e215468401
--- /dev/null
+++ b/el_GR.ISO8859-7/share/sgml/l10n.ent
@@ -0,0 +1,4 @@
+
+
+
+
diff --git a/ja_JP.eucJP/share/sgml/freebsd.dsl b/ja_JP.eucJP/share/sgml/freebsd.dsl
index 0f79964460..c6aa195d20 100644
--- a/ja_JP.eucJP/share/sgml/freebsd.dsl
+++ b/ja_JP.eucJP/share/sgml/freebsd.dsl
@@ -1,20 +1,15 @@
-
+
-
]>
-
- (define %html-header-tags% '(("META" ("HTTP-EQUIV" "Content-Type") ("CONTENT" "text/html; charset=EUC-JP"))))
diff --git a/ja_JP.eucJP/share/sgml/l10n.ent b/ja_JP.eucJP/share/sgml/l10n.ent
index 7ddd63f93a..0a6e50882e 100644
--- a/ja_JP.eucJP/share/sgml/l10n.ent
+++ b/ja_JP.eucJP/share/sgml/l10n.ent
@@ -1,12 +1,15 @@
+
+
+
diff --git a/pl_PL.ISO8859-2/share/sgml/catalog b/pl_PL.ISO8859-2/share/sgml/catalog
index 1eff5d70df..c2ed201df1 100644
--- a/pl_PL.ISO8859-2/share/sgml/catalog
+++ b/pl_PL.ISO8859-2/share/sgml/catalog
@@ -1,11 +1,14 @@
-- ...................................................................... --
-- FreeBSD SGML Public Identifiers ...................................... --
-- $FreeBSD$
--
PUBLIC "-//FreeBSD//DOCUMENT DocBook Stylesheet//EN"
"freebsd.dsl"
PUBLIC "-//FreeBSD//ENTITIES DocBook Mailing List Entities//PL"
"mailing-lists.ent"
+
+PUBLIC "-//FreeBSD//ENTITIES DocBook Language Specific Entities//EN"
+ "l10n.ent"
diff --git a/pl_PL.ISO8859-2/share/sgml/freebsd.dsl b/pl_PL.ISO8859-2/share/sgml/freebsd.dsl
index 31b0fd0fa9..a6004cbe62 100644
--- a/pl_PL.ISO8859-2/share/sgml/freebsd.dsl
+++ b/pl_PL.ISO8859-2/share/sgml/freebsd.dsl
@@ -1,254 +1,251 @@
]>
(define %refentry-xref-link% #t)
(define ($email-footer$)
(make sequence
(make element gi: "p"
attributes: (list (list "align" "center"))
(make element gi: "small"
(literal "This, and other documents, can be downloaded from ")
(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 "For questions about FreeBSD, read the ")
(create-link
(list (list "HREF" "http://www.FreeBSD.org/docs.html"))
(literal "documentation"))
(literal " before contacting <")
(create-link
(list (list "HREF" "mailto:questions@FreeBSD.org"))
(literal "questions@FreeBSD.org"))
(literal ">.")
(make empty-element gi: "br")
(literal "For questions about this documentation, e-mail <")
(create-link (list (list "HREF" "mailto:doc@FreeBSD.org"))
(literal "doc@FreeBSD.org"))
(literal ">.")))))
]]>
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))))
]]>
(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") " ")
))
-
- (define %html-header-tags% '(("META" ("HTTP-EQUIV" "Content-Type") ("CONTENT" "text/html; charset=iso-8859-2"))))
-
diff --git a/pl_PL.ISO8859-2/share/sgml/l10n.ent b/pl_PL.ISO8859-2/share/sgml/l10n.ent
new file mode 100644
index 0000000000..fb351da903
--- /dev/null
+++ b/pl_PL.ISO8859-2/share/sgml/l10n.ent
@@ -0,0 +1,4 @@
+
+
+
+
diff --git a/ru_RU.KOI8-R/share/sgml/freebsd.dsl b/ru_RU.KOI8-R/share/sgml/freebsd.dsl
index 15a72e0bf2..fa4a28acb7 100644
--- a/ru_RU.KOI8-R/share/sgml/freebsd.dsl
+++ b/ru_RU.KOI8-R/share/sgml/freebsd.dsl
@@ -1,329 +1,327 @@
%freebsd.l10n;
]>
- (define %html-header-tags% '(("META" ("HTTP-EQUIV" "Content-Type") ("CONTENT" "text/html; charset=koi8-r"))))
-
(define %refentry-xref-link% #t)
(define ($email-footer$)
(make sequence
(make element gi: "p"
attributes: (list (list "align" "center"))
(make element gi: "small"
(literal "üÔÏÔ, É ÄÒÕÇÉÅ ÄÏËÕÍÅÎÔÙ, ÍÏÇÕÔ ÂÙÔØ ÓËÁÞÁÎÙ Ó ")
(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 "ðÏ ×ÏÐÒÏÓÁÍ Ó×ÑÚÁÎÎÙÍÉ Ó FreeBSD, ÐÒÏÞÉÔÁÊÔÅ ")
(create-link
(list (list "HREF" "http://www.FreeBSD.org/ru/docs.html"))
(literal "ÄÏËÕÍÅÎÔÁÃÉÀ"))
(literal " ÐÒÅÖÄÅ ÞÅÍ ÐÉÓÁÔØ × <")
(create-link
(list (list "HREF" "mailto:questions@FreeBSD.org"))
(literal "questions@FreeBSD.org"))
(literal ">.")
(make empty-element gi: "br")
(literal "ðÏ ×ÏÐÒÏÓÁÍ Ó×ÑÚÁÎÎÙÍ Ó ÜÔÏÊ ÄÏËÕÍÅÎÔÁÃÉÅÊ, ÐÉÛÉÔÅ <")
(create-link (list (list "HREF" "mailto:doc@FreeBSD.org"))
(literal "doc@FreeBSD.org"))
(literal ">.")
(make empty-element gi: "br")
(literal "ðÏ ×ÏÐÒÏÓÁÍ Ó×ÑÚÁÎÎÙÍ Ó ÒÕÓÓËÉÍ ÐÅÒÅ×ÏÄÏÍ ÄÏËÕÍÅÎÔÁÃÉÉ, ÐÉÛÉÔÅ × ÒÁÓÓÙÌËÕ <")
(create-link (list (list "HREF" "mailto:frdp@FreeBSD.org.ua"))
(literal "frdp@FreeBSD.org.ua"))
(literal ">.")
(make empty-element gi: "br")
(literal "éÎÆÏÒÍÁÃÉÑ ÐÏ ÐÏÄÐÉÓËÅ ÎÁ ÜÔÕ ÒÁÓÓÙÌËÕ ÎÁÈÏÄÉÔÓÑ ÎÁ ")
(create-link
(list (list "HREF" "http://www.FreeBSD.org.ua/resources.html"))
(literal "ÓÁÊÔÅ ÐÒÏÅËÔÁ ÐÅÒÅ×ÏÄÁ"))
(literal ".")))))
]]>
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))))
]]>
(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") " ")
))
(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/sgml/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)))
" "
""))))
diff --git a/ru_RU.KOI8-R/share/sgml/l10n.ent b/ru_RU.KOI8-R/share/sgml/l10n.ent
index 44e4b1b65c..41274efd1f 100644
--- a/ru_RU.KOI8-R/share/sgml/l10n.ent
+++ b/ru_RU.KOI8-R/share/sgml/l10n.ent
@@ -1,19 +1,22 @@
+
+
+
diff --git a/share/sgml/freebsd.dsl b/share/sgml/freebsd.dsl
index 09b02325c3..eb4a46d656 100644
--- a/share/sgml/freebsd.dsl
+++ b/share/sgml/freebsd.dsl
@@ -1,1078 +1,1081 @@
%freebsd.l10n;
%freebsd.l10n-common;
]]>
]]>
]>
(declare-flow-object-class formatting-instruction
"UNREGISTERED::James Clark//Flow Object Class::formatting-instruction")
(define %hyphenation% #f)
+ (define %html-header-tags% '(("META" ("HTTP-EQUIV" "Content-Type")
+ ("CONTENT" "text/html; charset=\"&doc.html.charset;\""))))
+
(define %gentext-nav-use-tables%
;; Use tables to build the navigation headers and footers?
#t)
(define %html-ext%
;; Default extension for HTML output files
".html")
(define %shade-verbatim%
;; Should verbatim environments be shaded?
#f)
(define %use-id-as-filename%
;; Use ID attributes as name for component HTML files?
#t)
(define %root-filename%
;; Name for the root HTML document
"index")
(define html-manifest
;; Write a manifest?
#f)
(define %generate-legalnotice-link%
;; Should legal notices be a link to a separate file?
;;
;; Naturally, this has no effect if you're building one big
;; HTML file.
#f)
(define %generate-docformat-navi-link%
;; Create docformat navi link for HTML output?
#f)
;; Taken from Norm's stylesheets; modified to add support for TITLE so
;; that we get a mouse over definition for acronyms in HTML output.
(define ($acronym-seq$ #!optional (sosofo (process-children)))
;; FIXME: html4 only
(let ((title (attribute-string (normalize "role") (current-node))))
(if title
(make element gi: "ACRONYM"
attributes: (list
(list "TITLE" title)
(list "CLASS" (gi)))
sosofo)
(make element gi: "ACRONYM"
attributes: (list
(list "CLASS" (gi)))
sosofo))))
(define (book-titlepage-recto-elements)
(list (normalize "title")
(normalize "subtitle")
(normalize "graphic")
(normalize "mediaobject")
(normalize "corpauthor")
(normalize "authorgroup")
(normalize "author")
(normalize "editor")
(normalize "copyright")
(normalize "abstract")
(normalize "legalnotice")
(normalize "isbn")))
;; Create a simple navigation link
;; if %generate-docformat-navi-link% defined.
(define (make-docformat-navi tlist)
(let ((rootgi (gi (sgml-root-element))))
(make element gi: "DIV"
attributes: '(("CLASS" "DOCFORAMTNAVI"))
(literal "[ ")
(make-docformat-navi-link rootgi tlist)
(literal " ]"))))
(define (make-docformat-navi-link rootgi tlist)
(make sequence
(cond
((null? tlist) (empty-sosofo))
((null? (car tlist)) (empty-sosofo))
((not (symbol? (car tlist))) (empty-sosofo))
((equal? (car tlist) 'html-split)
(make sequence
(create-link (list (list "href" "./index.html"))
(literal "&docnavi.split-html;"))
(if (not (null? (cdr tlist)))
(make sequence
(literal " / ")
(make-docformat-navi-link rootgi (cdr tlist)))
(empty-sosofo))))
((equal? (car tlist) 'html-single)
(make sequence
(create-link (list (list "href"
(string-append "./" (case-fold-down rootgi) ".html")))
(literal "&docnavi.single-html;"))
(if (not (null? (cdr tlist)))
(make sequence
(literal " / ")
(make-docformat-navi-link rootgi (cdr tlist)))
(empty-sosofo))))
(else (empty-sosofo)))))
(define (article-titlepage-separator side)
(make sequence
(if %generate-docformat-navi-link%
(make-docformat-navi '(html-split html-single))
(empty-sosofo))
(make empty-element gi: "HR")))
(define (book-titlepage-separator side)
(if (equal? side 'recto)
(make sequence
(if %generate-docformat-navi-link%
(make-docformat-navi '(html-split html-single))
(empty-sosofo))
(make empty-element gi: "HR"))
(empty-sosofo)))
(define ($email-footer$)
(empty-sosofo))
(define html-index-filename
(if nochunks
"html.index"
"html-split.index"))
(define %stylesheet%
"docbook.css")
(define ($html-body-end$)
(if (equal? $email-footer$ (normalize ""))
(empty-sosofo)
(make sequence
(if nochunks
(make empty-element gi: "hr")
(empty-sosofo))
($email-footer$))))
(define %refentry-xref-link%
;; REFENTRY refentry-xref-link
;; PURP Generate URL links when cross-referencing RefEntrys?
;; DESC
;; If true, a web link will be generated, presumably
;; to an online man->HTML gateway. The text of the link is
;; generated by the $create-refentry-xref-link$ function.
;; /DESC
;; AUTHOR N/A
;; /REFENTRY
#f)
(define ($create-refentry-xref-link$ #!optional (n (current-node)))
(let* ((r (select-elements (children n) (normalize "refentrytitle")))
(m (select-elements (children n) (normalize "manvolnum")))
(v (attribute-string (normalize "vendor") n))
(u (string-append "http://www.FreeBSD.org/cgi/man.cgi?query="
(data r) "&" "amp;" "sektion=" (data m))))
(case v
(("current") (string-append u "&" "amp;" "manpath=FreeBSD+6-current"))
(("xfree86") (string-append u "&" "amp;" "manpath=XFree86+4.4.0"))
(("xorg") (string-append u "&" "amp;" "manpath=X11R6.7.0"))
(("netbsd") (string-append u "&" "amp;" "manpath=NetBSD+1.6.1"))
(("openbsd") (string-append u "&" "amp;" "manpath=OpenBSD+3.4"))
(("ports") (string-append u "&" "amp;" "manpath=FreeBSD+Ports"))
(else u))))
(element application ($bold-seq$))
(element citerefentry
(let ((href ($create-refentry-xref-link$)))
(if %refentry-xref-link%
(create-link (list (list "HREF" href))
(if %refentry-xref-italic%
($italic-seq$)
($charseq$)))
(if %refentry-xref-italic%
($italic-seq$)
($charseq$)))))
(element filename
(let* ((class (attribute-string (normalize "role"))))
(cond
((equal? class "package")
(let* ((urlurl "http://www.FreeBSD.org/cgi/url.cgi")
(href (string-append urlurl "?ports/"
(data (current-node))
"/pkg-descr")))
(create-link (list (list "HREF" href)) ($mono-seq$))))
(else ($mono-seq$)))))
;; Ensure that we start with no preferred mediaobject notations,
;; so that in the text-only case we don't choose any of the
;; possible images, and fallback to the most appropriate
;; textobject
(define preferred-mediaobject-notations
'())
(element quote
(make sequence
(literal "``")
(process-children)
(literal "''")))
;; 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"))
(make entity-ref name: "copy"))
((equal? (attribute-string "class") (normalize "registered"))
(make entity-ref name: "reg"))
((equal? (attribute-string "class") (normalize "service"))
(make element gi: "SUP"
(literal "SM")))
(else
(make entity-ref name: "#8482"))))
($charseq$)))
]]>
")))
(element filename
(pathwrap))
(element varname
(pathwrap))
]]>
(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)))))
;; When selecting a filename to use, don't append the default
;; extension, instead, just use the bare filename, and let TeX
;; work it out. jadetex will use the .eps file, while pdfjadetex
;; will use the .png file automatically.
(define (graphic-file filename)
(let ((ext (file-extension filename)))
(if (or tex-backend ;; TeX can work this out itself
(not filename)
(not %graphic-default-extension%)
(member ext %graphic-extensions%))
filename
(string-append filename "." %graphic-default-extension%))))
;; 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 %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)
(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))
(element sgmltag ($mono-seq$
(make sequence
(literal "<")
(process-children)
(literal ">"))))
(element errorname
(make sequence
($mono-seq$ (process-children))
))
(element command ($mono-seq$))
(element envar ($mono-seq$))
(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$))
(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$))
(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) "]"))))))))
(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")))
diff --git a/share/sgml/l10n.ent b/share/sgml/l10n.ent
index 7f01b191d3..576b1f0c96 100644
--- a/share/sgml/l10n.ent
+++ b/share/sgml/l10n.ent
@@ -1,15 +1,18 @@
+
+
+
diff --git a/sr_YU.ISO8859-2/share/sgml/catalog b/sr_YU.ISO8859-2/share/sgml/catalog
index 4a2b9be8b6..c3e69e9318 100644
--- a/sr_YU.ISO8859-2/share/sgml/catalog
+++ b/sr_YU.ISO8859-2/share/sgml/catalog
@@ -1,9 +1,11 @@
-- ...................................................................... --
-- FreeBSD SGML Public Identifiers ...................................... --
- -- $FreeBSD: doc/sr_YU.ISO_8859-2/share/sgml/catalog,v 1.1 2000/09/28 23:29:45 nbm Exp $
+ -- $FreeBSD$
--
PUBLIC "-//FreeBSD//DOCUMENT DocBook Stylesheet//EN"
"freebsd.dsl"
+PUBLIC "-//FreeBSD//ENTITIES DocBook Language Specific Entities//EN"
+ "l10n.ent"
diff --git a/sr_YU.ISO8859-2/share/sgml/freebsd.dsl b/sr_YU.ISO8859-2/share/sgml/freebsd.dsl
index adb037d736..71e2a76229 100644
--- a/sr_YU.ISO8859-2/share/sgml/freebsd.dsl
+++ b/sr_YU.ISO8859-2/share/sgml/freebsd.dsl
@@ -1,55 +1,53 @@
]>
.")
(make empty-element gi: "br")
(literal "For questions about this documentation, e-mail <")
(make element gi: "a"
attributes: (list (list "href" "mailto:doc@FreeBSD.org"))
(literal "doc@FreeBSD.org"))
(literal ">.")))))
]]>
-
- (define %html-header-tags% '(("META" ("HTTP-EQUIV" "Content-Type") ("CONTENT" "text/html; charset=iso-8859-2"))))
diff --git a/sr_YU.ISO8859-2/share/sgml/l10n.ent b/sr_YU.ISO8859-2/share/sgml/l10n.ent
new file mode 100644
index 0000000000..fb351da903
--- /dev/null
+++ b/sr_YU.ISO8859-2/share/sgml/l10n.ent
@@ -0,0 +1,4 @@
+
+
+
+
diff --git a/zh_CN.GB2312/share/sgml/freebsd.dsl b/zh_CN.GB2312/share/sgml/freebsd.dsl
index 0a463e8a33..e394e610e7 100644
--- a/zh_CN.GB2312/share/sgml/freebsd.dsl
+++ b/zh_CN.GB2312/share/sgml/freebsd.dsl
@@ -1,26 +1,25 @@
]>
(element quote
(make sequence
(literal "¡°")
(process-children)
(literal "¡±")))
- (define %html-header-tags% '(("META" ("HTTP-EQUIV" "Content-Type") ("CONTENT" "text/html; charset=GB2312"))))
diff --git a/zh_CN.GB2312/share/sgml/l10n.ent b/zh_CN.GB2312/share/sgml/l10n.ent
index ef004d1156..b178d97cfc 100644
--- a/zh_CN.GB2312/share/sgml/l10n.ent
+++ b/zh_CN.GB2312/share/sgml/l10n.ent
@@ -1,9 +1,12 @@
+
+
+