dotfiles/scripts/groff-img
2023-09-11 12:09:04 -06:00

20 lines
639 B
Bash
Executable file

#!/bin/sh
# Replace .IMG commands for proper
# .PDFPIC and convert given image files.
FILE="$1"
OUTPUT="$(cat "$FILE")"
format() {
LINE="$1"
IMAGE="$(echo "$LINE" | cut -d '"' -f 2)"
[ "$IMAGE" != "${IMAGE%%.*}.pdf" ] && ! [ -e "${IMAGE%%.*}.pdf" ] && convert -quiet "$IMAGE" "${IMAGE%%.*}.pdf"
echo "$LINE" | sed 's|^.IMG|.PDFPIC|' | sed "s|$IMAGE|${IMAGE%%.*}.pdf|"
}
for i in $(seq $(grep '^.IMG\s' "$FILE" | wc -l)) ; do
LINE="$(echo "$OUTPUT" | grep '^.IMG\s' | head -n 1)"
[ -n "$LINE" ] && NEW_LINE="$(format "$LINE")" && OUTPUT=$(echo "$OUTPUT" | sed "s|$LINE|$NEW_LINE|") || break
done
echo "$OUTPUT"