75 lines
2.7 KiB
Bash
75 lines
2.7 KiB
Bash
# Documentation generation helpers
|
|
|
|
# Generates LaTeX book and PDF
|
|
function generateBook()
|
|
{
|
|
# Run twice because latex
|
|
pandoc -F pandoc-plot -M plot-configuration=pandoc-plot-book.conf -f markdown --top-level-division=part --number-sections --toc docs_src/00-bookindex.md docs_src/01-dedication.md docs_src/introduction/*.md docs_src/language/*.md docs_src/implementation/* \
|
|
-s -t latex --highlight-style kate
|
|
pandoc -F pandoc-plot -f markdown --top-level-division=part --number-sections --toc docs_src/00-bookindex.md docs_src/01-dedication.md docs_src/introduction/*.md docs_src/language/*.md docs_src/implementation/* \
|
|
-s -t latex --highlight-style kate | pdflatex > /dev/null
|
|
mv texput.pdf book.pdf
|
|
}
|
|
|
|
# Generates updated markdown based on sources
|
|
function generateMarkdown()
|
|
{
|
|
# Site docs
|
|
#
|
|
# Copied over
|
|
siteDocs="$(ls docs_src/*.md) $(ls docs_src/journal/*) docs_src/logo.png"
|
|
for doc in $siteDocs
|
|
do
|
|
echo "Converting markdown for doc '$doc'..."
|
|
# pandoc -F pandoc-plot -M plot-configuration=pandoc-plot.conf -f gfm -t gfm "$doc" -o "docs/$(echo $doc | cut -b 9-)"
|
|
cp -r $doc "docs/$(echo $doc | cut -b 9-)"
|
|
|
|
echo "Converting markdown for doc '$doc'... [done]"
|
|
done
|
|
|
|
# Documentation docs
|
|
#
|
|
# From markdown, filtered through pandoc-plot, to markdown
|
|
docs="$(ls docs_src/introduction/*.md) $(ls docs_src/language/*.md $(ls docs_src/implementation/*.md))"
|
|
for doc in $docs
|
|
do
|
|
echo "Converting markdown for doc '$doc'..."
|
|
|
|
outputFile="docs/$(echo $doc | cut -b 9-)"
|
|
|
|
pandoc -F pandoc-plot -M plot-configuration=pandoc-plot.conf -f markdown -t gfm "$doc" -o "$outputFile"
|
|
|
|
echo "$(cat $outputFile | sed -e s/docs\\//\\/projects\\/tlang\\//)" > "$outputFile"
|
|
cat "$outputFile"
|
|
# break
|
|
|
|
echo "Converting markdown for doc '$doc'... [done]"
|
|
done
|
|
}
|
|
|
|
# Generates a single page AsciiDoc document and converts to HTML then
|
|
function doAsciiDoc()
|
|
{
|
|
pandoc -F pandoc-plot -M plot-configuration=pandoc-plot-book.conf -f markdown --top-level-division=part --number-sections --toc docs_src/00-bookindex.md docs_src/01-dedication.md docs_src/introduction/*.md docs_src/language/*.md docs_src/implementation/* -s -t asciidoc --highlight-style kate > book.ad
|
|
asciidoc -d book book.ad
|
|
mv book.html tlang.html
|
|
}
|
|
|
|
# Generate graphs
|
|
function generateGraphs()
|
|
{
|
|
circoGraphs="$(ls docs/graphs/*.circo)"
|
|
for graph in $circoGraphs
|
|
do
|
|
cat $graph | circo -Tpng -o$graph.png
|
|
cat $graph | circo -Tsvg -o$graph.svg
|
|
done
|
|
|
|
dotGraphs="$(ls docs/graphs/*.dot)"
|
|
for graph in $dotGraphs
|
|
do
|
|
cat $graph | dot -Tpng -o$graph.png
|
|
cat $graph | dot -Tsvg -o$graph.svg
|
|
done
|
|
}
|