the charset of HTML files generated from an DocBook/SGML file. Note to translators: While some of the translations already use this tweak in their localized freebsd.dsl, it is no longer needed so removed and the necessary changes have been added instead. After this commit, please make sure to define &doc.html.charset; in <langcode>/share/sgml/l10n.ent. If not defined, iso-8859-1 is used by default and it can break the translation. Discussed on: -doc
251 lines
9.1 KiB
Text
251 lines
9.1 KiB
Text
<!--
|
|
The FreeBSD Polish Documentation Project
|
|
|
|
$FreeBSD$
|
|
Original revision: 1.14
|
|
-->
|
|
|
|
<!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 % output.print.niceheaders "IGNORE">
|
|
]>
|
|
|
|
<style-sheet>
|
|
<style-specification use="docbook">
|
|
<style-specification-body>
|
|
<!-- HTML only .................................................... -->
|
|
|
|
<![ %output.html; [
|
|
|
|
<!-- Generate links to HTML man pages -->
|
|
(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 ">.")))))
|
|
]]>
|
|
|
|
<!-- More aesthetically pleasing chapter headers for print output -->
|
|
|
|
<![ %output.print.niceheaders; [
|
|
|
|
(define niceheader-rule-spacebefore (* (HSIZE 5) %head-before-factor%))
|
|
(define niceheader-rule-spaceafter 0pt)
|
|
|
|
(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")))
|
|
(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"))))
|
|
(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)
|
|
(literal (gentext-element-name-space (current-node))
|
|
(element-label)
|
|
(gentext-label-title-sep (gi)))))
|
|
(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: (* (HSIZE 4) %head-after-factor%)
|
|
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: niceheader-rule-spacebefore
|
|
space-after: niceheader-rule-spaceafter
|
|
line-thickness: 0.5pt)))))
|
|
|
|
(element authorgroup
|
|
(empty-sosofo))
|
|
|
|
]]>
|
|
|
|
<!-- Print only ................................................... -->
|
|
|
|
<![ %output.print; [
|
|
|
|
(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))))
|
|
|
|
]]>
|
|
|
|
<!-- Both sets of stylesheets ..................................... -->
|
|
|
|
(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>
|
|
|
|
<external-specification id="docbook" document="freebsd.dsl">
|
|
</style-sheet>
|