~ubuntu-branches/ubuntu/utopic/docbook-dsssl/utopic

« back to all changes in this revision

Viewing changes to .pc/refentry-flow-objects.patch/print/dbrfntry.dsl

  • Committer: Package Import Robot
  • Author(s): Colin Watson
  • Date: 2012-06-25 13:55:33 UTC
  • mfrom: (5.1.1 sid)
  • Revision ID: package-import@ubuntu.com-20120625135533-1s9wm8bry947uhlz
Tags: 1.79-7ubuntu1
* Resynchronise with Debian.  Remaining changes:
  - Make docbook-dsssl Multi-Arch: foreign, so that it can satisfy
    cross-build-dependencies.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
;; $Id: dbrfntry.dsl,v 1.3 2003/01/15 08:24:23 adicarlo Exp $
 
2
;;
 
3
;; This file is part of the Modular DocBook Stylesheet distribution.
 
4
;; See ../README or http://docbook.sourceforge.net/projects/dsssl/
 
5
;;
 
6
 
 
7
;; =========================== REFERENCE PAGES ==========================
 
8
 
 
9
;;(element reference ($component$))
 
10
 
 
11
(element reference
 
12
  (let* ((refinfo  (select-elements (children (current-node)) 
 
13
                                    (normalize "docinfo")))
 
14
         (refintro (select-elements (children (current-node)) 
 
15
                                    (normalize "partintro")))
 
16
         (nl       (titlepage-info-elements 
 
17
                    (current-node)
 
18
                    refinfo
 
19
                    (if %generate-partintro-on-titlepage%
 
20
                        refintro
 
21
                        (empty-node-list)))))
 
22
    (make sequence
 
23
      (if %generate-reference-titlepage%
 
24
          (make sequence
 
25
            (reference-titlepage nl 'recto)
 
26
            (reference-titlepage nl 'verso))
 
27
          (empty-sosofo))
 
28
 
 
29
      (if (not (generate-toc-in-front))
 
30
          (process-children)
 
31
          (empty-sosofo))
 
32
      
 
33
      (if (and %generate-reference-toc%
 
34
               (not %generate-reference-toc-on-titlepage%))
 
35
          (make simple-page-sequence
 
36
            page-n-columns: %page-n-columns%
 
37
            page-number-restart?: #t
 
38
            page-number-format: ($page-number-format$ (normalize "toc"))
 
39
            use: default-text-style
 
40
            left-header:   ($left-header$ (normalize "toc"))
 
41
            center-header: ($center-header$ (normalize "toc"))
 
42
            right-header:  ($right-header$ (normalize "toc"))
 
43
            left-footer:   ($left-footer$ (normalize "toc"))
 
44
            center-footer: ($center-footer$ (normalize "toc"))
 
45
            right-footer:  ($right-footer$ (normalize "toc"))
 
46
            input-whitespace-treatment: 'collapse
 
47
            (build-toc (current-node)
 
48
                       (toc-depth (current-node))))
 
49
          (empty-sosofo))
 
50
 
 
51
      (if (and (not (node-list-empty? refintro))
 
52
               (not %generate-partintro-on-titlepage%))
 
53
          ($process-partintro$ refintro #t)
 
54
          (empty-sosofo))
 
55
 
 
56
      (if (generate-toc-in-front)
 
57
          (if %refentry-new-page%
 
58
              (process-children)
 
59
              (make simple-page-sequence
 
60
                page-n-columns: %page-n-columns%
 
61
                page-number-format: ($page-number-format$)
 
62
                use: default-text-style
 
63
                left-header:   ($left-header$)
 
64
                center-header: ($center-header$)
 
65
                right-header:  ($right-header$)
 
66
                left-footer:   ($left-footer$)
 
67
                center-footer: ($center-footer$)
 
68
                right-footer:  ($right-footer$)
 
69
                input-whitespace-treatment: 'collapse
 
70
                quadding: %default-quadding%
 
71
                (process-children)))
 
72
          (empty-sosofo)))))
 
73
 
 
74
;; If each RefEntry begins on a new page, this title is going to wind
 
75
;; up on its own page, too, so make it a divtitlepage instead.  Otherwise,
 
76
;; just let it be a component title.
 
77
(element (reference title) (empty-sosofo))
 
78
;;  (if %refentry-new-page%
 
79
;;      ($divtitlepage$)
 
80
;;      (empty-sosofo)))
 
81
 
 
82
(element refentry 
 
83
  (make display-group
 
84
    keep: %refentry-keep%
 
85
    (if (or %refentry-new-page%
 
86
            (node-list=? (current-node) (sgml-root-element)))
 
87
        (make simple-page-sequence
 
88
          page-n-columns: %page-n-columns%
 
89
          page-number-format: ($page-number-format$)
 
90
          use: default-text-style
 
91
          left-header:   ($left-header$)
 
92
          center-header: ($center-header$)
 
93
          right-header:  ($right-header$)
 
94
          left-footer:   ($left-footer$)
 
95
          center-footer: ($center-footer$)
 
96
          right-footer:  ($right-footer$)
 
97
          input-whitespace-treatment: 'collapse
 
98
          quadding: %default-quadding%
 
99
          ($refentry-title$)
 
100
          (process-children))
 
101
        (make sequence
 
102
          ($refentry-title$)
 
103
          ($block-container$)))
 
104
    (make-endnotes)))
 
105
 
 
106
(define ($refentry-title$)
 
107
  (let* ((refmeta       (select-elements (children (current-node))
 
108
                                         (normalize "refmeta")))
 
109
         (refentrytitle (select-elements (children refmeta)
 
110
                                         (normalize "refentrytitle")))
 
111
         (refnamediv    (select-elements (children (current-node))
 
112
                                         (normalize "refnamediv")))
 
113
         (refdescriptor (select-elements (children refnamediv)
 
114
                                         (normalize "refdescriptor")))
 
115
         (refname       (select-elements (children refnamediv)
 
116
                                         (normalize "refname")))
 
117
         (title         (if (node-list-empty? refentrytitle)
 
118
                            (if (node-list-empty? refdescriptor)
 
119
                                (node-list-first refname)
 
120
                                refdescriptor)
 
121
                            refentrytitle))
 
122
         (slevel (SECTLEVEL)) ;; the true level in the section hierarchy
 
123
         (hlevel (if (> slevel 2) 2 slevel)) ;; limit to sect2 equiv.
 
124
         (hs (HSIZE (- 4 hlevel))))
 
125
    (make paragraph
 
126
      font-family-name: %title-font-family%
 
127
      font-weight: 'bold
 
128
      font-size: hs
 
129
      line-spacing: (* hs %line-spacing-factor%)
 
130
      space-before: (* hs %head-before-factor%)
 
131
      space-after: (* hs %head-after-factor%)
 
132
      start-indent: %body-start-indent%
 
133
      first-line-start-indent: (- %body-start-indent%)
 
134
      quadding: 'start
 
135
      heading-level: (if %generate-heading-level% 2 0)
 
136
      keep-with-next?: #t
 
137
      (process-node-list (children title)))))
 
138
;; nwalsh, this is wrong, 29 July 1999
 
139
;      (if %refentry-function%
 
140
;         (sosofo-append
 
141
;          (literal "\no-break-space;")
 
142
;          (process-first-descendant (normalize "manvolnum")))
 
143
;         (empty-sosofo)))))
 
