diff options
Diffstat (limited to 'buildroot/share/git/mfdoc')
-rw-r--r-- | buildroot/share/git/mfdoc | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/buildroot/share/git/mfdoc b/buildroot/share/git/mfdoc new file mode 100644 index 0000000..ce21419 --- /dev/null +++ b/buildroot/share/git/mfdoc @@ -0,0 +1,38 @@ +#!/usr/bin/env bash +# +# mfdoc +# +# Start Jekyll in watch mode to work on Marlin Documentation and preview locally +# + +[[ $# == 0 ]] || { echo "Usage: `basename $0`" 1>&2 ; exit 1; } + +MFINFO=$(mfinfo "$@") || exit 1 +IFS=' ' read -a INFO <<< "$MFINFO" +ORG=${INFO[0]} +REPO=${INFO[2]} +BRANCH=${INFO[5]} + +[[ $ORG == "MarlinFirmware" && $REPO == "MarlinDocumentation" ]] || { echo "Wrong repository." 1>&2; exit 1; } + +opensite() { + URL="http://127.0.0.1:4000/" + OPEN=$(echo $(which gnome-open xdg-open open) | awk '{ print $1 }') + if [ -z "$OPEN" ]; then + echo "Can't find a tool to open the URL:" + echo $URL + else + echo "Opening preview site in the browser..." + "$OPEN" "$URL" + fi +} + +echo "Previewing MarlinDocumentation..." + +bundle exec jekyll serve --watch --incremental | { + while IFS= read -r line + do + [[ $line =~ "Server running" ]] && opensite + echo "$line" + done +} |