mirror of https://github.com/Wilfred/difftastic/
32 lines
514 B
Bash
32 lines
514 B
Bash
#!/bin/bash
|
|
|
|
set -e
|
|
|
|
while [ $# -gt 0 ]; do
|
|
case "$1" in
|
|
--force)
|
|
FORCE=1
|
|
shift
|
|
;;
|
|
*)
|
|
break
|
|
;;
|
|
esac
|
|
done
|
|
|
|
mkdir -p tmp
|
|
|
|
CACHED_SHA=$(cat 'tmp/grammar.js.sha' 2>/dev/null || true)
|
|
GRAMMAR_SHA=$(sha256sum 'grammar.js' | cut -d' ' -f1)
|
|
|
|
# Exit if grammar.js hasn't changed since last time we generated parser.
|
|
if [ "$FORCE" != 1 ] && [ "$CACHED_SHA" = "$GRAMMAR_SHA" ]; then
|
|
exit
|
|
fi
|
|
|
|
printf "Generating parser...\n"
|
|
|
|
npx tree-sitter generate
|
|
|
|
printf "$GRAMMAR_SHA" >'tmp/grammar.js.sha'
|