Compare commits

..

2 Commits

Author SHA1 Message Date
Alex Selimov
e8fb49cfb4 Make commit fail if formatter fails 2024-01-16 13:27:42 -05:00
Alex Selimov
5070183726 Add intelliJ linter and only run formatters when files are added that need to be formatted 2024-01-16 10:06:03 -05:00

View File

@ -7,14 +7,36 @@ if hash black 2>/dev/null; then
# Find all of the .py files in the current git repo, apply black formatting to them and then # Find all of the .py files in the current git repo, apply black formatting to them and then
# add them again # add them again
git diff --cached --name-status | \ cached_files=$(git diff --cached --name-status | \
grep -v '^D' | grep '\.py' | \ grep -v '^D' | grep '\.py' | \
sed 's/[A-Z][ \t]*//' | \ sed 's/[A-Z][ \t]*//')
xargs black 2>&1| \
grep '^reformatted' | \ # Only run if we have cached python files
sed 's/reformatted[ \t]//' | \ if [ "$cached_files" ]; then
xargs git add black --line-length 100 $cached_files \
&& git add $cached_files \
|| exit 1
fi
else else
"Black isn't installed so not formatting python code" echo "Black isn't installed so not formatting python code"
fi
# Only run if intellij is set up
if hash idea.sh 2>/dev/null; then
# Apply intellij
cached_files=$(git diff --cached --name-status | \
grep -v '^D' | grep '\.java' | \
sed 's/[A-Z][ \t]*//')
if [ "$cached_files" ]; then
idea.sh format -allowDefaults $cached_files 2>/dev/null \
&& git add $cached_files \
|| exit 1
fi
else
echo "intellij isn't installed so not formatting java code"
fi fi