| [f8c4e94] | 1 | <?xml version='1.0' encoding='ISO-8859-1'?>
 | 
|---|
 | 2 | 
 | 
|---|
 | 3 | <!--
 | 
|---|
 | 4 | $LastChangedBy$
 | 
|---|
 | 5 | $Date$
 | 
|---|
 | 6 | -->
 | 
|---|
 | 7 | 
 | 
|---|
 | 8 | <!DOCTYPE xsl:stylesheet [
 | 
|---|
 | 9 | <!ENTITY lowercase "'AaÀàÁáÂâÃãÄäÅåĀāĂ㥹ǍǎǞǟǠǡǺǻȀȁȂȃȦȧḀḁẚẠạẢảẤấẦầẨẩẪẫẬậẮắẰằẲẳẴẵẶặBbƀƁɓƂƃḂḃḄḅḆḇCcÇçĆćĈĉĊċČčƇƈɕḈḉDdĎďĐđƊɗƋƌDžDzȡɖḊḋḌḍḎḏḐḑḒḓEeÈèÉéÊêËëĒēĔĕĖėĘęĚěȄȅȆȇȨȩḔḕḖḗḘḙḚḛḜḝẸẹẺẻẼẽẾếỀềỂểỄễỆệFfƑƒḞḟGgĜĝĞğĠġĢģƓɠǤǥǦǧǴǵḠḡHhĤĥĦħȞȟɦḢḣḤḥḦḧḨḩḪḫẖIiÌìÍíÎîÏïĨĩĪīĬĭĮįİƗɨǏǐȈȉȊȋḬḭḮḯỈỉỊịJjĴĵǰʝKkĶķƘƙǨǩḰḱḲḳḴḵLlĹĺĻļĽľĿŀŁłƚLjȴɫɬɭḶḷḸḹḺḻḼḽMmɱḾḿṀṁṂṃNnÑñŃńŅņŇňƝɲƞȠNjǸǹȵɳṄṅṆṇṈṉṊṋOoÒòÓóÔôÕõÖöØøŌōŎŏŐőƟƠơǑǒǪǫǬǭǾǿȌȍȎȏȪȫȬȭȮȯȰȱṌṍṎṏṐṑṒṓỌọỎỏỐốỒồỔổỖỗỘộỚớỜờỞởỠỡỢợPpƤƥṔṕṖṗQqʠRrŔŕŖŗŘřȐȑȒȓɼɽɾṘṙṚṛṜṝṞṟSsŚśŜŝŞşŠšȘșʂṠṡṢṣṤṥṦṧṨṩTtŢţŤťŦŧƫƬƭƮʈȚțȶṪṫṬṭṮṯṰṱẗUuÙùÚúÛûÜüŨũŪūŬŭŮůŰűŲųƯưǓǔǕǖǗǘǙǚǛǜȔȕȖȗṲṳṴṵṶṷṸṹṺṻỤụỦủỨứỪừỬửỮữỰựVvƲʋṼṽṾṿWwŴŵẀẁẂẃẄẅẆẇẈẉẘXxẊẋẌẍYyÝýÿŸŶŷƳƴȲȳẎẏẙỲỳỴỵỶỷỸỹZzŹźŻżŽžƵƶȤȥʐʑẐẑẒẓẔẕẕ'">
 | 
|---|
 | 10 | <!ENTITY uppercase "'AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBCCCCCCCCCCCCCCCCCDDDDDDDDDDDDDDDDDDDDDDDDEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEFFFFFFGGGGGGGGGGGGGGGGGGGGHHHHHHHHHHHHHHHHHHHHIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIJJJJJJKKKKKKKKKKKKKKLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOPPPPPPPPQQQRRRRRRRRRRRRRRRRRRRRRRRSSSSSSSSSSSSSSSSSSSSSSSTTTTTTTTTTTTTTTTTTTTTTTTTUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUVVVVVVVVWWWWWWWWWWWWWWWXXXXXXYYYYYYYYYYYYYYYYYYYYYYYZZZZZZZZZZZZZZZZZZZZZ'">
 | 
|---|
 | 11 | <!ENTITY primary   'normalize-space(concat(primary/@sortas, primary[not(@sortas) or @sortas = ""]))'>
 | 
|---|
 | 12 | <!ENTITY scope     "count(ancestor::node()|$scope) = count(ancestor::node()) and ($role = @role or $type = @type or (string-length($role) = 0 and string-length($type) = 0))">
 | 
|---|
 | 13 | ]>
 | 
|---|
 | 14 | 
 | 
|---|
 | 15 | <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
 | 
|---|
 | 16 |                 xmlns:fo="http://www.w3.org/1999/XSL/Format"
 | 
|---|
 | 17 |                 version="1.0">
 | 
|---|
 | 18 | 
 | 
|---|
 | 19 |   <!-- This stylesheet controls how the Index is generated.
 | 
|---|
 | 20 |        Entities comes from {docbook-xsl}/common/entities.ent -->
 | 
