diff options
author | John MacFarlane <jgm@berkeley.edu> | 2016-01-08 12:15:31 -0800 |
---|---|---|
committer | John MacFarlane <jgm@berkeley.edu> | 2016-01-10 21:32:21 -0800 |
commit | 2413d436ed98866e9a70fbd4070a5da52dd97cd5 (patch) | |
tree | 0cacf842df8115e93e3de1ce9a1613cee13474be /README.md | |
parent | 1357f2859ecb128636ea7a764b70407dca4e4015 (diff) |
New format for spec tests, new lua formatter for specs.
The format for the spec examples has changed from
.
markdown
.
html
.
to
```````````````````````````````` example
markdown
.
html
````````````````````````````````
One advantage of this is that `spec.txt` becomes a valid
Markdown file.
`tests/spec_test.py` has been changed to use the new format.
The old `tools/makespec.py` has been replaced by a lua
program, `tools/make_spec.lua`, which uses the `lcmark` rock
(and indirectly libcmark). It can generate
html, latex, and commonmark versions of the spec.
Pandoc is no longer needed for the latex/PDF version.
And, since the new program uses the cmark API and operates
directly on the parse tree, we avoid certain bad results we
got with the regex replacements done by the python script.
Diffstat (limited to 'README.md')
-rw-r--r-- | README.md | 11 |
1 files changed, 6 insertions, 5 deletions
@@ -46,16 +46,17 @@ The spec The source of [the spec] is `spec.txt`. This is basically a Markdown file, with code examples written in a shorthand form: - . + ```````````````````````````````` example Markdown source . expected HTML output - . + ```````````````````````````````` To build an HTML version of the spec, do `make spec.html`. To build a -PDF version, do `make spec.pdf`. (Creating the HTML version requires -that [cmark](https://github.com/jgm/cmark) and `python3` be installed -and in your path. Creating a PDF also requires [pandoc] and LaTeX.) +PDF version, do `make spec.pdf`. For both versions, you must +have the lua rock `lcmark` installed: after installing lua and +lua rocks, `luarocks install lcmark`. For the PDF you must also +have xelatex installed. The spec is written from the point of view of the human writer, not the computer reader. It is not an algorithm---an English translation of |