-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathbuild.sh
50 lines (42 loc) · 1.39 KB
/
build.sh
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
49
50
set -e
# Add modifications
## Version
VERSION=$(git describe --tags)
sed -i -e "s/<VERSION>/$VERSION/g" metadata.yaml
readarray -d ' ' ORDER < ORDER
## Add newline at end of each file
echo ${ORDER[@]:0:12} | xargs sed -i -e '$a\\n'
## Add a page break after each file
echo ${ORDER[@]:0:12} | xargs sed -i -e '$a<div style="page-break-after: always;"></div>'
# Convert to HTML
cat ORDER | pandoc \
-V toc-title='Table of contents' \
--embed-resources \
--standalone \
--css=assets/style.css \
--toc \
--toc-depth 1 \
-t html5 \
--metadata-file=metadata.yaml \
-s `xargs` \
-o build/html/rendeiro-lab_manual.html
# Add content inside 'container'
sed 's/<body>/<body><div class="container">/g' -i build/html/rendeiro-lab_manual.html
sed 's/<\/body>/<\/div><\/body>/g' -i build/html/rendeiro-lab_manual.html
# Convert to PDF
wkhtmltopdf \
--enable-internal-links \
--enable-local-file-access \
--header-center "Rendeiro lab manual" \
--header-font-size 8 \
--footer-center "[page]/[topage]" \
--footer-font-size 8 \
build/html/rendeiro-lab_manual.html \
build/pdf/rendeiro-lab_manual.pdf
# Undo modifications
## Remove version
sed -i -e "s/$VERSION/<VERSION>/g" metadata.yaml
## Delete last 3 lines of each file
echo ${ORDER[@]:0:12} | xargs sed -i -e '$ d'
echo ${ORDER[@]:0:12} | xargs sed -i -e '$ d'
echo ${ORDER[@]:0:12} | xargs sed -i -e '$ d'