|---|
 | 21 | 
 | 
|---|
 | 22 |     <!-- Override for punctuation separating an index term from its list
 | 
|---|
 | 23 |          of page references. -->
 | 
|---|
 | 24 |   <xsl:param name="index.term.separator" select="': '"></xsl:param>
 | 
|---|
 | 25 | 
 | 
|---|
 | 26 |     <!-- Divisions title properties. -->
 | 
|---|
 | 27 |   <xsl:attribute-set name="index.div.title.properties">
 | 
|---|
 | 28 |     <xsl:attribute name="margin-left">0pt</xsl:attribute>
 | 
|---|
 | 29 |     <xsl:attribute name="font-size">14.4pt</xsl:attribute>
 | 
|---|
 | 30 |     <xsl:attribute name="font-family">
 | 
|---|
 | 31 |       <xsl:value-of select="$title.fontset"/>
 | 
|---|
 | 32 |     </xsl:attribute>
 | 
|---|
 | 33 |     <xsl:attribute name="font-weight">bold</xsl:attribute>
 | 
|---|
 | 34 |     <xsl:attribute name="keep-with-next.within-column">always</xsl:attribute>
 | 
|---|
 | 35 |     <xsl:attribute name="space-before.optimum">1em</xsl:attribute>
 | 
|---|
 | 36 |     <xsl:attribute name="space-before.minimum">0.8em</xsl:attribute>
 | 
|---|
 | 37 |     <xsl:attribute name="space-before.maximum">1.2em</xsl:attribute>
 | 
|---|
 | 38 |     <xsl:attribute name="space-after.optimum">0.5em</xsl:attribute>
 | 
|---|
 | 39 |     <xsl:attribute name="space-after.minimum">0.3em</xsl:attribute>
 | 
|---|
 | 40 |     <xsl:attribute name="space-after.maximum">0.7em</xsl:attribute>
 | 
|---|
 | 41 |     <xsl:attribute name="start-indent">0pt</xsl:attribute>
 | 
|---|
 | 42 |   </xsl:attribute-set>
 | 
|---|
 | 43 | 
 | 
|---|
 | 44 |     <!-- Properties applied to the block containing entries in an Index. -->
 | 
|---|
 | 45 |   <xsl:attribute-set name="index.entry.properties">
 | 
|---|
 | 46 |     <xsl:attribute name="start-indent">0.5pc</xsl:attribute>
 | 
|---|
 | 47 |   </xsl:attribute-set>
 | 
|---|
 | 48 | 
 | 
|---|
 | 49 |     <!-- Divisions:
 | 
|---|
 | 50 |           Translate alphabetical divisons titles to by-type titles. -->
 | 
|---|
 | 51 |     <!-- The original template is in {docbook-xsl}/fo/autoidx.xsl -->
 | 
|---|
 | 52 |   <xsl:template match="indexterm" mode="index-div-basic">
 | 
|---|
 | 53 |     <xsl:param name="scope" select="."/>
 | 
|---|
 | 54 |     <xsl:param name="role" select="''"/>
 | 
|---|
 | 55 |     <xsl:param name="type" select="''"/>
 | 
|---|
 | 56 |     <xsl:variable name="key"
 | 
|---|
 | 57 |                   select="translate(substring(&primary;, 1, 1),&lowercase;,&uppercase;)"/>
 | 
|---|
 | 58 |     <xsl:variable name="divtitle" select="translate($key, &lowercase;, &uppercase;)"/>
 | 
|---|
 | 59 |     <xsl:if test="key('letter', $key)[&scope;]
 | 
|---|
 | 60 |                   [count(.|key('primary', &primary;)[&scope;][1]) = 1]">
 | 
|---|
 | 61 |       <fo:block>
 | 
|---|
 | 62 |         <xsl:if test="contains(concat(&lowercase;, &uppercase;), $key)">
 | 
|---|
 | 63 |           <xsl:call-template name="indexdiv.title">
 | 
|---|
 | 64 |             <xsl:with-param name="titlecontent">
 | 
|---|
 | 65 |               <xsl:choose>
 | 
|---|
 | 66 |                 <xsl:when test="$divtitle = 'A'">
 | 
|---|
 | 67 |                   <xsl:call-template name="gentext">
 | 
|---|
 | 68 |                     <xsl:with-param name="key">Packages</xsl:with-param>
 | 
|---|
 | 69 |                   </xsl:call-template>
 | 
|---|
 | 70 |                 </xsl:when>
 | 
|---|
 | 71 |                 <xsl:when test="$divtitle = 'B'">
 | 
|---|
 | 72 |                   <xsl:call-template name="gentext">
 | 
|---|
 | 73 |                     <xsl:with-param name="key">Programs</xsl:with-param>
 | 
|---|
 | 74 |                   </xsl:call-template>
 | 
|---|
 | 75 |                 </xsl:when>
 | 
|---|
 | 76 |                 <xsl:when test="$divtitle = 'C'">
 | 
