You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
39 lines
884 B
Bash
39 lines
884 B
Bash
#!/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() {
|
|
TOOL=$(which gnome-open xdg-open open | awk '{ print $1 }')
|
|
URL="http://127.0.0.1:4000/"
|
|
if [ -z "$TOOL" ]; then
|
|
echo "Can't find a tool to open the URL:"
|
|
echo $URL
|
|
else
|
|
echo "Opening preview site in the browser..."
|
|
"$TOOL" "$URL"
|
|
fi
|
|
}
|
|
|
|
echo "Previewing MarlinDocumentation..."
|
|
|
|
bundle exec jekyll serve --watch --incremental | {
|
|
while IFS= read -r line
|
|
do
|
|
[[ $line =~ "Server running" ]] && opensite
|
|
echo "$line"
|
|
done
|
|
}
|