Prezentprogramo 3.1__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (94) hide show
  1. hovercraft/__init__.py +435 -0
  2. hovercraft/generate.py +473 -0
  3. hovercraft/parse.py +275 -0
  4. hovercraft/position.py +269 -0
  5. hovercraft/template.py +237 -0
  6. hovercraft/templates/default/css/highlight.css +61 -0
  7. hovercraft/templates/default/css/hovercraft.css +67 -0
  8. hovercraft/templates/default/js/MathJax/es5/a11y/assistive-mml.js +1 -0
  9. hovercraft/templates/default/js/MathJax/es5/a11y/complexity.js +1 -0
  10. hovercraft/templates/default/js/MathJax/es5/a11y/explorer.js +1 -0
  11. hovercraft/templates/default/js/MathJax/es5/a11y/semantic-enrich.js +1 -0
  12. hovercraft/templates/default/js/MathJax/es5/a11y/sre.js +1 -0
  13. hovercraft/templates/default/js/MathJax/es5/adaptors/liteDOM.js +1 -0
  14. hovercraft/templates/default/js/MathJax/es5/core.js +1 -0
  15. hovercraft/templates/default/js/MathJax/es5/input/asciimath.js +1 -0
  16. hovercraft/templates/default/js/MathJax/es5/input/mml/entities.js +1 -0
  17. hovercraft/templates/default/js/MathJax/es5/input/mml/extensions/mml3.js +1 -0
  18. hovercraft/templates/default/js/MathJax/es5/input/mml.js +1 -0
  19. hovercraft/templates/default/js/MathJax/es5/input/tex/extensions/action.js +1 -0
  20. hovercraft/templates/default/js/MathJax/es5/input/tex/extensions/all-packages.js +34 -0
  21. hovercraft/templates/default/js/MathJax/es5/input/tex/extensions/ams.js +1 -0
  22. hovercraft/templates/default/js/MathJax/es5/input/tex/extensions/amscd.js +1 -0
  23. hovercraft/templates/default/js/MathJax/es5/input/tex/extensions/autoload.js +1 -0
  24. hovercraft/templates/default/js/MathJax/es5/input/tex/extensions/bbox.js +1 -0
  25. hovercraft/templates/default/js/MathJax/es5/input/tex/extensions/boldsymbol.js +1 -0
  26. hovercraft/templates/default/js/MathJax/es5/input/tex/extensions/braket.js +1 -0
  27. hovercraft/templates/default/js/MathJax/es5/input/tex/extensions/bussproofs.js +1 -0
  28. hovercraft/templates/default/js/MathJax/es5/input/tex/extensions/cancel.js +1 -0
  29. hovercraft/templates/default/js/MathJax/es5/input/tex/extensions/cases.js +1 -0
  30. hovercraft/templates/default/js/MathJax/es5/input/tex/extensions/centernot.js +1 -0
  31. hovercraft/templates/default/js/MathJax/es5/input/tex/extensions/color.js +1 -0
  32. hovercraft/templates/default/js/MathJax/es5/input/tex/extensions/colortbl.js +1 -0
  33. hovercraft/templates/default/js/MathJax/es5/input/tex/extensions/colorv2.js +1 -0
  34. hovercraft/templates/default/js/MathJax/es5/input/tex/extensions/configmacros.js +1 -0
  35. hovercraft/templates/default/js/MathJax/es5/input/tex/extensions/empheq.js +1 -0
  36. hovercraft/templates/default/js/MathJax/es5/input/tex/extensions/enclose.js +1 -0
  37. hovercraft/templates/default/js/MathJax/es5/input/tex/extensions/extpfeil.js +1 -0
  38. hovercraft/templates/default/js/MathJax/es5/input/tex/extensions/gensymb.js +1 -0
  39. hovercraft/templates/default/js/MathJax/es5/input/tex/extensions/html.js +1 -0
  40. hovercraft/templates/default/js/MathJax/es5/input/tex/extensions/mathtools.js +1 -0
  41. hovercraft/templates/default/js/MathJax/es5/input/tex/extensions/mhchem.js +34 -0
  42. hovercraft/templates/default/js/MathJax/es5/input/tex/extensions/newcommand.js +1 -0
  43. hovercraft/templates/default/js/MathJax/es5/input/tex/extensions/noerrors.js +1 -0
  44. hovercraft/templates/default/js/MathJax/es5/input/tex/extensions/noundefined.js +1 -0
  45. hovercraft/templates/default/js/MathJax/es5/input/tex/extensions/physics.js +1 -0
  46. hovercraft/templates/default/js/MathJax/es5/input/tex/extensions/require.js +1 -0
  47. hovercraft/templates/default/js/MathJax/es5/input/tex/extensions/setoptions.js +1 -0
  48. hovercraft/templates/default/js/MathJax/es5/input/tex/extensions/tagformat.js +1 -0
  49. hovercraft/templates/default/js/MathJax/es5/input/tex/extensions/textcomp.js +1 -0
  50. hovercraft/templates/default/js/MathJax/es5/input/tex/extensions/textmacros.js +1 -0
  51. hovercraft/templates/default/js/MathJax/es5/input/tex/extensions/unicode.js +1 -0
  52. hovercraft/templates/default/js/MathJax/es5/input/tex/extensions/upgreek.js +1 -0
  53. hovercraft/templates/default/js/MathJax/es5/input/tex/extensions/verb.js +1 -0
  54. hovercraft/templates/default/js/MathJax/es5/input/tex-base.js +1 -0
  55. hovercraft/templates/default/js/MathJax/es5/input/tex-full.js +34 -0
  56. hovercraft/templates/default/js/MathJax/es5/input/tex.js +1 -0
  57. hovercraft/templates/default/js/MathJax/es5/latest.js +1 -0
  58. hovercraft/templates/default/js/MathJax/es5/loader.js +1 -0
  59. hovercraft/templates/default/js/MathJax/es5/mml-chtml.js +1 -0
  60. hovercraft/templates/default/js/MathJax/es5/mml-svg.js +1 -0
  61. hovercraft/templates/default/js/MathJax/es5/node-main.js +1 -0
  62. hovercraft/templates/default/js/MathJax/es5/output/chtml/fonts/tex.js +1 -0
  63. hovercraft/templates/default/js/MathJax/es5/output/chtml.js +1 -0
  64. hovercraft/templates/default/js/MathJax/es5/output/svg/fonts/tex.js +1 -0
  65. hovercraft/templates/default/js/MathJax/es5/output/svg.js +1 -0
  66. hovercraft/templates/default/js/MathJax/es5/startup.js +1 -0
  67. hovercraft/templates/default/js/MathJax/es5/tex-chtml-full-speech.js +34 -0
  68. hovercraft/templates/default/js/MathJax/es5/tex-chtml-full.js +34 -0
  69. hovercraft/templates/default/js/MathJax/es5/tex-chtml.js +1 -0
  70. hovercraft/templates/default/js/MathJax/es5/tex-mml-chtml.js +1 -0
  71. hovercraft/templates/default/js/MathJax/es5/tex-mml-svg.js +1 -0
  72. hovercraft/templates/default/js/MathJax/es5/tex-svg-full.js +34 -0
  73. hovercraft/templates/default/js/MathJax/es5/tex-svg.js +1 -0
  74. hovercraft/templates/default/js/MathJax/es5/ui/lazy.js +1 -0
  75. hovercraft/templates/default/js/MathJax/es5/ui/menu.js +1 -0
  76. hovercraft/templates/default/js/MathJax/es5/ui/safe.js +1 -0
  77. hovercraft/templates/default/js/gotoSlide.js +51 -0
  78. hovercraft/templates/default/js/hovercraft.js +58 -0
  79. hovercraft/templates/default/js/impress.js +5009 -0
  80. hovercraft/templates/default/template.cfg +11 -0
  81. hovercraft/templates/default/template.xsl +161 -0
  82. hovercraft/templates/reST.xsl +535 -0
  83. hovercraft/templates/simple/css/highlight.css +61 -0
  84. hovercraft/templates/simple/css/hovercraft.css +67 -0
  85. hovercraft/templates/simple/js/hovercraft.js +58 -0
  86. hovercraft/templates/simple/js/impress.js +5009 -0
  87. hovercraft/templates/simple/template.cfg +10 -0
  88. hovercraft/templates/simple/template.xsl +162 -0
  89. prezentprogramo-3.1.dist-info/METADATA +143 -0
  90. prezentprogramo-3.1.dist-info/RECORD +94 -0
  91. prezentprogramo-3.1.dist-info/WHEEL +5 -0
  92. prezentprogramo-3.1.dist-info/entry_points.txt +5 -0
  93. prezentprogramo-3.1.dist-info/licenses/LICENSE.txt +254 -0
  94. prezentprogramo-3.1.dist-info/top_level.txt +1 -0
