#!/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