144
 
 
145
(element refmeta (empty-sosofo)) ;; handled by $refentry-title$
 
146
 
 
147
(element manvolnum 
 
148
  (if %refentry-xref-manvolnum%
 
149
      (sosofo-append
 
150
       (literal "(")
 
151
       (process-children)
 
152
       (literal ")"))
 
153
      (empty-sosofo)))
 
154
 
 
155
(element refmiscinfo (empty-sosofo))
 
156
 
 
157
(element refentrytitle ($charseq$))
 
158
 
 
159
(element refnamediv
 
160
  (make paragraph
 
161
        space-before: %para-sep%
 
162
        start-indent: %body-start-indent%
 
163
        quadding: 'start
 
164
        (process-children)))
 
165
 
 
166
(element refname
 
167
  (make sequence
 
168
    (if (and %refentry-generate-name% (first-sibling? (current-node)))
 
169
        ($lowtitlewithsosofo$ 1 3 (literal (gentext-element-name 
 
170
                                            (current-node))))
 
171
        (empty-sosofo))
 
172
    (make sequence
 
173
          font-weight: 'medium
 
174
          font-family-name: %refentry-name-font-family%
 
175
          (process-children)
 
176
          (if (last-sibling? (current-node))
 
177
              (empty-sosofo)
 
178
              (literal (gentext-intra-label-sep (gi (current-node))))))))
 
179
 
 
180
(element refpurpose
 
181
  (make sequence
 
182
        font-family-name: %body-font-family%
 
183
    (make sequence
 
184
      (literal " \em-dash ")
 
185
      (process-children))
 
186
    (make paragraph-break)))
 
187
        
 
188
(element refdescriptor (empty-sosofo))
 
189
 
 
190
(element refclass
 
191
  (let ((role (attribute-string "role")))
 
192
    (make paragraph
 
193
          space-before: %para-sep%
 
194
          start-indent: %body-start-indent%
 
195
          quadding: 'start
 
196
          (make sequence
 
197
                font-weight: 'bold
 
198
                (literal
 
199
                  (if role
 
200
                      (string-append role ": ")
 
201
                      "")))
 
202
          (process-children-trim))))
 
203
 
 
204
(element refsynopsisdiv ($section$))
 
205
 
 
206
(element (refsynopsisdiv title) (empty-sosofo))
 
207
 
 
208
(element refsect1 ($section$))
 
209
(element (refsect1 title) (empty-sosofo))
 
210
(element refsect2 ($section$))
 
211
(element (refsect2 title) (empty-sosofo))
 
212
(element refsect3 ($section$))
 
213
(element (refsect3 title) (empty-sosofo))
 
214
 
 
215