git-scribe 0.0.3 → 0.0.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (1253) hide show
  1. data/docbook-xsl/COPYING +47 -0
  2. data/docbook-xsl/VERSION +115 -0
  3. data/docbook-xsl/catalog.xml +8 -0
  4. data/docbook-xsl/common.xsl +87 -0
  5. data/docbook-xsl/common/af.xml +1229 -0
  6. data/docbook-xsl/common/am.xml +1229 -0
  7. data/docbook-xsl/common/ar.xml +1229 -0
  8. data/docbook-xsl/common/autoidx-kimber.xsl +43 -0
  9. data/docbook-xsl/common/autoidx-kosek.xsl +150 -0
  10. data/docbook-xsl/common/az.xml +672 -0
  11. data/docbook-xsl/common/bg.xml +724 -0
  12. data/docbook-xsl/common/bn.xml +1229 -0
  13. data/docbook-xsl/common/bs.xml +662 -0
  14. data/docbook-xsl/common/ca.xml +1229 -0
  15. data/docbook-xsl/common/charmap.xml +185 -0
  16. data/docbook-xsl/common/charmap.xsl +221 -0
  17. data/docbook-xsl/common/common.xml +622 -0
  18. data/docbook-xsl/common/common.xsl +2019 -0
  19. data/docbook-xsl/common/cs.xml +700 -0
  20. data/docbook-xsl/common/cy.xml +1245 -0
  21. data/docbook-xsl/common/da.xml +664 -0
  22. data/docbook-xsl/common/de.xml +666 -0
  23. data/docbook-xsl/common/el.xml +1229 -0
  24. data/docbook-xsl/common/en.xml +1229 -0
  25. data/docbook-xsl/common/entities.ent +60 -0
  26. data/docbook-xsl/common/eo.xml +1229 -0
  27. data/docbook-xsl/common/es.xml +676 -0
  28. data/docbook-xsl/common/et.xml +1229 -0
  29. data/docbook-xsl/common/eu.xml +1229 -0
  30. data/docbook-xsl/common/fa.xml +1229 -0
  31. data/docbook-xsl/common/fi.xml +670 -0
  32. data/docbook-xsl/common/fr.xml +690 -0
  33. data/docbook-xsl/common/ga.xml +1229 -0
  34. data/docbook-xsl/common/gentext.xsl +836 -0
  35. data/docbook-xsl/common/gl.xml +1229 -0
  36. data/docbook-xsl/common/gu.xml +1229 -0
  37. data/docbook-xsl/common/he.xml +1229 -0
  38. data/docbook-xsl/common/hi.xml +1229 -0
  39. data/docbook-xsl/common/hr.xml +1229 -0
  40. data/docbook-xsl/common/hu.xml +1229 -0
  41. data/docbook-xsl/common/id.xml +1229 -0
  42. data/docbook-xsl/common/insertfile.xsl +111 -0
  43. data/docbook-xsl/common/it.xml +1229 -0
  44. data/docbook-xsl/common/ja.xml +1229 -0
  45. data/docbook-xsl/common/kn.xml +1229 -0
  46. data/docbook-xsl/common/ko.xml +1229 -0
  47. data/docbook-xsl/common/l10n.dtd +63 -0
  48. data/docbook-xsl/common/l10n.xml +129 -0
  49. data/docbook-xsl/common/l10n.xsl +497 -0
  50. data/docbook-xsl/common/la.xml +1229 -0
  51. data/docbook-xsl/common/labels.xsl +869 -0
  52. data/docbook-xsl/common/lt.xml +678 -0
  53. data/docbook-xsl/common/lv.xml +1229 -0
  54. data/docbook-xsl/common/mn.xml +730 -0
  55. data/docbook-xsl/common/nb.xml +1229 -0
  56. data/docbook-xsl/common/nl.xml +1229 -0
  57. data/docbook-xsl/common/nn.xml +1229 -0
  58. data/docbook-xsl/common/olink.xsl +1149 -0
  59. data/docbook-xsl/common/or.xml +1229 -0
  60. data/docbook-xsl/common/pa.xml +1229 -0
  61. data/docbook-xsl/common/pi.xml +165 -0
  62. data/docbook-xsl/common/pi.xsl +346 -0
  63. data/docbook-xsl/common/pl.xml +1229 -0
  64. data/docbook-xsl/common/pt.xml +1229 -0
  65. data/docbook-xsl/common/pt_br.xml +1229 -0
  66. data/docbook-xsl/common/refentry.xml +781 -0
  67. data/docbook-xsl/common/refentry.xsl +1352 -0
  68. data/docbook-xsl/common/ro.xml +1229 -0
  69. data/docbook-xsl/common/ru.xml +726 -0
  70. data/docbook-xsl/common/sk.xml +1229 -0
  71. data/docbook-xsl/common/sl.xml +1229 -0
  72. data/docbook-xsl/common/sq.xml +1229 -0
  73. data/docbook-xsl/common/sr.xml +720 -0
  74. data/docbook-xsl/common/sr_Latn.xml +679 -0
  75. data/docbook-xsl/common/stripns.xsl +289 -0
  76. data/docbook-xsl/common/subtitles.xsl +155 -0
  77. data/docbook-xsl/common/sv.xml +664 -0
  78. data/docbook-xsl/common/ta.xml +1229 -0
  79. data/docbook-xsl/common/table.xsl +514 -0
  80. data/docbook-xsl/common/targetdatabase.dtd +49 -0
  81. data/docbook-xsl/common/targets.xsl +272 -0
  82. data/docbook-xsl/common/th.xml +1229 -0
  83. data/docbook-xsl/common/titles.xsl +752 -0
  84. data/docbook-xsl/common/tl.xml +1229 -0
  85. data/docbook-xsl/common/tr.xml +666 -0
  86. data/docbook-xsl/common/uk.xml +1229 -0
  87. data/docbook-xsl/common/utility.xml +259 -0
  88. data/docbook-xsl/common/utility.xsl +290 -0
  89. data/docbook-xsl/common/vi.xml +1229 -0
  90. data/docbook-xsl/common/xh.xml +1229 -0
  91. data/docbook-xsl/common/zh_cn.xml +660 -0
  92. data/docbook-xsl/common/zh_tw.xml +1229 -0
  93. data/docbook-xsl/docsrc/authors.xml +10 -0
  94. data/docbook-xsl/docsrc/copyright.xml +18 -0
  95. data/docbook-xsl/docsrc/license.xml +23 -0
  96. data/docbook-xsl/docsrc/page.png +0 -0
  97. data/docbook-xsl/docsrc/reference.css +60 -0
  98. data/docbook-xsl/docsrc/reference.xml +229 -0
  99. data/docbook-xsl/docsrc/reference.xml.included +32701 -0
  100. data/docbook-xsl/docsrc/warranty.xml +11 -0
  101. data/docbook-xsl/epub/README +88 -0
  102. data/docbook-xsl/epub/bin/dbtoepub +65 -0
  103. data/docbook-xsl/epub/bin/lib/docbook.rb +206 -0
  104. data/docbook-xsl/epub/docbook.xsl +1638 -0
  105. data/docbook-xsl/extensions/README.LIBXSLT +52 -0
  106. data/docbook-xsl/extensions/docbook.py +240 -0
  107. data/docbook-xsl/extensions/saxon65.jar +0 -0
  108. data/docbook-xsl/extensions/xalan27.jar +0 -0
  109. data/docbook-xsl/extensions/xslt.py +83 -0
  110. data/docbook-xsl/fo.xsl +152 -0
  111. data/docbook-xsl/fo/admon.xsl +130 -0
  112. data/docbook-xsl/fo/annotations.xsl +18 -0
  113. data/docbook-xsl/fo/autoidx-kimber.xsl +178 -0
  114. data/docbook-xsl/fo/autoidx-kosek.xsl +150 -0
  115. data/docbook-xsl/fo/autoidx-ng.xsl +20 -0
  116. data/docbook-xsl/fo/autoidx.xsl +1310 -0
  117. data/docbook-xsl/fo/autotoc.xsl +892 -0
  118. data/docbook-xsl/fo/axf.xsl +110 -0
  119. data/docbook-xsl/fo/biblio-iso690.xsl +1300 -0
  120. data/docbook-xsl/fo/biblio.xsl +1169 -0
  121. data/docbook-xsl/fo/block.xsl +600 -0
  122. data/docbook-xsl/fo/callout.xsl +231 -0
  123. data/docbook-xsl/fo/component.xsl +811 -0
  124. data/docbook-xsl/fo/division.xsl +611 -0
  125. data/docbook-xsl/fo/docbook.xsl +336 -0
  126. data/docbook-xsl/fo/ebnf.xsl +325 -0
  127. data/docbook-xsl/fo/fo-rtf.xsl +154 -0
  128. data/docbook-xsl/fo/fo.xsl +71 -0
  129. data/docbook-xsl/fo/footnote.xsl +220 -0
  130. data/docbook-xsl/fo/fop.xsl +93 -0
  131. data/docbook-xsl/fo/fop1.xsl +174 -0
  132. data/docbook-xsl/fo/formal.xsl +615 -0
  133. data/docbook-xsl/fo/glossary.xsl +1112 -0
  134. data/docbook-xsl/fo/graphics.xsl +642 -0
  135. data/docbook-xsl/fo/highlight.xsl +75 -0
  136. data/docbook-xsl/fo/htmltbl.xsl +217 -0
  137. data/docbook-xsl/fo/index.xsl +481 -0
  138. data/docbook-xsl/fo/info.xsl +34 -0
  139. data/docbook-xsl/fo/inline.xsl +1275 -0
  140. data/docbook-xsl/fo/keywords.xsl +21 -0
  141. data/docbook-xsl/fo/lists.xsl +1260 -0
  142. data/docbook-xsl/fo/math.xsl +140 -0
  143. data/docbook-xsl/fo/pagesetup.xsl +2314 -0
  144. data/docbook-xsl/fo/param.xml +11823 -0
  145. data/docbook-xsl/fo/param.xsl +899 -0
  146. data/docbook-xsl/fo/passivetex.xsl +36 -0
  147. data/docbook-xsl/fo/pdf2index +140 -0
  148. data/docbook-xsl/fo/pi.xml +969 -0
  149. data/docbook-xsl/fo/pi.xsl +1052 -0
  150. data/docbook-xsl/fo/profile-docbook.xsl +289 -0
  151. data/docbook-xsl/fo/ptc.xsl +77 -0
  152. data/docbook-xsl/fo/qandaset.xsl +393 -0
  153. data/docbook-xsl/fo/refentry.xsl +637 -0
  154. data/docbook-xsl/fo/sections.xsl +764 -0
  155. data/docbook-xsl/fo/spaces.xsl +274 -0
  156. data/docbook-xsl/fo/synop.xsl +1002 -0
  157. data/docbook-xsl/fo/table.xml +135 -0
  158. data/docbook-xsl/fo/table.xsl +1552 -0
  159. data/docbook-xsl/fo/task.xsl +91 -0
  160. data/docbook-xsl/fo/titlepage.templates.xml +1311 -0
  161. data/docbook-xsl/fo/titlepage.templates.xsl +5094 -0
  162. data/docbook-xsl/fo/titlepage.xsl +750 -0
  163. data/docbook-xsl/fo/toc.xsl +274 -0
  164. data/docbook-xsl/fo/verbatim.xsl +417 -0
  165. data/docbook-xsl/fo/xep.xsl +180 -0
  166. data/docbook-xsl/fo/xref.xsl +1486 -0
  167. data/docbook-xsl/highlighting/c-hl.xml +101 -0
  168. data/docbook-xsl/highlighting/common.xsl +120 -0
  169. data/docbook-xsl/highlighting/cpp-hl.xml +150 -0
  170. data/docbook-xsl/highlighting/csharp-hl.xml +187 -0
  171. data/docbook-xsl/highlighting/delphi-hl.xml +200 -0
  172. data/docbook-xsl/highlighting/ini-hl.xml +45 -0
  173. data/docbook-xsl/highlighting/java-hl.xml +117 -0
  174. data/docbook-xsl/highlighting/javascript-hl.xml +147 -0
  175. data/docbook-xsl/highlighting/m2-hl.xml +90 -0
  176. data/docbook-xsl/highlighting/myxml-hl.xml +116 -0
  177. data/docbook-xsl/highlighting/perl-hl.xml +120 -0
  178. data/docbook-xsl/highlighting/php-hl.xml +149 -0
  179. data/docbook-xsl/highlighting/python-hl.xml +100 -0
  180. data/docbook-xsl/highlighting/ruby-hl.xml +109 -0
  181. data/docbook-xsl/highlighting/tcl-hl.xml +180 -0
  182. data/docbook-xsl/highlighting/xslthl-config.xml +46 -0
  183. data/docbook-xsl/html/admon.xsl +132 -0
  184. data/docbook-xsl/html/annotations.xsl +169 -0
  185. data/docbook-xsl/html/autoidx-kimber.xsl +168 -0
  186. data/docbook-xsl/html/autoidx-kosek.xsl +125 -0
  187. data/docbook-xsl/html/autoidx-ng.xsl +20 -0
  188. data/docbook-xsl/html/autoidx.xsl +645 -0
  189. data/docbook-xsl/html/autotoc.xsl +675 -0
  190. data/docbook-xsl/html/biblio-iso690.xsl +1300 -0
  191. data/docbook-xsl/html/biblio.xsl +1247 -0
  192. data/docbook-xsl/html/block.xsl +434 -0
  193. data/docbook-xsl/html/callout.xsl +201 -0
  194. data/docbook-xsl/html/changebars.xsl +121 -0
  195. data/docbook-xsl/html/chunk-changebars.xsl +99 -0
  196. data/docbook-xsl/html/chunk-code.xsl +670 -0
  197. data/docbook-xsl/html/chunk-common.xsl +1911 -0
  198. data/docbook-xsl/html/chunk.xsl +52 -0
  199. data/docbook-xsl/html/chunker.xsl +439 -0
  200. data/docbook-xsl/html/chunkfast.xsl +72 -0
  201. data/docbook-xsl/html/chunktoc.xsl +468 -0
  202. data/docbook-xsl/html/component.xsl +403 -0
  203. data/docbook-xsl/html/division.xsl +228 -0
  204. data/docbook-xsl/html/docbook.xsl +483 -0
  205. data/docbook-xsl/html/ebnf.xsl +329 -0
  206. data/docbook-xsl/html/footnote.xsl +308 -0
  207. data/docbook-xsl/html/formal.xsl +401 -0
  208. data/docbook-xsl/html/glossary.xsl +474 -0
  209. data/docbook-xsl/html/graphics.xsl +1515 -0
  210. data/docbook-xsl/html/highlight.xsl +71 -0
  211. data/docbook-xsl/html/html-rtf.xsl +336 -0
  212. data/docbook-xsl/html/html.xsl +268 -0
  213. data/docbook-xsl/html/htmltbl.xsl +56 -0
  214. data/docbook-xsl/html/index.xsl +229 -0
  215. data/docbook-xsl/html/info.xsl +43 -0
  216. data/docbook-xsl/html/inline.xsl +1497 -0
  217. data/docbook-xsl/html/keywords.xsl +35 -0
  218. data/docbook-xsl/html/lists.xsl +1143 -0
  219. data/docbook-xsl/html/maketoc.xsl +86 -0
  220. data/docbook-xsl/html/manifest.xsl +22 -0
  221. data/docbook-xsl/html/math.xsl +270 -0
  222. data/docbook-xsl/html/oldchunker.xsl +202 -0
  223. data/docbook-xsl/html/onechunk.xsl +37 -0
  224. data/docbook-xsl/html/param.xml +10397 -0
  225. data/docbook-xsl/html/param.xsl +422 -0
  226. data/docbook-xsl/html/pi.xml +1113 -0
  227. data/docbook-xsl/html/pi.xsl +1263 -0
  228. data/docbook-xsl/html/profile-chunk-code.xsl +609 -0
  229. data/docbook-xsl/html/profile-chunk.xsl +52 -0
  230. data/docbook-xsl/html/profile-docbook.xsl +414 -0
  231. data/docbook-xsl/html/profile-onechunk.xsl +37 -0
  232. data/docbook-xsl/html/qandaset.xsl +389 -0
  233. data/docbook-xsl/html/refentry.xsl +309 -0
  234. data/docbook-xsl/html/sections.xsl +628 -0
  235. data/docbook-xsl/html/synop.xsl +1549 -0
  236. data/docbook-xsl/html/table.xsl +1130 -0
  237. data/docbook-xsl/html/task.xsl +76 -0
  238. data/docbook-xsl/html/titlepage.templates.xml +662 -0
  239. data/docbook-xsl/html/titlepage.templates.xsl +3622 -0
  240. data/docbook-xsl/html/titlepage.xsl +1031 -0
  241. data/docbook-xsl/html/toc.xsl +169 -0
  242. data/docbook-xsl/html/verbatim.xsl +376 -0
  243. data/docbook-xsl/html/xref.xsl +1348 -0
  244. data/docbook-xsl/htmlhelp/htmlhelp-common.xsl +1113 -0
  245. data/docbook-xsl/htmlhelp/htmlhelp.xsl +22 -0
  246. data/docbook-xsl/htmlhelp/profile-htmlhelp-common.xsl +1076 -0
  247. data/docbook-xsl/htmlhelp/profile-htmlhelp.xsl +22 -0
  248. data/docbook-xsl/images/annot-close.png +0 -0
  249. data/docbook-xsl/images/annot-open.png +0 -0
  250. data/docbook-xsl/images/blank.png +0 -0
  251. data/docbook-xsl/images/callouts/1.gif +0 -0
  252. data/docbook-xsl/images/callouts/1.png +0 -0
  253. data/docbook-xsl/images/callouts/1.svg +15 -0
  254. data/docbook-xsl/images/callouts/10.gif +0 -0
  255. data/docbook-xsl/images/callouts/10.png +0 -0
  256. data/docbook-xsl/images/callouts/10.svg +18 -0
  257. data/docbook-xsl/images/callouts/11.gif +0 -0
  258. data/docbook-xsl/images/callouts/11.png +0 -0
  259. data/docbook-xsl/images/callouts/11.svg +16 -0
  260. data/docbook-xsl/images/callouts/12.gif +0 -0
  261. data/docbook-xsl/images/callouts/12.png +0 -0
  262. data/docbook-xsl/images/callouts/12.svg +18 -0
  263. data/docbook-xsl/images/callouts/13.gif +0 -0
  264. data/docbook-xsl/images/callouts/13.png +0 -0
  265. data/docbook-xsl/images/callouts/13.svg +20 -0
  266. data/docbook-xsl/images/callouts/14.gif +0 -0
  267. data/docbook-xsl/images/callouts/14.png +0 -0
  268. data/docbook-xsl/images/callouts/14.svg +17 -0
  269. data/docbook-xsl/images/callouts/15.gif +0 -0
  270. data/docbook-xsl/images/callouts/15.png +0 -0
  271. data/docbook-xsl/images/callouts/15.svg +19 -0
  272. data/docbook-xsl/images/callouts/16.svg +20 -0
  273. data/docbook-xsl/images/callouts/17.svg +17 -0
  274. data/docbook-xsl/images/callouts/18.svg +21 -0
  275. data/docbook-xsl/images/callouts/19.svg +20 -0
  276. data/docbook-xsl/images/callouts/2.gif +0 -0
  277. data/docbook-xsl/images/callouts/2.png +0 -0
  278. data/docbook-xsl/images/callouts/2.svg +17 -0
  279. data/docbook-xsl/images/callouts/20.svg +20 -0
  280. data/docbook-xsl/images/callouts/21.svg +18 -0
  281. data/docbook-xsl/images/callouts/22.svg +20 -0
  282. data/docbook-xsl/images/callouts/23.svg +22 -0
  283. data/docbook-xsl/images/callouts/24.svg +19 -0
  284. data/docbook-xsl/images/callouts/25.svg +21 -0
  285. data/docbook-xsl/images/callouts/26.svg +22 -0
  286. data/docbook-xsl/images/callouts/27.svg +19 -0
  287. data/docbook-xsl/images/callouts/28.svg +23 -0
  288. data/docbook-xsl/images/callouts/29.svg +22 -0
  289. data/docbook-xsl/images/callouts/3.gif +0 -0
  290. data/docbook-xsl/images/callouts/3.png +0 -0
  291. data/docbook-xsl/images/callouts/3.svg +19 -0
  292. data/docbook-xsl/images/callouts/30.svg +22 -0
  293. data/docbook-xsl/images/callouts/4.gif +0 -0
  294. data/docbook-xsl/images/callouts/4.png +0 -0
  295. data/docbook-xsl/images/callouts/4.svg +16 -0
  296. data/docbook-xsl/images/callouts/5.gif +0 -0
  297. data/docbook-xsl/images/callouts/5.png +0 -0
  298. data/docbook-xsl/images/callouts/5.svg +18 -0
  299. data/docbook-xsl/images/callouts/6.gif +0 -0
  300. data/docbook-xsl/images/callouts/6.png +0 -0
  301. data/docbook-xsl/images/callouts/6.svg +19 -0
  302. data/docbook-xsl/images/callouts/7.gif +0 -0
  303. data/docbook-xsl/images/callouts/7.png +0 -0
  304. data/docbook-xsl/images/callouts/7.svg +16 -0
  305. data/docbook-xsl/images/callouts/8.gif +0 -0
  306. data/docbook-xsl/images/callouts/8.png +0 -0
  307. data/docbook-xsl/images/callouts/8.svg +20 -0
  308. data/docbook-xsl/images/callouts/9.gif +0 -0
  309. data/docbook-xsl/images/callouts/9.png +0 -0
  310. data/docbook-xsl/images/callouts/9.svg +19 -0
  311. data/docbook-xsl/images/caution.gif +0 -0
  312. data/docbook-xsl/images/caution.png +0 -0
  313. data/docbook-xsl/images/caution.svg +25 -0
  314. data/docbook-xsl/images/caution.tif +0 -0
  315. data/docbook-xsl/images/draft.png +0 -0
  316. data/docbook-xsl/images/home.gif +0 -0
  317. data/docbook-xsl/images/home.png +0 -0
  318. data/docbook-xsl/images/home.svg +26 -0
  319. data/docbook-xsl/images/important.gif +0 -0
  320. data/docbook-xsl/images/important.png +0 -0
  321. data/docbook-xsl/images/important.svg +25 -0
  322. data/docbook-xsl/images/important.tif +0 -0
  323. data/docbook-xsl/images/next.gif +0 -0
  324. data/docbook-xsl/images/next.png +0 -0
  325. data/docbook-xsl/images/next.svg +19 -0
  326. data/docbook-xsl/images/note.gif +0 -0
  327. data/docbook-xsl/images/note.png +0 -0
  328. data/docbook-xsl/images/note.svg +33 -0
  329. data/docbook-xsl/images/note.tif +0 -0
  330. data/docbook-xsl/images/prev.gif +0 -0
  331. data/docbook-xsl/images/prev.png +0 -0
  332. data/docbook-xsl/images/prev.svg +19 -0
  333. data/docbook-xsl/images/tip.gif +0 -0
  334. data/docbook-xsl/images/tip.png +0 -0
  335. data/docbook-xsl/images/tip.svg +31 -0
  336. data/docbook-xsl/images/tip.tif +0 -0
  337. data/docbook-xsl/images/toc-blank.png +0 -0
  338. data/docbook-xsl/images/toc-minus.png +0 -0
  339. data/docbook-xsl/images/toc-plus.png +0 -0
  340. data/docbook-xsl/images/up.gif +0 -0
  341. data/docbook-xsl/images/up.png +0 -0
  342. data/docbook-xsl/images/up.svg +19 -0
  343. data/docbook-xsl/images/warning.gif +0 -0
  344. data/docbook-xsl/images/warning.png +0 -0
  345. data/docbook-xsl/images/warning.svg +23 -0
  346. data/docbook-xsl/images/warning.tif +0 -0
  347. data/docbook-xsl/javahelp/javahelp.xsl +628 -0
  348. data/docbook-xsl/javahelp/profile-javahelp.xsl +550 -0
  349. data/docbook-xsl/lib/lib.xsl +480 -0
  350. data/docbook-xsl/manpages/ChangeLog.20020917 +195 -0
  351. data/docbook-xsl/manpages/block.xsl +393 -0
  352. data/docbook-xsl/manpages/charmap.groff.xsl +6013 -0
  353. data/docbook-xsl/manpages/docbook.xsl +302 -0
  354. data/docbook-xsl/manpages/endnotes.xsl +584 -0
  355. data/docbook-xsl/manpages/html-synop.xsl +1562 -0
  356. data/docbook-xsl/manpages/info.xsl +800 -0
  357. data/docbook-xsl/manpages/inline.xsl +219 -0
  358. data/docbook-xsl/manpages/lists.xsl +603 -0
  359. data/docbook-xsl/manpages/other.xsl +869 -0
  360. data/docbook-xsl/manpages/param.xml +3162 -0
  361. data/docbook-xsl/manpages/param.xsl +192 -0
  362. data/docbook-xsl/manpages/pi.xml +70 -0
  363. data/docbook-xsl/manpages/pi.xsl +79 -0
  364. data/docbook-xsl/manpages/profile-docbook.xsl +271 -0
  365. data/docbook-xsl/manpages/refentry.xsl +310 -0
  366. data/docbook-xsl/manpages/synop.xsl +432 -0
  367. data/docbook-xsl/manpages/table.xsl +633 -0
  368. data/docbook-xsl/manpages/utility.xsl +534 -0
  369. data/docbook-xsl/params/abstract.notitle.enabled.xml +22 -0
  370. data/docbook-xsl/params/abstract.properties.xml +32 -0
  371. data/docbook-xsl/params/abstract.title.properties.xml +39 -0
  372. data/docbook-xsl/params/active.toc.xml +29 -0
  373. data/docbook-xsl/params/ade.extensions.xml +32 -0
  374. data/docbook-xsl/params/admon.graphics.extension.xml +27 -0
  375. data/docbook-xsl/params/admon.graphics.path.xml +27 -0
  376. data/docbook-xsl/params/admon.graphics.xml +29 -0
  377. data/docbook-xsl/params/admon.style.xml +30 -0
  378. data/docbook-xsl/params/admon.textlabel.xml +32 -0
  379. data/docbook-xsl/params/admonition.properties.xml +25 -0
  380. data/docbook-xsl/params/admonition.title.properties.xml +32 -0
  381. data/docbook-xsl/params/alignment.xml +31 -0
  382. data/docbook-xsl/params/annotate.toc.xml +28 -0
  383. data/docbook-xsl/params/annotation.css.xml +71 -0
  384. data/docbook-xsl/params/annotation.graphic.close.xml +31 -0
  385. data/docbook-xsl/params/annotation.graphic.open.xml +28 -0
  386. data/docbook-xsl/params/annotation.js.xml +33 -0
  387. data/docbook-xsl/params/annotation.support.xml +29 -0
  388. data/docbook-xsl/params/appendix.autolabel.xml +73 -0
  389. data/docbook-xsl/params/arbortext.extensions.xml +30 -0
  390. data/docbook-xsl/params/article.appendix.title.properties.xml +33 -0
  391. data/docbook-xsl/params/author.othername.in.middle.xml +31 -0
  392. data/docbook-xsl/params/autolayout-file.xml +29 -0
  393. data/docbook-xsl/params/autotoc.label.in.hyperlink.xml +29 -0
  394. data/docbook-xsl/params/autotoc.label.separator.xml +27 -0
  395. data/docbook-xsl/params/axf.extensions.xml +33 -0
  396. data/docbook-xsl/params/banner.before.navigation.xml +25 -0
  397. data/docbook-xsl/params/base.dir.xml +29 -0
  398. data/docbook-xsl/params/biblioentry.item.separator.xml +26 -0
  399. data/docbook-xsl/params/biblioentry.properties.xml +28 -0
  400. data/docbook-xsl/params/bibliography.collection.xml +104 -0
  401. data/docbook-xsl/params/bibliography.numbered.xml +27 -0
  402. data/docbook-xsl/params/bibliography.style.xml +35 -0
  403. data/docbook-xsl/params/blockquote.properties.xml +34 -0
  404. data/docbook-xsl/params/blurb.on.titlepage.enabled.xml +31 -0
  405. data/docbook-xsl/params/body.attributes.xml +31 -0
  406. data/docbook-xsl/params/body.bg.color.xml +28 -0
  407. data/docbook-xsl/params/body.end.indent.xml +37 -0
  408. data/docbook-xsl/params/body.font.family.xml +32 -0
  409. data/docbook-xsl/params/body.font.master.xml +30 -0
  410. data/docbook-xsl/params/body.font.size.xml +31 -0
  411. data/docbook-xsl/params/body.margin.bottom.xml +29 -0
  412. data/docbook-xsl/params/body.margin.top.xml +28 -0
  413. data/docbook-xsl/params/body.start.indent.xml +62 -0
  414. data/docbook-xsl/params/bridgehead.in.toc.xml +28 -0
  415. data/docbook-xsl/params/bullet.image.xml +28 -0
  416. data/docbook-xsl/params/callout.defaultcolumn.xml +30 -0
  417. data/docbook-xsl/params/callout.graphics.extension.xml +33 -0
  418. data/docbook-xsl/params/callout.graphics.number.limit.xml +34 -0
  419. data/docbook-xsl/params/callout.graphics.path.xml +31 -0
  420. data/docbook-xsl/params/callout.graphics.xml +30 -0
  421. data/docbook-xsl/params/callout.icon.size.xml +28 -0
  422. data/docbook-xsl/params/callout.list.table.xml +32 -0
  423. data/docbook-xsl/params/callout.unicode.font.xml +29 -0
  424. data/docbook-xsl/params/callout.unicode.number.limit.xml +35 -0
  425. data/docbook-xsl/params/callout.unicode.start.character.xml +33 -0
  426. data/docbook-xsl/params/callout.unicode.xml +26 -0
  427. data/docbook-xsl/params/callouts.extension.xml +30 -0
  428. data/docbook-xsl/params/chapter.autolabel.xml +71 -0
  429. data/docbook-xsl/params/chunk.append.xml +30 -0
  430. data/docbook-xsl/params/chunk.first.sections.xml +31 -0
  431. data/docbook-xsl/params/chunk.quietly.xml +30 -0
  432. data/docbook-xsl/params/chunk.section.depth.xml +27 -0
  433. data/docbook-xsl/params/chunk.sections.xml +30 -0
  434. data/docbook-xsl/params/chunk.separate.lots.xml +36 -0
  435. data/docbook-xsl/params/chunk.toc.xml +30 -0
  436. data/docbook-xsl/params/chunk.tocs.and.lots.has.title.xml +28 -0
  437. data/docbook-xsl/params/chunk.tocs.and.lots.xml +32 -0
  438. data/docbook-xsl/params/chunker.output.cdata-section-elements.xml +30 -0
  439. data/docbook-xsl/params/chunker.output.doctype-public.xml +31 -0
  440. data/docbook-xsl/params/chunker.output.doctype-system.xml +31 -0
  441. data/docbook-xsl/params/chunker.output.encoding.xml +31 -0
  442. data/docbook-xsl/params/chunker.output.indent.xml +30 -0
  443. data/docbook-xsl/params/chunker.output.media-type.xml +35 -0
  444. data/docbook-xsl/params/chunker.output.method.xml +32 -0
  445. data/docbook-xsl/params/chunker.output.omit-xml-declaration.xml +30 -0
  446. data/docbook-xsl/params/chunker.output.standalone.xml +31 -0
  447. data/docbook-xsl/params/citerefentry.link.xml +29 -0
  448. data/docbook-xsl/params/collect.xref.targets.xml +33 -0
  449. data/docbook-xsl/params/column.count.back.xml +27 -0
  450. data/docbook-xsl/params/column.count.body.xml +27 -0
  451. data/docbook-xsl/params/column.count.front.xml +27 -0
  452. data/docbook-xsl/params/column.count.index.xml +27 -0
  453. data/docbook-xsl/params/column.count.lot.xml +28 -0
  454. data/docbook-xsl/params/column.count.titlepage.xml +27 -0
  455. data/docbook-xsl/params/column.gap.back.xml +28 -0
  456. data/docbook-xsl/params/column.gap.body.xml +28 -0
  457. data/docbook-xsl/params/column.gap.front.xml +28 -0
  458. data/docbook-xsl/params/column.gap.index.xml +28 -0
  459. data/docbook-xsl/params/column.gap.lot.xml +28 -0
  460. data/docbook-xsl/params/column.gap.titlepage.xml +29 -0
  461. data/docbook-xsl/params/compact.list.item.spacing.xml +28 -0
  462. data/docbook-xsl/params/component.label.includes.part.label.xml +39 -0
  463. data/docbook-xsl/params/component.title.properties.xml +40 -0
  464. data/docbook-xsl/params/component.titlepage.properties.xml +33 -0
  465. data/docbook-xsl/params/contrib.inline.enabled.xml +26 -0
  466. data/docbook-xsl/params/crop.mark.bleed.xml +28 -0
  467. data/docbook-xsl/params/crop.mark.offset.xml +28 -0
  468. data/docbook-xsl/params/crop.mark.width.xml +28 -0
  469. data/docbook-xsl/params/crop.marks.xml +28 -0
  470. data/docbook-xsl/params/css.decoration.xml +33 -0
  471. data/docbook-xsl/params/css.stylesheet.dir.xml +33 -0
  472. data/docbook-xsl/params/css.stylesheet.xml +29 -0
  473. data/docbook-xsl/params/current.docid.xml +27 -0
  474. data/docbook-xsl/params/currentpage.marker.xml +25 -0
  475. data/docbook-xsl/params/default.float.class.xml +34 -0
  476. data/docbook-xsl/params/default.image.width.xml +31 -0
  477. data/docbook-xsl/params/default.table.frame.xml +28 -0
  478. data/docbook-xsl/params/default.table.width.xml +26 -0
  479. data/docbook-xsl/params/default.units.xml +37 -0
  480. data/docbook-xsl/params/dingbat.font.family.xml +33 -0
  481. data/docbook-xsl/params/double.sided.xml +31 -0
  482. data/docbook-xsl/params/draft.mode.xml +36 -0
  483. data/docbook-xsl/params/draft.watermark.image.xml +27 -0
  484. data/docbook-xsl/params/dry-run.xml +27 -0
  485. data/docbook-xsl/params/dynamic.toc.xml +29 -0
  486. data/docbook-xsl/params/ebnf.assignment.xml +39 -0
  487. data/docbook-xsl/params/ebnf.statement.terminator.xml +32 -0
  488. data/docbook-xsl/params/ebnf.table.bgcolor.xml +30 -0
  489. data/docbook-xsl/params/ebnf.table.border.xml +26 -0
  490. data/docbook-xsl/params/eclipse.autolabel.xml +28 -0
  491. data/docbook-xsl/params/eclipse.plugin.id.xml +28 -0
  492. data/docbook-xsl/params/eclipse.plugin.name.xml +27 -0
  493. data/docbook-xsl/params/eclipse.plugin.provider.xml +27 -0
  494. data/docbook-xsl/params/editedby.enabled.xml +27 -0
  495. data/docbook-xsl/params/email.delimiters.enabled.xml +34 -0
  496. data/docbook-xsl/params/email.mailto.enabled.xml +29 -0
  497. data/docbook-xsl/params/emphasis.propagates.style.xml +26 -0
  498. data/docbook-xsl/params/entry.propagates.style.xml +30 -0
  499. data/docbook-xsl/params/epub.autolabel.xml +28 -0
  500. data/docbook-xsl/params/equation.properties.xml +27 -0
  501. data/docbook-xsl/params/example.properties.xml +27 -0
  502. data/docbook-xsl/params/feedback.href.xml +28 -0
  503. data/docbook-xsl/params/feedback.link.text.xml +28 -0
  504. data/docbook-xsl/params/feedback.with.ids.xml +27 -0
  505. data/docbook-xsl/params/figure.properties.xml +27 -0
  506. data/docbook-xsl/params/filename-prefix.xml +28 -0
  507. data/docbook-xsl/params/firstterm.only.link.xml +29 -0
  508. data/docbook-xsl/params/foil.properties.xml +37 -0
  509. data/docbook-xsl/params/foil.subtitle.properties.xml +36 -0
  510. data/docbook-xsl/params/foil.title.master.xml +29 -0
  511. data/docbook-xsl/params/foil.title.size.xml +32 -0
  512. data/docbook-xsl/params/foilgroup.properties.xml +31 -0
  513. data/docbook-xsl/params/foilgroup.toc.xml +29 -0
  514. data/docbook-xsl/params/footer.column.widths.xml +74 -0
  515. data/docbook-xsl/params/footer.content.properties.xml +34 -0
  516. data/docbook-xsl/params/footer.hr.xml +26 -0
  517. data/docbook-xsl/params/footer.rule.xml +27 -0
  518. data/docbook-xsl/params/footer.table.height.xml +32 -0
  519. data/docbook-xsl/params/footer.table.properties.xml +30 -0
  520. data/docbook-xsl/params/footers.on.blank.pages.xml +27 -0
  521. data/docbook-xsl/params/footnote.font.size.xml +28 -0
  522. data/docbook-xsl/params/footnote.mark.properties.xml +41 -0
  523. data/docbook-xsl/params/footnote.number.format.xml +33 -0
  524. data/docbook-xsl/params/footnote.number.symbols.xml +39 -0
  525. data/docbook-xsl/params/footnote.properties.xml +43 -0
  526. data/docbook-xsl/params/footnote.sep.leader.properties.xml +39 -0
  527. data/docbook-xsl/params/fop.extensions.xml +36 -0
  528. data/docbook-xsl/params/fop1.extensions.xml +34 -0
  529. data/docbook-xsl/params/formal.object.properties.xml +36 -0
  530. data/docbook-xsl/params/formal.procedures.xml +28 -0
  531. data/docbook-xsl/params/formal.title.placement.xml +41 -0
  532. data/docbook-xsl/params/formal.title.properties.xml +34 -0
  533. data/docbook-xsl/params/funcsynopsis.decoration.xml +30 -0
  534. data/docbook-xsl/params/funcsynopsis.style.xml +31 -0
  535. data/docbook-xsl/params/function.parens.xml +29 -0
  536. data/docbook-xsl/params/generate.id.attributes.xml +59 -0
  537. data/docbook-xsl/params/generate.index.xml +25 -0
  538. data/docbook-xsl/params/generate.legalnotice.link.xml +72 -0
  539. data/docbook-xsl/params/generate.manifest.xml +27 -0
  540. data/docbook-xsl/params/generate.meta.abstract.xml +29 -0
  541. data/docbook-xsl/params/generate.revhistory.link.xml +50 -0
  542. data/docbook-xsl/params/generate.section.toc.level.xml +35 -0
  543. data/docbook-xsl/params/generate.toc.xml +108 -0
  544. data/docbook-xsl/params/glossary.as.blocks.xml +38 -0
  545. data/docbook-xsl/params/glossary.collection.xml +252 -0
  546. data/docbook-xsl/params/glossary.sort.xml +32 -0
  547. data/docbook-xsl/params/glossentry.show.acronym.xml +37 -0
  548. data/docbook-xsl/params/glosslist.as.blocks.xml +27 -0
  549. data/docbook-xsl/params/glossterm.auto.link.xml +33 -0
  550. data/docbook-xsl/params/glossterm.separation.xml +28 -0
  551. data/docbook-xsl/params/glossterm.width.xml +28 -0
  552. data/docbook-xsl/params/graphic.default.extension.xml +29 -0
  553. data/docbook-xsl/params/graphical.admonition.properties.xml +42 -0
  554. data/docbook-xsl/params/graphics.dir.xml +33 -0
  555. data/docbook-xsl/params/graphicsize.extension.xml +30 -0
  556. data/docbook-xsl/params/graphicsize.use.img.src.path.xml +30 -0
  557. data/docbook-xsl/params/header.column.widths.xml +74 -0
  558. data/docbook-xsl/params/header.content.properties.xml +34 -0
  559. data/docbook-xsl/params/header.hr.xml +26 -0
  560. data/docbook-xsl/params/header.rule.xml +27 -0
  561. data/docbook-xsl/params/header.table.height.xml +32 -0
  562. data/docbook-xsl/params/header.table.properties.xml +30 -0
  563. data/docbook-xsl/params/headers.on.blank.pages.xml +27 -0
  564. data/docbook-xsl/params/hidetoc.image.xml +29 -0
  565. data/docbook-xsl/params/highlight.default.language.xml +27 -0
  566. data/docbook-xsl/params/highlight.source.xml +47 -0
  567. data/docbook-xsl/params/highlight.xslthl.config.xml +27 -0
  568. data/docbook-xsl/params/home.image.xml +27 -0
  569. data/docbook-xsl/params/html.append.xml +30 -0
  570. data/docbook-xsl/params/html.base.xml +30 -0
  571. data/docbook-xsl/params/html.cellpadding.xml +29 -0
  572. data/docbook-xsl/params/html.cellspacing.xml +29 -0
  573. data/docbook-xsl/params/html.cleanup.xml +34 -0
  574. data/docbook-xsl/params/html.ext.xml +29 -0
  575. data/docbook-xsl/params/html.extra.head.links.xml +31 -0
  576. data/docbook-xsl/params/html.head.legalnotice.link.multiple.xml +44 -0
  577. data/docbook-xsl/params/html.head.legalnotice.link.types.xml +75 -0
  578. data/docbook-xsl/params/html.longdesc.link.xml +39 -0
  579. data/docbook-xsl/params/html.longdesc.xml +28 -0
  580. data/docbook-xsl/params/html.stylesheet.type.xml +26 -0
  581. data/docbook-xsl/params/html.stylesheet.xml +36 -0
  582. data/docbook-xsl/params/htmlhelp.alias.file.xml +27 -0
  583. data/docbook-xsl/params/htmlhelp.autolabel.xml +28 -0
  584. data/docbook-xsl/params/htmlhelp.button.back.xml +27 -0
  585. data/docbook-xsl/params/htmlhelp.button.forward.xml +27 -0
  586. data/docbook-xsl/params/htmlhelp.button.hideshow.xml +27 -0
  587. data/docbook-xsl/params/htmlhelp.button.home.url.xml +27 -0
  588. data/docbook-xsl/params/htmlhelp.button.home.xml +27 -0
  589. data/docbook-xsl/params/htmlhelp.button.jump1.title.xml +27 -0
  590. data/docbook-xsl/params/htmlhelp.button.jump1.url.xml +27 -0
  591. data/docbook-xsl/params/htmlhelp.button.jump1.xml +23 -0
  592. data/docbook-xsl/params/htmlhelp.button.jump2.title.xml +27 -0
  593. data/docbook-xsl/params/htmlhelp.button.jump2.url.xml +27 -0
  594. data/docbook-xsl/params/htmlhelp.button.jump2.xml +27 -0
  595. data/docbook-xsl/params/htmlhelp.button.locate.xml +28 -0
  596. data/docbook-xsl/params/htmlhelp.button.next.xml +27 -0
  597. data/docbook-xsl/params/htmlhelp.button.options.xml +28 -0
  598. data/docbook-xsl/params/htmlhelp.button.prev.xml +28 -0
  599. data/docbook-xsl/params/htmlhelp.button.print.xml +28 -0
  600. data/docbook-xsl/params/htmlhelp.button.refresh.xml +27 -0
  601. data/docbook-xsl/params/htmlhelp.button.stop.xml +28 -0
  602. data/docbook-xsl/params/htmlhelp.button.zoom.xml +28 -0
  603. data/docbook-xsl/params/htmlhelp.chm.xml +27 -0
  604. data/docbook-xsl/params/htmlhelp.default.topic.xml +37 -0
  605. data/docbook-xsl/params/htmlhelp.display.progress.xml +28 -0
  606. data/docbook-xsl/params/htmlhelp.encoding.xml +28 -0
  607. data/docbook-xsl/params/htmlhelp.enhanced.decompilation.xml +27 -0
  608. data/docbook-xsl/params/htmlhelp.enumerate.images.xml +28 -0
  609. data/docbook-xsl/params/htmlhelp.force.map.and.alias.xml +26 -0
  610. data/docbook-xsl/params/htmlhelp.hhc.binary.xml +29 -0
  611. data/docbook-xsl/params/htmlhelp.hhc.folders.instead.books.xml +33 -0
  612. data/docbook-xsl/params/htmlhelp.hhc.section.depth.xml +27 -0
  613. data/docbook-xsl/params/htmlhelp.hhc.show.root.xml +29 -0
  614. data/docbook-xsl/params/htmlhelp.hhc.width.xml +28 -0
  615. data/docbook-xsl/params/htmlhelp.hhc.xml +27 -0
  616. data/docbook-xsl/params/htmlhelp.hhk.xml +27 -0
  617. data/docbook-xsl/params/htmlhelp.hhp.tail.xml +28 -0
  618. data/docbook-xsl/params/htmlhelp.hhp.window.xml +28 -0
  619. data/docbook-xsl/params/htmlhelp.hhp.windows.xml +29 -0
  620. data/docbook-xsl/params/htmlhelp.hhp.xml +28 -0
  621. data/docbook-xsl/params/htmlhelp.map.file.xml +25 -0
  622. data/docbook-xsl/params/htmlhelp.only.xml +32 -0
  623. data/docbook-xsl/params/htmlhelp.remember.window.position.xml +27 -0
  624. data/docbook-xsl/params/htmlhelp.show.advanced.search.xml +28 -0
  625. data/docbook-xsl/params/htmlhelp.show.favorities.xml +28 -0
  626. data/docbook-xsl/params/htmlhelp.show.menu.xml +28 -0
  627. data/docbook-xsl/params/htmlhelp.show.toolbar.text.xml +28 -0
  628. data/docbook-xsl/params/htmlhelp.title.xml +28 -0
  629. data/docbook-xsl/params/htmlhelp.use.hhk.xml +28 -0
  630. data/docbook-xsl/params/htmlhelp.window.geometry.xml +30 -0
  631. data/docbook-xsl/params/hyphenate.verbatim.characters.xml +30 -0
  632. data/docbook-xsl/params/hyphenate.verbatim.xml +45 -0
  633. data/docbook-xsl/params/hyphenate.xml +29 -0
  634. data/docbook-xsl/params/id.warnings.xml +25 -0
  635. data/docbook-xsl/params/ignore.image.scaling.xml +28 -0
  636. data/docbook-xsl/params/img.src.path.xml +40 -0
  637. data/docbook-xsl/params/index.div.title.properties.xml +39 -0
  638. data/docbook-xsl/params/index.entry.properties.xml +33 -0
  639. data/docbook-xsl/params/index.method.xml +162 -0
  640. data/docbook-xsl/params/index.number.separator.xml +54 -0
  641. data/docbook-xsl/params/index.on.role.xml +48 -0
  642. data/docbook-xsl/params/index.on.type.xml +52 -0
  643. data/docbook-xsl/params/index.page.number.properties.xml +31 -0
  644. data/docbook-xsl/params/index.prefer.titleabbrev.xml +29 -0
  645. data/docbook-xsl/params/index.preferred.page.properties.xml +32 -0
  646. data/docbook-xsl/params/index.range.separator.xml +57 -0
  647. data/docbook-xsl/params/index.term.separator.xml +54 -0
  648. data/docbook-xsl/params/informal.object.properties.xml +29 -0
  649. data/docbook-xsl/params/informalequation.properties.xml +27 -0
  650. data/docbook-xsl/params/informalexample.properties.xml +27 -0
  651. data/docbook-xsl/params/informalfigure.properties.xml +27 -0
  652. data/docbook-xsl/params/informaltable.properties.xml +32 -0
  653. data/docbook-xsl/params/inherit.keywords.xml +31 -0
  654. data/docbook-xsl/params/insert.link.page.number.xml +69 -0
  655. data/docbook-xsl/params/insert.olink.page.number.xml +83 -0
  656. data/docbook-xsl/params/insert.olink.pdf.frag.xml +68 -0
  657. data/docbook-xsl/params/insert.xref.page.number.xml +60 -0
  658. data/docbook-xsl/params/itemizedlist.label.properties.xml +26 -0
  659. data/docbook-xsl/params/itemizedlist.label.width.xml +28 -0
  660. data/docbook-xsl/params/itemizedlist.properties.xml +23 -0
  661. data/docbook-xsl/params/javahelp.encoding.xml +31 -0
  662. data/docbook-xsl/params/keep.relative.image.uris.xml +34 -0
  663. data/docbook-xsl/params/keyboard.nav.xml +29 -0
  664. data/docbook-xsl/params/l10n.gentext.default.language.xml +30 -0
  665. data/docbook-xsl/params/l10n.gentext.language.xml +33 -0
  666. data/docbook-xsl/params/l10n.gentext.use.xref.language.xml +53 -0
  667. data/docbook-xsl/params/l10n.lang.value.rfc.compliant.xml +57 -0
  668. data/docbook-xsl/params/label.from.part.xml +38 -0
  669. data/docbook-xsl/params/line-height.xml +27 -0
  670. data/docbook-xsl/params/linenumbering.everyNth.xml +29 -0
  671. data/docbook-xsl/params/linenumbering.extension.xml +30 -0
  672. data/docbook-xsl/params/linenumbering.separator.xml +30 -0
  673. data/docbook-xsl/params/linenumbering.width.xml +29 -0
  674. data/docbook-xsl/params/link.mailto.url.xml +29 -0
  675. data/docbook-xsl/params/list.block.properties.xml +25 -0
  676. data/docbook-xsl/params/list.block.spacing.xml +29 -0
  677. data/docbook-xsl/params/list.item.spacing.xml +26 -0
  678. data/docbook-xsl/params/make.graphic.viewport.xml +35 -0
  679. data/docbook-xsl/params/make.index.markup.xml +73 -0
  680. data/docbook-xsl/params/make.single.year.ranges.xml +28 -0
  681. data/docbook-xsl/params/make.valid.html.xml +35 -0
  682. data/docbook-xsl/params/make.year.ranges.xml +31 -0
  683. data/docbook-xsl/params/man.authors.section.enabled.xml +46 -0
  684. data/docbook-xsl/params/man.base.url.for.relative.links.xml +76 -0
  685. data/docbook-xsl/params/man.break.after.slash.xml +46 -0
  686. data/docbook-xsl/params/man.charmap.enabled.xml +55 -0
  687. data/docbook-xsl/params/man.charmap.subset.profile.english.xml +80 -0
  688. data/docbook-xsl/params/man.charmap.subset.profile.xml +297 -0
  689. data/docbook-xsl/params/man.charmap.uri.xml +42 -0
  690. data/docbook-xsl/params/man.charmap.use.subset.xml +80 -0
  691. data/docbook-xsl/params/man.copyright.section.enabled.xml +46 -0
  692. data/docbook-xsl/params/man.endnotes.are.numbered.xml +106 -0
  693. data/docbook-xsl/params/man.endnotes.list.enabled.xml +105 -0
  694. data/docbook-xsl/params/man.endnotes.list.heading.xml +36 -0
  695. data/docbook-xsl/params/man.font.funcprototype.xml +30 -0
  696. data/docbook-xsl/params/man.font.funcsynopsisinfo.xml +30 -0
  697. data/docbook-xsl/params/man.font.links.xml +64 -0
  698. data/docbook-xsl/params/man.font.table.headings.xml +30 -0
  699. data/docbook-xsl/params/man.font.table.title.xml +30 -0
  700. data/docbook-xsl/params/man.funcsynopsis.style.xml +26 -0
  701. data/docbook-xsl/params/man.hyphenate.computer.inlines.xml +53 -0
  702. data/docbook-xsl/params/man.hyphenate.filenames.xml +47 -0
  703. data/docbook-xsl/params/man.hyphenate.urls.xml +46 -0
  704. data/docbook-xsl/params/man.hyphenate.xml +59 -0
  705. data/docbook-xsl/params/man.indent.blurbs.xml +33 -0
  706. data/docbook-xsl/params/man.indent.lists.xml +35 -0
  707. data/docbook-xsl/params/man.indent.refsect.xml +70 -0
  708. data/docbook-xsl/params/man.indent.verbatims.xml +33 -0
  709. data/docbook-xsl/params/man.indent.width.xml +39 -0
  710. data/docbook-xsl/params/man.justify.xml +52 -0
  711. data/docbook-xsl/params/man.output.base.dir.xml +39 -0
  712. data/docbook-xsl/params/man.output.encoding.xml +53 -0
  713. data/docbook-xsl/params/man.output.in.separate.dir.xml +32 -0
  714. data/docbook-xsl/params/man.output.lang.in.name.enabled.xml +50 -0
  715. data/docbook-xsl/params/man.output.manifest.enabled.xml +27 -0
  716. data/docbook-xsl/params/man.output.manifest.filename.xml +29 -0
  717. data/docbook-xsl/params/man.output.quietly.xml +37 -0
  718. data/docbook-xsl/params/man.output.subdirs.enabled.xml +40 -0
  719. data/docbook-xsl/params/man.segtitle.suppress.xml +28 -0
  720. data/docbook-xsl/params/man.string.subst.map.local.post.xml +34 -0
  721. data/docbook-xsl/params/man.string.subst.map.local.pre.xml +34 -0
  722. data/docbook-xsl/params/man.string.subst.map.xml +162 -0
  723. data/docbook-xsl/params/man.subheading.divider.enabled.xml +37 -0
  724. data/docbook-xsl/params/man.subheading.divider.xml +37 -0
  725. data/docbook-xsl/params/man.table.footnotes.divider.xml +29 -0
  726. data/docbook-xsl/params/man.th.extra1.suppress.xml +32 -0
  727. data/docbook-xsl/params/man.th.extra2.max.length.xml +43 -0
  728. data/docbook-xsl/params/man.th.extra2.suppress.xml +44 -0
  729. data/docbook-xsl/params/man.th.extra3.max.length.xml +42 -0
  730. data/docbook-xsl/params/man.th.extra3.suppress.xml +34 -0
  731. data/docbook-xsl/params/man.th.title.max.length.xml +63 -0
  732. data/docbook-xsl/params/manifest.in.base.dir.xml +29 -0
  733. data/docbook-xsl/params/manifest.xml +29 -0
  734. data/docbook-xsl/params/manual.toc.xml +29 -0
  735. data/docbook-xsl/params/margin.note.float.type.xml +77 -0
  736. data/docbook-xsl/params/margin.note.properties.xml +54 -0
  737. data/docbook-xsl/params/margin.note.title.properties.xml +32 -0
  738. data/docbook-xsl/params/margin.note.width.xml +35 -0
  739. data/docbook-xsl/params/marker.section.level.xml +50 -0
  740. data/docbook-xsl/params/menuchoice.menu.separator.xml +42 -0
  741. data/docbook-xsl/params/menuchoice.separator.xml +32 -0
  742. data/docbook-xsl/params/minus.image.xml +29 -0
  743. data/docbook-xsl/params/monospace.font.family.xml +29 -0
  744. data/docbook-xsl/params/monospace.properties.xml +38 -0
  745. data/docbook-xsl/params/monospace.verbatim.properties.xml +27 -0
  746. data/docbook-xsl/params/multiframe.bottom.bgcolor.xml +28 -0
  747. data/docbook-xsl/params/multiframe.navigation.height.xml +28 -0
  748. data/docbook-xsl/params/multiframe.top.bgcolor.xml +28 -0
  749. data/docbook-xsl/params/multiframe.xml +31 -0
  750. data/docbook-xsl/params/nav.separator.xml +28 -0
  751. data/docbook-xsl/params/nav.table.summary.xml +27 -0
  752. data/docbook-xsl/params/navbgcolor.xml +26 -0
  753. data/docbook-xsl/params/navbodywidth.xml +26 -0
  754. data/docbook-xsl/params/navig.graphics.extension.xml +28 -0
  755. data/docbook-xsl/params/navig.graphics.path.xml +30 -0
  756. data/docbook-xsl/params/navig.graphics.xml +31 -0
  757. data/docbook-xsl/params/navig.showtitles.xml +32 -0
  758. data/docbook-xsl/params/navtocwidth.xml +26 -0
  759. data/docbook-xsl/params/next.image.xml +27 -0
  760. data/docbook-xsl/params/no.home.image.xml +27 -0
  761. data/docbook-xsl/params/no.next.image.xml +27 -0
  762. data/docbook-xsl/params/no.prev.image.xml +27 -0
  763. data/docbook-xsl/params/no.toc.image.xml +27 -0
  764. data/docbook-xsl/params/no.up.image.xml +27 -0
  765. data/docbook-xsl/params/nominal.image.depth.xml +27 -0
  766. data/docbook-xsl/params/nominal.image.width.xml +43 -0
  767. data/docbook-xsl/params/nominal.table.width.xml +30 -0
  768. data/docbook-xsl/params/nongraphical.admonition.properties.xml +41 -0
  769. data/docbook-xsl/params/normal.para.spacing.xml +26 -0
  770. data/docbook-xsl/params/olink.base.uri.xml +35 -0
  771. data/docbook-xsl/params/olink.debug.xml +36 -0
  772. data/docbook-xsl/params/olink.doctitle.xml +146 -0
  773. data/docbook-xsl/params/olink.fragid.xml +23 -0
  774. data/docbook-xsl/params/olink.lang.fallback.sequence.xml +83 -0
  775. data/docbook-xsl/params/olink.outline.ext.xml +28 -0
  776. data/docbook-xsl/params/olink.properties.xml +33 -0
  777. data/docbook-xsl/params/olink.pubid.xml +27 -0
  778. data/docbook-xsl/params/olink.resolver.xml +23 -0
  779. data/docbook-xsl/params/olink.sysid.xml +27 -0
  780. data/docbook-xsl/params/orderedlist.label.properties.xml +26 -0
  781. data/docbook-xsl/params/orderedlist.label.width.xml +28 -0
  782. data/docbook-xsl/params/orderedlist.properties.xml +24 -0
  783. data/docbook-xsl/params/othercredit.like.author.enabled.xml +31 -0
  784. data/docbook-xsl/params/output-root.xml +28 -0
  785. data/docbook-xsl/params/output.indent.xml +32 -0
  786. data/docbook-xsl/params/overlay.js.xml +28 -0
  787. data/docbook-xsl/params/overlay.logo.xml +28 -0
  788. data/docbook-xsl/params/overlay.xml +32 -0
  789. data/docbook-xsl/params/page.height.portrait.xml +69 -0
  790. data/docbook-xsl/params/page.height.xml +37 -0
  791. data/docbook-xsl/params/page.margin.bottom.xml +29 -0
  792. data/docbook-xsl/params/page.margin.inner.xml +35 -0
  793. data/docbook-xsl/params/page.margin.outer.xml +35 -0
  794. data/docbook-xsl/params/page.margin.top.xml +28 -0
  795. data/docbook-xsl/params/page.orientation.xml +32 -0
  796. data/docbook-xsl/params/page.width.portrait.xml +67 -0
  797. data/docbook-xsl/params/page.width.xml +36 -0
  798. data/docbook-xsl/params/pages.template.xml +29 -0
  799. data/docbook-xsl/params/paper.type.xml +71 -0
  800. data/docbook-xsl/params/para.propagates.style.xml +29 -0
  801. data/docbook-xsl/params/part.autolabel.xml +73 -0
  802. data/docbook-xsl/params/passivetex.extensions.xml +37 -0
  803. data/docbook-xsl/params/pgwide.properties.xml +52 -0
  804. data/docbook-xsl/params/phrase.propagates.style.xml +29 -0
  805. data/docbook-xsl/params/pixels.per.inch.xml +31 -0
  806. data/docbook-xsl/params/plus.image.xml +29 -0
  807. data/docbook-xsl/params/points.per.em.xml +29 -0
  808. data/docbook-xsl/params/preface.autolabel.xml +71 -0
  809. data/docbook-xsl/params/prefer.internal.olink.xml +78 -0
  810. data/docbook-xsl/params/preferred.mediaobject.role.xml +40 -0
  811. data/docbook-xsl/params/prev.image.xml +27 -0
  812. data/docbook-xsl/params/procedure.properties.xml +29 -0
  813. data/docbook-xsl/params/process.empty.source.toc.xml +39 -0
  814. data/docbook-xsl/params/process.source.toc.xml +39 -0
  815. data/docbook-xsl/params/profile.arch.xml +39 -0
  816. data/docbook-xsl/params/profile.attribute.xml +34 -0
  817. data/docbook-xsl/params/profile.audience.xml +38 -0
  818. data/docbook-xsl/params/profile.condition.xml +38 -0
  819. data/docbook-xsl/params/profile.conformance.xml +38 -0
  820. data/docbook-xsl/params/profile.lang.xml +38 -0
  821. data/docbook-xsl/params/profile.os.xml +38 -0
  822. data/docbook-xsl/params/profile.revision.xml +38 -0
  823. data/docbook-xsl/params/profile.revisionflag.xml +38 -0
  824. data/docbook-xsl/params/profile.role.xml +54 -0
  825. data/docbook-xsl/params/profile.security.xml +38 -0
  826. data/docbook-xsl/params/profile.separator.xml +27 -0
  827. data/docbook-xsl/params/profile.status.xml +38 -0
  828. data/docbook-xsl/params/profile.userlevel.xml +38 -0
  829. data/docbook-xsl/params/profile.value.xml +41 -0
  830. data/docbook-xsl/params/profile.vendor.xml +38 -0
  831. data/docbook-xsl/params/profile.wordsize.xml +38 -0
  832. data/docbook-xsl/params/punct.honorific.xml +28 -0
  833. data/docbook-xsl/params/qanda.defaultlabel.xml +44 -0
  834. data/docbook-xsl/params/qanda.in.toc.xml +34 -0
  835. data/docbook-xsl/params/qanda.inherit.numeration.xml +30 -0
  836. data/docbook-xsl/params/qanda.nested.in.toc.xml +29 -0
  837. data/docbook-xsl/params/qanda.title.level1.properties.xml +32 -0
  838. data/docbook-xsl/params/qanda.title.level2.properties.xml +32 -0
  839. data/docbook-xsl/params/qanda.title.level3.properties.xml +32 -0
  840. data/docbook-xsl/params/qanda.title.level4.properties.xml +32 -0
  841. data/docbook-xsl/params/qanda.title.level5.properties.xml +32 -0
  842. data/docbook-xsl/params/qanda.title.level6.properties.xml +34 -0
  843. data/docbook-xsl/params/qanda.title.properties.xml +37 -0
  844. data/docbook-xsl/params/qandadiv.autolabel.xml +26 -0
  845. data/docbook-xsl/params/rebuild-all.xml +33 -0
  846. data/docbook-xsl/params/refclass.suppress.xml +28 -0
  847. data/docbook-xsl/params/refentry.date.profile.enabled.xml +46 -0
  848. data/docbook-xsl/params/refentry.date.profile.xml +38 -0
  849. data/docbook-xsl/params/refentry.generate.name.xml +33 -0
  850. data/docbook-xsl/params/refentry.generate.title.xml +33 -0
  851. data/docbook-xsl/params/refentry.manual.fallback.profile.xml +48 -0
  852. data/docbook-xsl/params/refentry.manual.profile.enabled.xml +47 -0
  853. data/docbook-xsl/params/refentry.manual.profile.xml +72 -0
  854. data/docbook-xsl/params/refentry.meta.get.quietly.xml +37 -0
  855. data/docbook-xsl/params/refentry.pagebreak.xml +33 -0
  856. data/docbook-xsl/params/refentry.separator.xml +29 -0
  857. data/docbook-xsl/params/refentry.source.fallback.profile.xml +49 -0
  858. data/docbook-xsl/params/refentry.source.name.profile.enabled.xml +48 -0
  859. data/docbook-xsl/params/refentry.source.name.profile.xml +89 -0
  860. data/docbook-xsl/params/refentry.source.name.suppress.xml +42 -0
  861. data/docbook-xsl/params/refentry.title.properties.xml +59 -0
  862. data/docbook-xsl/params/refentry.version.profile.enabled.xml +47 -0
  863. data/docbook-xsl/params/refentry.version.profile.xml +41 -0
  864. data/docbook-xsl/params/refentry.version.suppress.xml +43 -0
  865. data/docbook-xsl/params/refentry.xref.manvolnum.xml +31 -0
  866. data/docbook-xsl/params/reference.autolabel.xml +67 -0
  867. data/docbook-xsl/params/region.after.extent.xml +29 -0
  868. data/docbook-xsl/params/region.before.extent.xml +29 -0
  869. data/docbook-xsl/params/revhistory.table.cell.properties.xml +28 -0
  870. data/docbook-xsl/params/revhistory.table.properties.xml +28 -0
  871. data/docbook-xsl/params/revhistory.title.properties.xml +28 -0
  872. data/docbook-xsl/params/root.filename.xml +29 -0
  873. data/docbook-xsl/params/root.properties.xml +43 -0
  874. data/docbook-xsl/params/rootid.xml +33 -0
  875. data/docbook-xsl/params/runinhead.default.title.end.punct.xml +27 -0
  876. data/docbook-xsl/params/runinhead.title.end.punct.xml +32 -0
  877. data/docbook-xsl/params/running.foot.properties.xml +34 -0
  878. data/docbook-xsl/params/sans.font.family.xml +29 -0
  879. data/docbook-xsl/params/saxon.callouts.xml +30 -0
  880. data/docbook-xsl/params/saxon.character.representation.xml +38 -0
  881. data/docbook-xsl/params/saxon.linenumbering.xml +32 -0
  882. data/docbook-xsl/params/saxon.tablecolumns.xml +30 -0
  883. data/docbook-xsl/params/script.dir.xml +33 -0
  884. data/docbook-xsl/params/section.autolabel.max.depth.xml +32 -0
  885. data/docbook-xsl/params/section.autolabel.xml +26 -0
  886. data/docbook-xsl/params/section.container.element.xml +62 -0
  887. data/docbook-xsl/params/section.label.includes.component.label.xml +27 -0
  888. data/docbook-xsl/params/section.level1.properties.xml +43 -0
  889. data/docbook-xsl/params/section.level2.properties.xml +43 -0
  890. data/docbook-xsl/params/section.level3.properties.xml +43 -0
  891. data/docbook-xsl/params/section.level4.properties.xml +43 -0
  892. data/docbook-xsl/params/section.level5.properties.xml +43 -0
  893. data/docbook-xsl/params/section.level6.properties.xml +43 -0
  894. data/docbook-xsl/params/section.properties.xml +35 -0
  895. data/docbook-xsl/params/section.title.level1.properties.xml +32 -0
  896. data/docbook-xsl/params/section.title.level2.properties.xml +33 -0
  897. data/docbook-xsl/params/section.title.level3.properties.xml +32 -0
  898. data/docbook-xsl/params/section.title.level4.properties.xml +32 -0
  899. data/docbook-xsl/params/section.title.level5.properties.xml +32 -0
  900. data/docbook-xsl/params/section.title.level6.properties.xml +33 -0
  901. data/docbook-xsl/params/section.title.properties.xml +39 -0
  902. data/docbook-xsl/params/segmentedlist.as.table.xml +28 -0
  903. data/docbook-xsl/params/sequential.links.xml +25 -0
  904. data/docbook-xsl/params/shade.verbatim.style.xml +36 -0
  905. data/docbook-xsl/params/shade.verbatim.xml +30 -0
  906. data/docbook-xsl/params/show.comments.xml +32 -0
  907. data/docbook-xsl/params/show.foil.number.xml +28 -0
  908. data/docbook-xsl/params/show.revisionflag.xml +42 -0
  909. data/docbook-xsl/params/showtoc.image.xml +29 -0
  910. data/docbook-xsl/params/side.float.properties.xml +50 -0
  911. data/docbook-xsl/params/sidebar.float.type.xml +73 -0
  912. data/docbook-xsl/params/sidebar.float.width.xml +35 -0
  913. data/docbook-xsl/params/sidebar.properties.xml +42 -0
  914. data/docbook-xsl/params/sidebar.title.properties.xml +32 -0
  915. data/docbook-xsl/params/simplesect.in.toc.xml +26 -0
  916. data/docbook-xsl/params/slide.font.family.xml +31 -0
  917. data/docbook-xsl/params/slide.title.font.family.xml +31 -0
  918. data/docbook-xsl/params/slides.js.xml +28 -0
  919. data/docbook-xsl/params/slides.properties.xml +31 -0
  920. data/docbook-xsl/params/spacing.paras.xml +30 -0
  921. data/docbook-xsl/params/speakernote.properties.xml +32 -0
  922. data/docbook-xsl/params/subscript.properties.xml +29 -0
  923. data/docbook-xsl/params/superscript.properties.xml +29 -0
  924. data/docbook-xsl/params/suppress.footer.navigation.xml +26 -0
  925. data/docbook-xsl/params/suppress.header.navigation.xml +27 -0
  926. data/docbook-xsl/params/suppress.homepage.title.xml +25 -0
  927. data/docbook-xsl/params/suppress.navigation.xml +28 -0
  928. data/docbook-xsl/params/symbol.font.family.xml +45 -0
  929. data/docbook-xsl/params/table.borders.with.css.xml +28 -0
  930. data/docbook-xsl/params/table.cell.border.color.xml +39 -0
  931. data/docbook-xsl/params/table.cell.border.style.xml +42 -0
  932. data/docbook-xsl/params/table.cell.border.thickness.xml +35 -0
  933. data/docbook-xsl/params/table.cell.padding.xml +32 -0
  934. data/docbook-xsl/params/table.entry.padding.xml +27 -0
  935. data/docbook-xsl/params/table.footnote.number.format.xml +33 -0
  936. data/docbook-xsl/params/table.footnote.number.symbols.xml +39 -0
  937. data/docbook-xsl/params/table.footnote.properties.xml +39 -0
  938. data/docbook-xsl/params/table.frame.border.color.xml +28 -0
  939. data/docbook-xsl/params/table.frame.border.style.xml +37 -0
  940. data/docbook-xsl/params/table.frame.border.thickness.xml +27 -0
  941. data/docbook-xsl/params/table.properties.xml +34 -0
  942. data/docbook-xsl/params/table.spacer.image.xml +26 -0
  943. data/docbook-xsl/params/table.table.properties.xml +36 -0
  944. data/docbook-xsl/params/tablecolumns.extension.xml +30 -0
  945. data/docbook-xsl/params/target.database.document.xml +37 -0
  946. data/docbook-xsl/params/targets.filename.xml +32 -0
  947. data/docbook-xsl/params/template.xml +27 -0
  948. data/docbook-xsl/params/tex.math.delims.xml +47 -0
  949. data/docbook-xsl/params/tex.math.file.xml +42 -0
  950. data/docbook-xsl/params/tex.math.in.alt.xml +83 -0
  951. data/docbook-xsl/params/text.home.xml +27 -0
  952. data/docbook-xsl/params/text.next.xml +27 -0
  953. data/docbook-xsl/params/text.prev.xml +27 -0
  954. data/docbook-xsl/params/text.toc.xml +27 -0
  955. data/docbook-xsl/params/text.up.xml +27 -0
  956. data/docbook-xsl/params/textbgcolor.xml +26 -0
  957. data/docbook-xsl/params/textdata.default.encoding.xml +32 -0
  958. data/docbook-xsl/params/textinsert.extension.xml +62 -0
  959. data/docbook-xsl/params/title.font.family.xml +33 -0
  960. data/docbook-xsl/params/title.margin.left.xml +64 -0
  961. data/docbook-xsl/params/titlefoil.html.xml +27 -0
  962. data/docbook-xsl/params/toc.bg.color.xml +27 -0
  963. data/docbook-xsl/params/toc.blank.graphic.xml +28 -0
  964. data/docbook-xsl/params/toc.blank.image.xml +27 -0
  965. data/docbook-xsl/params/toc.blank.text.xml +27 -0
  966. data/docbook-xsl/params/toc.hide.show.xml +33 -0
  967. data/docbook-xsl/params/toc.html.xml +27 -0
  968. data/docbook-xsl/params/toc.image.xml +27 -0
  969. data/docbook-xsl/params/toc.indent.width.xml +34 -0
  970. data/docbook-xsl/params/toc.line.properties.xml +42 -0
  971. data/docbook-xsl/params/toc.list.type.xml +30 -0
  972. data/docbook-xsl/params/toc.margin.properties.xml +33 -0
  973. data/docbook-xsl/params/toc.max.depth.xml +25 -0
  974. data/docbook-xsl/params/toc.pointer.graphic.xml +28 -0
  975. data/docbook-xsl/params/toc.pointer.image.xml +27 -0
  976. data/docbook-xsl/params/toc.pointer.text.xml +27 -0
  977. data/docbook-xsl/params/toc.row.height.xml +33 -0
  978. data/docbook-xsl/params/toc.section.depth.xml +28 -0
  979. data/docbook-xsl/params/toc.spacer.graphic.xml +28 -0
  980. data/docbook-xsl/params/toc.spacer.image.xml +27 -0
  981. data/docbook-xsl/params/toc.spacer.text.xml +27 -0
  982. data/docbook-xsl/params/toc.width.xml +28 -0
  983. data/docbook-xsl/params/ua.js.xml +28 -0
  984. data/docbook-xsl/params/ulink.footnotes.xml +34 -0
  985. data/docbook-xsl/params/ulink.hyphenate.chars.xml +37 -0
  986. data/docbook-xsl/params/ulink.hyphenate.xml +35 -0
  987. data/docbook-xsl/params/ulink.show.xml +37 -0
  988. data/docbook-xsl/params/ulink.target.xml +29 -0
  989. data/docbook-xsl/params/up.image.xml +27 -0
  990. data/docbook-xsl/params/use.embed.for.svg.xml +33 -0
  991. data/docbook-xsl/params/use.extensions.xml +31 -0
  992. data/docbook-xsl/params/use.id.as.filename.xml +30 -0
  993. data/docbook-xsl/params/use.id.function.xml +32 -0
  994. data/docbook-xsl/params/use.local.olink.style.xml +28 -0
  995. data/docbook-xsl/params/use.role.as.xrefstyle.xml +93 -0
  996. data/docbook-xsl/params/use.role.for.mediaobject.xml +56 -0
  997. data/docbook-xsl/params/use.svg.xml +30 -0
  998. data/docbook-xsl/params/variablelist.as.blocks.xml +62 -0
  999. data/docbook-xsl/params/variablelist.as.table.xml +54 -0
  1000. data/docbook-xsl/params/variablelist.max.termlength.xml +46 -0
  1001. data/docbook-xsl/params/variablelist.term.break.after.xml +39 -0
  1002. data/docbook-xsl/params/variablelist.term.separator.xml +40 -0
  1003. data/docbook-xsl/params/verbatim.properties.xml +38 -0
  1004. data/docbook-xsl/params/wordml.template.xml +29 -0
  1005. data/docbook-xsl/params/writing.mode.xml +84 -0
  1006. data/docbook-xsl/params/xbCollapsibleLists.js.xml +28 -0
  1007. data/docbook-xsl/params/xbDOM.js.xml +28 -0
  1008. data/docbook-xsl/params/xbLibrary.js.xml +28 -0
  1009. data/docbook-xsl/params/xbStyle.js.xml +28 -0
  1010. data/docbook-xsl/params/xep.extensions.xml +31 -0
  1011. data/docbook-xsl/params/xep.index.item.properties.xml +36 -0
  1012. data/docbook-xsl/params/xref.label-page.separator.xml +38 -0
  1013. data/docbook-xsl/params/xref.label-title.separator.xml +36 -0
  1014. data/docbook-xsl/params/xref.properties.xml +29 -0
  1015. data/docbook-xsl/params/xref.title-page.separator.xml +36 -0
  1016. data/docbook-xsl/params/xref.with.number.and.title.xml +30 -0
  1017. data/docbook-xsl/profiling/profile-mode.xsl +239 -0
  1018. data/docbook-xsl/profiling/profile.xsl +49 -0
  1019. data/docbook-xsl/profiling/strip-attributes.xsl +27 -0
  1020. data/docbook-xsl/profiling/xsl2profile.xsl +159 -0
  1021. data/docbook-xsl/roundtrip/blocks-spec.xml +11 -0
  1022. data/docbook-xsl/roundtrip/blocks2dbk.dtd +76 -0
  1023. data/docbook-xsl/roundtrip/blocks2dbk.xsl +1732 -0
  1024. data/docbook-xsl/roundtrip/dbk2ooo.xsl +178 -0
  1025. data/docbook-xsl/roundtrip/dbk2pages.xsl +441 -0
  1026. data/docbook-xsl/roundtrip/dbk2wordml.xsl +401 -0
  1027. data/docbook-xsl/roundtrip/dbk2wp.xsl +1375 -0
  1028. data/docbook-xsl/roundtrip/normalise-common.xsl +39 -0
  1029. data/docbook-xsl/roundtrip/normalise2sections.xsl +1270 -0
  1030. data/docbook-xsl/roundtrip/pages2normalise.xsl +351 -0
  1031. data/docbook-xsl/roundtrip/param.xml +105 -0
  1032. data/docbook-xsl/roundtrip/param.xsl +18 -0
  1033. data/docbook-xsl/roundtrip/sections-spec.xml +38 -0
  1034. data/docbook-xsl/roundtrip/sections2blocks.xsl +263 -0
  1035. data/docbook-xsl/roundtrip/specifications.xml +1420 -0
  1036. data/docbook-xsl/roundtrip/template-pages.xml +2 -0
  1037. data/docbook-xsl/roundtrip/template.dot +0 -0
  1038. data/docbook-xsl/roundtrip/template.xml +3 -0
  1039. data/docbook-xsl/roundtrip/wordml2normalise.xsl +445 -0
  1040. data/docbook-xsl/template/titlepage.xml +478 -0
  1041. data/docbook-xsl/template/titlepage.xsl +1280 -0
  1042. data/docbook-xsl/tests/refentry.007.ns.xml +325 -0
  1043. data/docbook-xsl/tests/refentry.007.xml +340 -0
  1044. data/docbook-xsl/tools/bin/docbook-xsl-update +53 -0
  1045. data/docbook-xsl/tools/make/Makefile.DocBook +698 -0
  1046. data/docbook-xsl/tools/make/Makefile.combine +182 -0
  1047. data/docbook-xsl/tools/make/Makefile.docParam +59 -0
  1048. data/docbook-xsl/xhtml/admon.xsl +133 -0
  1049. data/docbook-xsl/xhtml/annotations.xsl +158 -0
  1050. data/docbook-xsl/xhtml/autoidx-kimber.xsl +139 -0
  1051. data/docbook-xsl/xhtml/autoidx-kosek.xsl +109 -0
  1052. data/docbook-xsl/xhtml/autoidx-ng.xsl +21 -0
  1053. data/docbook-xsl/xhtml/autoidx.xsl +588 -0
  1054. data/docbook-xsl/xhtml/autotoc.xsl +632 -0
  1055. data/docbook-xsl/xhtml/biblio-iso690.xsl +1300 -0
  1056. data/docbook-xsl/xhtml/biblio.xsl +1234 -0
  1057. data/docbook-xsl/xhtml/block.xsl +432 -0
  1058. data/docbook-xsl/xhtml/callout.xsl +188 -0
  1059. data/docbook-xsl/xhtml/changebars.xsl +78 -0
  1060. data/docbook-xsl/xhtml/chunk-changebars.xsl +96 -0
  1061. data/docbook-xsl/xhtml/chunk-code.xsl +639 -0
  1062. data/docbook-xsl/xhtml/chunk-common.xsl +1552 -0
  1063. data/docbook-xsl/xhtml/chunk.xsl +52 -0
  1064. data/docbook-xsl/xhtml/chunker.xsl +302 -0
  1065. data/docbook-xsl/xhtml/chunkfast.xsl +69 -0
  1066. data/docbook-xsl/xhtml/chunktoc.xsl +462 -0
  1067. data/docbook-xsl/xhtml/component.xsl +375 -0
  1068. data/docbook-xsl/xhtml/division.xsl +228 -0
  1069. data/docbook-xsl/xhtml/docbook.xsl +447 -0
  1070. data/docbook-xsl/xhtml/ebnf.xsl +328 -0
  1071. data/docbook-xsl/xhtml/footnote.xsl +301 -0
  1072. data/docbook-xsl/xhtml/formal.xsl +387 -0
  1073. data/docbook-xsl/xhtml/glossary.xsl +548 -0
  1074. data/docbook-xsl/xhtml/graphics.xsl +1436 -0
  1075. data/docbook-xsl/xhtml/highlight.xsl +70 -0
  1076. data/docbook-xsl/xhtml/html-rtf.xsl +321 -0
  1077. data/docbook-xsl/xhtml/html.xsl +263 -0
  1078. data/docbook-xsl/xhtml/htmltbl.xsl +57 -0
  1079. data/docbook-xsl/xhtml/index.xsl +224 -0
  1080. data/docbook-xsl/xhtml/info.xsl +44 -0
  1081. data/docbook-xsl/xhtml/inline.xsl +1457 -0
  1082. data/docbook-xsl/xhtml/keywords.xsl +36 -0
  1083. data/docbook-xsl/xhtml/lists.xsl +1081 -0
  1084. data/docbook-xsl/xhtml/maketoc.xsl +91 -0
  1085. data/docbook-xsl/xhtml/manifest.xsl +22 -0
  1086. data/docbook-xsl/xhtml/math.xsl +284 -0
  1087. data/docbook-xsl/xhtml/oldchunker.xsl +176 -0
  1088. data/docbook-xsl/xhtml/onechunk.xsl +36 -0
  1089. data/docbook-xsl/xhtml/param.xsl +424 -0
  1090. data/docbook-xsl/xhtml/pi.xsl +1203 -0
  1091. data/docbook-xsl/xhtml/profile-chunk-code.xsl +611 -0
  1092. data/docbook-xsl/xhtml/profile-chunk.xsl +52 -0
  1093. data/docbook-xsl/xhtml/profile-docbook.xsl +409 -0
  1094. data/docbook-xsl/xhtml/profile-onechunk.xsl +36 -0
  1095. data/docbook-xsl/xhtml/qandaset.xsl +371 -0
  1096. data/docbook-xsl/xhtml/refentry.xsl +309 -0
  1097. data/docbook-xsl/xhtml/sections.xsl +554 -0
  1098. data/docbook-xsl/xhtml/synop.xsl +1508 -0
  1099. data/docbook-xsl/xhtml/table.xsl +1102 -0
  1100. data/docbook-xsl/xhtml/task.xsl +73 -0
  1101. data/docbook-xsl/xhtml/titlepage.templates.xsl +3622 -0
  1102. data/docbook-xsl/xhtml/titlepage.xsl +1015 -0
  1103. data/docbook-xsl/xhtml/toc.xsl +159 -0
  1104. data/docbook-xsl/xhtml/verbatim.xsl +354 -0
  1105. data/docbook-xsl/xhtml/xref.xsl +1288 -0
  1106. data/example/LICENSE +22 -0
  1107. data/example/book/big.asc +5604 -0
  1108. data/example/book/book.asc +62 -0
  1109. data/example/book/holmes.asc +12983 -0
  1110. data/example/book/image/octocat_professor.png +0 -0
  1111. data/example/book/include/hello.c +10 -0
  1112. data/example/output/META-INF/container.xml +6 -0
  1113. data/example/output/OEBPS/ar01s02.html +15 -0
  1114. data/example/output/OEBPS/ar01s03.html +3 -0
  1115. data/example/output/OEBPS/content.opf +21 -0
  1116. data/example/output/OEBPS/index.html +5 -0
  1117. data/example/output/OEBPS/toc.ncx +37 -0
  1118. data/example/output/a_case_of_identity.html +725 -0
  1119. data/example/output/a_example_appendix.html +63 -0
  1120. data/example/output/a_migration_notes.html +95 -0
  1121. data/example/output/apa.html +20 -0
  1122. data/example/output/apb.html +6 -0
  1123. data/example/output/apc.html +24 -0
  1124. data/example/output/apd.html +30 -0
  1125. data/example/output/ape.html +26 -0
  1126. data/example/output/apf.html +9 -0
  1127. data/example/output/apg.html +42 -0
  1128. data/example/output/aph.html +89 -0
  1129. data/example/output/ar01s02.html +12 -0
  1130. data/example/output/ar01s03.html +34 -0
  1131. data/example/output/ar01s04.html +77 -0
  1132. data/example/output/ar01s05.html +272 -0
  1133. data/example/output/ar01s06.html +35 -0
  1134. data/example/output/ar01s07.html +105 -0
  1135. data/example/output/ar01s08.html +33 -0
  1136. data/example/output/ar01s09.html +12 -0
  1137. data/example/output/ar01s10.html +14 -0
  1138. data/example/output/ar01s11.html +34 -0
  1139. data/example/output/ar01s12.html +63 -0
  1140. data/example/output/ar01s13.html +156 -0
  1141. data/example/output/ar01s14.html +330 -0
  1142. data/example/output/ar01s15.html +22 -0
  1143. data/example/output/ar01s16.html +27 -0
  1144. data/example/output/ar01s17.html +94 -0
  1145. data/example/output/ar01s18.html +359 -0
  1146. data/example/output/ar01s19.html +373 -0
  1147. data/example/output/ar01s20.html +27 -0
  1148. data/example/output/ar01s21.html +33 -0
  1149. data/example/output/ar01s22.html +351 -0
  1150. data/example/output/ar01s23.html +21 -0
  1151. data/example/output/ar01s24.html +69 -0
  1152. data/example/output/ar01s25.html +60 -0
  1153. data/example/output/ar01s26.html +217 -0
  1154. data/example/output/ar01s27.html +88 -0
  1155. data/example/output/ar01s28.html +237 -0
  1156. data/example/output/ar01s29.html +68 -0
  1157. data/example/output/ar01s30.html +154 -0
  1158. data/example/output/ar01s31.html +6 -0
  1159. data/example/output/ar01s32.html +22 -0
  1160. data/example/output/ar01s33.html +209 -0
  1161. data/example/output/asciidoc_backends.html +190 -0
  1162. data/example/output/asciidoc_document_types.html +131 -0
  1163. data/example/output/attribute_entries.html +185 -0
  1164. data/example/output/attribute_lists.html +157 -0
  1165. data/example/output/attribute_references.html +414 -0
  1166. data/example/output/attributelist_element.html +143 -0
  1167. data/example/output/b_packager_notes.html +68 -0
  1168. data/example/output/bi01.html +18 -0
  1169. data/example/output/big.asc +5604 -0
  1170. data/example/output/block_element_definitions.html +448 -0
  1171. data/example/output/block_titles.html +83 -0
  1172. data/example/output/blockid_element.html +80 -0
  1173. data/example/output/book.asc +5604 -0
  1174. data/example/output/book.epub +0 -0
  1175. data/example/output/book.fo +3788 -0
  1176. data/example/output/book.html +8793 -0
  1177. data/example/output/book.xml +8265 -0
  1178. data/example/output/c_asciidoc_safe_mode.html +105 -0
  1179. data/example/output/callouts.html +214 -0
  1180. data/example/output/catalog +10 -0
  1181. data/example/output/colophon.html +397 -0
  1182. data/example/output/configuration_files.html +672 -0
  1183. data/example/output/converting_docbook_to_other_file_formats.html +324 -0
  1184. data/example/output/d_using_asciidoc_with_non-english_languages.html +107 -0
  1185. data/example/output/delimited_blocks.html +455 -0
  1186. data/example/output/document_attributes.html +95 -0
  1187. data/example/output/document_processing.html +116 -0
  1188. data/example/output/document_structure.html +493 -0
  1189. data/example/output/e_vim_syntax_highlighter.html +111 -0
  1190. data/example/output/example_bibliography.html +82 -0
  1191. data/example/output/example_colophon.html +58 -0
  1192. data/example/output/example_glossary.html +73 -0
  1193. data/example/output/example_index.html +108 -0
  1194. data/example/output/f_attribute_options.html +129 -0
  1195. data/example/output/filters.html +179 -0
  1196. data/example/output/footnotes.html +103 -0
  1197. data/example/output/g_diagnostics.html +148 -0
  1198. data/example/output/generating_plain_text_files.html +68 -0
  1199. data/example/output/getting_started.html +87 -0
  1200. data/example/output/glossary.html +95 -0
  1201. data/example/output/go01.html +24 -0
  1202. data/example/output/h_backend_attributes.html +308 -0
  1203. data/example/output/help_commands.html +96 -0
  1204. data/example/output/holmes.asc +12983 -0
  1205. data/example/output/image/octocat_professor.png +0 -0
  1206. data/example/output/include/hello.c +10 -0
  1207. data/example/output/index.html +656 -0
  1208. data/example/output/indexes.html +104 -0
  1209. data/example/output/intrinsic_attributes.html +165 -0
  1210. data/example/output/ix01.html +3 -0
  1211. data/example/output/lists.html +666 -0
  1212. data/example/output/macros.html +737 -0
  1213. data/example/output/manpage_documents.html +124 -0
  1214. data/example/output/master.css +281 -0
  1215. data/example/output/mathematical_formulas.html +125 -0
  1216. data/example/output/page.html +60 -0
  1217. data/example/output/paragraphs.html +192 -0
  1218. data/example/output/pr01.html +3 -0
  1219. data/example/output/source_code_highlighting.html +59 -0
  1220. data/example/output/stylesheets/handbookish-quirks.css +0 -0
  1221. data/example/output/stylesheets/handbookish.css +233 -0
  1222. data/example/output/tables.html +797 -0
  1223. data/example/output/text_formatting.html +273 -0
  1224. data/example/output/the_adventure_of_the_beryl_coronet.html +968 -0
  1225. data/example/output/the_adventure_of_the_blue_carbuncle.html +825 -0
  1226. data/example/output/the_adventure_of_the_copper_beeches.html +998 -0
  1227. data/example/output/the_adventure_of_the_engineer_s_thumb.html +851 -0
  1228. data/example/output/the_adventure_of_the_noble_bachelor.html +861 -0
  1229. data/example/output/the_adventure_of_the_speckled_band.html +1015 -0
  1230. data/example/output/the_boscombe_valley_mystery.html +974 -0
  1231. data/example/output/the_first_chapter.html +110 -0
  1232. data/example/output/the_five_orange_pips.html +776 -0
  1233. data/example/output/the_man_with_the_twisted_lip.html +946 -0
  1234. data/example/output/the_red-headed_league.html +950 -0
  1235. data/example/output/the_second_chapter.html +95 -0
  1236. data/example/output/the_third_chapter.html +58 -0
  1237. data/example/output/tips_and_tricks.html +452 -0
  1238. data/example/output/title.html +120 -0
  1239. data/example/output/titles.html +126 -0
  1240. data/example/site/index.html +12 -0
  1241. data/example/site/page.html +8 -0
  1242. data/site/default/index.html +43 -0
  1243. data/site/default/master.css +281 -0
  1244. data/site/default/page.html +60 -0
  1245. data/stylesheets/handbookish-quirks.css +0 -0
  1246. data/stylesheets/handbookish.css +233 -0
  1247. data/template/LICENSE +1 -0
  1248. data/template/README.asciidoc +9 -0
  1249. data/template/book/book.asc +58 -0
  1250. data/template/book/chapter2.asc +8 -0
  1251. data/template/book/image/octocat_professor.png +0 -0
  1252. data/template/book/include/hello.c +10 -0
  1253. metadata +1255 -3
