File: generateDoc

package info (click to toggle)
faust 0.9.95~repack1-2
  • links: PTS, VCS
  • area: main
  • in suites: stretch
  • size: 164,732 kB
  • ctags: 18,777
  • sloc: cpp: 90,427; sh: 6,116; java: 4,501; objc: 4,428; ansic: 3,301; makefile: 1,298; ruby: 950; yacc: 511; xml: 398; lex: 218; python: 136
file content (48 lines) | stat: -rwxr-xr-x 3,341 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
#!/bin/bash

LIBFOLDER="libraries"
DOCFOLDER="documentation"
PLATFORM=$(uname)

for p in $@; do
	if [ $p = "-help" ] || [ $p = "-h" ]; then
		echo "Just run it! It will automatically look for all the .lib files and generate the corresponding documentation in /doc."
		exit 1
	fi
done

FILES="analyzer.lib basic.lib compressor.lib delay.lib demo.lib envelope.lib filter.lib hoa.lib math.lib misceffect.lib   miscoscillator.lib noise.lib phafla.lib pm.lib reverb.lib route.lib signal.lib spat.lib synth.lib vaeffect.lib"

mkdir tmp
mkdir tmp/title

echo "% Faust Standard Libraries" > tmp/title/title.md

for p in $FILES; do
	(faust2md "$LIBFOLDER/$p" > tmp/${p%.lib}.md) || exit
done

# Generate the raw html version of the doc
(pandoc --toc --standalone "$LIBFOLDER/README.md" "$LIBFOLDER/doc/standardFunctions.md" tmp/*.md -o "$DOCFOLDER/library.html") || exit

# Generate the PDF doc
(pandoc --toc tmp/title/title.md "$LIBFOLDER/README.md" "$LIBFOLDER/doc/standardFunctions.md" tmp/*.md -s -o "$DOCFOLDER/library.pdf") || exit

# Reformatting the html file with the right template
if [ $PLATFORM = "Darwin" ]; then
	(sed -i "" "s/<title>/<title>Faust Libraries Documentation/g" "$DOCFOLDER/library.html") || exit
	(sed -i "" "s/<style type=\"text\/css\">code{white-space: pre;}<\/style>/<\/style><link rel=\"stylesheet\" href=\"http:\/\/maxcdn.bootstrapcdn.com\/bootstrap\/3.3.7\/css\/bootstrap.min.css\"><script src=\"https:\/\/ajax.googleapis.com\/ajax\/libs\/jquery\/1.12.4\/jquery.min.js\">\n<\/script><script src=\"http:\/\/maxcdn.bootstrapcdn.com\/bootstrap\/3.3.7\/js\/bootstrap.min.js\"><\/script>/g" "$DOCFOLDER/library.html") || exit 
	(sed -i "" "s/<body>/<div class=\"container\"><div class=\"row\" style=\"height: 100vh;\">/g" "$DOCFOLDER/library.html") || exit  
	(sed -i "" "s/<\/body>/<\/div><\/div><\/body>/g" "$DOCFOLDER/library.html") || exit
	(sed -i "" "s/<div id=\"TOC\">/<div class=\"col-sm-4\" id=\"TOC\" style=\"height: 100%;overflow: scroll;\">/g" "$DOCFOLDER/library.html") || exit
	(sed -i "" "s/<h1 id=\"faust-libraries\">Faust Libraries<\/h1>/<div class=\"col-sm-8\" style=\"height: 100%;overflow-y: scroll\"><h1 id=\"faust-libraries\">Faust Libraries<\/h1>/g" "$DOCFOLDER/library.html") || exit
else
	(sed -i 's/<title>/<title>Faust Libraries Documentation/g' "$DOCFOLDER/library.html") || exit
	(sed -i 's/<style type=\"text\/css\">code{white-space: pre;}<\/style>/<\/style><link rel=\"stylesheet\" href=\"http:\/\/maxcdn.bootstrapcdn.com\/bootstrap\/3.3.7\/css\/bootstrap.min.css\"><script src=\"https:\/\/ajax.googleapis.com\/ajax\/libs\/jquery\/1.12.4\/jquery.min.js\">\n<\/script><script src=\"http:\/\/maxcdn.bootstrapcdn.com\/bootstrap\/3.3.7\/js\/bootstrap.min.js\"><\/script>/g' "$DOCFOLDER/library.html") || exit 
	(sed -i 's/<body>/<div class=\"container\"><div class=\"row\" style=\"height: 100vh;\">/g' "$DOCFOLDER/library.html") || exit  
	(sed -i 's/<\/body>/<\/div><\/div><\/body>/g' "$DOCFOLDER/library.html") || exit
	(sed -i 's/<div id=\"TOC\">/<div class=\"col-sm-4\" id=\"TOC\" style=\"height: 100%;overflow: scroll;\">/g' "$DOCFOLDER/library.html") || exit
	(sed -i 's/<h1 id=\"faust-libraries\">Faust Libraries<\/h1>/<div class=\"col-sm-8\" style=\"height: 100%;overflow-y: scroll\"><h1 id=\"faust-libraries\">Faust Libraries<\/h1>/g' "$DOCFOLDER/library.html") || exit
fi
 
rm -r tmp