55 lines
1.1 KiB
Bash
Executable File
55 lines
1.1 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
set -euo pipefail
|
|
IFS=$'\n\t'
|
|
|
|
DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
|
|
|
## This should be rarely if ever necessary, but here it is:
|
|
# source "$DIR/_wrflog.sh"
|
|
# wrflog before sourcing common funcs, I think i am in dir: $(pwd)
|
|
source "$DIR/_reformat-common.bash"
|
|
|
|
file="$1"
|
|
PROJECT_ROOT=$(project_root "$file")
|
|
export PROJECT_ROOT="$PROJECT_ROOT"
|
|
WF_ROOT=$(wf_root)
|
|
export WF_ROOT="$WF_ROOT"
|
|
|
|
## fixme use realpath or something on "$file"
|
|
|
|
file_type=$(sniff_file_type "$file")
|
|
|
|
export WOULD_REFORMAT=would_reformat
|
|
|
|
wrapper=$(choose_wrapper "$file_type")
|
|
|
|
set +e
|
|
out=$("$wrapper" "$file" 2>&1 >/dev/null)
|
|
retval="$?"
|
|
set -e
|
|
|
|
success_retval=0
|
|
would_reformat_retval=1
|
|
syntax_error_retval=2
|
|
|
|
if [[ "$retval" == "$success_retval" ]]; then
|
|
echo -n "would not change"
|
|
exit 0
|
|
elif [[ "$retval" == "$would_reformat_retval" ]]; then
|
|
echo -n "would change"
|
|
exit 1
|
|
elif [[ "$retval" == "$syntax_error_retval" ]]; then
|
|
echo -n "syntax error"
|
|
echo
|
|
echo "$out"
|
|
exit 2
|
|
else
|
|
echo -n "problem running reformatter"
|
|
|
|
exit 3
|
|
fi
|
|
|
|
echo -n "ok"
|
|
exit 0
|