diff options
author | Florian Dold <florian.dold@gmail.com> | 2018-02-01 15:08:33 +0100 |
---|---|---|
committer | Florian Dold <florian.dold@gmail.com> | 2018-02-01 15:08:33 +0100 |
commit | 4db25c53116277c38ba1a916b88b8552ac90ebad (patch) | |
tree | e738f70d8a13b3d89f35ed9d16332ec830fb838e /doc | |
parent | a2610d1b21d735b1363b33ca3ec4fe053b5e8a35 (diff) |
fix doc build, include syntax highlighting
Diffstat (limited to 'doc')
-rw-r--r-- | doc/Makefile.am | 9 | ||||
-rw-r--r-- | doc/manual.texi | 4 | ||||
-rw-r--r-- | doc/syntax.texi | 44 |
3 files changed, 51 insertions, 6 deletions
diff --git a/doc/Makefile.am b/doc/Makefile.am index 94c0ef44..a755143e 100644 --- a/doc/Makefile.am +++ b/doc/Makefile.am @@ -1,13 +1,12 @@ all: manual.pdf manual.html manual.pdf: arch.pdf manual.texi - texi2pdf manual.texi -manual.html: arch.jpg manual.texi - makeinfo --html --no-split manual.texi +manual.html: arch.png manual.texi + arch.pdf: arch.dot dot -Tpdf arch.dot > arch.pdf -arch.jpg: arch.dot - dot -Tjpg arch.dot > arch.jpg +arch.png: arch.dot + dot -Tpng arch.dot > arch.png AM_MAKEINFOHTMLFLAGS = --no-split --css-ref=docstyle.css --css-ref=brown-paper.css diff --git a/doc/manual.texi b/doc/manual.texi index 861951d9..d8eeb0ec 100644 --- a/doc/manual.texi +++ b/doc/manual.texi @@ -4,6 +4,8 @@ @include version.texi @settitle The GNU Taler merchant backend operator tutorial @value{VERSION} +@include syntax.texi + @c Define a new index for options. @defcodeindex op @c Combine everything into one index (arbitrarily chosen to be the @@ -159,7 +161,7 @@ The Taler software stack for a merchant consists of four main components: The following image illustrates the various interactions of these key components: -@center @image{arch, 3in, 4in} +@center @image{arch, 3in} @cindex RESTful Basically, the backend provides the cryptographic protocol support, diff --git a/doc/syntax.texi b/doc/syntax.texi new file mode 100644 index 00000000..8aca39d8 --- /dev/null +++ b/doc/syntax.texi @@ -0,0 +1,44 @@ +@c Syntax highlighting for texinfo's HTML output + +@html +<script src="highlight.pack.js"></script> +<script> +var hls = []; +var syntaxAuto = true; +addEventListener("DOMContentLoaded", function() { + // Highlight blocks with fixed language + for (let x of hls) { + let next = x[0].nextElementSibling; + console.log("next", next); + let blocks = next.querySelectorAll("pre.example"); + for (let i = 0; i < blocks.length; i++) { + blocks[i].classList.add("language-" + x[1]); + hljs.highlightBlock(blocks[i]); + } + } + // auto-detect other blocks if not disabled + if (syntaxAuto) { + let blocks = document.querySelectorAll("pre.example"); + for (let i = 0; i < blocks.length; i++) { + hljs.highlightBlock(blocks[i]); + } + } +}); +</script> +@end html + +@macro setsyntax{lang} +@html +<script> +hls.push([document.currentScript, "\lang\"]); +</script> +@end html +@end macro + +@macro setsyntaxnoauto{} +@html +<script> +syntaxAuto = false; +</script> +@end html +@end macro |