bash-util/scripts/md-previewer

28 lines
781 B
Bash
Executable file

#!/usr/bin/env bash
DATADIR="$HOME/.local/share/md-previewer"
[ ! -d "$DATADIR" ] && mkdir -p "$DATADIR"
CSS="$DATADIR/pub.css"
if [ ! -e "$CSS" ]; then
pushd "$DATADIR"
wget https://github.com/manuelp/pandoc-stylesheet/raw/acac36b976966f76544176161ba826d519b6f40c/pub.css \
|| (echo "ERROR: Unable to fetch CSS!" >&2) || exit 1
popd
fi
case $(uname | tr '[:upper:]' '[:lower:]') in
darwin)
OPEN=open
;;
linux)
OPEN=xdg-open
;;
esac
command -v pandoc || (echo "ERROR: Pandoc not found!" >&2) || exit 1
HTML=$(sed 's/\.md\s*$/.html/' <<<"$1")
pandoc "$1" -s -c "$CSS" -o "$HTML"
command -v "$OPEN" || (echo "WARN: Can't open HTML with \"$OPEN\"! " \
"Please navigate to file://$(realpath "$HTML")" >&2)
"$OPEN" "$HTML"