Files
would-reformat/do-reformat.sh
Michael Wolf 2eb0d7b9b0 Teach it about isort in addition to black
The design of this is starting to break down now and will need to be reworked
a bit.
2021-03-15 10:37:38 -06:00

45 lines
901 B
Bash
Executable File

#!/bin/bash
set -uo pipefail
IFS=$'\n\t'
DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
source "$DIR/_reformat-common.sh"
file="$1"
file_type=$(sniff_file_type $file)
if [[ $file_type == "javascript" || \
$file_type == "vue" || \
$file_type == "css" || \
$file_type == "typescript" || \
$file_type == "php" || \
$file_type == "html" || \
$file_type == "jsx" || \
$file_type == "tsx" || \
$file_type == "css" || \
$file_type == "scss" || \
$file_type == "sh" ]]; then
out=$(npx prettier --write $file)
retval="$?"
success_retval=0
elif [[ $file_type == "python" ]]; then
out=$(pipx run black $file 2>/dev/null && pipx run isort $file 2>/dev/null)
retval="$?"
success_retval=0
else
echo -n "ignoring"
exit 0
fi
if [[ x"$retval" == x"$success_retval" ]]; then
echo "$out"
exit 0
else
exit $retval
fi
exit 0