diff --git a/scripts/md-previewer b/scripts/md-previewer new file mode 100755 index 0000000..e6f2f57 --- /dev/null +++ b/scripts/md-previewer @@ -0,0 +1,28 @@ +#!/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"