@@ -0,0 +1,11 @@
1
+ <legalnotice xmlns="http://docbook.org/ns/docbook" version="5.0"
2
+ xml:id="warranty"><title>Warranty</title>
3
+ <para>THE SOFTWARE IS PROVIDED <quote>AS IS</quote>,
4
+ WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT
5
+ LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
6
+ PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL NORMAN WALSH OR ANY
7
+ OTHER CONTRIBUTOR BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
8
+ WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT
9
+ OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
10
+ THE SOFTWARE.</para>
11
+ </legalnotice>
@@ -0,0 +1,88 @@
1
+ ----------------------------------------------------------------------
2
+ README file for the DocBook XSL Stylesheets
3
+ ----------------------------------------------------------------------
4
+
5
+ These are XSL stylesheets for transforming DocBook XML document
6
+ instances into .epub format.
7
+
8
+ .epub is an open standard of the The International Digital Publishing Forum (IDPF),
9
+ a the trade and standards association for the digital publishing industry.
10
+
11
+ An alpha-quality reference implementation (dbtoepub) for a DocBook to .epub
12
+ converter (written in Ruby) is available under bin/.
13
+
14
+ From http://idpf.org
15
+ What is EPUB, .epub, OPS/OCF & OEB?
16
+
17
+ ".epub" is the file extension of an XML format for reflowable digital
18
+ books and publications. ".epub" is composed of three open standards,
19
+ the Open Publication Structure (OPS), Open Packaging Format (OPF) and
20
+ Open Container Format (OCF), produced by the IDPF. "EPUB" allows
21
+ publishers to produce and send a single digital publication file
22
+ through distribution and offers consumers interoperability between
23
+ software/hardware for unencrypted reflowable digital books and other
24
+ publications. The Open eBook Publication Structure or "OEB",
25
+ originally produced in 1999, is the precursor to OPS.
26
+
27
+ ----------------------------------------------------------------------
28
+ .epub Constraints
29
+ ----------------------------------------------------------------------
30
+
31
+ .epub does not support all of the image formats that DocBook supports.
32
+ When an image is available in an accepted format, it will be used. The
33
+ accepted @formats are: 'GIF','GIF87a','GIF89a','JPEG','JPG','PNG','SVG'
34
+ A mime-type for the image will be guessed from the file extension,
35
+ which may not work if your file extensions are non-standard.
36
+
37
+ Non-supported elements:
38
+ * <mediaobjectco>
39
+ * <inlinegraphic>, <graphic>, <textdata>, <imagedata> with text/XML
40
+ @filerefs
41
+ * <olink>
42
+ * <cmdsynopsis> in lists (generic XHTML rendering inability)
43
+ * <footnote><para><programlisting> (just make your programlistings
44
+ siblings, rather than descendents of paras)
45
+
46
+ ----------------------------------------------------------------------
47
+ dbtoepub Reference Implementation
48
+ ----------------------------------------------------------------------
49
+
50
+ An alpha-quality DocBook to .epub conversion program, dbtoepub, is provided
51
+ in bin/dbtoepub.
52
+
53
+ This tool requires:
54
+ - 'xsltproc' in your PATH
55
+ - 'zip' in your PATH
56
+ - Ruby 1.8.4+
57
+
58
+ Windows compatibility has not been extensively tested; bug reports encouraged.
59
+ [See http://www.zlatkovic.com/libxml.en.html and http://unxutils.sourceforge.net/]
60
+
61
+ $ dbtoepub --help
62
+ Usage: dbtoepub [OPTIONS] [DocBook Files]
63
+
64
+ dbtoepub converts DocBook <book> and <article>s into to .epub files.
65
+
66
+ .epub is defined by the IDPF at www.idpf.org and is made up of 3 standards:
67
+ - Open Publication Structure (OPS)
68
+ - Open Packaging Format (OPF)
69
+ - Open Container Format (OCF)
70
+
71
+ Specific options:
72
+ -d, --debug Show debugging output.
73
+ -h, --help Display usage info
74
+ -v, --verbose Make output verbose
75
+
76
+
77
+ ----------------------------------------------------------------------
78
+ Validation
79
+ ----------------------------------------------------------------------
80
+
81
+ The epubcheck project provides limited validation for .epub documents.
82
+ See http://code.google.com/p/epubcheck/ for details.
83
+
84
+ ----------------------------------------------------------------------
85
+ Copyright information
86
+ ----------------------------------------------------------------------
87
+ See the accompanying file named COPYING.
88
+
@@ -0,0 +1,65 @@
1
+ #!/usr/bin/env ruby
2
+ # This program converts DocBook documents into .epub files.
3
+ #
4
+ # Usage: dbtoepub [OPTIONS] [DocBook Files]
5
+ #
6
+ # .epub is defined by the IDPF at www.idpf.org and is made up of 3 standards:
7
+ # - Open Publication Structure (OPS)
8
+ # - Open Packaging Format (OPF)
9
+ # - Open Container Format (OCF)
10
+ #
11
+ # Specific options:
12
+ # -c, --css [FILE] Use FILE for CSS on generated XHTML.
13
+ # -d, --debug Show debugging output.
14
+ # -f, --font [OTF FILE] Embed OTF FILE in .epub.
15
+ # -h, --help Display usage info.
16
+ # -s, --stylesheet [XSL FILE] Use XSL FILE as a customization
17
+ # layer (imports epub/docbook.xsl).
18
+ # -v, --verbose Make output verbose.
19
+
20
+ lib = File.expand_path(File.join(File.dirname(__FILE__), 'lib'))
21
+ $LOAD_PATH.unshift(lib) if File.exist?(lib)
22
+
23
+ require 'optparse'
24
+ require 'tmpdir'
25
+
26
+ require 'docbook'
27
+
28
+ verbose = false
29
+ debug = false
30
+ css_file = nil
31
+ otf_files = []
32
+ customization_layer = nil
33
+
34
+ # Set up the OptionParser
35
+ opts = OptionParser.new
36
+ opts.banner = "Usage: #{File.basename($0)} [OPTIONS] [DocBook Files]
37
+
38
+ #{File.basename($0)} converts DocBook <book> and <article>s into to .epub files.
39
+
40
+ .epub is defined by the IDPF at www.idpf.org and is made up of 3 standards:
41
+ - Open Publication Structure (OPS)
42
+ - Open Packaging Format (OPF)
43
+ - Open Container Format (OCF)
44
+
45
+ Specific options:"
46
+ opts.on("-c", "--css [FILE]", "Use FILE for CSS on generated XHTML.") {|f| css_file = f}
47
+ opts.on("-d", "--debug", "Show debugging output.") {debug = true; verbose = true}
48
+ opts.on("-f", "--font [OTF FILE]", "Embed OTF FILE in .epub.") {|f| otf_files << f}
49
+ opts.on("-h", "--help", "Display usage info.") {puts opts.to_s; exit 0}
50
+ opts.on("-s", "--stylesheet [XSL FILE]", "Use XSL FILE as a customization layer (imports epub/docbook.xsl).") {|f| customization_layer = f}
51
+ opts.on("-v", "--verbose", "Make output verbose.") {verbose = true}
52
+
53
+ db_files = opts.parse(ARGV)
54
+ if db_files.size == 0
55
+ puts opts.to_s
56
+ exit 0
57
+ end
58
+
59
+ db_files.each {|docbook_file|
60
+ dir = File.expand_path(File.join(Dir.tmpdir, ".epubtmp#{Time.now.to_f.to_s}"))
61
+ e = DocBook::Epub.new(docbook_file, dir, css_file, customization_layer, otf_files)
62
+ epub_file = File.basename(docbook_file, ".xml") + ".epub"
63
+ puts "Rendering DocBook file #{docbook_file} to #{epub_file}" if verbose
64
+ e.render_to_file(epub_file)
65
+ }
@@ -0,0 +1,206 @@
1
+ require 'fileutils'
2
+ require 'rexml/parsers/pullparser'
3
+
4
+ module DocBook
5
+
6
+ class Epub
7
+ CHECKER = "epubcheck"
8
+ STYLESHEET = File.expand_path(File.join(File.dirname(__FILE__), '..', '..', "docbook.xsl"))
9
+ CALLOUT_PATH = File.join('images', 'callouts')
10
+ CALLOUT_FULL_PATH = File.expand_path(File.join(File.dirname(__FILE__), '..', '..', '..', CALLOUT_PATH))
11
+ CALLOUT_LIMIT = 15
12
+ CALLOUT_EXT = ".png"
13
+ XSLT_PROCESSOR = "xsltproc"
14
+ OUTPUT_DIR = ".epubtmp#{Time.now.to_f.to_s}"
15
+ MIMETYPE = "application/epub+zip"
16
+ META_DIR = "META-INF"
17
+ OEBPS_DIR = "OEBPS"
18
+ ZIPPER = "zip"
19
+
20
+ attr_reader :output_dir
21
+
22
+ def initialize(docbook_file, output_dir=OUTPUT_DIR, css_file=nil, customization_layer=nil, embedded_fonts=[])
23
+ @docbook_file = docbook_file
24
+ @output_dir = output_dir
25
+ @meta_dir = File.join(@output_dir, META_DIR)
26
+ @oebps_dir = File.join(@output_dir, OEBPS_DIR)
27
+ @css_file = css_file ? File.expand_path(css_file) : css_file
28
+ @embedded_fonts = embedded_fonts
29
+ raise NotImplementedError if @embedded_fonts.length > 1
30
+ @to_delete = []
31
+
32
+ if customization_layer
33
+ @stylesheet = File.expand_path(customization_layer)
34
+ else
35
+ @stylesheet = STYLESHEET
36
+ end
37
+
38
+ unless File.exist?(@docbook_file)
39
+ raise ArgumentError.new("File #{@docbook_file} does not exist")
40
+ end
41
+ end
42
+
43
+ def render_to_file(output_file, verbose=false)
44
+ render_to_epub(output_file, verbose)
45
+ bundle_epub(output_file, verbose)
46
+ cleanup_files(@to_delete)
47
+ end
48
+
49
+ def self.invalid?(file)
50
+ # Obnoxiously, we can't just check for a non-zero output...
51
+ cmd = "#{CHECKER} #{file}"
52
+ output = `#{cmd} 2>&1`
53
+
54
+ if $?.to_i == 0
55
+ return false
56
+ else
57
+ STDERR.puts output if $DEBUG
58
+ return output
59
+ end
60
+ end
61
+
62
+ private
63
+ def render_to_epub(output_file, verbose)
64
+ chunk_quietly = "--stringparam chunk.quietly " + (verbose ? '0' : '1')
65
+ callout_path = "--stringparam callout.graphics.path #{CALLOUT_PATH}/"
66
+ callout_limit = "--stringparam callout.graphics.number.limit #{CALLOUT_LIMIT}"
67
+ callout_ext = "--stringparam callout.graphics.extension #{CALLOUT_EXT}"
68
+ html_stylesheet = "--stringparam html.stylesheet #{File.basename(@css_file)}" if @css_file
69
+ base = "--stringparam base.dir #{@oebps_dir}/"
70
+ unless @embedded_fonts.empty?
71
+ font = "--stringparam epub.embedded.font \"#{File.basename(@embedded_fonts.first)}\""
72
+ end
73
+ meta = "--stringparam epub.metainf.dir #{@meta_dir}/"
74
+ oebps = "--stringparam epub.oebps.dir #{@oebps_dir}/"
75
+ options = ["--xinclude",
76
+ chunk_quietly,
77
+ callout_path,
78
+ callout_limit,
79
+ callout_ext,
80
+ base,
81
+ font,
82
+ meta,
83
+ oebps,
84
+ html_stylesheet,
85
+ ].join(" ")
86
+ # Double-quote stylesheet & file to help Windows cmd.exe
87
+ db2epub_cmd = "#{XSLT_PROCESSOR} #{options} \"#{@stylesheet}\" \"#{@docbook_file}\""
88
+ STDERR.puts db2epub_cmd if $DEBUG
89
+ success = system(db2epub_cmd)
90
+ raise "Could not render as .epub to #{output_file} (#{db2epub_cmd})" unless success
91
+ @to_delete << Dir["#{@meta_dir}/*"]
92
+ @to_delete << Dir["#{@oebps_dir}/*"]
93
+ end
94
+
95
+ def bundle_epub(output_file, verbose)
96
+ quiet = verbose ? "" : "-q"
97
+ mimetype_filename = write_mimetype()
98
+ meta = File.basename(@meta_dir)
99
+ oebps = File.basename(@oebps_dir)
100
+ images = copy_images()
101
+ csses = copy_csses()
102
+ fonts = copy_fonts()
103
+ callouts = copy_callouts()
104
+ # zip -X -r ../book.epub mimetype META-INF OEBPS
105
+ # Double-quote stylesheet & file to help Windows cmd.exe
106
+ zip_cmd = "cd \"#{@output_dir}\" && #{ZIPPER} #{quiet} -X -r \"#{File.expand_path(output_file)}\" \"#{mimetype_filename}\" \"#{meta}\" \"#{oebps}\""
107
+ puts zip_cmd if $DEBUG
108
+ success = system(zip_cmd)
109
+ raise "Could not bundle into .epub file to #{output_file}" unless success
110
+ end
111
+
112
+ def copy_callouts
113
+ new_callout_images = []
114
+ if has_callouts?
115
+ calloutglob = "#{CALLOUT_FULL_PATH}/*#{CALLOUT_EXT}"
116
+ Dir.glob(calloutglob).each {|img|
117
+ img_new_filename = File.join(@oebps_dir, CALLOUT_PATH, File.basename(img))
118
+
119
+ # TODO: What to rescue for these two?
120
+ FileUtils.mkdir_p(File.dirname(img_new_filename))
121
+ FileUtils.cp(img, img_new_filename)
122
+ @to_delete << img_new_filename
123
+ new_callout_images << img
124
+ }
125
+ end
126
+ return new_callout_images
127
+ end
128
+
129
+ def copy_fonts
130
+ new_fonts = []
131
+ @embedded_fonts.each {|font_file|
132
+ font_new_filename = File.join(@oebps_dir, File.basename(font_file))
133
+ FileUtils.cp(font_file, font_new_filename)
134
+ new_fonts << font_file
135
+ }
136
+ return new_fonts
137
+ end
138
+
139
+ def copy_csses
140
+ if @css_file
141
+ css_new_filename = File.join(@oebps_dir, File.basename(@css_file))
142
+ FileUtils.cp(@css_file, css_new_filename)
143
+ end
144
+ end
145
+
146
+ def copy_images
147
+ image_references = get_image_refs()
148
+ new_images = []
149
+ image_references.each {|img|
150
+ # TODO: It'd be cooler if we had a filetype lookup rather than just
151
+ # extension
152
+ if img =~ /\.(svg|png|gif|jpe?g|xml)/i
153
+ img_new_filename = File.join(@oebps_dir, img)
154
+ img_full = File.join(File.expand_path(File.dirname(@docbook_file)), img)
155
+
156
+ # TODO: What to rescue for these two?
157
+ FileUtils.mkdir_p(File.dirname(img_new_filename))
158
+ puts(img_full + ": " + img_new_filename) if $DEBUG
159
+ FileUtils.cp(img_full, img_new_filename)
160
+ @to_delete << img_new_filename
161
+ new_images << img_full
162
+ end
163
+ }
164
+ return new_images
165
+ end
166
+
167
+ def write_mimetype
168
+ mimetype_filename = File.join(@output_dir, "mimetype")
169
+ File.open(mimetype_filename, "w") {|f| f.print MIMETYPE}
170
+ @to_delete << mimetype_filename
171
+ return File.basename(mimetype_filename)
172
+ end
173
+
174
+ def cleanup_files(file_list)
175
+ file_list.flatten.each {|f|
176
+ # Yikes
177
+ FileUtils.rm_r(f, :force => true )
178
+ }
179
+ end
180
+
181
+ # Returns an Array of all of the (image) @filerefs in a document
182
+ def get_image_refs
183
+ parser = REXML::Parsers::PullParser.new(File.new(@docbook_file))
184
+ image_refs = []
185
+ while parser.has_next?
186
+ el = parser.pull
187
+ if el.start_element? and (el[0] == "imagedata" or el[0] == "graphic")
188
+ image_refs << el[1]['fileref']
189
+ end
190
+ end
191
+ return image_refs
192
+ end
193
+
194
+ # Returns true if the document has code callouts
195
+ def has_callouts?
196
+ parser = REXML::Parsers::PullParser.new(File.new(@docbook_file))
197
+ while parser.has_next?
198
+ el = parser.pull
199
+ if el.start_element? and (el[0] == "calloutlist" or el[0] == "co")
200
+ return true
201
+ end
202
+ end
203
+ return false
204
+ end
205
+ end
206
+ end
@@ -0,0 +1,1638 @@
1
+ <?xml version="1.0"?>
2
+ <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
3
+ xmlns:ng="http://docbook.org/docbook-ng"
4
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
5
+ xmlns:db="http://docbook.org/ns/docbook"
6
+ xmlns:exsl="http://exslt.org/common"
7
+ xmlns:stext="http://nwalsh.com/xslt/ext/com.nwalsh.saxon.TextFactory"
8
+ xmlns:xtext="xalan://com.nwalsh.xalan.Text"
9
+ version="1.0"
10
+ extension-element-prefixes="stext xtext"
11
+ exclude-result-prefixes="exsl db ng dc stext xtext">
12
+
13
+ <xsl:import href="../xhtml-1_1/docbook.xsl" />
14
+ <xsl:import href="../xhtml-1_1/chunk-common.xsl" />
15
+ <xsl:include href="../xhtml-1_1/chunk-code.xsl" />
16
+
17
+
18
+ <!-- We want a separate TOC file, please -->
19
+ <xsl:param name="chunk.tocs.and.lots">1</xsl:param>
20
+ <xsl:param name="toc.section.depth">2</xsl:param>
21
+ <xsl:param name="generate.toc">
22
+ book toc,title
23
+ </xsl:param>
24
+
25
+ <xsl:param name="ade.extensions" select="0"/>
26
+ <xsl:param name="epub.autolabel" select="'1'"/>
27
+
28
+
29
+ <xsl:param name="manifest.in.base.dir" select="'1'"/>
30
+ <xsl:param name="base.dir" select="$epub.oebps.dir"/>
31
+
32
+ <xsl:param name="epub.oebps.dir" select="'OEBPS/'"/>
33
+ <xsl:param name="epub.ncx.filename" select="'toc.ncx'"/>
34
+ <xsl:param name="epub.container.filename" select="'container.xml'"/>
35
+ <xsl:param name="epub.opf.filename" select="concat($epub.oebps.dir, 'content.opf')"/>
36
+ <xsl:param name="epub.cover.filename" select="concat($epub.oebps.dir, 'cover', $html.ext)"/>
37
+ <xsl:param name="epub.cover.id" select="'cover'"/>
38
+ <xsl:param name="epub.cover.image.id" select="'cover-image'"/>
39
+ <xsl:param name="epub.cover.linear" select="0" />
40
+ <xsl:param name="epub.ncx.toc.id">ncxtoc</xsl:param>
41
+ <xsl:param name="epub.html.toc.id">htmltoc</xsl:param>
42
+ <xsl:param name="epub.metainf.dir" select="'META-INF/'"/>
43
+
44
+ <xsl:param name="epub.embedded.font"></xsl:param>
45
+
46
+ <!-- Per Bob Stayton:
47
+ """Process your documents with the css.decoration parameter set to zero.
48
+ That will avoid the use of style attributes in XHTML elements where they are not permitted."""
49
+ http://www.sagehill.net/docbookxsl/OtherOutputForms.html#StrictXhtmlValid -->
50
+ <xsl:param name="css.decoration" select="0"/>
51
+
52
+ <xsl:param name="callout.graphics" select="1"/>
53
+ <xsl:param name="callout.graphics.extension">.png</xsl:param>
54
+ <xsl:param name="callout.graphics.number.limit" select="15"/>
55
+ <xsl:param name="callout.graphics.path" select="'images/callouts/'"/>
56
+
57
+ <!-- no navigation in .epub -->
58
+ <xsl:param name="suppress.navigation" select="'1'"/>
59
+
60
+ <xsl:variable name="toc.params">
61
+ <xsl:call-template name="find.path.params">
62
+ <xsl:with-param name="node" select="/*"/>
63
+ <xsl:with-param name="table" select="normalize-space($generate.toc)"/>
64
+ </xsl:call-template>
65
+ </xsl:variable>
66
+ <xsl:variable name="root.is.a.chunk">
67
+ <xsl:choose>
68
+ <xsl:when test="/*[not(self::book)][not(sect1) or not(section)]">
69
+ <xsl:text>1</xsl:text>
70
+ </xsl:when>
71
+ <xsl:when test="/book[*[last()][self::bookinfo]]|book[bookinfo]">
72
+ <xsl:text>1</xsl:text>
73
+ </xsl:when>
74
+ <xsl:when test="/bibliography">
75
+ <xsl:text>1</xsl:text>
76
+ </xsl:when>
77
+ <xsl:otherwise>
78
+ <xsl:text>0</xsl:text>
79
+ </xsl:otherwise>
80
+ </xsl:choose>
81
+ </xsl:variable>
82
+
83
+ <xsl:key name="image-filerefs" match="graphic|inlinegraphic|imagedata" use="@fileref"/>
84
+
85
+ <xsl:template match="/">
86
+ <!-- * Get a title for current doc so that we let the user -->
87
+ <!-- * know what document we are processing at this point. -->
88
+ <xsl:variable name="doc.title">
89
+ <xsl:call-template name="get.doc.title" />
90
+ </xsl:variable>
91
+ <xsl:choose>
92
+ <!-- Hack! If someone hands us a DocBook V5.x or DocBook NG document,
93
+ toss the namespace and continue. Use the docbook5 namespaced
94
+ stylesheets for DocBook5 if you don't want to use this feature.-->
95
+ <!-- include extra test for Xalan quirk -->
96
+ <xsl:when
97
+ test="(function-available('exsl:node-set') or
98
+ contains(system-property('xsl:vendor'),
99
+ 'Apache Software Foundation'))
100
+ and (*/self::ng:* or */self::db:*)">
101
+ <xsl:call-template name="log.message">
102
+ <xsl:with-param name="level">Note</xsl:with-param>
103
+ <xsl:with-param name="source" select="$doc.title" />
104
+ <xsl:with-param name="context-desc">
105
+ <xsl:text>namesp. cut</xsl:text>
106
+ </xsl:with-param>
107
+ <xsl:with-param name="message">
108
+ <xsl:text>stripped namespace before processing</xsl:text>
109
+ </xsl:with-param>
110
+ </xsl:call-template>
111
+ <xsl:variable name="nons">
112
+ <xsl:apply-templates mode="stripNS" />
113
+ </xsl:variable>
114
+ <xsl:call-template name="log.message">
115
+ <xsl:with-param name="level">Note</xsl:with-param>
116
+ <xsl:with-param name="source" select="$doc.title" />
117
+ <xsl:with-param name="context-desc">
118
+ <xsl:text>namesp. cut</xsl:text>
119
+ </xsl:with-param>
120
+ <xsl:with-param name="message">
121
+ <xsl:text>processing stripped document</xsl:text>
122
+ </xsl:with-param>
123
+ </xsl:call-template>
124
+ <xsl:apply-templates select="exsl:node-set($nons)" />
125
+ </xsl:when>
126
+ <xsl:otherwise>
127
+ <xsl:choose>
128
+ <xsl:when test="$rootid != ''">
129
+ <xsl:choose>
130
+ <xsl:when
131
+ test="count(key('id',$rootid)) = 0">
132
+ <xsl:message terminate="yes">
133
+ <xsl:text>ID '</xsl:text>
134
+ <xsl:value-of select="$rootid" />
135
+ <xsl:text>' not found in document.</xsl:text>
136
+ </xsl:message>
137
+ </xsl:when>
138
+ <xsl:otherwise>
139
+ <xsl:if
140
+ test="$collect.xref.targets = 'yes' or
141
+ $collect.xref.targets = 'only'">
142
+ <xsl:apply-templates
143
+ select="key('id', $rootid)" mode="collect.targets" />
144
+ </xsl:if>
145
+ <xsl:if
146
+ test="$collect.xref.targets != 'only'">
147
+ <xsl:message>
148
+ Formatting from
149
+ <xsl:value-of select="$rootid" />
150
+ </xsl:message>
151
+ <xsl:apply-templates
152
+ select="key('id',$rootid)" mode="process.root" />
153
+ <xsl:call-template name="ncx" />
154
+ </xsl:if>
155
+ </xsl:otherwise>
156
+ </xsl:choose>
157
+ </xsl:when>
158
+ <xsl:otherwise>
159
+ <xsl:if
160
+ test="$collect.xref.targets = 'yes' or
161
+ $collect.xref.targets = 'only'">
162
+ <xsl:apply-templates select="/"
163
+ mode="collect.targets" />
164
+ </xsl:if>
165
+ <xsl:if
166
+ test="$collect.xref.targets != 'only'">
167
+ <xsl:apply-templates select="/"
168
+ mode="process.root" />
169
+ <xsl:call-template name="ncx" />
170
+ <xsl:call-template name="opf" />
171
+ <xsl:call-template name="cover" />
172
+ <xsl:call-template name="container" />
173
+ </xsl:if>
174
+ </xsl:otherwise>
175
+ </xsl:choose>
176
+ </xsl:otherwise>
177
+ </xsl:choose>
178
+ </xsl:template>
179
+
180
+ <xsl:template name="opf">
181
+ <xsl:variable name="package-id"><xsl:value-of select="concat(name(/*), 'id')"/></xsl:variable>
182
+ <xsl:variable name="unique-id">
183
+ <xsl:choose>
184
+ <xsl:when test="/*/*[contains(name(.), 'info')]/biblioid"> <xsl:value-of select="/*/*[contains(name(.), 'info')]/biblioid"/> </xsl:when>
185
+ <xsl:when test="/*/*[contains(name(.), 'info')]/isbn"> <xsl:value-of select="/*/*[contains(name(.), 'info')]/isbn"/> </xsl:when>
186
+ <xsl:when test="/*/*[contains(name(.), 'info')]/issn"> <xsl:value-of select="/*/*[contains(name(.), 'info')]/issn"/> </xsl:when>
187
+ <xsl:when test="/*/*[contains(name(.), 'info')]/invpartnumber"> <xsl:value-of select="/*/*[contains(name(.), 'info')]/invpartnumber"/> </xsl:when>
188
+ <xsl:when test="/*/*[contains(name(.), 'info')]/issuenum"> <xsl:value-of select="/*/*[contains(name(.), 'info')]/issuenum"/> </xsl:when>
189
+ <xsl:when test="/*/*[contains(name(.), 'info')]/productnumber"> <xsl:value-of select="/*/*[contains(name(.), 'info')]/productnumber"/> </xsl:when>
190
+ <xsl:when test="/*/*[contains(name(.), 'info')]/seriesvolnums"> <xsl:value-of select="/*/*[contains(name(.), 'info')]/seriesvolnums"/> </xsl:when>
191
+ <xsl:when test="/*/*[contains(name(.), 'info')]/volumenum"> <xsl:value-of select="/*/*[contains(name(.), 'info')]/volumenum"/> </xsl:when>
192
+ <!-- Deprecated -->
193
+ <xsl:when test="/*/*[contains(name(.), 'info')]/pubsnumber"> <xsl:value-of select="/*/*[contains(name(.), 'info')]/pubsnumber"/> </xsl:when>
194
+ </xsl:choose>
195
+ <xsl:text>_</xsl:text>
196
+ <xsl:choose>
197
+ <xsl:when test="/*/@id">
198
+ <xsl:value-of select="/*/@id"/>
199
+ </xsl:when>
200
+ <xsl:otherwise>
201
+ <!-- TODO: Do UUIDs here -->
202
+ <xsl:value-of select="generate-id(/*)"/>
203
+ </xsl:otherwise>
204
+ </xsl:choose>
205
+ </xsl:variable>
206
+ <xsl:variable name="doc.title">
207
+ <xsl:call-template name="get.doc.title" />
208
+ </xsl:variable>
209
+ <xsl:call-template name="write.chunk">
210
+ <xsl:with-param name="filename">
211
+ <xsl:value-of select="$epub.opf.filename" />
212
+ </xsl:with-param>
213
+ <xsl:with-param name="method" select="'xml'" />
214
+ <xsl:with-param name="encoding" select="'utf-8'" />
215
+ <xsl:with-param name="indent" select="'yes'" />
216
+ <xsl:with-param name="quiet" select="$chunk.quietly" />
217
+ <xsl:with-param name="doctype-public" select="''"/> <!-- intentionally blank -->
218
+ <xsl:with-param name="doctype-system" select="''"/> <!-- intentionally blank -->
219
+ <xsl:with-param name="content">
220
+ <xsl:element name="package">
221
+ <xsl:attribute name="xmlns">http://www.idpf.org/2007/opf</xsl:attribute>
222
+ <xsl:attribute name="version">2.0</xsl:attribute>
223
+ <xsl:attribute name="unique-identifier"> <xsl:value-of select="$package-id"/> </xsl:attribute>
224
+
225
+ <xsl:element name="metadata">
226
+ <xsl:element name="dc:identifier">
227
+ <xsl:attribute name="id"><xsl:value-of select="$package-id"/></xsl:attribute>
228
+ <xsl:choose>
229
+ <xsl:when test="/appendix/appendixinfo/biblioid|
230
+ /article/articleinfo/biblioid|
231
+ /book/bookinfo/biblioid|
232
+ /chapter/chapterinfo/biblioid|
233
+ /glossary/glossaryinfo/biblioid|
234
+ /part/partinfo/biblioid|
235
+ /preface/prefaceinfo/biblioid|
236
+ /refentry/refentryinfo/biblioid|
237
+ /reference/referenceinfo/biblioid|
238
+ /refsect1/refsect1info/biblioid|
239
+ /refsect2/refsect2info/biblioid|
240
+ /refsect3/refsect3info/biblioid|
241
+ /refsection/refsectioninfo/biblioid|
242
+ /refsynopsisdiv/refsynopsisdivinfo/biblioid|
243
+ /sect1/sect1info/biblioid|
244
+ /sect2/sect2info/biblioid|
245
+ /sect3/sect3info/biblioid|
246
+ /sect4/sect4info/biblioid|
247
+ /sect5/sect5info/biblioid|
248
+ /section/sectioninfo/biblioid|
249
+ /setindex/setindexinfo/biblioid|
250
+ /set/setinfo/biblioid">
251
+ <xsl:if test="/*/*/biblioid[1]/@class = 'doi' or /*/*/biblioid[1]/@class = 'isbn' or /*/*/biblioid[1]/@class = 'isrn' or /*/*/biblioid[1]/@class = 'issn'">
252
+ <xsl:text>urn:</xsl:text>
253
+ <xsl:value-of select="/*/*/biblioid[1]/@class"/>
254
+ <xsl:text>:</xsl:text>
255
+ </xsl:if>
256
+ <xsl:value-of select="/*/*/biblioid[1]"/>
257
+ </xsl:when>
258
+ <xsl:when test="/appendix/appendixinfo/isbn|
259
+ /article/articleinfo/isbn|
260
+ /book/bookinfo/isbn|
261
+ /chapter/chapterinfo/isbn|
262
+ /glossary/glossaryinfo/isbn|
263
+ /part/partinfo/isbn|
264
+ /preface/prefaceinfo/isbn|
265
+ /refentry/refentryinfo/isbn|
266
+ /reference/referenceinfo/isbn|
267
+ /refsect1/refsect1info/isbn|
268
+ /refsect2/refsect2info/isbn|
269
+ /refsect3/refsect3info/isbn|
270
+ /refsection/refsectioninfo/isbn|
271
+ /refsynopsisdiv/refsynopsisdivinfo/isbn|
272
+ /sect1/sect1info/isbn|
273
+ /sect2/sect2info/isbn|
274
+ /sect3/sect3info/isbn|
275
+ /sect4/sect4info/isbn|
276
+ /sect5/sect5info/isbn|
277
+ /section/sectioninfo/isbn|
278
+ /setindex/setindexinfo/isbn|
279
+ /set/setinfo/isbn">
280
+ <xsl:text>urn:isbn:</xsl:text>
281
+ <xsl:value-of select="/*/*/isbn"/>
282
+ </xsl:when>
283
+ <xsl:when test="/appendix/appendixinfo/issn|
284
+ /article/articleinfo/issn|
285
+ /book/bookinfo/issn|
286
+ /chapter/chapterinfo/issn|
287
+ /glossary/glossaryinfo/issn|
288
+ /part/partinfo/issn|
289
+ /preface/prefaceinfo/issn|
290
+ /refentry/refentryinfo/issn|
291
+ /reference/referenceinfo/issn|
292
+ /refsect1/refsect1info/issn|
293
+ /refsect2/refsect2info/issn|
294
+ /refsect3/refsect3info/issn|
295
+ /refsection/refsectioninfo/issn|
296
+ /refsynopsisdiv/refsynopsisdivinfo/issn|
297
+ /sect1/sect1info/issn|
298
+ /sect2/sect2info/issn|
299
+ /sect3/sect3info/issn|
300
+ /sect4/sect4info/issn|
301
+ /sect5/sect5info/issn|
302
+ /section/sectioninfo/issn|
303
+ /setindex/setindexinfo/issn|
304
+ /set/setinfo/issn">
305
+ <xsl:text>urn:issn:</xsl:text>
306
+ <xsl:value-of select="/*/*/issn"/>
307
+ </xsl:when>
308
+ <xsl:otherwise>
309
+ <xsl:value-of select="$unique-id"/>
310
+ </xsl:otherwise>
311
+ </xsl:choose>
312
+ </xsl:element>
313
+
314
+ <xsl:element name="dc:title">
315
+ <xsl:value-of select="normalize-space($doc.title)"/>
316
+ </xsl:element>
317
+
318
+ <xsl:apply-templates select="/*/*[contains(name(.), 'info')]/*"
319
+ mode="opf.metadata"/>
320
+ <xsl:element name="dc:language">
321
+ <xsl:call-template name="l10n.language"/>
322
+ </xsl:element>
323
+
324
+ <xsl:if test="/*/*[cover or contains(name(.), 'info')]//mediaobject[@role='cover' or ancestor::cover]">
325
+ <xsl:element name="meta">
326
+ <xsl:attribute name="name">cover</xsl:attribute>
327
+ <xsl:attribute name="content">
328
+ <xsl:value-of select="$epub.cover.image.id"/>
329
+ </xsl:attribute>
330
+ </xsl:element>
331
+ </xsl:if>
332
+
333
+ </xsl:element>
334
+ <xsl:call-template name="opf.manifest"/>
335
+ <xsl:call-template name="opf.spine"/>
336
+ <xsl:call-template name="opf.guide"/>
337
+
338
+ </xsl:element>
339
+ </xsl:with-param>
340
+ </xsl:call-template>
341
+ </xsl:template>
342
+
343
+ <xsl:template name="container">
344
+ <xsl:call-template name="write.chunk">
345
+ <xsl:with-param name="filename">
346
+ <xsl:value-of select="$epub.metainf.dir" />
347
+ <xsl:value-of select="$epub.container.filename" />
348
+ </xsl:with-param>
349
+ <xsl:with-param name="method" select="'xml'" />
350
+ <xsl:with-param name="encoding" select="'utf-8'" />
351
+ <xsl:with-param name="indent" select="'yes'" />
352
+ <xsl:with-param name="quiet" select="$chunk.quietly" />
353
+ <xsl:with-param name="doctype-public" select="''"/> <!-- intentionally blank -->
354
+ <xsl:with-param name="doctype-system" select="''"/> <!-- intentionally blank -->
355
+
356
+ <xsl:with-param name="content">
357
+ <xsl:element name="container">
358
+ <xsl:attribute name="xmlns">urn:oasis:names:tc:opendocument:xmlns:container</xsl:attribute>
359
+ <xsl:attribute name="version">1.0</xsl:attribute>
360
+ <xsl:element name="rootfiles">
361
+ <xsl:attribute name="xmlns">urn:oasis:names:tc:opendocument:xmlns:container</xsl:attribute>
362
+ <xsl:element name="rootfile">
363
+ <xsl:attribute name="xmlns">urn:oasis:names:tc:opendocument:xmlns:container</xsl:attribute>
364
+ <xsl:attribute name="full-path">
365
+ <!-- TODO: Figure out how to get this to work right with generation but also not be hardcoded -->
366
+ <xsl:value-of select="'OEBPS/content.opf'"/>
367
+ </xsl:attribute>
368
+ <xsl:attribute name="media-type">
369
+ <xsl:text>application/oebps-package+xml</xsl:text>
370
+ </xsl:attribute>
371
+ </xsl:element>
372
+ </xsl:element>
373
+ </xsl:element>
374
+ </xsl:with-param>
375
+ </xsl:call-template>
376
+ </xsl:template>
377
+
378
+ <xsl:template name="ncx">
379
+ <xsl:call-template name="write.chunk">
380
+ <xsl:with-param name="filename">
381
+ <xsl:if test="$manifest.in.base.dir != 0">
382
+ <xsl:value-of select="$base.dir" />
383
+ </xsl:if>
384
+ <xsl:value-of select="$epub.ncx.filename" />
385
+ </xsl:with-param>
386
+ <xsl:with-param name="method" select="'xml'" />
387
+ <xsl:with-param name="encoding" select="'utf-8'" />
388
+ <xsl:with-param name="indent" select="'yes'" />
389
+ <xsl:with-param name="quiet" select="$chunk.quietly" />
390
+ <xsl:with-param name="doctype-public" select="''"/> <!-- intentionally blank -->
391
+ <xsl:with-param name="doctype-system" select="''"/> <!-- intentionally blank -->
392
+ <xsl:with-param name="content">
393
+ <xsl:element name="ncx">
394
+ <xsl:attribute name="version">2005-1</xsl:attribute>
395
+ <xsl:attribute name="xmlns">http://www.daisy.org/z3986/2005/ncx/</xsl:attribute>
396
+
397
+ <!-- Via Martin Goerner: On covers: the IDPF2.0 standard unfortunately does not have a provision for
398
+ covers. We had to add one and we did so in conjunction with the IDPF and
399
+ various publishers. The tag chosen to define the covers is:
400
+ <meta name="cover" content="-reference to a manifest item-">
401
+ Then, we also added a bit of logic to get rid cleanly of the HTML cover
402
+ people usually add because the logical cover is not specced by the IDPF. So,
403
+ if the HTML cover item is marked linear="no" AND there is a guide item of
404
+ type="cover" pointing to it AND there is a logical cover specified in a
405
+ <meta name="cover"> tag, THEN, the HTML cover is discarded. -->
406
+ <xsl:element name="head">
407
+ <xsl:if test="/*/*[cover or contains(name(.), 'info')]//mediaobject[@role='cover' or ancestor::cover]">
408
+ <xsl:element name="meta">
409
+ <xsl:attribute name="name">cover</xsl:attribute>
410
+ <xsl:attribute name="content">
411
+ <xsl:value-of select="$epub.cover.id"/>
412
+ </xsl:attribute>
413
+ </xsl:element>
414
+ </xsl:if>
415
+ <xsl:if test="/*/*[contains(name(.), 'info')]/isbn">
416
+ <xsl:element name="meta">
417
+ <xsl:attribute name="name">dtb:uid</xsl:attribute>
418
+ <xsl:attribute name="content">
419
+ <xsl:text>isbn:</xsl:text>
420
+ <xsl:value-of select="/*/*[contains(name(.), 'info')]/isbn"/>
421
+ </xsl:attribute>
422
+ </xsl:element>
423
+ </xsl:if>
424
+ <!-- TODO: be nice to have a name="cover" here for .mobi-->
425
+
426
+ <!-- TODO What are these hardcoded values? -->
427
+ <xsl:element name="meta">
428
+ <xsl:attribute name="name">dtb:depth</xsl:attribute>
429
+ <xsl:attribute name="content">-1</xsl:attribute>
430
+ </xsl:element>
431
+ <xsl:element name="meta">
432
+ <xsl:attribute name="name">dtb:totalPageCount</xsl:attribute>
433
+ <xsl:attribute name="content">0</xsl:attribute>
434
+ </xsl:element>
435
+ <xsl:element name="meta">
436
+ <xsl:attribute name="name">dtb:maxPageNumber</xsl:attribute>
437
+ <xsl:attribute name="content">0</xsl:attribute>
438
+ </xsl:element>
439
+ </xsl:element>
440
+ <xsl:choose>
441
+ <xsl:when test="$rootid != ''">
442
+ <xsl:variable name="title">
443
+ <xsl:if test="$epub.autolabel != 0">
444
+ <xsl:variable name="label.markup">
445
+ <xsl:apply-templates select="key('id',$rootid)" mode="label.markup" />
446
+ </xsl:variable>
447
+ <xsl:if test="normalize-space($label.markup)">
448
+ <xsl:value-of select="concat($label.markup,$autotoc.label.separator)" />
449
+ </xsl:if>
450
+ </xsl:if>
451
+ <xsl:apply-templates select="key('id',$rootid)" mode="title.markup" />
452
+ </xsl:variable>
453
+ <xsl:variable name="href">
454
+ <xsl:call-template name="href.target.with.base.dir">
455
+ <xsl:with-param name="object" select="key('id',$rootid)" />
456
+ </xsl:call-template>
457
+ </xsl:variable>
458
+ <xsl:element name="docTitle">
459
+ <xsl:element name="text"><xsl:value-of select="normalize-space($title)" /> </xsl:element>
460
+ </xsl:element>
461
+ <xsl:element name="navMap">
462
+ <xsl:apply-templates select="key('id',$rootid)/*" mode="ncx" />
463
+ </xsl:element>
464
+ </xsl:when>
465
+ <xsl:otherwise>
466
+ <xsl:variable name="title">
467
+ <xsl:if test="$epub.autolabel != 0">
468
+ <xsl:variable name="label.markup">
469
+ <xsl:apply-templates select="/*" mode="label.markup" />
470
+ </xsl:variable>
471
+ <xsl:if test="normalize-space($label.markup)">
472
+ <xsl:value-of select="concat($label.markup,$autotoc.label.separator)" />
473
+ </xsl:if>
474
+ </xsl:if>
475
+ <xsl:apply-templates select="/*" mode="title.markup" />
476
+ </xsl:variable>
477
+ <xsl:variable name="href">
478
+ <xsl:call-template name="href.target.with.base.dir">
479
+ <xsl:with-param name="object" select="/" />
480
+ </xsl:call-template>
481
+ </xsl:variable>
482
+ <xsl:element name="docTitle">
483
+ <xsl:element name="text">
484
+ <xsl:value-of select="normalize-space($title)" />
485
+ </xsl:element>
486
+ </xsl:element>
487
+ <xsl:element name="navMap">
488
+ <xsl:choose>
489
+ <xsl:when test="$root.is.a.chunk != '0'">
490
+ <xsl:apply-templates select="/*" mode="ncx" />
491
+ </xsl:when>
492
+ <xsl:otherwise>
493
+ <xsl:apply-templates select="/*/*" mode="ncx" />
494
+ </xsl:otherwise>
495
+ </xsl:choose>
496
+ </xsl:element>
497
+ </xsl:otherwise>
498
+
499
+ </xsl:choose>
500
+ </xsl:element>
501
+ </xsl:with-param>
502
+ </xsl:call-template>
503
+ </xsl:template>
504
+
505
+ <xsl:template match="book|
506
+ article|
507
+ part|
508
+ reference|
509
+ preface|
510
+ chapter|
511
+ bibliography|
512
+ appendix|
513
+ glossary|
514
+ section|
515
+ sect1|
516
+ sect2|
517
+ sect3|
518
+ sect4|
519
+ sect5|
520
+ refentry|
521
+ colophon|
522
+ bibliodiv[title]|
523
+ setindex|
524
+ index"
525
+ mode="ncx">
526
+ <xsl:variable name="depth" select="count(ancestor::*)"/>
527
+ <xsl:variable name="title">
528
+ <xsl:if test="$epub.autolabel != 0">
529
+ <xsl:variable name="label.markup">
530
+ <xsl:apply-templates select="." mode="label.markup" />
531
+ </xsl:variable>
532
+ <xsl:if test="normalize-space($label.markup)">
533
+ <xsl:value-of
534
+ select="concat($label.markup,$autotoc.label.separator)" />
535
+ </xsl:if>
536
+ </xsl:if>
537
+ <xsl:apply-templates select="." mode="title.markup" />
538
+ </xsl:variable>
539
+
540
+ <xsl:variable name="href">
541
+ <xsl:call-template name="href.target.with.base.dir">
542
+ <xsl:with-param name="context" select="/" />
543
+ <!-- Generate links relative to the location of root file/toc.xml file -->
544
+ </xsl:call-template>
545
+ </xsl:variable>
546
+
547
+ <xsl:variable name="id">
548
+ <xsl:value-of select="generate-id(.)"/>
549
+ </xsl:variable>
550
+ <xsl:variable name="order">
551
+ <xsl:value-of select="$depth +
552
+ count(preceding::part|
553
+ preceding::reference|
554
+ preceding::book[parent::set]|
555
+ preceding::preface|
556
+ preceding::chapter|
557
+ preceding::bibliography|
558
+ preceding::appendix|
559
+ preceding::article|
560
+ preceding::glossary|
561
+ preceding::section[not(parent::partintro)]|
562
+ preceding::sect1[not(parent::partintro)]|
563
+ preceding::sect2|
564
+ preceding::sect3|
565
+ preceding::sect4|
566
+ preceding::sect5|
567
+ preceding::refentry|
568
+ preceding::colophon|
569
+ preceding::bibliodiv[title]|
570
+ preceding::index)"/>
571
+ </xsl:variable>
572
+
573
+ <xsl:element name="navPoint">
574
+ <xsl:attribute name="xmlns">http://www.daisy.org/z3986/2005/ncx/</xsl:attribute>
575
+ <xsl:attribute name="id">
576
+ <xsl:value-of select="$id"/>
577
+ </xsl:attribute>
578
+
579
+ <xsl:attribute name="playOrder">
580
+ <xsl:choose>
581
+ <xsl:when test="/*[self::set]">
582
+ <xsl:value-of select="$order"/>
583
+ </xsl:when>
584
+ <xsl:when test="$root.is.a.chunk != '0'">
585
+ <xsl:value-of select="$order + 1"/>
586
+ </xsl:when>
587
+ <xsl:otherwise>
588
+ <xsl:value-of select="$order - 0"/>
589
+ <!-- TODO hrm
590
+ <xsl:value-of select="$order - 1"/>
591
+ -->
592
+ </xsl:otherwise>
593
+ </xsl:choose>
594
+ </xsl:attribute>
595
+ <xsl:element name="navLabel">
596
+ <xsl:element name="text"><xsl:value-of select="normalize-space($title)"/> </xsl:element>
597
+ </xsl:element>
598
+ <xsl:element name="content">
599
+ <xsl:attribute name="src">
600
+ <xsl:value-of select="$href"/>
601
+ </xsl:attribute>
602
+ </xsl:element>
603
+ <xsl:apply-templates select="book[parent::set]|part|reference|preface|chapter|bibliography|appendix|article|glossary|section|sect1|sect2|sect3|sect4|sect5|refentry|colophon|bibliodiv[title]|setindex|index" mode="ncx"/>
604
+ </xsl:element>
605
+
606
+ </xsl:template>
607
+
608
+ <xsl:template match="*" mode="opf.metadata">
609
+ <!-- override if you care -->
610
+ </xsl:template>
611
+
612
+ <xsl:template match="author|corpauthor" mode="opf.metadata">
613
+ <xsl:variable name="n">
614
+ <xsl:call-template name="person.name">
615
+ <xsl:with-param name="node" select="."/>
616
+ </xsl:call-template>
617
+ </xsl:variable>
618
+ <xsl:element name="dc:creator">
619
+ <xsl:value-of select="normalize-space(string($n))"/>
620
+ </xsl:element>
621
+ </xsl:template>
622
+
623
+ <xsl:template match="publisher" mode="opf.metadata">
624
+ <xsl:apply-templates select="publishername" mode="opf.metadata"/>
625
+ </xsl:template>
626
+
627
+ <xsl:template match="publishername" mode="opf.metadata">
628
+ <xsl:element name="dc:publisher">
629
+ <xsl:value-of select="normalize-space(string(.))"/>
630
+ </xsl:element>
631
+ </xsl:template>
632
+
633
+ <xsl:template match="copyright" mode="opf.metadata">
634
+ <xsl:variable name="copyright.date">
635
+ <xsl:call-template name="copyright.years">
636
+ <xsl:with-param name="years" select="year"/>
637
+ <xsl:with-param name="print.ranges" select="$make.year.ranges"/>
638
+ <xsl:with-param name="single.year.ranges" select="$make.single.year.ranges"/>
639
+ </xsl:call-template>
640
+ </xsl:variable>
641
+ <xsl:element name="dc:date">
642
+ <xsl:value-of select="$copyright.date"/>
643
+ </xsl:element>
644
+ <xsl:element name="dc:rights">
645
+ <xsl:call-template name="gentext">
646
+ <xsl:with-param name="key" select="'Copyright'"/>
647
+ </xsl:call-template>
648
+ <xsl:call-template name="gentext.space"/>
649
+ <xsl:text>&#x00A9;</xsl:text>
650
+ <xsl:call-template name="gentext.space"/>
651
+ <xsl:value-of select="$copyright.date"/>
652
+ <xsl:call-template name="gentext.space"/>
653
+ <xsl:apply-templates select="holder" mode="titlepage.mode"/>
654
+ </xsl:element>
655
+ </xsl:template>
656
+
657
+ <xsl:template name="opf.guide">
658
+ <xsl:if test="contains($toc.params, 'toc') or
659
+ /*/*[cover or contains(name(.), 'info')]//mediaobject[@role='cover' or ancestor::cover]">
660
+ <xsl:element name="guide">
661
+ <xsl:attribute name="xmlns">http://www.idpf.org/2007/opf</xsl:attribute>
662
+ <xsl:if test="/*/*[cover or contains(name(.), 'info')]//mediaobject[@role='cover' or ancestor::cover]">
663
+ <xsl:element name="reference">
664
+ <xsl:attribute name="href">
665
+ <!-- TODO: Figure out how to get this to work right with generation but also not be hardcoded -->
666
+ <xsl:value-of select="'cover.html'"/>
667
+ </xsl:attribute>
668
+ <xsl:attribute name="type">cover</xsl:attribute>
669
+ <xsl:attribute name="title">Cover</xsl:attribute>
670
+ </xsl:element>
671
+ </xsl:if>
672
+
673
+ <xsl:if test="contains($toc.params, 'toc')">
674
+ <xsl:element name="reference">
675
+ <xsl:attribute name="href">
676
+ <!-- TODO: Figure out how to get this to work right with generation but also not be hardcoded -->
677
+ <xsl:call-template name="toc-href">
678
+ <xsl:with-param name="node" select="/*"/>
679
+ </xsl:call-template>
680
+ </xsl:attribute>
681
+ <xsl:attribute name="type">toc</xsl:attribute>
682
+ <xsl:attribute name="title">Table of Contents</xsl:attribute>
683
+ </xsl:element>
684
+ </xsl:if>
685
+ </xsl:element>
686
+ </xsl:if>
687
+ </xsl:template>
688
+
689
+ <xsl:template name="opf.spine">
690
+
691
+ <xsl:element name="spine">
692
+ <xsl:attribute name="xmlns">http://www.idpf.org/2007/opf</xsl:attribute>
693
+ <xsl:attribute name="toc">
694
+ <xsl:value-of select="$epub.ncx.toc.id"/>
695
+ </xsl:attribute>
696
+
697
+ <xsl:if test="/*/*[cover or contains(name(.), 'info')]//mediaobject[@role='cover' or ancestor::cover]">
698
+ <xsl:element name="itemref">
699
+ <xsl:attribute name="idref">
700
+ <xsl:value-of select="$epub.cover.id"/>
701
+ </xsl:attribute>
702
+ <xsl:attribute name="linear">
703
+ <xsl:choose>
704
+ <xsl:when test="$epub.cover.linear">
705
+ <xsl:text>yes</xsl:text>
706
+ </xsl:when>
707
+ <xsl:otherwise>no</xsl:otherwise>
708
+ </xsl:choose>
709
+ </xsl:attribute>
710
+ </xsl:element>
711
+ </xsl:if>
712
+
713
+
714
+ <xsl:if test="contains($toc.params, 'toc')">
715
+ <xsl:element name="itemref">
716
+ <xsl:attribute name="idref"> <xsl:value-of select="$epub.html.toc.id"/> </xsl:attribute>
717
+ <xsl:attribute name="linear">yes</xsl:attribute>
718
+ </xsl:element>
719
+ </xsl:if>
720
+
721
+ <!-- TODO: be nice to have a idref="titlepage" here -->
722
+ <xsl:choose>
723
+ <xsl:when test="$root.is.a.chunk != '0'">
724
+ <xsl:apply-templates select="/*" mode="opf.spine"/>
725
+ </xsl:when>
726
+ <xsl:otherwise>
727
+ <xsl:apply-templates select="/*/*" mode="opf.spine"/>
728
+ </xsl:otherwise>
729
+ </xsl:choose>
730
+
731
+ </xsl:element>
732
+ </xsl:template>
733
+
734
+ <xsl:template match="*" mode="opf.spine">
735
+ <xsl:variable name="is.chunk">
736
+ <xsl:call-template name="chunk">
737
+ <xsl:with-param name="node" select="."/>
738
+ </xsl:call-template>
739
+ </xsl:variable>
740
+
741
+ <xsl:if test="$is.chunk != 0">
742
+ <xsl:element name="itemref">
743
+ <xsl:attribute name="xmlns">http://www.idpf.org/2007/opf</xsl:attribute>
744
+ <xsl:attribute name="idref">
745
+ <xsl:value-of select="generate-id(.)"/>
746
+ </xsl:attribute>
747
+ </xsl:element>
748
+ <xsl:apply-templates select="*" mode="opf.spine"/>
749
+ </xsl:if>
750
+ </xsl:template>
751
+
752
+ <xsl:template name="opf.manifest">
753
+ <xsl:element name="manifest">
754
+ <xsl:attribute name="xmlns">http://www.idpf.org/2007/opf</xsl:attribute>
755
+ <!-- TODO: Figure out how to get this to work right with generation but also not be hardcoded -->
756
+ <xsl:element name="item">
757
+ <xsl:attribute name="id"> <xsl:value-of select="$epub.ncx.toc.id"/> </xsl:attribute>
758
+ <xsl:attribute name="media-type">application/x-dtbncx+xml</xsl:attribute>
759
+ <xsl:attribute name="href"><xsl:value-of select="$epub.ncx.filename"/> </xsl:attribute>
760
+ </xsl:element>
761
+
762
+ <xsl:if test="contains($toc.params, 'toc')">
763
+ <xsl:element name="item">
764
+ <xsl:attribute name="id"> <xsl:value-of select="$epub.html.toc.id"/> </xsl:attribute>
765
+ <xsl:attribute name="media-type">application/xhtml+xml</xsl:attribute>
766
+ <xsl:attribute name="href">
767
+ <xsl:call-template name="toc-href">
768
+ <xsl:with-param name="node" select="/*"/>
769
+ </xsl:call-template>
770
+ </xsl:attribute>
771
+ </xsl:element>
772
+ </xsl:if>
773
+
774
+ <xsl:if test="$html.stylesheet != ''">
775
+ <xsl:element name="item">
776
+ <xsl:attribute name="xmlns">http://www.idpf.org/2007/opf</xsl:attribute>
777
+ <xsl:attribute name="media-type">text/css</xsl:attribute>
778
+ <xsl:attribute name="id">css</xsl:attribute>
779
+ <xsl:attribute name="href"><xsl:value-of select="$html.stylesheet"/></xsl:attribute>
780
+ </xsl:element>
781
+ </xsl:if>
782
+
783
+ <xsl:if test="/*/*[cover or contains(name(.), 'info')]//mediaobject[@role='cover' or ancestor::cover]">
784
+ <xsl:element name="item">
785
+ <xsl:attribute name="xmlns">http://www.idpf.org/2007/opf</xsl:attribute>
786
+ <xsl:attribute name="id"> <xsl:value-of select="$epub.cover.id"/> </xsl:attribute>
787
+ <xsl:attribute name="href">
788
+ <!-- TODO: Figure out how to get this to work right with generation but also not be hardcoded -->
789
+ <xsl:value-of select="'cover.html'"/>
790
+ </xsl:attribute>
791
+ <xsl:attribute name="media-type">application/xhtml+xml</xsl:attribute>
792
+ </xsl:element>
793
+ </xsl:if>
794
+
795
+ <xsl:if test="$epub.embedded.font != ''">
796
+ <xsl:element name="item">
797
+ <xsl:attribute name="xmlns">http://www.idpf.org/2007/opf</xsl:attribute>
798
+ <xsl:attribute name="id">epub.embedded.font</xsl:attribute>
799
+ <xsl:attribute name="href"><xsl:value-of select="$epub.embedded.font"/></xsl:attribute>
800
+ <xsl:choose>
801
+ <xsl:when test="contains($epub.embedded.font, 'otf')">
802
+ <xsl:attribute name="media-type">font/opentype</xsl:attribute>
803
+ </xsl:when>
804
+ <xsl:otherwise>
805
+ <xsl:message terminate="yes">
806
+ <xsl:text>ERROR: Only OpenType fonts are supported in .epub! (</xsl:text>
807
+ <xsl:value-of select="$epub.embedded.font"/>
808
+ <xsl:text>)</xsl:text>
809
+ </xsl:message>
810
+ </xsl:otherwise>
811
+ </xsl:choose>
812
+ </xsl:element>
813
+ </xsl:if>
814
+
815
+ <!-- TODO: be nice to have a id="titlepage" here -->
816
+ <xsl:apply-templates select="//part|
817
+ //book[*[last()][self::bookinfo]]|
818
+ //book[bookinfo]|
819
+ /set|
820
+ /set/book|
821
+ //reference|
822
+ //preface|
823
+ //chapter|
824
+ //bibliography|
825
+ //appendix|
826
+ //article|
827
+ //glossary|
828
+ //section|
829
+ //sect1|
830
+ //sect2|
831
+ //sect3|
832
+ //sect4|
833
+ //sect5|
834
+ //refentry|
835
+ //colophon|
836
+ //bibliodiv[title]|
837
+ //index|
838
+ //setindex|
839
+ //graphic|
840
+ //inlinegraphic|
841
+ //mediaobject|
842
+ //mediaobjectco|
843
+ //inlinemediaobject"
844
+ mode="opf.manifest"/>
845
+ <xsl:call-template name="opf.calloutlist"/>
846
+ </xsl:element>
847
+ </xsl:template>
848
+
849
+ <xsl:template name="opf.calloutlist">
850
+ <xsl:variable name="format">
851
+ <xsl:call-template name="guess-media-type">
852
+ <xsl:with-param name="ext" select="$callout.graphics.extension"/>
853
+ </xsl:call-template>
854
+ </xsl:variable>
855
+ <xsl:if test="(//calloutlist|//co)">
856
+ <xsl:call-template name="opf.reference.callout">
857
+ <xsl:with-param name="conum" select="1"/>
858
+ <xsl:with-param name="format" select="$format"/>
859
+ </xsl:call-template>
860
+ </xsl:if>
861
+ </xsl:template>
862
+
863
+ <xsl:template name="opf.reference.callout">
864
+ <xsl:param name="conum"/>
865
+ <xsl:param name="format"/>
866
+
867
+ <xsl:variable name="filename" select="concat($callout.graphics.path, $conum, $callout.graphics.extension)"/>
868
+
869
+ <xsl:element name="item">
870
+ <xsl:attribute name="xmlns">http://www.idpf.org/2007/opf</xsl:attribute>
871
+ <xsl:attribute name="id"> <xsl:value-of select="concat(generate-id(.), 'callout', $conum)"/> </xsl:attribute>
872
+ <xsl:attribute name="href"> <xsl:value-of select="$filename"/> </xsl:attribute>
873
+ <xsl:attribute name="media-type">
874
+ <xsl:value-of select="$format"/>
875
+ </xsl:attribute>
876
+ </xsl:element>
877
+ <xsl:if test="($conum &lt; $callout.graphics.number.limit)">
878
+ <xsl:call-template name="opf.reference.callout">
879
+ <xsl:with-param name="conum" select="$conum + 1"/>
880
+ <xsl:with-param name="format" select="$format"/>
881
+ </xsl:call-template>
882
+ </xsl:if>
883
+ </xsl:template>
884
+
885
+ <xsl:template name="guess-media-type">
886
+ <xsl:param name="ext"></xsl:param>
887
+ <xsl:choose>
888
+ <xsl:when test="contains($ext, '.gif')">
889
+ <xsl:text>image/gif</xsl:text>
890
+ </xsl:when>
891
+ <xsl:when test="contains($ext, 'GIF')">
892
+ <xsl:text>image/gif</xsl:text>
893
+ </xsl:when>
894
+ <xsl:when test="contains($ext, '.png')">
895
+ <xsl:text>image/png</xsl:text>
896
+ </xsl:when>
897
+ <xsl:when test="contains($ext, 'PNG')">
898
+ <xsl:text>image/png</xsl:text>
899
+ </xsl:when>
900
+ <xsl:when test="contains($ext, '.jpeg')">
901
+ <xsl:text>image/jpeg</xsl:text>
902
+ </xsl:when>
903
+ <xsl:when test="contains($ext, 'JPEG')">
904
+ <xsl:text>image/jpeg</xsl:text>
905
+ </xsl:when>
906
+ <xsl:when test="contains($ext, '.jpg')">
907
+ <xsl:text>image/jpeg</xsl:text>
908
+ </xsl:when>
909
+ <xsl:when test="contains($ext, 'JPG')">
910
+ <xsl:text>image/jpeg</xsl:text>
911
+ </xsl:when>
912
+ <xsl:when test="contains($ext, '.svg')">
913
+ <xsl:text>image/svg+xml</xsl:text>
914
+ </xsl:when>
915
+ <xsl:when test="contains($ext, 'SVG')">
916
+ <xsl:text>image/svg+xml</xsl:text>
917
+ </xsl:when>
918
+ <xsl:otherwise>
919
+ <!-- we failed -->
920
+ <xsl:text></xsl:text>
921
+ </xsl:otherwise>
922
+ </xsl:choose>
923
+ </xsl:template>
924
+
925
+ <xsl:template match="mediaobject|
926
+ mediaobjectco|
927
+ inlinemediaobject"
928
+ mode="opf.manifest">
929
+ <xsl:apply-templates select="imageobject/imagedata"
930
+ mode="opf.manifest"/>
931
+ </xsl:template>
932
+
933
+ <xsl:template match="mediaobjectco"
934
+ mode="opf.manifest">
935
+ <xsl:message>Warning: mediaobjectco almost certainly will not render as expected in .epub!</xsl:message>
936
+ <xsl:apply-templates select="imageobjectco/imageobject/imagedata"
937
+ mode="opf.manifest"/>
938
+ </xsl:template>
939
+
940
+ <!-- TODO: Barf (xsl:message terminate=yes) if you find a graphic with no reasonable format or a mediaobject w/o same? [option to not die?] -->
941
+
942
+ <!-- TODO: Remove hardcoding -->
943
+ <!-- wish I had XSLT2 ...-->
944
+ <!-- TODO: priority a hack -->
945
+ <xsl:template match="graphic[not(@format)]|
946
+ inlinegraphic[not(@format)]|
947
+ imagedata[not(@format)]"
948
+ mode="opf.manifest">
949
+ <xsl:variable name="filename">
950
+ <xsl:choose>
951
+ <xsl:when test="contains(name(.), 'graphic')">
952
+ <xsl:choose>
953
+ <xsl:when test="@entityref">
954
+ <xsl:value-of select="unparsed-entity-uri(@entityref)"/>
955
+ </xsl:when>
956
+ <xsl:otherwise>
957
+ <xsl:apply-templates select="@fileref"/>
958
+ </xsl:otherwise>
959
+ </xsl:choose>
960
+ </xsl:when>
961
+ <xsl:otherwise>
962
+ <xsl:call-template name="mediaobject.filename">
963
+ <xsl:with-param name="object" select=".."/>
964
+ </xsl:call-template>
965
+ </xsl:otherwise>
966
+ </xsl:choose>
967
+ </xsl:variable>
968
+ <xsl:variable name="format">
969
+ <xsl:call-template name="guess-media-type">
970
+ <xsl:with-param name="ext" select="@fileref"/>
971
+ </xsl:call-template>
972
+ </xsl:variable>
973
+ <xsl:variable name="fr" select="@fileref"/>
974
+ <xsl:if test="$format != ''">
975
+ <!-- only do this if we're the first file to match -->
976
+ <!-- TODO: Why can't this be simple equality?? (I couldn't get it to work) -->
977
+ <xsl:if test="generate-id(.) = generate-id(key('image-filerefs', $fr)[1])">
978
+ <xsl:element name="item">
979
+ <xsl:attribute name="xmlns">http://www.idpf.org/2007/opf</xsl:attribute>
980
+ <xsl:attribute name="id">
981
+ <xsl:choose>
982
+ <xsl:when test="(ancestor::mediaobject[@role='cover'] or ancestor::cover) and (../@role='front-large' or count(ancestor::mediaobject/descendant::imageobject) = 1)">
983
+ <xsl:value-of select="$epub.cover.image.id"/>
984
+ </xsl:when>
985
+ <xsl:otherwise>
986
+ <xsl:value-of select="generate-id(.)"/>
987
+ </xsl:otherwise>
988
+ </xsl:choose>
989
+ </xsl:attribute>
990
+ <xsl:attribute name="href"> <xsl:value-of select="$filename"/> </xsl:attribute>
991
+ <xsl:attribute name="media-type">
992
+ <xsl:value-of select="$format"/>
993
+ </xsl:attribute>
994
+ </xsl:element>
995
+ </xsl:if>
996
+ </xsl:if>
997
+ </xsl:template>
998
+
999
+ <!-- TODO: Remove hardcoding -->
1000
+ <xsl:template match="graphic[@format][@format = 'GIF' or @format = 'GIF87a' or @format = 'GIF89a' or @format = 'JPEG' or @format = 'JPG' or @format = 'PNG' or @format = 'SVG']|
1001
+ inlinegraphic[@format][@format = 'GIF' or @format = 'GIF87a' or @format = 'GIF89a' or @format = 'JPEG' or @format = 'JPG' or @format = 'PNG' or @format = 'SVG']|
1002
+ imagedata[@format][@format = 'GIF' or @format = 'GIF87a' or @format = 'GIF89a' or @format = 'JPEG' or @format = 'JPG' or @format = 'PNG' or @format = 'SVG']"
1003
+ mode="opf.manifest">
1004
+ <xsl:variable name="filename">
1005
+ <xsl:choose>
1006
+ <xsl:when test="contains(name(.), 'graphic')">
1007
+ <xsl:choose>
1008
+ <xsl:when test="@entityref">
1009
+ <xsl:value-of select="unparsed-entity-uri(@entityref)"/>
1010
+ </xsl:when>
1011
+ <xsl:otherwise>
1012
+ <xsl:apply-templates select="@fileref"/>
1013
+ </xsl:otherwise>
1014
+ </xsl:choose>
1015
+ </xsl:when>
1016
+ <xsl:otherwise>
1017
+ <xsl:call-template name="mediaobject.filename">
1018
+ <xsl:with-param name="object" select=".."/>
1019
+ </xsl:call-template>
1020
+ </xsl:otherwise>
1021
+ </xsl:choose>
1022
+ </xsl:variable>
1023
+ <xsl:variable name="fr" select="@fileref"/>
1024
+ <!-- only do this if we're the first file to match -->
1025
+ <!-- TODO: Why can't this be simple equality?? (I couldn't get it to work) -->
1026
+ <xsl:if test="generate-id(.) = generate-id(key('image-filerefs', $fr)[1])">
1027
+ <xsl:element name="item">
1028
+ <xsl:attribute name="xmlns">http://www.idpf.org/2007/opf</xsl:attribute>
1029
+ <xsl:attribute name="id">
1030
+ <xsl:choose>
1031
+ <xsl:when test="(ancestor::mediaobject[@role='cover'] or ancestor::cover) and (../@role='front-large' or count(ancestor::mediaobject/descendant::imageobject) = 1)">
1032
+ <xsl:value-of select="$epub.cover.image.id"/>
1033
+ </xsl:when>
1034
+ <xsl:otherwise>
1035
+ <xsl:value-of select="generate-id(.)"/>
1036
+ </xsl:otherwise>
1037
+ </xsl:choose>
1038
+ </xsl:attribute>
1039
+ <xsl:attribute name="href"> <xsl:value-of select="$filename"/> </xsl:attribute>
1040
+ <xsl:attribute name="media-type">
1041
+ <xsl:call-template name="guess-media-type">
1042
+ <xsl:with-param name="ext" select="@format"/>
1043
+ </xsl:call-template>
1044
+ </xsl:attribute>
1045
+ </xsl:element>
1046
+ </xsl:if>
1047
+ </xsl:template>
1048
+
1049
+ <!-- Warning: While the test indicate this match list is accurate, it may
1050
+ need further tweaking to ensure _never_ dropping generated content (XHTML)
1051
+ from the manifest (OPF file) -->
1052
+ <xsl:template
1053
+ match="set|
1054
+ book[parent::set]|
1055
+ book[*[last()][self::bookinfo]]|
1056
+ book[bookinfo]|
1057
+ article|
1058
+ part|
1059
+ reference|
1060
+ preface|
1061
+ chapter|
1062
+ bibliography|
1063
+ appendix|
1064
+ glossary|
1065
+ section|
1066
+ sect1|
1067
+ sect2|
1068
+ sect3|
1069
+ sect4|
1070
+ sect5|
1071
+ refentry|
1072
+ colophon|
1073
+ bibliodiv[title]|
1074
+ setindex|
1075
+ index"
1076
+ mode="opf.manifest">
1077
+ <xsl:variable name="href">
1078
+ <xsl:call-template name="href.target.with.base.dir">
1079
+ <xsl:with-param name="context" select="/" />
1080
+ <!-- Generate links relative to the location of root file/toc.xml file -->
1081
+ </xsl:call-template>
1082
+ </xsl:variable>
1083
+
1084
+ <xsl:variable name="id">
1085
+ <xsl:value-of select="generate-id(.)"/>
1086
+ </xsl:variable>
1087
+
1088
+ <xsl:variable name="is.chunk">
1089
+ <xsl:call-template name="chunk">
1090
+ <xsl:with-param name="node" select="."/>
1091
+ </xsl:call-template>
1092
+ </xsl:variable>
1093
+
1094
+ <xsl:if test="$is.chunk != 0">
1095
+ <xsl:element name="item">
1096
+ <xsl:attribute name="xmlns">http://www.idpf.org/2007/opf</xsl:attribute>
1097
+ <xsl:attribute name="id"> <xsl:value-of select="$id"/> </xsl:attribute>
1098
+ <xsl:attribute name="href"> <xsl:value-of select="$href"/> </xsl:attribute>
1099
+ <xsl:attribute name="media-type">application/xhtml+xml</xsl:attribute>
1100
+ </xsl:element>
1101
+ </xsl:if>
1102
+ </xsl:template>
1103
+
1104
+ <xsl:template match="text()" mode="ncx" />
1105
+
1106
+ <xsl:template name="html.head">
1107
+ <xsl:param name="prev" select="/foo"/>
1108
+ <xsl:param name="next" select="/foo"/>
1109
+ <xsl:variable name="this" select="."/>
1110
+ <xsl:variable name="home" select="/*[1]"/>
1111
+ <xsl:variable name="up" select="parent::*"/>
1112
+
1113
+ <head xmlns="http://www.w3.org/1999/xhtml">
1114
+ <xsl:call-template name="system.head.content"/>
1115
+ <xsl:call-template name="head.content"/>
1116
+
1117
+ <xsl:call-template name="user.head.content"/>
1118
+ </head>
1119
+ </xsl:template>
1120
+
1121
+ <!-- OVERRIDES xhtml-1_1/graphics.xsl -->
1122
+ <!-- we can't deal with no img/@alt, because it's required. Try grabbing a title before it instead (hopefully meaningful) -->
1123
+ <xsl:template name="process.image.attributes">
1124
+ <xsl:param name="alt"/>
1125
+ <xsl:param name="html.width"/>
1126
+ <xsl:param name="html.depth"/>
1127
+ <xsl:param name="longdesc"/>
1128
+ <xsl:param name="scale"/>
1129
+ <xsl:param name="scalefit"/>
1130
+ <xsl:param name="scaled.contentdepth"/>
1131
+ <xsl:param name="scaled.contentwidth"/>
1132
+ <xsl:param name="viewport"/>
1133
+
1134
+ <xsl:choose>
1135
+ <xsl:when test="@contentwidth or @contentdepth">
1136
+ <!-- ignore @width/@depth, @scale, and @scalefit if specified -->
1137
+ <xsl:if test="@contentwidth and $scaled.contentwidth != ''">
1138
+ <xsl:attribute name="width">
1139
+ <xsl:value-of select="$scaled.contentwidth"/>
1140
+ </xsl:attribute>
1141
+ </xsl:if>
1142
+ <xsl:if test="@contentdepth and $scaled.contentdepth != ''">
1143
+ <xsl:attribute name="height">
1144
+ <xsl:value-of select="$scaled.contentdepth"/>
1145
+ </xsl:attribute>
1146
+ </xsl:if>
1147
+ </xsl:when>
1148
+
1149
+ <xsl:when test="number($scale) != 1.0">
1150
+ <!-- scaling is always uniform, so we only have to specify one dimension -->
1151
+ <!-- ignore @scalefit if specified -->
1152
+ <xsl:attribute name="width">
1153
+ <xsl:value-of select="$scaled.contentwidth"/>
1154
+ </xsl:attribute>
1155
+ </xsl:when>
1156
+
1157
+ <xsl:when test="$scalefit != 0">
1158
+ <xsl:choose>
1159
+ <xsl:when test="contains($html.width, '%')">
1160
+ <xsl:choose>
1161
+ <xsl:when test="$viewport != 0">
1162
+ <!-- The *viewport* will be scaled, so use 100% here! -->
1163
+ <xsl:attribute name="width">
1164
+ <xsl:value-of select="'100%'"/>
1165
+ </xsl:attribute>
1166
+ </xsl:when>
1167
+ <xsl:otherwise>
1168
+ <xsl:attribute name="width">
1169
+ <xsl:value-of select="$html.width"/>
1170
+ </xsl:attribute>
1171
+ </xsl:otherwise>
1172
+ </xsl:choose>
1173
+ </xsl:when>
1174
+
1175
+ <xsl:when test="contains($html.depth, '%')">
1176
+ <!-- HTML doesn't deal with this case very well...do nothing -->
1177
+ </xsl:when>
1178
+
1179
+ <xsl:when test="$scaled.contentwidth != '' and $html.width != '' and $scaled.contentdepth != '' and $html.depth != ''">
1180
+ <!-- scalefit should not be anamorphic; figure out which direction -->
1181
+ <!-- has the limiting scale factor and scale in that direction -->
1182
+ <xsl:choose>
1183
+ <xsl:when test="$html.width div $scaled.contentwidth &gt; $html.depth div $scaled.contentdepth">
1184
+ <xsl:attribute name="height">
1185
+ <xsl:value-of select="$html.depth"/>
1186
+ </xsl:attribute>
1187
+ </xsl:when>
1188
+ <xsl:otherwise>
1189
+ <xsl:attribute name="width">
1190
+ <xsl:value-of select="$html.width"/>
1191
+ </xsl:attribute>
1192
+ </xsl:otherwise>
1193
+ </xsl:choose>
1194
+ </xsl:when>
1195
+
1196
+ <xsl:when test="$scaled.contentwidth != '' and $html.width != ''">
1197
+ <xsl:attribute name="width">
1198
+ <xsl:value-of select="$html.width"/>
1199
+ </xsl:attribute>
1200
+ </xsl:when>
1201
+
1202
+ <xsl:when test="$scaled.contentdepth != '' and $html.depth != ''">
1203
+ <xsl:attribute name="height">
1204
+ <xsl:value-of select="$html.depth"/>
1205
+ </xsl:attribute>
1206
+ </xsl:when>
1207
+ </xsl:choose>
1208
+ </xsl:when>
1209
+ </xsl:choose>
1210
+
1211
+ <!-- AN OVERRIDE -->
1212
+ <xsl:if test="not(@format ='SVG')">
1213
+ <xsl:attribute name="alt">
1214
+ <xsl:choose>
1215
+ <xsl:when test="$alt != ''">
1216
+ <xsl:value-of select="normalize-space($alt)"/>
1217
+ </xsl:when>
1218
+ <xsl:when test="preceding::title[1]">
1219
+ <xsl:value-of select="normalize-space(preceding::title[1])"/>
1220
+ </xsl:when>
1221
+ <xsl:otherwise>
1222
+ <xsl:text>(missing alt)</xsl:text>
1223
+ </xsl:otherwise>
1224
+ </xsl:choose>
1225
+ </xsl:attribute>
1226
+ </xsl:if>
1227
+ <!-- END OF OVERRIDE -->
1228
+
1229
+ <xsl:if test="$longdesc != ''">
1230
+ <xsl:attribute name="longdesc">
1231
+ <xsl:value-of select="$longdesc"/>
1232
+ </xsl:attribute>
1233
+ </xsl:if>
1234
+
1235
+ <xsl:if test="@align and $viewport = 0">
1236
+ <xsl:attribute name="style"><xsl:text>text-align: </xsl:text>
1237
+ <xsl:choose>
1238
+ <xsl:when test="@align = 'center'">middle</xsl:when>
1239
+ <xsl:otherwise>
1240
+ <xsl:value-of select="@align"/>
1241
+ </xsl:otherwise>
1242
+ </xsl:choose>
1243
+ </xsl:attribute>
1244
+ </xsl:if>
1245
+ </xsl:template>
1246
+
1247
+ <!-- OVERRIDES xhtml-1_1/chunk-common.xsl -->
1248
+ <!-- make a bibliography always a chunk -->
1249
+ <!-- TODO: Confirm that above isn't a mistake -->
1250
+ <xsl:template name="chunk"
1251
+ priority="1">
1252
+ <xsl:param name="node" select="."/>
1253
+ <!-- returns 1 if $node is a chunk -->
1254
+
1255
+ <!-- ==================================================================== -->
1256
+ <!-- What's a chunk?
1257
+
1258
+ The root element
1259
+ appendix
1260
+ article
1261
+ bibliography ### NO LONGER TRUE in article or part or book
1262
+ book
1263
+ chapter
1264
+ colophon
1265
+ glossary in article or part or book
1266
+ index in article or part or book
1267
+ part
1268
+ preface
1269
+ refentry
1270
+ reference
1271
+ sect{1,2,3,4,5} if position()>1 && depth < chunk.section.depth
1272
+ section if position()>1 && depth < chunk.section.depth
1273
+ set
1274
+ setindex
1275
+ -->
1276
+ <!-- ==================================================================== -->
1277
+
1278
+ <!--
1279
+ <xsl:message>
1280
+ <xsl:text>chunk: </xsl:text>
1281
+ <xsl:value-of select="name($node)"/>
1282
+ <xsl:text>(</xsl:text>
1283
+ <xsl:value-of select="$node/@id"/>
1284
+ <xsl:text>)</xsl:text>
1285
+ <xsl:text> csd: </xsl:text>
1286
+ <xsl:value-of select="$chunk.section.depth"/>
1287
+ <xsl:text> cfs: </xsl:text>
1288
+ <xsl:value-of select="$chunk.first.sections"/>
1289
+ <xsl:text> ps: </xsl:text>
1290
+ <xsl:value-of select="count($node/parent::section)"/>
1291
+ <xsl:text> prs: </xsl:text>
1292
+ <xsl:value-of select="count($node/preceding-sibling::section)"/>
1293
+ </xsl:message>
1294
+ -->
1295
+
1296
+ <xsl:choose>
1297
+ <xsl:when test="not($node/parent::*)">1</xsl:when>
1298
+
1299
+ <xsl:when test="local-name($node) = 'sect1' and $chunk.section.depth &gt;= 1 and ($chunk.first.sections != 0 or count($node/preceding-sibling::sect1) &gt; 0)">
1300
+ <xsl:text>1</xsl:text>
1301
+ </xsl:when>
1302
+ <xsl:when test="local-name($node) = 'sect2' and $chunk.section.depth &gt;= 2 and ($chunk.first.sections != 0 or count($node/preceding-sibling::sect2) &gt; 0)">
1303
+ <xsl:call-template name="chunk">
1304
+ <xsl:with-param name="node" select="$node/parent::*"/>
1305
+ </xsl:call-template>
1306
+ </xsl:when>
1307
+ <xsl:when test="local-name($node) = 'sect3' and $chunk.section.depth &gt;= 3 and ($chunk.first.sections != 0 or count($node/preceding-sibling::sect3) &gt; 0)">
1308
+ <xsl:call-template name="chunk">
1309
+ <xsl:with-param name="node" select="$node/parent::*"/>
1310
+ </xsl:call-template>
1311
+ </xsl:when>
1312
+ <xsl:when test="local-name($node) = 'sect4' and $chunk.section.depth &gt;= 4 and ($chunk.first.sections != 0 or count($node/preceding-sibling::sect4) &gt; 0)">
1313
+ <xsl:call-template name="chunk">
1314
+ <xsl:with-param name="node" select="$node/parent::*"/>
1315
+ </xsl:call-template>
1316
+ </xsl:when>
1317
+ <xsl:when test="local-name($node) = 'sect5' and $chunk.section.depth &gt;= 5 and ($chunk.first.sections != 0 or count($node/preceding-sibling::sect5) &gt; 0)">
1318
+ <xsl:call-template name="chunk">
1319
+ <xsl:with-param name="node" select="$node/parent::*"/>
1320
+ </xsl:call-template>
1321
+ </xsl:when>
1322
+ <xsl:when test="local-name($node) = 'section' and $chunk.section.depth &gt;= count($node/ancestor::section)+1 and ($chunk.first.sections != 0 or count($node/preceding-sibling::section) &gt; 0)">
1323
+ <xsl:call-template name="chunk">
1324
+ <xsl:with-param name="node" select="$node/parent::*"/>
1325
+ </xsl:call-template>
1326
+ </xsl:when>
1327
+
1328
+ <xsl:when test="local-name($node)='preface'">1</xsl:when>
1329
+ <xsl:when test="local-name($node)='chapter'">1</xsl:when>
1330
+ <xsl:when test="local-name($node)='appendix'">1</xsl:when>
1331
+ <xsl:when test="local-name($node)='article'">1</xsl:when>
1332
+ <xsl:when test="local-name($node)='part'">1</xsl:when>
1333
+ <xsl:when test="local-name($node)='reference'">1</xsl:when>
1334
+ <xsl:when test="local-name($node)='refentry'">1</xsl:when>
1335
+ <xsl:when test="local-name($node)='index' and ($generate.index != 0 or count($node/*) &gt; 0) and (local-name($node/parent::*) = 'article' or local-name($node/parent::*) = 'book' or local-name($node/parent::*) = 'part' )">1</xsl:when>
1336
+ <!-- AN OVERRIDE -->
1337
+ <xsl:when test="local-name($node)='bibliography'">1</xsl:when>
1338
+ <!-- END OF OVERRIDE -->
1339
+ <xsl:when test="local-name($node)='glossary' and (local-name($node/parent::*) = 'article' or local-name($node/parent::*) = 'book' or local-name($node/parent::*) = 'part' )">1</xsl:when>
1340
+ <xsl:when test="local-name($node)='colophon'">1</xsl:when>
1341
+ <xsl:when test="local-name($node)='book'">1</xsl:when>
1342
+ <xsl:when test="local-name($node)='set'">1</xsl:when>
1343
+ <xsl:when test="local-name($node)='setindex'">1</xsl:when>
1344
+ <xsl:when test="local-name($node)='legalnotice' and $generate.legalnotice.link != 0">1</xsl:when>
1345
+ <xsl:otherwise>0</xsl:otherwise>
1346
+ </xsl:choose>
1347
+ </xsl:template>
1348
+
1349
+ <!-- OVERRIDES xhtml-1_1/chunk-code.xsl -->
1350
+ <!-- Add chunking for bibliography as root element -->
1351
+ <!-- AN OVERRIDE -->
1352
+ <xsl:template match="set|
1353
+ book|
1354
+ part|
1355
+ preface|
1356
+ chapter|
1357
+ appendix|
1358
+ article|
1359
+ reference|
1360
+ refentry|
1361
+ book/glossary|
1362
+ article/glossary|
1363
+ part/glossary|
1364
+ bibliography|
1365
+ colophon"
1366
+ priority="1">
1367
+ <!-- END OF OVERRIDE -->
1368
+ <xsl:choose>
1369
+ <xsl:when test="$onechunk != 0 and parent::*">
1370
+ <xsl:apply-imports/>
1371
+ </xsl:when>
1372
+ <xsl:otherwise>
1373
+ <xsl:call-template name="process-chunk-element"/>
1374
+ </xsl:otherwise>
1375
+ </xsl:choose>
1376
+ </xsl:template>
1377
+
1378
+ <!-- OVERRIDES xhtml-1_1/graphics.xsl -->
1379
+ <!-- Do _NOT_ output any xlink garbage, so if you don't have
1380
+ processor with extensions, you're screwed and we're terminating -->
1381
+ <xsl:template match="inlinegraphic">
1382
+ <xsl:variable name="filename">
1383
+ <xsl:choose>
1384
+ <xsl:when test="@entityref">
1385
+ <xsl:value-of select="unparsed-entity-uri(@entityref)"/>
1386
+ </xsl:when>
1387
+ <xsl:otherwise>
1388
+ <xsl:apply-templates select="@fileref"/>
1389
+ </xsl:otherwise>
1390
+ </xsl:choose>
1391
+ </xsl:variable>
1392
+
1393
+ <xsl:call-template name="anchor"/>
1394
+
1395
+ <xsl:choose>
1396
+ <xsl:when test="@format='linespecific'">
1397
+ <xsl:choose>
1398
+ <xsl:when test="$use.extensions != '0' and $textinsert.extension != '0'">
1399
+ <xsl:choose>
1400
+ <xsl:when test="element-available('stext:insertfile')">
1401
+ <stext:insertfile href="{$filename}" encoding="{$textdata.default.encoding}"/>
1402
+ </xsl:when>
1403
+ <xsl:when test="element-available('xtext:insertfile')">
1404
+ <xtext:insertfile href="{$filename}"/>
1405
+ </xsl:when>
1406
+ <xsl:otherwise>
1407
+ <xsl:message terminate="yes">
1408
+ <xsl:text>No insertfile extension available.</xsl:text>
1409
+ </xsl:message>
1410
+ </xsl:otherwise>
1411
+ </xsl:choose>
1412
+ </xsl:when>
1413
+ <xsl:otherwise>
1414
+ <!-- AN OVERRIDE -->
1415
+ <xsl:message terminate="yes">
1416
+ <xsl:text>No insertfile extension available. Use a different processor (with extensions) or turn on $use.extensions and $textinsert.extension (see docs for more). </xsl:text>
1417
+ </xsl:message>
1418
+ <!-- END OF OVERRIDE -->
1419
+ </xsl:otherwise>
1420
+ </xsl:choose>
1421
+ </xsl:when>
1422
+ <xsl:otherwise>
1423
+ <xsl:call-template name="process.image"/>
1424
+ </xsl:otherwise>
1425
+ </xsl:choose>
1426
+ </xsl:template>
1427
+
1428
+ <xsl:template name="cover">
1429
+ <xsl:apply-templates select="/*/*[contains(name(.), 'info')]//mediaobject[@role='cover' or ancestor::cover]"/>
1430
+ </xsl:template>
1431
+
1432
+ <xsl:template match="/*/*[cover or contains(name(.), 'info')]//mediaobject[@role='cover' or ancestor::cover]">
1433
+ <xsl:call-template name="write.chunk">
1434
+ <xsl:with-param name="filename">
1435
+ <xsl:value-of select="$epub.cover.filename" />
1436
+ </xsl:with-param>
1437
+ <xsl:with-param name="method" select="'xml'" />
1438
+ <xsl:with-param name="encoding" select="'utf-8'" />
1439
+ <xsl:with-param name="indent" select="'yes'" />
1440
+ <xsl:with-param name="quiet" select="$chunk.quietly" />
1441
+ <xsl:with-param name="content">
1442
+ <xsl:element name="html">
1443
+ <xsl:attribute name="xmlns">http://www.w3.org/1999/xhtml</xsl:attribute>
1444
+ <xsl:element name="head">
1445
+ <xsl:element name="title">Cover</xsl:element>
1446
+ <xsl:element name="style">
1447
+ <xsl:attribute name="type">text/css</xsl:attribute>
1448
+ <!-- Help the cover image scale nicely in the CSS then apply a max-width to look better in Adobe Digital Editions -->
1449
+ <xsl:text> img { max-width: 100%; }</xsl:text>
1450
+ </xsl:element>
1451
+ </xsl:element>
1452
+ <xsl:element name="body">
1453
+ <xsl:element name="div">
1454
+ <xsl:attribute name="id">
1455
+ <xsl:value-of select="$epub.cover.image.id"/>
1456
+ </xsl:attribute>
1457
+ <xsl:choose>
1458
+ <xsl:when test="imageobject[@role='front-large']">
1459
+ <xsl:apply-templates select="imageobject[@role='front-large']"/>
1460
+ </xsl:when>
1461
+ <xsl:otherwise>
1462
+ <xsl:apply-templates select="imageobject[1]"/>
1463
+ </xsl:otherwise>
1464
+ </xsl:choose>
1465
+ </xsl:element>
1466
+ <!-- If this is defined as an explicit cover page, then process
1467
+ any remaining text -->
1468
+ <xsl:if test="ancestor::cover">
1469
+ <xsl:apply-templates select="ancestor::cover/para"/>
1470
+ </xsl:if>
1471
+ </xsl:element>
1472
+ </xsl:element>
1473
+ </xsl:with-param>
1474
+ </xsl:call-template>
1475
+ </xsl:template>
1476
+
1477
+ <xsl:template name="cover-svg">
1478
+ <xsl:param name="node"/>
1479
+ </xsl:template>
1480
+
1481
+ <xsl:template name="toc-href">
1482
+ <xsl:param name="node" select="."/>
1483
+ <xsl:apply-templates select="$node" mode="recursive-chunk-filename">
1484
+ <xsl:with-param name="recursive" select="true()"/>
1485
+ </xsl:apply-templates>
1486
+ <xsl:text>-toc</xsl:text>
1487
+ <xsl:value-of select="$html.ext"/>
1488
+ </xsl:template>
1489
+
1490
+ <xsl:template match="bibliodiv[title]" mode="label.markup">
1491
+ </xsl:template>
1492
+
1493
+
1494
+ <!-- Change section.heading to improve SEO on generated HTML by doing heading levels
1495
+ "correctly". SEO rules are sometimes silly silly, but this does actually create
1496
+ a semantic improvement.
1497
+ Note: This template needs to be manually maintained outside of the html/sections.xsl
1498
+ code, so make sure important changes get reintegrated. -->
1499
+ <xsl:template name="section.heading">
1500
+ <xsl:param name="section" select="."/>
1501
+ <xsl:param name="level" select="1"/>
1502
+ <xsl:param name="allow-anchors" select="1"/>
1503
+ <xsl:param name="title"/>
1504
+ <xsl:param name="class" select="'title'"/>
1505
+
1506
+ <xsl:variable name="id">
1507
+ <xsl:choose>
1508
+ <!-- Make sure the subtitle doesn't get the same id as the title -->
1509
+ <xsl:when test="self::subtitle">
1510
+ <xsl:call-template name="object.id">
1511
+ <xsl:with-param name="object" select="."/>
1512
+ </xsl:call-template>
1513
+ </xsl:when>
1514
+ <!-- if title is in an *info wrapper, get the grandparent -->
1515
+ <xsl:when test="contains(local-name(..), 'info')">
1516
+ <xsl:call-template name="object.id">
1517
+ <xsl:with-param name="object" select="../.."/>
1518
+ </xsl:call-template>
1519
+ </xsl:when>
1520
+ <xsl:otherwise>
1521
+ <xsl:call-template name="object.id">
1522
+ <xsl:with-param name="object" select=".."/>
1523
+ </xsl:call-template>
1524
+ </xsl:otherwise>
1525
+ </xsl:choose>
1526
+ </xsl:variable>
1527
+
1528
+ <!-- For SEO, we try to actually ensure we *always* output one and only one h1,
1529
+ so unlike the regular stylesheets, we don't add one to the section level and
1530
+ we get the right behavior because of chunking. -->
1531
+ <xsl:variable name="hlevel">
1532
+ <xsl:choose>
1533
+ <!-- highest valid HTML H level is H6; so anything nested deeper
1534
+ than 7 levels down just becomes H6 -->
1535
+ <xsl:when test="$level &gt; 6">6</xsl:when>
1536
+ <xsl:otherwise>
1537
+ <xsl:value-of select="$level"/>
1538
+ </xsl:otherwise>
1539
+ </xsl:choose>
1540
+ </xsl:variable>
1541
+ <xsl:element name="h{$hlevel}" namespace="http://www.w3.org/1999/xhtml">
1542
+ <xsl:attribute name="class"><xsl:value-of select="$class"/></xsl:attribute>
1543
+ <xsl:if test="$css.decoration != '0'">
1544
+ <xsl:if test="$hlevel&lt;3">
1545
+ <xsl:attribute name="style">clear: both</xsl:attribute>
1546
+ </xsl:if>
1547
+ </xsl:if>
1548
+ <xsl:if test="$allow-anchors != 0 and $generate.id.attributes = 0">
1549
+ <xsl:call-template name="anchor">
1550
+ <xsl:with-param name="node" select="$section"/>
1551
+ <xsl:with-param name="conditional" select="0"/>
1552
+ </xsl:call-template>
1553
+ </xsl:if>
1554
+ <xsl:if test="$generate.id.attributes != 0 and not(local-name(.) = 'appendix')">
1555
+ <xsl:attribute name="id"><xsl:value-of select="$id"/></xsl:attribute>
1556
+ </xsl:if>
1557
+ <xsl:copy-of select="$title"/>
1558
+ </xsl:element>
1559
+ </xsl:template>
1560
+
1561
+ <!-- ==================================================================== -->
1562
+
1563
+ <xsl:template match="bridgehead">
1564
+ <xsl:variable name="container" select="(ancestor::appendix |ancestor::article |ancestor::bibliography |ancestor::chapter |ancestor::glossary |ancestor::glossdiv |ancestor::index |ancestor::partintro |ancestor::preface |ancestor::refsect1 |ancestor::refsect2 |ancestor::refsect3 |ancestor::sect1 |ancestor::sect2 |ancestor::sect3 |ancestor::sect4 |ancestor::sect5 |ancestor::section |ancestor::setindex |ancestor::simplesect)[last()]"/>
1565
+
1566
+ <xsl:variable name="clevel">
1567
+ <xsl:choose>
1568
+ <xsl:when test="local-name($container) = 'appendix' or local-name($container) = 'chapter' or local-name($container) = 'article' or local-name($container) = 'bibliography' or local-name($container) = 'glossary' or local-name($container) = 'index' or local-name($container) = 'partintro' or local-name($container) = 'preface' or local-name($container) = 'setindex'">1</xsl:when>
1569
+ <xsl:when test="local-name($container) = 'glossdiv'">
1570
+ <xsl:value-of select="count(ancestor::glossdiv)+1"/>
1571
+ </xsl:when>
1572
+ <xsl:when test="local-name($container) = 'sect1' or local-name($container) = 'sect2' or local-name($container) = 'sect3' or local-name($container) = 'sect4' or local-name($container) = 'sect5' or local-name($container) = 'refsect1' or local-name($container) = 'refsect2' or local-name($container) = 'refsect3' or local-name($container) = 'section' or local-name($container) = 'simplesect'">
1573
+ <xsl:variable name="slevel">
1574
+ <xsl:call-template name="section.level">
1575
+ <xsl:with-param name="node" select="$container"/>
1576
+ </xsl:call-template>
1577
+ </xsl:variable>
1578
+ <xsl:value-of select="$slevel + 1"/>
1579
+ </xsl:when>
1580
+ <xsl:otherwise>1</xsl:otherwise>
1581
+ </xsl:choose>
1582
+ </xsl:variable>
1583
+
1584
+ <!-- HTML H level is one higher than section level -->
1585
+ <xsl:variable name="hlevel">
1586
+ <xsl:choose>
1587
+ <xsl:when test="@renderas = 'sect1'">1</xsl:when>
1588
+ <xsl:when test="@renderas = 'sect2'">2</xsl:when>
1589
+ <xsl:when test="@renderas = 'sect3'">3</xsl:when>
1590
+ <xsl:when test="@renderas = 'sect4'">4</xsl:when>
1591
+ <xsl:when test="@renderas = 'sect5'">5</xsl:when>
1592
+ <xsl:otherwise>
1593
+ <xsl:value-of select="$clevel + 1"/>
1594
+ </xsl:otherwise>
1595
+ </xsl:choose>
1596
+ </xsl:variable>
1597
+
1598
+ <xsl:element name="h{$hlevel}" namespace="http://www.w3.org/1999/xhtml">
1599
+ <xsl:call-template name="anchor">
1600
+ <xsl:with-param name="conditional" select="0"/>
1601
+ </xsl:call-template>
1602
+ <xsl:apply-templates/>
1603
+ </xsl:element>
1604
+ </xsl:template>
1605
+
1606
+ <!-- SEO customization #2 -->
1607
+ <xsl:template name="component.title">
1608
+ <xsl:param name="node" select="."/>
1609
+
1610
+ <xsl:variable name="level">
1611
+ <xsl:choose>
1612
+ <xsl:when test="ancestor::section">
1613
+ <xsl:value-of select="count(ancestor::section)+1"/>
1614
+ </xsl:when>
1615
+ <xsl:when test="ancestor::sect5">6</xsl:when>
1616
+ <xsl:when test="ancestor::sect4">5</xsl:when>
1617
+ <xsl:when test="ancestor::sect3">4</xsl:when>
1618
+ <xsl:when test="ancestor::sect2">3</xsl:when>
1619
+ <xsl:when test="ancestor::sect1">2</xsl:when>
1620
+ <xsl:otherwise>1</xsl:otherwise>
1621
+ </xsl:choose>
1622
+ </xsl:variable>
1623
+
1624
+ <xsl:element name="h{$level}" namespace="http://www.w3.org/1999/xhtml">
1625
+ <xsl:attribute name="class">title</xsl:attribute>
1626
+ <xsl:if test="$generate.id.attributes = 0">
1627
+ <xsl:call-template name="anchor">
1628
+ <xsl:with-param name="node" select="$node"/>
1629
+ <xsl:with-param name="conditional" select="0"/>
1630
+ </xsl:call-template>
1631
+ </xsl:if>
1632
+ <xsl:apply-templates select="$node" mode="object.title.markup">
1633
+ <xsl:with-param name="allow-anchors" select="1"/>
1634
+ </xsl:apply-templates>
1635
+ </xsl:element>
1636
+ </xsl:template>
1637
+
1638
+ </xsl:stylesheet>