User:Manetta/Booklet-with-pagedjs.sh: Difference between revisions

From XPUB & Lens-Based wiki
No edit summary
No edit summary
 
Line 1: Line 1:
Variation of [[User:Manetta/Booklet.sh]], using Paged.js (instead of Weasyprint).


<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
Line 21: Line 22:
# ---
# ---
# create a local CSS stylesheet, in case it's not there yet
# create a local CSS stylesheet, in case it's not there yet
touch stylesheet.css
touch booklet-stylesheet.css


# ---
# ---
Line 39: Line 40:
--standalone \
--standalone \
     --css pagedjs.interface.css \
     --css pagedjs.interface.css \
--css stylesheet.css \
--css booklet-stylesheet.css \
--include-in-header=pagedjs.polyfill.js \
--include-in-header=pagedjs.polyfill.js \
$WIKIPAGE.html \
$WIKIPAGE.html \

Latest revision as of 16:42, 6 February 2024

Variation of User:Manetta/Booklet.sh, using Paged.js (instead of Weasyprint).

# ---
# store wiki page in variable
WIKIPAGE=$1

# ---
# download paged.js polyfill as JS file
curl https://unpkg.com/pagedjs@0.4.3/dist/paged.polyfill.js -o pagedjs.polyfill.js.tmp

echo "<script>" > pagedjs.polyfill.js
cat pagedyjs.polyfill.js.tmp >> pagedjs.polyfill.js
echo "</script>" >> pagedjs.polyfill.js

rm pagedjs.polyfill.js.tmp

# ---
# download paged.js's interface.css
curl https://gitlab.coko.foundation/pagedjs/interface-polyfill/-/raw/master/interface.css -o pagedjs.interface.css

# ---
# create a local CSS stylesheet, in case it's not there yet
touch booklet-stylesheet.css

# ---
# download wiki page as HTML
curl https://pzwiki.wdka.nl/mediadesign/$WIKIPAGE?action=render -o $WIKIPAGE.html

# ---
# replace the image src links in the HTML page
# - from links that start with: /mw-mediadesign\/
# - to links that start with: https://pzwiki.wdka.nl/mw-mediadesign/
sed -i 's/\/mw-mediadesign\//https:\/\/pzwiki.wdka.nl\/mw-mediadesign\//g' $WIKIPAGE.html

# ---
# rewrite the HTML file to a standalone page
# that includes the JS and CSS files
pandoc \
	--standalone \
    --css pagedjs.interface.css \
	--css booklet-stylesheet.css \
	--include-in-header=pagedjs.polyfill.js \
	$WIKIPAGE.html \
	--output $WIKIPAGE.html

# ---
# (this step is only required when working locally from your own computer)
# run a local server
# access your paged.js preview page at localhost:8000/wikipage.html
# echo ">>> Go to the page at: http://localhost:8000/$WIKIPAGE.html"
# python3 -m http.server