|---|
 | 77 |                   <xsl:call-template name="gentext">
 | 
|---|
 | 78 |                     <xsl:with-param name="key">Libraries</xsl:with-param>
 | 
|---|
 | 79 |                   </xsl:call-template>
 | 
|---|
 | 80 |                 </xsl:when>
 | 
|---|
 | 81 |                 <xsl:when test="$divtitle = 'D'">
 | 
|---|
 | 82 |                   <xsl:choose>
 | 
|---|
 | 83 |                     <xsl:when test="$book-type = 'blfs'">
 | 
|---|
 | 84 |                       <xsl:call-template name="gentext">
 | 
|---|
 | 85 |                         <xsl:with-param name="key">Kernel Configuration</xsl:with-param>
 | 
|---|
 | 86 |                       </xsl:call-template>
 | 
|---|
 | 87 |                     </xsl:when>
 | 
|---|
 | 88 |                     <xsl:otherwise>
 | 
|---|
 | 89 |                       <xsl:call-template name="gentext">
 | 
|---|
 | 90 |                         <xsl:with-param name="key">Scripts</xsl:with-param>
 | 
|---|
 | 91 |                       </xsl:call-template>
 | 
|---|
 | 92 |                     </xsl:otherwise>
 | 
|---|
 | 93 |                   </xsl:choose>
 | 
|---|
 | 94 |                 </xsl:when>
 | 
|---|
 | 95 |                 <xsl:when test="$divtitle = 'E'">
 | 
|---|
 | 96 |                   <xsl:choose>
 | 
|---|
 | 97 |                     <xsl:when test="$book-type = 'blfs'">
 | 
|---|
 | 98 |                       <xsl:call-template name="gentext">
 | 
|---|
 | 99 |                         <xsl:with-param name="key">Configuration Files</xsl:with-param>
 | 
|---|
 | 100 |                       </xsl:call-template>
 | 
|---|
 | 101 |                     </xsl:when>
 | 
|---|
 | 102 |                     <xsl:otherwise>
 | 
|---|
 | 103 |                       <xsl:call-template name="gentext">
 | 
|---|
 | 104 |                         <xsl:with-param name="key">Others</xsl:with-param>
 | 
|---|
 | 105 |                       </xsl:call-template>
 | 
|---|
 | 106 |                     </xsl:otherwise>
 | 
|---|
 | 107 |                   </xsl:choose>
 | 
|---|
 | 108 |                 </xsl:when>
 | 
|---|
 | 109 |                 <xsl:when test="$divtitle = 'F'">
 | 
|---|
 | 110 |                     <xsl:call-template name="gentext">
 | 
|---|
 | 111 |                       <xsl:with-param name="key">Bootscripts</xsl:with-param>
 | 
|---|
 | 112 |                     </xsl:call-template>
 | 
|---|
 | 113 |                 </xsl:when>
 | 
|---|
 | 114 |                 <xsl:when test="$divtitle = 'G'">
 | 
|---|
 | 115 |                     <xsl:call-template name="gentext">
 | 
|---|
 | 116 |                       <xsl:with-param name="key">Others</xsl:with-param>
 | 
|---|
 | 117 |                     </xsl:call-template>
 | 
|---|
 | 118 |                 </xsl:when>
 | 
|---|
 | 119 |                 <xsl:otherwise>
 | 
|---|
 | 120 |                   <xsl:value-of select="$divtitle"/>
 | 
|---|
 | 121 |                 </xsl:otherwise>
 | 
|---|
 | 122 |               </xsl:choose>
 | 
|---|
 | 123 |             </xsl:with-param>
 | 
|---|
 | 124 |           </xsl:call-template>
 | 
|---|
 | 125 |         </xsl:if>
 | 
|---|
 | 126 |         <fo:block xsl:use-attribute-sets="index.entry.properties">
 | 
|---|
 | 127 |           <xsl:apply-templates select="key('letter', $key)[&scope;]
 | 
|---|
 | 128 |                                       [count(.|key('primary', &primary;)[&scope;][1])=1]"
 | 
|---|
 | 129 |                               mode="index-primary">
 | 
|---|
 | 130 |             <xsl:sort select="translate(&primary;, &lowercase;, &uppercase;)"/>
 | 
|---|
 | 131 |             <xsl:with-param name="scope" select="$scope"/>
 | 
|---|
 | 132 |             <xsl:with-param name="role" select="$role"/>
 | 
|---|
 | 133 |             <xsl:with-param name="type" select="$type"/>
 | 
|---|
 | 134 |           </xsl:apply-templates>
 | 
|---|
 | 135 |         </fo:block>
 | 
|---|
 | 136 |       </fo:block>
 | 
|---|
 | 137 |     </xsl:if>
 | 
|---|
 | 138 |   </xsl:template>
 | 
|---|
 | 139 | 
 | 
|---|
 | 140 | </xsl:stylesheet>
 | 
|---|