2011-10-04 19:11:15 +02:00
|
|
|
|
2012-06-01 21:02:41 +02:00
|
|
|
Generate libwebp Container Spec Docs from Text Source
|
|
|
|
=====================================================
|
2011-10-04 19:11:15 +02:00
|
|
|
|
2011-10-04 21:03:53 +02:00
|
|
|
HTML generation requires kramdown [1], easily installed as a
|
|
|
|
rubygem [2]. Rubygems installation should satisfy dependencies
|
|
|
|
automatically.
|
|
|
|
|
|
|
|
[1]: http://kramdown.rubyforge.org/
|
|
|
|
[2]: http://rubygems.org/
|
|
|
|
|
2011-10-05 00:11:43 +02:00
|
|
|
HTML generation can then be done from the project root:
|
2011-10-04 21:03:53 +02:00
|
|
|
|
2011-10-05 00:11:43 +02:00
|
|
|
$ kramdown doc/webp-container-spec.txt --template doc/template.html > \
|
|
|
|
doc/output/webp-container-spec.html
|
2012-06-01 21:02:41 +02:00
|
|
|
|
|
|
|
kramdown can optionally syntax highlight code blocks, using CodeRay [3],
|
|
|
|
a dependency of kramdown that rubygems will install automatically. The
|
|
|
|
following will apply inline CSS styling, and then use perl to strip
|
|
|
|
line numbers and unwanted leading whitespace.
|
|
|
|
|
|
|
|
$ kramdown doc/webp-lossless-bitstream-spec.txt --template \
|
|
|
|
doc/template.html --coderay-css style | \
|
|
|
|
perl -p -e 's|<span class="no">.*?</span>\s||gm' > \
|
|
|
|
doc/output/webp-lossless-bitstream-spec.html
|
|
|
|
|
|
|
|
Note that code blocks must be immediately followed by a language
|
|
|
|
identifier for syntax highlighting to succeed. Example:
|
|
|
|
|
|
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
int block_index = (y >> size_bits) * block_xsize +
|
|
|
|
(x >> size_bits);
|
|
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
{:lang='c'}
|
|
|
|
|