source: stylesheets/lfs-xsl/docbook-xsl-1.78.1/fo/fop.xsl@ 15c7d39

10.0 10.0-rc1 10.1 10.1-rc1 11.0 11.0-rc1 11.0-rc2 11.0-rc3 11.1 11.1-rc1 11.2 11.2-rc1 11.3 11.3-rc1 12.0 12.0-rc1 12.1 12.1-rc1 7.5 7.6 7.7 7.8 7.9 8.0 8.1 8.2 8.3 8.4 9.0 9.1 arm bdubbs/gcc13 ml-11.0 multilib renodr/libudev-from-systemd s6-init trunk xry111/arm64 xry111/arm64-12.0 xry111/clfs-ng xry111/lfs-next xry111/loongarch xry111/loongarch-12.0 xry111/loongarch-12.1 xry111/mips64el xry111/pip3 xry111/rust-wip-20221008 xry111/update-glibc
Last change on this file since 15c7d39 was 15c7d39, checked in by Matthew Burgess <matthew@…>, 11 years ago

Update stylesheets to docbook-xsl-1.78.1.

git-svn-id: http://svn.linuxfromscratch.org/LFS/trunk/BOOK@10355 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689

  • Property mode set to 100644
File size: 4.2 KB
Line 
1<?xml version='1.0' encoding="utf-8"?>
2<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
3 xmlns:fo="http://www.w3.org/1999/XSL/Format"
4 xmlns:fox="http://xml.apache.org/fop/extensions"
5 version='1.0'>
6
7<!-- ********************************************************************
8 $Id: fop.xsl 7531 2007-10-17 18:06:49Z dcramer $
9 ********************************************************************
10 (c) Stephane Bline Peregrine Systems 2001
11 Driver file to allow pdf bookmarking (based on fop implementation).
12 ******************************************************************** -->
13<!--
14In PDF bookmarks can't be used characters with code>255. This version of file
15translates characters with code>255 back to ASCII.
16
17 Pavel Zampach (zampach@volny.cz)
18-->
19
20<xsl:variable name="a-dia" select=
21"'&#257;&#259;&#261;&#263;&#265;&#267;&#269;&#271;&#273;&#275;&#277;&#279;&#281;&#283;&#339;&#285;&#287;&#289;&#291;&#293;&#295;&#297;&#299;&#301;&#303;&#305;&#309;&#311;&#314;&#316;&#318;&#320;&#322;&#324;&#326;&#328;&#331;&#333;&#335;&#337;&#341;&#343;&#345;&#347;&#349;&#351;&#353;&#355;&#357;&#359;&#361;&#363;&#365;&#367;&#369;&#371;&#373;&#375;&#378;&#380;&#382;&#256;&#258;&#260;&#262;&#264;&#266;&#268;&#270;&#272;&#274;&#276;&#278;&#280;&#282;&#338;&#284;&#286;&#288;&#290;&#292;&#294;&#296;&#298;&#300;&#302;&#304;&#308;&#310;&#313;&#315;&#317;&#319;&#321;&#323;&#325;&#327;&#330;&#332;&#334;&#336;&#340;&#342;&#344;&#346;&#348;&#350;&#352;&#354;&#356;&#358;&#360;&#362;&#364;&#366;&#368;&#370;&#372;&#374;&#376;&#377;&#379;&#381;'"/>
22<xsl:variable name="a-asc" select=
23"'aaaccccddeeeeeegggghhiiiiijklllllnnnnooorrrsssstttuuuuuuwyzzzAAACCCCDDEEEEEEGGGGHHIIIIIJKLLLLLNNNNOOORRRSSSSTTTUUUUUUWYYZZZ'"/>
24
25<xsl:template match="*" mode="fop.outline">
26 <xsl:variable name="id">
27 <xsl:value-of select="(@id|@xml:id)[1]"/>
28 </xsl:variable>
29 <xsl:if test="$id != ''">
30 <fox:destination internal-destination="{$id}"/>
31 </xsl:if>
32 <xsl:apply-templates select="*" mode="fop.outline"/>
33</xsl:template>
34
35<xsl:template match="set|book|part|reference|preface|chapter|appendix|article
36 |glossary|bibliography|index|setindex
37 |refentry
38 |sect1|sect2|sect3|sect4|sect5|section"
39 mode="fop.outline">
40 <xsl:variable name="id">
41 <xsl:call-template name="object.id"/>
42 </xsl:variable>
43 <xsl:variable name="bookmark-label">
44 <xsl:apply-templates select="." mode="object.title.markup"/>
45 </xsl:variable>
46
47 <!-- Put the root element bookmark at the same level as its children -->
48 <!-- If the object is a set or book, generate a bookmark for the toc -->
49
50 <xsl:choose>
51 <xsl:when test="self::index and $generate.index = 0"/>
52 <xsl:when test="parent::*">
53 <fox:outline internal-destination="{$id}">
54 <fox:label>
55 <xsl:value-of select="normalize-space(translate($bookmark-label, $a-dia, $a-asc))"/>
56 </fox:label>
57 <xsl:apply-templates select="*" mode="fop.outline"/>
58 </fox:outline>
59 </xsl:when>
60 <xsl:otherwise>
61 <fox:outline internal-destination="{$id}">
62 <fox:label>
63 <xsl:value-of select="normalize-space(translate($bookmark-label, $a-dia, $a-asc))"/>
64 </fox:label>
65 </fox:outline>
66
67 <xsl:variable name="toc.params">
68 <xsl:call-template name="find.path.params">
69 <xsl:with-param name="table" select="normalize-space($generate.toc)"/>
70 </xsl:call-template>
71 </xsl:variable>
72
73 <xsl:if test="contains($toc.params, 'toc')
74 and (book|part|reference|preface|chapter|appendix|article
75 |glossary|bibliography|index|setindex
76 |refentry
77 |sect1|sect2|sect3|sect4|sect5|section)">
78 <fox:outline internal-destination="toc...{$id}">
79 <fox:label>
80 <xsl:call-template name="gentext">
81 <xsl:with-param name="key" select="'TableofContents'"/>
82 </xsl:call-template>
83 </fox:label>
84 </fox:outline>
85 </xsl:if>
86 <xsl:apply-templates select="*" mode="fop.outline"/>
87 </xsl:otherwise>
88 </xsl:choose>
89 <fox:destination internal-destination="{$id}"/>
90</xsl:template>
91
92</xsl:stylesheet>
93
Note: See TracBrowser for help on using the repository browser.