1
0
Fork 0
mirror of https://git.sr.ht/~seirdy/seirdy.one synced 2024-09-19 20:02:10 +00:00
seirdy.one/scripts/xhtmlize.sh
Rohan Kumar 429dcda2cd
Minify feeds with xmllint
This works particularly well on my Atom feeds with embedded XHTML.
2023-11-25 19:05:53 -08:00

24 lines
674 B
Bash

#!/bin/sh
# takes an arg for the output dir.
# Runs xhtmlize-single-file.sh on every single html file in the output dir.
# exits if xhtmlize-single-file fails.
# no pipefail here since there are no pipes.
set -e -u
output_dir="$1"
script_dir="$(dirname "$0")"
{
printf '\t' && sed -e '7q;d' "$output_dir/index.html"
} >"$output_dir/tmp.css"
cleanup() {
rm -f "$output_dir/tmp.css"
}
trap cleanup EXIT
export XMLLINT_INDENT=' '
export OUTPUT_DIR="$output_dir"
find "$output_dir" -type f -name '*.html' -exec sh "$script_dir/xhtmlize-single-file.sh" {} \;
find "$output_dir" -type f -name '*.xml' -exec xmllint --noblanks --encode UTF-8 --noent {} --output {} \;
# done