@@ -0,0 +1,535 @@
1
+ <!--
2
+ Copyright (c) 2006, Michael Alyn Miller <malyn@strangeGizmo.com>.
3
+ All rights reserved.
4
+
5
+ Redistribution and use in source and binary forms, with or without
6
+ modification, are permitted provided that the following conditions
7
+ are met:
8
+
9
+ 1. Redistributions of source code must retain the above copyright
10
+ notice unmodified, this list of conditions, and the following
11
+ disclaimer.
12
+ 2. Redistributions in binary form must reproduce the above
13
+ copyright notice, this list of conditions and the following
14
+ disclaimer in the documentation and/or other materials provided
15
+ with the distribution.
16
+ 3. Neither the name of Michael Alyn Miller nor the names of the
17
+ contributors to this software may be used to endorse or promote
18
+ products derived from this software without specific prior
19
+ written permission.
20
+
21
+ THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS "AS IS"
22
+ AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
23
+ TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
24
+ PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR
25
+ CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
26
+ SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
27
+ LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
28
+ USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
29
+ ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
30
+ OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
31
+ OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
32
+ SUCH DAMAGE.
33
+ -->
34
+
35
+ <!--
36
+ Modifications by Lennart Regebro, 2018:
37
+
38
+ * Added "class" support for lists and list items.
39
+
40
+ * Added support for the HTML5 <figure> and <figcaption> tags.
41
+
42
+ Modifications by Lennart Regebro, 2013:
43
+
44
+ * Added support for the <notes>-tag.
45
+
46
+ * Changed literal block rendering from a <div class="literal-block"> to <pre>,
47
+ with @classes copied over to @class for syntax highlighting.
48
+
49
+ * Added support for the <inline> tag for code highlighting.
50
+
51
+ Modification by Carl Mayer, 2013:
52
+
53
+ * Skipped rendering of ReST comments.
54
+
55
+ -->
56
+
57
+ <xsl:stylesheet
58
+ version="1.0"
59
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
60
+ xmlns="http://www.w3.org/1999/xhtml">
61
+
62
+
63
+
64
+ <!-- Suppress the reST document title, information, and topic name.
65
+ These values should be pulled in by the main XSL template. -->
66
+ <xsl:template match="/document/title" />
67
+ <xsl:template match="/document/docinfo" />
68
+ <xsl:template match="/document/topic" />
69
+
70
+ <!-- Suppress all field lists. These are only used for 'special
71
+ features' implemented by the author of the site-specific reST
72
+ content. -->
73
+ <xsl:template match="field_list" />
74
+
75
+
76
+
77
+ <!-- ===================================================================
78
+ Inline elements.
79
+ -->
80
+
81
+ <xsl:template match="emphasis">
82
+ <em><xsl:apply-templates /></em>
83
+ </xsl:template>
84
+
85
+ <xsl:template match="literal">
86
+ <tt><xsl:apply-templates /></tt>
87
+ </xsl:template>
88
+
89
+ <xsl:template match="reference">
90
+ <xsl:element name="a">
91
+ <xsl:attribute name="href">
92
+ <xsl:choose>
93
+ <xsl:when test="@refid">
94
+ <xsl:value-of select="concat('#', @refid)" />
95
+ </xsl:when>
96
+ <xsl:when test="@refuri">
97
+ <xsl:value-of select="@refuri" />
98
+ </xsl:when>
99
+ </xsl:choose>
100
+ </xsl:attribute>
101
+
102
+ <xsl:apply-templates />
103
+ </xsl:element>
104
+ </xsl:template>
105
+
106
+ <xsl:template match="strong">
107
+ <strong><xsl:apply-templates /></strong>
108
+ </xsl:template>
109
+
110
+
111
+
112
+ <!-- ===================================================================
113
+ Body elements.
114
+ -->
115
+
116
+
117
+ <!-- Generic body elements. -->
118
+ <xsl:template match="image">
119
+ <xsl:element name="img">
120
+ <xsl:attribute name="src">
121
+ <xsl:value-of select="@uri" />
122
+ </xsl:attribute>
123
+ <xsl:if test="@alt">
124
+ <xsl:attribute name="alt">
125
+ <xsl:value-of select="@alt" />
126
+ </xsl:attribute>
127
+ </xsl:if>
128
+ <xsl:if test="@width">
129
+ <xsl:attribute name="width">
130
+ <xsl:value-of select="@width" />
131
+ </xsl:attribute>
132
+ </xsl:if>
133
+ <xsl:if test="@height">
134
+ <xsl:attribute name="height">
135
+ <xsl:value-of select="@height" />
136
+ </xsl:attribute>
137
+ </xsl:if>
138
+ <xsl:if test="@classes">
139
+ <xsl:attribute name="class">
140
+ <xsl:value-of select="@classes" />
141
+ </xsl:attribute>
142
+ </xsl:if>
143
+ <xsl:if test="@align">
144
+ <xsl:attribute name="align">
145
+ <xsl:value-of select="@align" />
146
+ </xsl:attribute>
147
+ </xsl:if>
148
+ </xsl:element>
149
+ </xsl:template>
150
+
151
+
152
+ <xsl:template match="line_block">
153
+ <div class="line-block">
154
+ <xsl:apply-templates />
155
+ </div>
156
+ </xsl:template>
157
+
158
+ <xsl:template match="line_block/line">
159
+ <xsl:apply-templates /><br />
160
+ </xsl:template>
161
+
162
+
163
+ <xsl:template match="literal_block">
164
+ <pre class="highlight">
165
+ <xsl:attribute name="class">
166
+ <xsl:value-of select="concat('highlight ', @classes)" />
167
+ </xsl:attribute>
168
+ <xsl:apply-templates />
169
+ </pre>
170
+ </xsl:template>
171
+
172
+ <xsl:template match="literal_block/br">
173
+ <br />
174
+ </xsl:template>
175
+
176
+
177
+ <xsl:template match="math_block">
178
+ <xsl:element name="div">
179
+ <xsl:attribute name="class">
180
+ <xsl:value-of select="concat('math-block ', @classes)" />
181
+ </xsl:attribute>
182
+ <xsl:text>$$\begin{align}</xsl:text><xsl:apply-templates /><xsl:text>\end{align}$$</xsl:text>
183
+ </xsl:element>
184
+ </xsl:template>
185
+
186
+ <xsl:template match="math">
187
+ <xsl:element name="span">
188
+ <xsl:attribute name="class">
189
+ <xsl:value-of select="concat('math ', @classes)" />
190
+ </xsl:attribute>
191
+ <xsl:text>\(</xsl:text><xsl:apply-templates /><xsl:text>\)</xsl:text>
192
+ </xsl:element>
193
+ </xsl:template>
194
+
195
+ <xsl:template match="paragraph">
196
+ <p>
197
+ <xsl:if test="@classes">
198
+ <xsl:attribute name="class">
199
+ <xsl:value-of select="@classes" />
200
+ </xsl:attribute>
201
+ </xsl:if>
202
+ <xsl:apply-templates />
203
+ </p>
204
+ </xsl:template>
205
+
206
+ <xsl:template match="container">
207
+ <div>
208
+ <xsl:if test="@classes">
209
+ <xsl:attribute name="class">
210
+ <xsl:value-of select="@classes" />
211
+ </xsl:attribute>
212
+ </xsl:if>
213
+ <xsl:if test="@ids">
214
+ <xsl:attribute name="id">
215
+ <xsl:value-of select="@ids" />
216
+ </xsl:attribute>
217
+ </xsl:if>
218
+ <xsl:apply-templates />
219
+ </div>
220
+ </xsl:template>
221
+
222
+ <xsl:template match="substitution_definition" />
223
+
224
+
225
+
226
+ <!-- reST block quotes get prepended with a paragraph that reads
227
+ "ATTRIBUTION wrote:" where ATTRIBUTION is the contents of the
228
+ reStructuredText attribution (the information after the
229
+ double-hyphens). -->
230
+ <xsl:template match="block_quote">
231
+ <blockquote>
232
+ <xsl:apply-templates/>
233
+ </blockquote>
234
+
235
+ <xsl:if test="./attribution">
236
+ <div class="cite">
237
+ <span class="cite_label">Source: </span>
238
+ <cite><xsl:apply-templates select="attribution/*|attribution/text()" /></cite>
239
+ </div>
240
+ </xsl:if>
241
+ </xsl:template>
242
+
243
+ <!-- Suppress block_quote/attribution elements since we grab the text of
244
+ the attribution from the block_quote template. -->
245
+ <xsl:template match="block_quote/attribution" />
246
+
247
+
248
+ <!-- Footnote references are wrapped in brackets ([..]) and enclosed in
249
+ an anchor tag with the class "footnoteref". -->
250
+ <xsl:template match="footnote_reference">
251
+ <xsl:element name="a">
252
+ <xsl:attribute name="class">footnoteref</xsl:attribute>
253
+ <xsl:attribute name="id">
254
+ <xsl:text>footnote-backref-</xsl:text>
255
+ <xsl:value-of select="@ids" />
256
+ </xsl:attribute>
257
+ <xsl:attribute name="href">
258
+ <xsl:text>#footnote-</xsl:text>
259
+ <xsl:value-of select="@refid" />
260
+ </xsl:attribute>
261
+
262
+ <xsl:text>[</xsl:text>
263
+ <xsl:apply-templates />
264
+ <xsl:text>]</xsl:text>
265
+ </xsl:element>
266
+ </xsl:template>
267
+
268
+ <!-- The footnote itself is wrapped in a div tag with a class of
269
+ "footnote". The footnote begins with an anchor tag (class name
270
+ "footnotereturn") that links back to the part of the document where
271
+ the footnote appeared. -->
272
+ <xsl:template match="footnote">
273
+ <xsl:element name="div">
274
+ <xsl:attribute name="class">footnote</xsl:attribute>
275
+ <xsl:attribute name="id">
276
+ <xsl:text>footnote-</xsl:text>
277
+ <xsl:value-of select="@ids" />
278
+ </xsl:attribute>
279
+
280
+ <xsl:element name="a">
281
+ <xsl:attribute name="class">footnotereturn</xsl:attribute>
282
+ <xsl:attribute name="href">
283
+ <xsl:text>#footnote-backref-</xsl:text>
284
+ <xsl:value-of select="@backrefs" />
285
+ </xsl:attribute>
286
+ <xsl:attribute name="title">
287
+ <xsl:text>return to content</xsl:text>
288
+ </xsl:attribute>
289
+
290
+ <xsl:text>#</xsl:text>
291
+ <xsl:value-of select="label" />
292
+ <xsl:text>: </xsl:text>
293
+ </xsl:element>
294
+
295
+ <xsl:apply-templates />
296
+ </xsl:element>
297
+ </xsl:template>
298
+ <xsl:template match="footnote/label" />
299
+
300
+
301
+ <!-- Basic lists. -->
302
+ <xsl:template match="bullet_list">
303
+ <ul>
304
+ <xsl:if test="@classes">
305
+ <xsl:attribute name="class">
306
+ <xsl:value-of select="@classes" />
307
+ </xsl:attribute>
308
+ </xsl:if>
309
+ <xsl:apply-templates />
310
+ </ul>
311
+ </xsl:template>
312
+
313
+ <xsl:template match="enumerated_list">
314
+ <ol>
315
+ <xsl:if test="@classes">
316
+ <xsl:attribute name="class">
317
+ <xsl:value-of select="@classes" />
318
+ </xsl:attribute>
319
+ </xsl:if>
320
+ <xsl:apply-templates />
321
+ </ol>
322
+ </xsl:template>
323
+
324
+ <!-- Basic list items. -->
325
+ <xsl:template match="list_item">
326
+ <li>
327
+ <xsl:if test="@classes">
328
+ <xsl:attribute name="class">
329
+ <xsl:value-of select="@classes" />
330
+ </xsl:attribute>
331
+ </xsl:if>
332
+ <xsl:apply-templates />
333
+ </li>
334
+ </xsl:template>
335
+
336
+ <!-- TODO Lists are currently stripped of their paragraph wrapping.
337
+ This may or may not be what you want. You could use a match value
338
+ of "list_item/paragraph[count(child::*) = 0]" to detect simple vs.
339
+ complex paragraphs, although this would also catch inline elements.
340
+ A stunningly-complex match value should probably be created to
341
+ detect the list type (simple or complex) and then put all of the
342
+ items into the same wrapper (either a p tag or a bare list item). -->
343
+ <xsl:template match="list_item/paragraph">
344
+ <xsl:apply-templates />
345
+ </xsl:template>
346
+
347
+
348
+ <!-- Definition lists. -->
349
+ <xsl:template match="definition_list">
350
+ <dl><xsl:apply-templates /></dl>
351
+ </xsl:template>
352
+
353
+ <xsl:template match="definition_list_item/term">
354
+ <dt><xsl:apply-templates /></dt>
355
+ </xsl:template>
356
+
357
+ <xsl:template match="definition_list_item/definition">
358
+ <dd><xsl:apply-templates /></dd>
359
+ </xsl:template>
360
+
361
+
362
+ <!-- Option lists. -->
363
+ <xsl:template match="option_list">
364
+ <table class="option-list" cellpadding="0" cellspacing="0">
365
+ <tr>
366
+ <th>Option</th>
367
+ <th>Description</th>
368
+ </tr>
369
+
370
+ <xsl:apply-templates />
371
+ </table>
372
+ </xsl:template>
373
+
374
+ <xsl:template match="option_list_item">
375
+ <tr><xsl:apply-templates /></tr>
376
+ </xsl:template>
377
+
378
+ <xsl:template match="option_group">
379
+ <td>
380
+ <xsl:for-each select="option">
381
+ <xsl:apply-templates select="." /><br />
382
+ </xsl:for-each>
383
+ </td>
384
+ </xsl:template>
385
+
386
+ <xsl:template match="option_group/option">
387
+ <span class="option-string"><xsl:value-of select="option_string" /></span>
388
+ <xsl:if test="option_argument">
389
+ <span class="option-delimiter"><xsl:value-of select="option_argument/@delimiter" /></span>
390
+ <span class="option-argument"><xsl:value-of select="option_argument" /></span>
391
+ </xsl:if>
392
+ </xsl:template>
393
+
394
+ <xsl:template match="option_list_item/description">
395
+ <td><xsl:apply-templates /></td>
396
+ </xsl:template>
397
+
398
+
399
+ <!-- Raw HTML elements are passed straight through. Note that this
400
+ assumes that the output document is an XHTML document. -->
401
+ <xsl:template match="raw[@format='html']">
402
+ <xsl:value-of select="." disable-output-escaping="yes" />
403
+ </xsl:template>
404
+
405
+
406
+ <!-- Section titles are wrapped in a heading tag. The heading level
407
+ (h1, h2, h3, etc.) is set by counting the number of parent sections
408
+ that this section is enclosed in. -->
409
+ <xsl:template match="section/title">
410
+ <xsl:element name="{concat('h', format-number(count(ancestor::section), '#'))}">
411
+ <xsl:attribute name="id">
412
+ <xsl:value-of select="parent::section/@ids" />
413
+ </xsl:attribute>
414
+
415
+ <xsl:apply-templates />
416
+ </xsl:element>
417
+ </xsl:template>
418
+
419
+
420
+ <!-- Tables.
421
+
422
+ These are pretty much handled as you would expect. The only custom
423
+ feature is a pair of special fields that can be used to control the
424
+ horizontal and vertical alignment of the table cells.
425
+
426
+ If you want to set a custom horizontal alignment, include the field
427
+ ":table-cell-halign:" directly before the table. Each of the cells
428
+ (td elements) will include an "align" attribute with the specified
429
+ value.
430
+
431
+ A similar field exists for specifying the valign value. This field
432
+ is called ":table-cell-valign:". -->
433
+ <xsl:template match="table">
434
+ <table cellpadding="0" cellspacing="0">
435
+ <xsl:if test="@classes">
436
+ <xsl:attribute name="class">
437
+ <xsl:value-of select="@classes" />
438
+ </xsl:attribute>
439
+ </xsl:if>
440
+ <xsl:if test="@ids">
441
+ <xsl:attribute name="id">
442
+ <xsl:value-of select="@ids" />
443
+ </xsl:attribute>
444
+ </xsl:if>
445
+ <xsl:apply-templates />
446
+ </table>
447
+ </xsl:template>
448
+
449
+ <xsl:template match="thead">
450
+ <thead><xsl:apply-templates /></thead>
451
+ </xsl:template>
452
+
453
+ <xsl:template match="thead/row">
454
+ <tr><xsl:apply-templates /></tr>
455
+ </xsl:template>
456
+
457
+ <xsl:template match="thead/row/entry">
458
+ <xsl:element name="th">
459
+ <xsl:if test="@morecols">
460
+ <xsl:attribute name="colspan">
461
+ <xsl:value-of select="format-number(1 + @morecols, '#')" />
462
+ </xsl:attribute>
463
+ </xsl:if>
464
+ <xsl:if test="@morerows">
465
+ <xsl:attribute name="rowspan">
466
+ <xsl:value-of select="format-number(1 + @morerows, '#')" />
467
+ </xsl:attribute>
468
+ </xsl:if>
469
+
470
+ <xsl:apply-templates />
471
+ </xsl:element>
472
+ </xsl:template>
473
+
474
+ <xsl:template match="tbody">
475
+ <tbody><xsl:apply-templates /></tbody>
476
+ </xsl:template>
477
+
478
+ <xsl:template match="tbody/row">
479
+ <tr><xsl:apply-templates /></tr>
480
+ </xsl:template>
481
+
482
+ <xsl:template match="tbody/row/entry">
483
+ <xsl:element name="td">
484
+ <xsl:if test="@morecols">
485
+ <xsl:attribute name="colspan">
486
+ <xsl:value-of select="format-number(1 + @morecols, '#')" />
487
+ </xsl:attribute>
488
+ </xsl:if>
489
+ <xsl:if test="@morerows">
490
+ <xsl:attribute name="rowspan">
491
+ <xsl:value-of select="format-number(1 + @morerows, '#')" />
492
+ </xsl:attribute>
493
+ </xsl:if>
494
+ <xsl:if test="ancestor::table/preceding-sibling::*[1]/field/field_name[text()='table-cell-halign']">
495
+ <xsl:attribute name="align">
496
+ <xsl:value-of select="ancestor::table/preceding-sibling::*[1]/field/field_name[text()='table-cell-halign']/../field_body/paragraph" />
497
+ </xsl:attribute>
498
+ </xsl:if>
499
+ <xsl:if test="ancestor::table/preceding-sibling::*[1]/field/field_name[text()='table-cell-valign']">
500
+ <xsl:attribute name="valign">
501
+ <xsl:value-of select="ancestor::table/preceding-sibling::*[1]/field/field_name[text()='table-cell-valign']/../field_body/paragraph" />
502
+ </xsl:attribute>
503
+ </xsl:if>
504
+
505
+ <xsl:apply-templates />
506
+ </xsl:element>
507
+ </xsl:template>
508
+
509
+ <xsl:template match="inline">
510
+ <span>
511
+ <xsl:attribute name="class">
512
+ <xsl:value-of select="@classes" />
513
+ </xsl:attribute>
514
+ <xsl:apply-templates />
515
+ </span>
516
+ </xsl:template>
517
+
518
+ <xsl:template match="figure">
519
+ <figure>
520
+ <xsl:apply-templates />
521
+ </figure>
522
+ </xsl:template>
523
+
524
+ <xsl:template match="figure/caption">
525
+ <figcaption>
526
+ <xsl:apply-templates />
527
+ </figcaption>
528
+ </xsl:template>
529
+
530
+
531
+ <!-- Skip ReST comments -->
532
+ <xsl:template match="comment">
533
+ </xsl:template>
534
+
535
+ </xsl:stylesheet>
@@ -0,0 +1,61 @@
1
+ .highlight .hll { background-color: #ffffcc }
2
+ .highlight .c { color: #408090; font-style: italic } /* Comment */
3
+ .highlight .err { border: 1px solid #FF0000 } /* Error */
4
+ .highlight .k { color: #007020; font-weight: bold } /* Keyword */
5
+ .highlight .o { color: #666666 } /* Operator */
6
+ .highlight .cm { color: #408090; font-style: italic } /* Comment.Multiline */
7
+ .highlight .cp { color: #007020 } /* Comment.Preproc */
8
+ .highlight .c1 { color: #408090; font-style: italic } /* Comment.Single */
9
+ .highlight .cs { color: #408090; background-color: #fff0f0 } /* Comment.Special */
10
+ .highlight .gd { color: #A00000 } /* Generic.Deleted */
11
+ .highlight .ge { font-style: italic } /* Generic.Emph */
12
+ .highlight .gr { color: #FF0000 } /* Generic.Error */
13
+ .highlight .gh { color: #000080; font-weight: bold } /* Generic.Heading */
14
+ .highlight .gi { color: #00A000 } /* Generic.Inserted */
15
+ .highlight .go { color: #303030 } /* Generic.Output */
16
+ .highlight .gp { color: #c65d09; font-weight: bold } /* Generic.Prompt */
17
+ .highlight .gs { font-weight: bold } /* Generic.Strong */
18
+ .highlight .gu { color: #800080; font-weight: bold } /* Generic.Subheading */
19
+ .highlight .gt { color: #0040D0 } /* Generic.Traceback */
20
+ .highlight .kc { color: #007020; font-weight: bold } /* Keyword.Constant */
21
+ .highlight .kd { color: #007020; font-weight: bold } /* Keyword.Declaration */
22
+ .highlight .kn { color: #007020; font-weight: bold } /* Keyword.Namespace */
23
+ .highlight .kp { color: #007020 } /* Keyword.Pseudo */
24
+ .highlight .kr { color: #007020; font-weight: bold } /* Keyword.Reserved */
25
+ .highlight .kt { color: #902000 } /* Keyword.Type */
26
+ .highlight .m { color: #208050 } /* Literal.Number */
27
+ .highlight .s { color: #4070a0 } /* Literal.String */
28
+ .highlight .na { color: #4070a0 } /* Name.Attribute */
29
+ .highlight .nb { color: #007020 } /* Name.Builtin */
30
+ .highlight .nc { color: #0e84b5; font-weight: bold } /* Name.Class */
31
+ .highlight .no { color: #60add5 } /* Name.Constant */
32
+ .highlight .nd { color: #555555; font-weight: bold } /* Name.Decorator */
33
+ .highlight .ni { color: #d55537; font-weight: bold } /* Name.Entity */
34
+ .highlight .ne { color: #007020 } /* Name.Exception */
35
+ .highlight .nf { color: #06287e } /* Name.Function */
36
+ .highlight .nl { color: #002070; font-weight: bold } /* Name.Label */
37
+ .highlight .nn { color: #0e84b5; font-weight: bold } /* Name.Namespace */
38
+ .highlight .nt { color: #062873; font-weight: bold } /* Name.Tag */
39
+ .highlight .nv { color: #bb60d5 } /* Name.Variable */
40
+ .highlight .ow { color: #007020; font-weight: bold } /* Operator.Word */
41
+ .highlight .w { color: #bbbbbb } /* Text.Whitespace */
42
+ .highlight .mf { color: #208050 } /* Literal.Number.Float */
43
+ .highlight .mh { color: #208050 } /* Literal.Number.Hex */
44
+ .highlight .mi { color: #208050 } /* Literal.Number.Integer */
45
+ .highlight .mo { color: #208050 } /* Literal.Number.Oct */
46
+ .highlight .sb { color: #4070a0 } /* Literal.String.Backtick */
47
+ .highlight .sc { color: #4070a0 } /* Literal.String.Char */
48
+ .highlight .sd { color: #4070a0; font-style: italic } /* Literal.String.Doc */
49
+ .highlight .s2 { color: #4070a0 } /* Literal.String.Double */
50
+ .highlight .se { color: #4070a0; font-weight: bold } /* Literal.String.Escape */
51
+ .highlight .sh { color: #4070a0 } /* Literal.String.Heredoc */
52
+ .highlight .si { color: #70a0d0; font-style: italic } /* Literal.String.Interpol */
53
+ .highlight .sx { color: #c65d09 } /* Literal.String.Other */
54
+ .highlight .sr { color: #235388 } /* Literal.String.Regex */
55
+ .highlight .s1 { color: #4070a0 } /* Literal.String.Single */
56
+ .highlight .ss { color: #517918 } /* Literal.String.Symbol */
57
+ .highlight .bp { color: #007020 } /* Name.Builtin.Pseudo */
58
+ .highlight .vc { color: #bb60d5 } /* Name.Variable.Class */
59
+ .highlight .vg { color: #bb60d5 } /* Name.Variable.Global */
60
+ .highlight .vi { color: #bb60d5 } /* Name.Variable.Instance */
61
+ .highlight .il { color: #208050 } /* Literal.Number.Integer.Long */
@@ -0,0 +1,67 @@
1
+ /* This file left intentionally (almost) blank
2
+
3
+ Landslide always adds a print.css and a screen.css, but they
4
+ are not needed in impress.js, so this theme leaves them blank,
5
+ except for hiding some things you want to hide.
6
+
7
+ You can modify these files in your own fork, or you can add
8
+ css-files in the landslide configuration file.
9
+ See https://github.com/adamzap/landslide#presentation-configuration
10
+
11
+ */
12
+
13
+ .impress-supported .fallback-message,
14
+ .step .notes {
15
+ display: none;
16
+ }
17
+
18
+ .substep {
19
+ opacity: 0;
20
+ }
21
+
22
+ .substep.substep-visible {
23
+ opacity: 1;
24
+ transition: opacity 1s;
25
+ }
26
+
27
+
28
+ /* Help popup */
29
+
30
+ #impress-help {
31
+ background: none repeat scroll 0 0 rgba(0, 0, 0, 0.7);
32
+ color: #EEEEEE;
33
+ font-size: 60%;
34
+ left: 2em;
35
+ bottom: 2em;
36
+ width: 30em;
37
+ border-radius: 1em;
38
+ padding: 1em;
39
+ position: fixed;
40
+ right: 0;
41
+ text-align: center;
42
+ z-index: 100;
43
+ display: block;
44
+ font-family: Verdana, Arial, Sans;
45
+ }
46
+
47
+ #impress-help strong {
48
+ font-family: inherit;
49
+ font-size: 98%;
50
+ }
51
+
52
+ /* Small hack to prevent the help from showing in previews */
53
+ .impress-console #impress-help {
54
+ opacity: 0;
55
+ background-color: green;
56
+ }
57
+
58
+ /* Slide numbers */
59
+
60
+ div#slide-number
61
+ {
62
+ bottom: 1em;
63
+ font-size: 5vh;
64
+ position: absolute;
65
+ right: 2.5em;
66
+ text-align: right;
67
+ }