]>
Commit | Line | Data |
---|---|---|
7c673cae FG |
1 | <?xml version="1.0" encoding="utf-8"?> |
2 | <!-- Copyright 2003 Douglas Gregor --> | |
3 | <!-- Distributed under the Boost Software License, Version 1.0. --> | |
4 | <!-- (See accompanying file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt) --> | |
5 | ||
6 | <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" | |
7 | xmlns:fo="http://www.w3.org/1999/XSL/Format" | |
8 | version="1.0"> | |
9 | ||
10 | <!-- Import the FO stylesheet --> | |
11 | <xsl:import | |
12 | href="http://docbook.sourceforge.net/release/xsl/current/fo/docbook.xsl"/> | |
13 | ||
14 | <xsl:param name="chapter.autolabel" select="0"/> | |
15 | <xsl:param name="refentry.generate.name" select="0"/> | |
16 | <xsl:param name="refentry.generate.title" select="1"/> | |
17 | <xsl:param name="fop1.extensions" select="1"/> | |
18 | <xsl:param name="make.year.ranges" select="1"/> | |
19 | <xsl:param name="ulink.show" select="0"/> | |
20 | ||
21 | ||
22 | <!-- | |
23 | The following code sets which sections start new pages in the PDF document flow. | |
24 | ||
25 | The parameter "boost.section.newpage.depth" set how far down the hierarchy the | |
26 | page breaks go. Defaults to 1 (the same as html chunking), in which case only | |
27 | top level sections start a new page, set to a higher value to force nested sections | |
28 | onto new pages as well. | |
29 | ||
30 | For top level sections (level 1), we use "break-before" which forces the very first | |
31 | section onto a separate page from the TOC. | |
32 | ||
33 | For nested sections (level 2 and greater) we use "break-after" which keeps nested | |
34 | sections together with their enclosing section (rationale: the enclosing section | |
35 | often has nothing but a title, and no content except the nested sections, and we | |
36 | don't want a page break right after a section title!). | |
37 | ||
38 | For reference sections, we turn page breaks *off* by setting "refentry.pagebreak" to 0. | |
39 | This is for the same reason we use "break-after" for nested sections - we want reference | |
40 | entries to be on the same page as the title and synopsis which encloses them. Ideally | |
41 | we'd use "break-after" here too, but I can't find an easy to to fix that. | |
42 | ||
43 | Finally note that TOC's and Indexes don't get page breaks forced after them. | |
44 | Again there's no easy fix here, *except* for the top level TOC which gets a page break | |
45 | after it thanks to the "break-before" on level 1 sections. Unfortunately this means | |
46 | there's no break after the last section and before the first Index, *unless* the | |
47 | final section has nested sections which may then trigger one! | |
48 | ||
49 | We could fix all this by cut-and-pasting the relevant XSL from the stylesheets to here | |
50 | and making sure everything uses "break-after", but whether it's worth it is questionable...? | |
51 | ||
52 | --> | |
53 | ||
54 | <xsl:param name="boost.section.newpage.depth" select="1"/> | |
55 | <xsl:param name="refentry.pagebreak" select="0"/> | |
56 | ||
57 | <xsl:attribute-set name="section.level1.properties" use-attribute-sets="section.properties"> | |
58 | <xsl:attribute name="break-before"> | |
59 | <xsl:if test="($boost.section.newpage.depth > 0)"> | |
60 | page | |
61 | </xsl:if> | |
62 | <xsl:if test="not($boost.section.newpage.depth > 0)"> | |
63 | auto | |
64 | </xsl:if> | |
65 | </xsl:attribute> | |
66 | </xsl:attribute-set> | |
67 | ||
68 | <xsl:attribute-set name="section.level2.properties" use-attribute-sets="section.properties"> | |
69 | <xsl:attribute name="break-after"> | |
70 | <xsl:if test="($boost.section.newpage.depth > 1)"> | |
71 | page | |
72 | </xsl:if> | |
73 | <xsl:if test="not($boost.section.newpage.depth > 1)"> | |
74 | auto | |
75 | </xsl:if> | |
76 | </xsl:attribute> | |
77 | </xsl:attribute-set> | |
78 | ||
79 | <xsl:attribute-set name="section.level3.properties" use-attribute-sets="section.properties"> | |
80 | <xsl:attribute name="break-after"> | |
81 | <xsl:if test="($boost.section.newpage.depth > 2)"> | |
82 | page | |
83 | </xsl:if> | |
84 | <xsl:if test="not($boost.section.newpage.depth > 2)"> | |
85 | auto | |
86 | </xsl:if> | |
87 | </xsl:attribute> | |
88 | </xsl:attribute-set> | |
89 | ||
90 | <xsl:attribute-set name="section.level4.properties" use-attribute-sets="section.properties"> | |
91 | <xsl:attribute name="break-after"> | |
92 | <xsl:if test="($boost.section.newpage.depth > 3)"> | |
93 | page | |
94 | </xsl:if> | |
95 | <xsl:if test="not($boost.section.newpage.depth > 3)"> | |
96 | auto | |
97 | </xsl:if> | |
98 | </xsl:attribute> | |
99 | </xsl:attribute-set> | |
100 | ||
101 | <xsl:attribute-set name="section.level5.properties" use-attribute-sets="section.properties"> | |
102 | <xsl:attribute name="break-after"> | |
103 | <xsl:if test="($boost.section.newpage.depth > 4)"> | |
104 | page | |
105 | </xsl:if> | |
106 | <xsl:if test="not($boost.section.newpage.depth > 4)"> | |
107 | auto | |
108 | </xsl:if> | |
109 | </xsl:attribute> | |
110 | </xsl:attribute-set> | |
111 | ||
112 | <xsl:attribute-set name="section.level6.properties" use-attribute-sets="section.properties"> | |
113 | <xsl:attribute name="break-after"> | |
114 | <xsl:if test="($boost.section.newpage.depth > 5)"> | |
115 | page | |
116 | </xsl:if> | |
117 | <xsl:if test="not($boost.section.newpage.depth > 5)"> | |
118 | auto | |
119 | </xsl:if> | |
120 | </xsl:attribute> | |
121 | </xsl:attribute-set> | |
122 | ||
123 | <!-- The question and answer templates are copied here from the | |
124 | 1.61.3 DocBook XSL stylesheets so that we can eliminate the emission | |
125 | of id attributes in the emitted fo:list-item-label elements. FOP | |
126 | 0.20.5 has problems with these id attributes, and they are otherwise | |
127 | unused. --> | |
128 | <xsl:template match="question"> | |
129 | <xsl:variable name="id"><xsl:call-template name="object.id"/></xsl:variable> | |
130 | ||
131 | <xsl:variable name="entry.id"> | |
132 | <xsl:call-template name="object.id"> | |
133 | <xsl:with-param name="object" select="parent::*"/> | |
134 | </xsl:call-template> | |
135 | </xsl:variable> | |
136 | ||
137 | <xsl:variable name="deflabel"> | |
138 | <xsl:choose> | |
139 | <xsl:when test="ancestor-or-self::*[@defaultlabel]"> | |
140 | <xsl:value-of select="(ancestor-or-self::*[@defaultlabel])[last()] | |
141 | /@defaultlabel"/> | |
142 | </xsl:when> | |
143 | <xsl:otherwise> | |
144 | <xsl:value-of select="$qanda.defaultlabel"/> | |
145 | </xsl:otherwise> | |
146 | </xsl:choose> | |
147 | </xsl:variable> | |
148 | ||
149 | <fo:list-item id="{$entry.id}" xsl:use-attribute-sets="list.item.spacing"> | |
150 | <fo:list-item-label end-indent="label-end()"> | |
151 | <xsl:choose> | |
152 | <xsl:when test="$deflabel = 'none'"> | |
153 | <fo:block/> | |
154 | </xsl:when> | |
155 | <xsl:otherwise> | |
156 | <fo:block> | |
157 | <xsl:apply-templates select="." mode="label.markup"/> | |
158 | <xsl:text>.</xsl:text> <!-- FIXME: Hack!!! This should be in the locale! --> | |
159 | </fo:block> | |
160 | </xsl:otherwise> | |
161 | </xsl:choose> | |
162 | </fo:list-item-label> | |
163 | <fo:list-item-body start-indent="body-start()"> | |
164 | <xsl:choose> | |
165 | <xsl:when test="$deflabel = 'none'"> | |
166 | <fo:block font-weight="bold"> | |
167 | <xsl:apply-templates select="*[local-name(.)!='label']"/> | |
168 | </fo:block> | |
169 | </xsl:when> | |
170 | <xsl:otherwise> | |
171 | <xsl:apply-templates select="*[local-name(.)!='label']"/> | |
172 | </xsl:otherwise> | |
173 | </xsl:choose> | |
174 | </fo:list-item-body> | |
175 | </fo:list-item> | |
176 | </xsl:template> | |
177 | ||
178 | <xsl:template match="answer"> | |
179 | <xsl:variable name="id"><xsl:call-template name="object.id"/></xsl:variable> | |
180 | <xsl:variable name="entry.id"> | |
181 | <xsl:call-template name="object.id"> | |
182 | <xsl:with-param name="object" select="parent::*"/> | |
183 | </xsl:call-template> | |
184 | </xsl:variable> | |
185 | ||
186 | <xsl:variable name="deflabel"> | |
187 | <xsl:choose> | |
188 | <xsl:when test="ancestor-or-self::*[@defaultlabel]"> | |
189 | <xsl:value-of select="(ancestor-or-self::*[@defaultlabel])[last()] | |
190 | /@defaultlabel"/> | |
191 | </xsl:when> | |
192 | <xsl:otherwise> | |
193 | <xsl:value-of select="$qanda.defaultlabel"/> | |
194 | </xsl:otherwise> | |
195 | </xsl:choose> | |
196 | </xsl:variable> | |
197 | ||
198 | <fo:list-item xsl:use-attribute-sets="list.item.spacing"> | |
199 | <fo:list-item-label end-indent="label-end()"> | |
200 | <xsl:choose> | |
201 | <xsl:when test="$deflabel = 'none'"> | |
202 | <fo:block/> | |
203 | </xsl:when> | |
204 | <xsl:otherwise> | |
205 | <fo:block> | |
206 | <!-- FIXME: Hack!!! This should be in the locale! --> | |
207 | <xsl:variable name="answer.label"> | |
208 | <xsl:apply-templates select="." mode="label.markup"/> | |
209 | </xsl:variable> | |
210 | <xsl:copy-of select="$answer.label"/> | |
211 | <xsl:if test="string($answer.label) != ''"> | |
212 | <xsl:text>.</xsl:text> | |
213 | </xsl:if> | |
214 | </fo:block> | |
215 | </xsl:otherwise> | |
216 | </xsl:choose> | |
217 | </fo:list-item-label> | |
218 | <fo:list-item-body start-indent="body-start()"> | |
219 | <xsl:apply-templates select="*[local-name(.)!='label']"/> | |
220 | </fo:list-item-body> | |
221 | </fo:list-item> | |
222 | </xsl:template> | |
223 | ||
224 | ||
225 | <!-- | |
226 | ||
227 | The following rules apply text coloring to Quickbook items like | |
228 | ||
229 | [role blue Some blue text] | |
230 | ||
231 | These correspond to an arbitrary list of colors added to the CSS file | |
232 | ||
233 | $(BOOST-ROOT)\doc\src\boostbook.css | |
234 | ||
235 | and are required for building pdf documentation. | |
236 | ||
237 | A more elegant way of doing this is probably possible. | |
238 | Other colors can be added simply by copying these examples. | |
239 | --> | |
240 | ||
241 | <xsl:template match="phrase[@role='red']"> | |
242 | <fo:inline color="red"> | |
243 | <xsl:apply-templates/> | |
244 | </fo:inline> | |
245 | </xsl:template> | |
246 | ||
247 | <xsl:template match="phrase[@role='blue']"> | |
248 | <fo:inline color="blue"> | |
249 | <xsl:apply-templates/> | |
250 | </fo:inline> | |
251 | </xsl:template> | |
252 | ||
253 | <xsl:template match="phrase[@role='green']"> | |
254 | <fo:inline color="green"> | |
255 | <xsl:apply-templates/> | |
256 | </fo:inline> | |
257 | </xsl:template> | |
258 | <xsl:template match="phrase[@role='lime']"> | |
259 | <fo:inline color="lime"> | |
260 | <xsl:apply-templates/> | |
261 | </fo:inline> | |
262 | </xsl:template> | |
263 | <xsl:template match="phrase[@role='navy']"> | |
264 | <fo:inline color="navy"> | |
265 | <xsl:apply-templates/> | |
266 | </fo:inline> | |
267 | </xsl:template> | |
268 | <xsl:template match="phrase[@role='yellow']"> | |
269 | <fo:inline color="yellow"> | |
270 | <xsl:apply-templates/> | |
271 | </fo:inline> | |
272 | </xsl:template> | |
273 | <xsl:template match="phrase[@role='magenta']"> | |
274 | <fo:inline color="magenta"> | |
275 | <xsl:apply-templates/> | |
276 | </fo:inline> | |
277 | </xsl:template> | |
278 | ||
279 | <xsl:template match="phrase[@role='indigo']"> | |
280 | <fo:inline color="indigo"> | |
281 | <xsl:apply-templates/> | |
282 | </fo:inline> | |
283 | </xsl:template> | |
284 | ||
285 | <xsl:template match="phrase[@role='cyan']"> | |
286 | <fo:inline color="cyan"> | |
287 | <xsl:apply-templates/> | |
288 | </fo:inline> | |
289 | </xsl:template> | |
290 | ||
291 | <xsl:template match="phrase[@role='purple']"> | |
292 | <fo:inline color="purple"> | |
293 | <xsl:apply-templates/> | |
294 | </fo:inline> | |
295 | </xsl:template> | |
296 | ||
297 | <xsl:template match="phrase[@role='gold']"> | |
298 | <fo:inline color="gold"> | |
299 | <xsl:apply-templates/> | |
300 | </fo:inline> | |
301 | </xsl:template> | |
302 | ||
303 | <xsl:template match="phrase[@role='silver']"> | |
304 | <fo:inline color="silver"> | |
305 | <xsl:apply-templates/> | |
306 | </fo:inline> | |
307 | </xsl:template> | |
308 | ||
309 | <xsl:template match="phrase[@role='gray']"> | |
310 | <fo:inline color="gray"> | |
311 | <xsl:apply-templates/> | |
312 | </fo:inline> | |
313 | </xsl:template> | |
314 | ||
315 | <!-- alignment --> | |
316 | ||
317 | <xsl:template match="phrase[@role='aligncenter']"> | |
318 | <fo:inline> | |
319 | <fo:block text-align="center"> | |
320 | <xsl:apply-templates/> | |
321 | </fo:block> | |
322 | </fo:inline> | |
323 | </xsl:template> | |
324 | ||
325 | <xsl:template match="phrase[@role='alignleft']"> | |
326 | <fo:inline> | |
327 | <fo:block text-align="left"> | |
328 | <xsl:apply-templates/> | |
329 | </fo:block> | |
330 | </fo:inline> | |
331 | </xsl:template> | |
332 | ||
333 | <xsl:template match="phrase[@role='alignright']"> | |
334 | <fo:inline> | |
335 | <fo:block text-align="right"> | |
336 | <xsl:apply-templates/> | |
337 | </fo:block> | |
338 | </fo:inline> | |
339 | </xsl:template> | |
340 | ||
341 | <xsl:template match="phrase[@role='alignjustify']"> | |
342 | <fo:inline> | |
343 | <fo:block text-align="justify"> | |
344 | <xsl:apply-templates/> | |
345 | </fo:block> | |
346 | </fo:inline> | |
347 | </xsl:template> | |
348 | ||
349 | <!-- | |
350 | ||
351 | The following rules apply syntax highlighting to phrases | |
352 | that have been appropriately marked up, the highlighting | |
353 | used is the same as that used by our CSS style sheets, | |
354 | but potentially we have the option to do better here | |
355 | since we can add bold and italic formatting quite easily | |
356 | ||
357 | --> | |
358 | ||
359 | <xsl:template match="//phrase[@role='keyword' and | |
360 | (ancestor::programlisting or | |
361 | ancestor::synopsis or | |
362 | ancestor::literallayout)]"> | |
363 | <fo:inline color="#0000AA"><xsl:apply-templates/></fo:inline> | |
364 | </xsl:template> | |
365 | <xsl:template match="//phrase[@role='special' and | |
366 | (ancestor::programlisting or | |
367 | ancestor::synopsis or | |
368 | ancestor::literallayout)]"> | |
369 | <fo:inline color="#707070"><xsl:apply-templates/></fo:inline> | |
370 | </xsl:template> | |
371 | <xsl:template match="//phrase[@role='preprocessor' and | |
372 | (ancestor::programlisting or | |
373 | ancestor::synopsis or | |
374 | ancestor::literallayout)]"> | |
375 | <fo:inline color="#402080"><xsl:apply-templates/></fo:inline> | |
376 | </xsl:template> | |
377 | <xsl:template match="//phrase[@role='char' and | |
378 | (ancestor::programlisting or | |
379 | ancestor::synopsis or | |
380 | ancestor::literallayout)]"> | |
381 | <fo:inline color="teal"><xsl:apply-templates/></fo:inline> | |
382 | </xsl:template> | |
383 | <xsl:template match="//phrase[@role='comment' and | |
384 | (ancestor::programlisting or | |
385 | ancestor::synopsis or | |
386 | ancestor::literallayout)]"> | |
387 | <fo:inline color="#800000"><xsl:apply-templates/></fo:inline> | |
388 | </xsl:template> | |
389 | <xsl:template match="//phrase[@role='string' and | |
390 | (ancestor::programlisting or | |
391 | ancestor::synopsis or | |
392 | ancestor::literallayout)]"> | |
393 | <fo:inline color="teal"><xsl:apply-templates/></fo:inline> | |
394 | </xsl:template> | |
395 | <xsl:template match="//phrase[@role='number' and | |
396 | (ancestor::programlisting or | |
397 | ancestor::synopsis or | |
398 | ancestor::literallayout)]"> | |
399 | <fo:inline color="teal"><xsl:apply-templates/></fo:inline> | |
400 | </xsl:template> | |
401 | <xsl:template match="//phrase[@role='white_bkd' and | |
402 | (ancestor::programlisting or | |
403 | ancestor::synopsis or | |
404 | ancestor::literallayout)]"> | |
405 | <fo:inline color="#FFFFFF"><xsl:apply-templates/></fo:inline> | |
406 | </xsl:template> | |
407 | <xsl:template match="//phrase[@role='dk_grey_bkd' and | |
408 | (ancestor::programlisting or | |
409 | ancestor::synopsis or | |
410 | ancestor::literallayout)]"> | |
411 | <fo:inline color="#999999"><xsl:apply-templates/></fo:inline> | |
412 | </xsl:template> | |
413 | ||
414 | <!-- | |
415 | Make all hyperlinks blue colored: | |
416 | --> | |
417 | <xsl:attribute-set name="xref.properties"> | |
418 | <xsl:attribute name="color">blue</xsl:attribute> | |
419 | </xsl:attribute-set> | |
420 | ||
421 | <!-- | |
422 | Put a box around admonishments and keep them together: | |
423 | --> | |
424 | <xsl:attribute-set name="graphical.admonition.properties"> | |
425 | <xsl:attribute name="border-color">#FF8080</xsl:attribute> | |
426 | <xsl:attribute name="border-width">1px</xsl:attribute> | |
427 | <xsl:attribute name="border-style">solid</xsl:attribute> | |
428 | <xsl:attribute name="padding-left">0.2cm</xsl:attribute> | |
429 | <xsl:attribute name="padding-right">0.2cm</xsl:attribute> | |
430 | <xsl:attribute name="padding-top">0.2cm</xsl:attribute> | |
431 | <xsl:attribute name="padding-bottom">0.2cm</xsl:attribute> | |
432 | <xsl:attribute name="keep-together.within-page">1</xsl:attribute> | |
433 | <xsl:attribute name="margin-left">0pt</xsl:attribute> | |
434 | <xsl:attribute name="margin-right">0pt</xsl:attribute> | |
435 | </xsl:attribute-set> | |
436 | ||
437 | <!-- | |
438 | Put a box around code blocks, also set the font size | |
439 | and keep the block together if we can using the widows | |
440 | and orphans controls. Hyphenation and line wrapping | |
441 | is also turned on, so that long lines of code don't | |
442 | bleed off the edge of the page, a carriage return | |
443 | symbol is used as the hyphenation character: | |
444 | --> | |
445 | <xsl:attribute-set name="monospace.verbatim.properties"> | |
446 | <xsl:attribute name="border-color">#DCDCDC</xsl:attribute> | |
447 | <xsl:attribute name="border-width">1px</xsl:attribute> | |
448 | <xsl:attribute name="border-style">solid</xsl:attribute> | |
449 | <xsl:attribute name="padding-left">0.2cm</xsl:attribute> | |
450 | <xsl:attribute name="padding-right">0.2cm</xsl:attribute> | |
451 | <xsl:attribute name="padding-top">0.2cm</xsl:attribute> | |
452 | <xsl:attribute name="padding-bottom">0.2cm</xsl:attribute> | |
453 | <xsl:attribute name="widows">6</xsl:attribute> | |
454 | <xsl:attribute name="orphans">40</xsl:attribute> | |
455 | <xsl:attribute name="font-size">9pt</xsl:attribute> | |
456 | <xsl:attribute name="hyphenate">true</xsl:attribute> | |
457 | <xsl:attribute name="wrap-option">wrap</xsl:attribute> | |
458 | <xsl:attribute name="hyphenation-character">↵</xsl:attribute> | |
459 | <xsl:attribute name="margin-left">0pt</xsl:attribute> | |
460 | <xsl:attribute name="margin-right">0pt</xsl:attribute> | |
461 | </xsl:attribute-set> | |
462 | ||
463 | <xsl:param name="hyphenate.verbatim" select="1"></xsl:param> | |
464 | <xsl:param name="monospace.font.family">monospace,Symbol</xsl:param> | |
465 | ||
466 | <!--Regular monospace text should have the same font size as code blocks etc--> | |
467 | <xsl:attribute-set name="monospace.properties"> | |
468 | <xsl:attribute name="font-size">9pt</xsl:attribute> | |
469 | </xsl:attribute-set> | |
470 | ||
471 | <!-- | |
472 | Put some small amount of padding around table cells, and keep tables | |
473 | together on one page if possible: | |
474 | --> | |
475 | <xsl:attribute-set name="table.cell.padding"> | |
476 | <xsl:attribute name="padding-left">0.2cm</xsl:attribute> | |
477 | <xsl:attribute name="padding-right">0.2cm</xsl:attribute> | |
478 | <xsl:attribute name="padding-top">0.2cm</xsl:attribute> | |
479 | <xsl:attribute name="padding-bottom">0.2cm</xsl:attribute> | |
480 | </xsl:attribute-set> | |
481 | ||
482 | <!--Formal and informal tables have the same properties | |
483 | Using widow-and-orphan control here gives much better | |
484 | results for very large tables than a simple "keep-together" | |
485 | instruction--> | |
486 | <xsl:attribute-set name="table.properties"> | |
487 | <xsl:attribute name="keep-together.within-page">1</xsl:attribute> | |
488 | </xsl:attribute-set> | |
489 | <xsl:attribute-set name="informaltable.properties"> | |
490 | <xsl:attribute name="keep-together.within-page">1</xsl:attribute> | |
491 | </xsl:attribute-set> | |
492 | ||
493 | <!-- | |
494 | General default options go here: | |
495 | * Borders are mid-grey. | |
496 | * Body text is not indented compared to the titles. | |
497 | * Page margins are a rather small 0.5in, but we need | |
498 | all the space we can get for code blocks. | |
499 | * Paper size is A4: an ISO standard, slightly taller and narrower than US Letter. | |
500 | * Use SVG graphics for admonishments: the bitmaps look awful in PDF's. | |
501 | * Disable draft mode so we're not constantly trying to download the necessary graphic. | |
502 | * Set default image paths to pull down direct from SVN: individual Jamfiles can override this | |
503 | and pass an absolute path to local versions of the images, but we can't get that here, so | |
504 | we'll use SVN instead so that most things "just work". | |
505 | --> | |
506 | <xsl:param name="table.frame.border.color">#DCDCDC</xsl:param> | |
507 | <xsl:param name="table.cell.border.color">#DCDCDC</xsl:param> | |
508 | <xsl:param name="body.start.indent">0pt</xsl:param> | |
509 | <xsl:param name="page.margin.inner">0.5in</xsl:param> | |
510 | <xsl:param name="page.margin.outer">0.5in</xsl:param> | |
511 | <xsl:param name="paper.type">A4</xsl:param> | |
512 | <xsl:param name="admon.graphics">1</xsl:param> | |
513 | <xsl:param name="admon.graphics.extension">.svg</xsl:param> | |
514 | <xsl:param name="draft.mode">no</xsl:param> | |
b32b8144 FG |
515 | <xsl:param name="admon.graphics.path">http://www.boost.org/doc/libs/develop/doc/src/images/</xsl:param> |
516 | <xsl:param name="callout.graphics.path">http://www.boost.org/doc/libs/develop/doc/src/images/callouts/</xsl:param> | |
517 | <xsl:param name="img.src.path">http://www.boost.org/doc/libs/devlop/doc/html/</xsl:param> | |
7c673cae FG |
518 | |
519 | </xsl:stylesheet> | |
520 |