4 # Asciidoc configuration file.
21 ifdef::asciidoc7compatible[]
23 \^(.+?)\^=<sup>\1</sup>
26 endif::asciidoc7compatible[]
31 [pagebreak-blockmacro]
32 <div style="page-break-after:always"></div>
35 asciimath-style=template="asciimathblock",subs=[]
36 latexmath-style=template="latexmathblock",subs=[]
39 (?u)^(?P<name>audio|video)::(?P<target>\S*?)(\[(?P<attrlist>.*?)\])$=#
41 # Special characters are escaped in HTML math markup.
42 (?su)[\\]?(?P<name>asciimath|latexmath):(?P<subslist>\S*?)\[(?P<passtext>.*?)(?<!\\)\]=[specialcharacters]
43 (?u)^(?P<name>asciimath|latexmath)::(?P<subslist>\S*?)(\[(?P<passtext>.*?)\])$=#[specialcharacters]
45 [asciimath-inlinemacro]
48 [asciimath-blockmacro]
49 <div class="mathblock{role? {role}}"{id? id="{id}"}>
51 <div class="title">{title}</div>
56 <div class="mathblock{role? {role}}"{id? id="{id}"}>
58 <div class="title">{title}</div>
62 [latexmath-inlinemacro]
65 [latexmath-blockmacro]
66 <div class="mathblock{role? {role}}"{id? id="{id}"}>
68 <div class="title">{title}</div>
73 <div class="mathblock{role? {role}}"{id? id="{id}"}>
75 <div class="title">{title}</div>
80 <span class="image{role? {role}}">
81 <a class="image" href="{link}">
82 {data-uri%}<img src="{imagesdir=}{imagesdir?/}{target}" alt="{alt={target}}"{width? width="{width}"}{height? height="{height}"}{title? title="{title}"}>
83 {data-uri#}<img alt="{alt={target}}"{width? width="{width}"}{height? height="{height}"}{title? title="{title}"} src="data:image/{eval:os.path.splitext('{target}')[1][1:]};base64,
84 {data-uri#}{sys3:python -uc "import base64,sys; base64.encode(sys.stdin,sys.stdout)" < "{eval:os.path.join("{indir={outdir}}","{imagesdir=}","{target}")}"}">
89 <div class="imageblock{style? {style}}{role? {role}}"{id? id="{id}"}{align? style="text-align:{align};"}{float? style="float:{float};"}>
91 <a class="image" href="{link}">
92 {data-uri%}<img src="{imagesdir=}{imagesdir?/}{target}" alt="{alt={target}}"{width? width="{width}"}{height? height="{height}"}>
93 {data-uri#}<img alt="{alt={target}}"{width? width="{width}"}{height? height="{height}"} src="data:image/{eval:os.path.splitext('{target}')[1][1:]};base64,
94 {data-uri#}{sys:python -uc "import base64,sys; base64.encode(sys.stdin,sys.stdout)" < "{eval:os.path.join("{indir={outdir}}","{imagesdir=}","{target}")}"}">
97 <div class="title">{caption={figure-caption} {counter:figure-number}. }{title}</div>
101 <div class="audioblock{role? {role}}"{id? id="{id}"}>
102 <div class="title">{caption=}{title}</div>
103 <div class="content">
104 <audio src="{imagesdir=}{imagesdir?/}{target}"{autoplay-option? autoplay}{nocontrols-option! controls}{loop-option? loop}>
105 Your browser does not support the audio tag.
110 <div class="videoblock{role? {role}}"{id? id="{id}"}>
111 <div class="title">{caption=}{title}</div>
112 <div class="content">
113 <video src="{imagesdir=}{imagesdir?/}{target}"{width? width="{width}"}{height? height="{height}"}{poster? poster="{poster}"}{autoplay-option? autoplay}{nocontrols-option! controls}{loop-option? loop}>
114 Your browser does not support the video tag.
119 <div style="clear:both;"></div>
121 [indexterm-inlinemacro]
125 [indexterm2-inlinemacro]
127 # Single entry index term that is visible in the primary text flow.
130 [footnote-inlinemacro]
132 <span class="footnote"><br>[{0}]<br></span>
134 [footnoteref-inlinemacro]
135 # footnoteref:[<id>], create reference to footnote.
136 {2%}<span class="footnoteref"><br><a href="#_footnote_{1}">[{1}]</a><br></span>
137 # footnoteref:[<id>,<text>], create footnote with ID.
138 {2#}<span class="footnote" id="_footnote_{1}"><br>[{2}]<br></span>
140 [callout-inlinemacro]
142 <b><{index}></b>
146 <img src="{icon={iconsdir}/callouts/{index}.png}" alt="{index}">
149 <img alt="{index}" src="data:image/png;base64,
150 {sys:python -uc "import base64,sys; base64.encode(sys.stdin,sys.stdout)" < "{eval:os.path.join("{indir={outdir}}","{icon={iconsdir}/callouts/{index}.png}")}"}">
154 # Comment line macros.
155 [comment-inlinemacro]
156 {showcomments#}<br><span class="comment">{passtext}</span><br>
159 {showcomments#}<p><span class="comment">{passtext}</span></p>
161 [literal-inlinemacro]
163 <span class="monospaced">{passtext}</span>
167 list=<div class="ulist{style? {style}}{compact-option? compact}{role? {role}}"{id? id="{id}"}>{title?<div class="title">{title}</div>}<ul>|</ul></div>
172 # The start attribute is not valid XHTML 1.1 but all browsers support it.
173 list=<div class="olist{style? {style}}{compact-option? compact}{role? {role}}"{id? id="{id}"}>{title?<div class="title">{title}</div>}<ol class="{style}"{start? start="{start}"}>|</ol></div>
178 list=<div class="dlist{compact-option? compact}{role? {role}}"{id? id="{id}"}>{title?<div class="title">{title}</div>}<dl>|</dl></div>
181 term=<dt class="hdlist1{strong-option? strong}">|</dt>
185 [listtags-horizontal]
186 list=<div class="hdlist{compact-option? compact}{role? {role}}"{id? id="{id}"}>{title?<div class="title">{title}</div>}<table>{labelwidth?<col width="{labelwidth}%">}{itemwidth?<col width="{itemwidth}%">}|</table></div>
187 label=<td class="hdlist1{strong-option? strong}">|</td>
190 item=<td class="hdlist2">|</td>
191 text=<p style="margin-top: 0;">|</p>
194 list=<div class="qlist{style? {style}}{role? {role}}"{id? id="{id}"}>{title?<div class="title">{title}</div>}<ol>|</ol></div>
197 term=<p><em>|</em></p>
203 list=<div class="colist{style? {style}}{role? {role}}"{id? id="{id}"}>{title?<div class="title">{title}</div>}<ol>|</ol></div>
208 list=<div class="colist{style? {style}}{role? {role}}"{id? id="{id}"}>{title?<div class="title">{title}</div>}<table>|</table></div>
210 item=<tr><td><img src="{iconsdir}/callouts/{listindex}.png" alt="{listindex}"></td><td>|</td></tr>
213 item=<tr><td><img alt="{listindex}" src="data:image/png;base64, {sys:python -uc "import base64,sys; base64.encode(sys.stdin,sys.stdout)" < "{eval:os.path.join("{indir={outdir}}","{icon={iconsdir}/callouts/{listindex}.png}")}"}"></td><td>|</td></tr>
219 list=<div class="dlist{style? {style}}{role? {role}}"{id? id="{id}"}>{title?<div class="title">{title}</div>}<dl>|</dl></div>
226 [listtags-bibliography]
227 list=<div class="ulist{style? {style}}{role? {role}}"{id? id="{id}"}>{title?<div class="title">{title}</div>}<ul>|</ul></div>
233 emphasis=<em>{1?<span class="{1}">}|{1?</span>}</em>
234 strong=<strong>{1?<span class="{1}">}|{1?</span>}</strong>
235 monospaced=<span class="monospaced{1? {1}}">|</span>
236 singlequoted={lsquo}{1?<span class="{1}">}|{1?</span>}{rsquo}
237 doublequoted={ldquo}{1?<span class="{1}">}|{1?</span>}{rdquo}
238 unquoted={1?<span class="{1}">}|{1?</span>}
239 superscript=<sup>{1?<span class="{1}">}|{1?</span>}</sup>
240 subscript=<sub>{1?<span class="{1}">}|{1?</span>}</sub>
242 ifdef::deprecated-quotes[]
243 # Override with deprecated quote attributes.
244 emphasis={role?<span class="{role}">}<em{1,2,3? style="}{1?color:{1};}{2?background-color:{2};}{3?font-size:{3}em;}{1,2,3?"}>|</em>{role?</span>}
245 strong={role?<span class="{role}">}<strong{1,2,3? style="}{1?color:{1};}{2?background-color:{2};}{3?font-size:{3}em;}{1,2,3?"}>|</strong>{role?</span>}
246 monospaced=<span class="monospaced{role? {role}}"{1,2,3? style="}{1?color:{1};}{2?background-color:{2};}{3?font-size:{3}em;}{1,2,3?"}>|</span>
247 singlequoted={role?<span class="{role}">}{1,2,3?<span style="}{1?color:{1};}{2?background-color:{2};}{3?font-size:{3}em;}{1,2,3?">}{amp}#8216;|{amp}#8217;{1,2,3?</span>}{role?</span>}
248 doublequoted={role?<span class="{role}">}{1,2,3?<span style="}{1?color:{1};}{2?background-color:{2};}{3?font-size:{3}em;}{1,2,3?">}{amp}#8220;|{amp}#8221;{1,2,3?</span>}{role?</span>}
249 unquoted={role?<span class="{role}">}{1,2,3?<span style="{1?color:{1};}{2?background-color:{2};}{3?font-size:{3}em;}">}|{1,2,3?</span>}{role?</span>}
250 superscript={role?<span class="{role}">}<sup{1,2,3? style="}{1?color:{1};}{2?background-color:{2};}{3?font-size:{3}em;}{1,2,3?"}>|</sup>{role?</span>}
251 subscript={role?<span class="{role}">}<sub{1,2,3? style="}{1?color:{1};}{2?background-color:{2};}{3?font-size:{3}em;}{1,2,3?"}>|</sub>{role?</span>}
252 endif::deprecated-quotes[]
256 <a href="{name}:{target}">{0={name}:{target}}</a>
258 <a href="{name}:{target}">{0={name}:{target}}</a>
260 <a href="{name}:{target}">{0={name}:{target}}</a>
262 <a href="{name}:{target}">{0={name}:{target}}</a>
264 <a href="{name}:{target}">{0={name}:{target}}</a>
266 <a href="mailto:{target}">{0={target}}</a>
268 <a href="{target}">{0={target}}</a>
270 <a href="{name}:{target}">{0={target}}</a>
273 <a id="{target}"></a>
275 [anchor2-inlinemacro]
278 [anchor3-inlinemacro]
279 <a id="{1}"></a>[{1}]
282 <a href="#{target}">{0=[{target}]}</a>
285 <a href="#{1}">{2=[{1}]}</a>
287 # Special word substitution.
291 <span class="monospaced">{words}</span>
293 <strong>{words}</strong>
295 # Paragraph substitution.
297 <div class="paragraph{role? {role}}"{id? id="{id}"}>{title?<div class="title">{title}</div>}<p>
301 [admonitionparagraph]
302 template::[admonitionblock]
306 <div class="listingblock{role? {role}}"{id? id="{id}"}>
307 <div class="title">{caption=}{title}</div>
308 <div class="content monospaced">
315 <div class="literalblock{role? {role}}"{id? id="{id}"}>
316 <div class="title">{title}</div>
317 <div class="content monospaced">
324 <div class="sidebarblock{role? {role}}"{id? id="{id}"}>
325 <div class="content">
326 <div class="title">{title}</div>
331 <div class="openblock{role? {role}}"{id? id="{id}"}>
332 <div class="title">{title}</div>
333 <div class="content">
338 template::[openblock]
341 template::[quoteblock]
344 <div class="quoteblock{role? {role}}"{id? id="{id}"}>
345 <div class="title">{title}</div>
346 <div class="content">
349 <div class="attribution">
350 <em>{citetitle}</em>{attribution?<br>}
351 — {attribution}
355 <div class="verseblock{role? {role}}"{id? id="{id}"}>
356 <div class="title">{title}</div>
357 <pre class="content">
360 <div class="attribution">
361 <em>{citetitle}</em>{attribution?<br>}
362 — {attribution}
366 <div class="exampleblock{role? {role}}"{id? id="{id}"}>
367 <div class="title">{caption={example-caption} {counter:example-number}. }{title}</div>
368 <div class="content">
373 <div class="admonitionblock{role? {role}}"{id? id="{id}"}>
376 {data-uri%}{icons#}<img src="{icon={iconsdir}/{name}.png}" alt="{caption}">
377 {data-uri#}{icons#}<img alt="{caption}" src="data:image/png;base64,
378 {data-uri#}{icons#}{sys:python -uc "import base64,sys; base64.encode(sys.stdin,sys.stdout)" < "{eval:os.path.join("{indir={outdir}}","{icon={iconsdir}/{name}.png}")}"}">
379 {icons%}<div class="title">{caption}</div>
382 <div class="title">{title}</div>
390 colspec=<col{autowidth-option! style="width:{colpcwidth}%;"}>
392 headdata=<th class="tableblock halign-{halign=left} valign-{valign=top}" {colspan@1::colspan="{colspan}" }{rowspan@1::rowspan="{rowspan}" }>|</th>
393 bodydata=<td class="tableblock halign-{halign=left} valign-{valign=top}" {colspan@1::colspan="{colspan}" }{rowspan@1::rowspan="{rowspan}" }>|</td>
394 paragraph=<p class="tableblock">|</p>
397 paragraph=<p class="tableblock header">|</p>
400 paragraph=<p class="tableblock"><em>|</em></p>
403 paragraph=<p class="tableblock"><strong>|</strong></p>
405 [tabletags-monospaced]
406 paragraph=<p class="tableblock monospaced">|</p>
409 bodydata=<td class="tableblock halign-{halign=left} valign-{valign=top}" {colspan@1::colspan="{colspan}" }{rowspan@1::rowspan="{rowspan}" }><div class="verse">|</div></td>
413 bodydata=<td class="tableblock halign-{halign=left} valign-{valign=top}" {colspan@1::colspan="{colspan}" }{rowspan@1::rowspan="{rowspan}" }><div class="literal monospaced"><pre>|</pre></div></td>
417 bodydata=<td class="tableblock halign-{halign=left} valign-{valign=top}" {colspan@1::colspan="{colspan}" }{rowspan@1::rowspan="{rowspan}" }><div>|</div></td>
421 <table class="tableblock frame-{frame=all} grid-{grid=all}{role? {role}}"{id? id="{id}"}
423 margin-left:{align@left:0}{align@center|right:auto}; margin-right:{align@left|center:auto}{align@right:0};
425 {autowidth-option%}width:{tablepcwidth}%;
426 {autowidth-option#}{width#style=width:{tablepcwidth}%;}
428 <caption class="title">{caption={table-caption} {counter:table-number}. }{title}</caption>
441 #--------------------------------------------------------------------
442 # Deprecated old table definitions.
446 # Screen width in pixels.
450 [old_tabledef-default]
452 colspec=<col style="width:{colwidth}{pageunits};" />
454 headdata=<th class="tableblock halign-{colalign=left}">|</th>
455 footdata=<td class="tableblock halign-{colalign=left}">|</td>
456 bodydata=<td class="tableblock halign-{colalign=left}">|</td>
459 <table class="tableblock frame-{frame=all} grid-{grid=all}"{id? id="{id}"}>
460 <caption class="title">{caption={table-caption}}{title}</caption>
468 <tbody style="vertical-align:top;">
473 # End of deprecated old table definitions.
474 #--------------------------------------------------------------------
477 <h{level@0:1}{level@1:2}{level@2:3}{level@3:4}{level@4:5}{id? id="{id}"} class="float">{title}</h{level@0:1}{level@1:2}{level@2:3}{level@3:4}{level@4:5}>
480 # Untitled elements between header and first section title.
482 <div class="sectionbody">
489 <h1{id? id="{id}"}>{title}</h1>
493 <div class="sect1{style? {style}}{role? {role}}">
494 <h2{id? id="{id}"}>{numbered?{sectnum} }{title}</h2>
495 <div class="sectionbody">
501 <div class="sect2{style? {style}}{role? {role}}">
502 <h3{id? id="{id}"}>{numbered?{sectnum} }{title}</h3>
507 <div class="sect3{style? {style}}{role? {role}}">
508 <h4{id? id="{id}"}>{numbered?{sectnum} }{title}</h4>
513 <div class="sect4{style? {style}}{role? {role}}">
514 <h5{id? id="{id}"}>{title}</h5>
519 <div class="sect1{style? {style}}{role? {role}}">
520 <h2{id? id="{id}"}>{numbered?{sectnum} }{appendix-caption} {counter:appendix-number:A}: {title}</h2>
521 <div class="sectionbody">
528 <div id="toctitle">{toc-title}</div>
529 <noscript><p><b>JavaScript must be enabled in your browser to display the table of contents.</b></p></noscript>
534 <html lang="{lang=en}">
536 <meta http-equiv="Content-Type" content="text/html; charset={encoding}">
537 <meta name="generator" content="AsciiDoc {asciidoc-version}">
538 <meta name="description" content="{description}">
539 <meta name="keywords" content="{keywords}">
540 <title>{title}</title>
541 {title%}<title>{doctitle=}</title>
543 <link rel="stylesheet" href="{stylesdir=.}/{theme=asciidoc}.css" type="text/css">
544 {doctype-manpage}<link rel="stylesheet" href="{stylesdir=.}/{theme=asciidoc}-manpage.css" type="text/css">
545 ifdef::pygments[<link rel="stylesheet" href="{stylesdir=.}/pygments.css" type="text/css">]
546 ifdef::toc2[<link rel="stylesheet" href="{stylesdir=.}/toc2.css" type="text/css" />]
547 <link rel="stylesheet" href="{stylesdir=.}/{stylesheet}" type="text/css">
550 <style type="text/css">
551 include1::{stylesdir=./stylesheets}/{theme=asciidoc}.css[]
552 ifdef::doctype-manpage[]
553 include1::{stylesdir=./stylesheets}/{theme=asciidoc}-manpage.css[]
554 endif::doctype-manpage[]
556 include1::{stylesdir=./stylesheets}/pygments.css[]
559 include1::{stylesdir=./stylesheets}/toc2.css[]
561 include1::{stylesheet}[]
564 ifndef::disable-javascript[]
566 <script type="text/javascript" src="{scriptsdir=.}/asciidoc.js"></script>
567 <script type="text/javascript">
568 #TODO: Escape not necessary in HTML5?
569 # Escape as CDATA to pass validators.
571 asciidoc.install({toc,toc2?{toclevels}});
576 <script type="text/javascript">
577 # Escape as CDATA to pass validators.
579 include1::{scriptsdir=./javascripts}/asciidoc.js[]
580 asciidoc.install({toc,toc2?{toclevels}});
584 endif::disable-javascript[]
587 <script type="text/javascript" src="{scriptsdir=.}/ASCIIMathML.js"></script>
590 <script type="text/javascript">
591 # Escape as CDATA to pass validators.
593 include1::{scriptsdir=./javascripts}/ASCIIMathML.js[]
600 <script type="text/javascript" src="{scriptsdir=.}/LaTeXMathML.js"></script>
603 <script type="text/javascript">
604 # Escape as CDATA to pass validators.
606 include1::{scriptsdir=./javascripts}/LaTeXMathML.js[]
611 {docinfo1,docinfo2#}{include:{docdir}/docinfo.html}
612 {docinfo,docinfo2#}{include:{docdir}/{docname}-docinfo.html}
614 <body class="{doctype}"{max-width? style="max-width:{max-width}"}>
615 # Article, book header.
616 ifndef::doctype-manpage[]
618 ifndef::notitle[<h1>{doctitle}</h1>]
620 <span id="author">{author}</span><br>
621 <span id="email" class="monospaced"><<a href="mailto:{email}">{email}</a>></span><br>
622 <span id="revnumber">version {revnumber}{revdate?,}</span>
623 <span id="revdate">{revdate}</span>
624 <br><span id="revremark">{revremark}</span>
626 ifdef::toc,toc2[{template:toc}]
628 endif::doctype-manpage[]
630 ifdef::doctype-manpage[]
633 {doctitle} Manual Page
635 ifdef::toc,toc2[{template:toc}]
636 <h2>{manname-title}</h2>
637 <div class="sectionbody">
643 endif::doctype-manpage[]
648 {disable-javascript%<div id="footnotes"><hr></div>}
650 <div id="footer-text">
651 template::[footer-text]
654 <div id="footer-badges">
656 Valid <a href="http://validator.w3.org/check?uri=referer">XHTML</a>
657 and <a href="http://jigsaw.w3.org/css-validator/check/referer">CSS</a>.
660 <a href="http://validator.w3.org/check?uri=referer">
661 <img style="border:0;width:88px;height:31px"
662 src="http://www.w3.org/Icons/valid-xhtml11-blue"
663 alt="Valid XHTML 1.1" height="31" width="88">
665 <a href="http://jigsaw.w3.org/css-validator/">
666 <img style="border:0;width:88px;height:31px"
667 src="http://jigsaw.w3.org/css-validator/images/vcss-blue"
670 <a href="http://www.mozilla.org/products/firefox/">
671 <img style="border:none; width:110px; height:32px;"
672 src="http://www.spreadfirefox.com/community/images/affiliates/Buttons/110x32/safer.gif"
682 ifdef::doctype-manpage[]
685 endif::doctype-manpage[]