You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
36 lines
734 B
36 lines
734 B
#!/bin/bash |
|
# Usage: tc_pyformat <list of pyformat options> file1.py file2.py ... |
|
# |
|
# Most common option is -i, which makes formatting changes in place. |
|
set -u |
|
|
|
PF=pyformat |
|
PF_OPTIONS="--yapf --force_quote_type=single" |
|
PF_USER_OPTIONS="" |
|
|
|
if [[ -z "$(type -t ${PF})" ]]; then |
|
echo "Error: ${PF} not in your path." |
|
exit 1 |
|
fi |
|
|
|
while [[ "$1" == -* ]]; do |
|
PF_USER_OPTIONS+=" $1" |
|
shift |
|
done |
|
|
|
FILES=$* |
|
PF_OPTIONS+=${PF_USER_OPTIONS} |
|
|
|
for f in ${FILES}; do |
|
if [[ $f != *.py ]]; then |
|
echo "Error: File $f is not a python file" |
|
exit 2 |
|
elif [[ -x $f ]]; then |
|
${PF} ${PF_OPTIONS} $f |
|
elif [[ -f $f ]]; then |
|
${PF} --remove_shebang ${PF_OPTIONS} $f |
|
else |
|
echo "Error: File $f does not exist" |
|
exit 2 |
|
fi |
|
done
|
|
|