diff options
Diffstat (limited to 'git-clang-format.sh')
-rwxr-xr-x | git-clang-format.sh | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/git-clang-format.sh b/git-clang-format.sh new file mode 100755 index 0000000..da6e6d8 --- /dev/null +++ b/git-clang-format.sh @@ -0,0 +1,12 @@ +#!/bin/sh +cd "$(dirname "$0")" +CLANG_FORMAT="$(find $(echo "$PATH" | tr ':' ' ') -name 'git-clang-format-*' | sort | tail -n1 )" +if [ -z "$CLANG_FORMAT" ]; then + echo >&2 'Could not find a clang-format to use. Is the package clang-format installed?' + exit 1 +fi +git "$(basename "$CLANG_FORMAT" | cut -d'-' -f 2-)" --diff "$@" | \ + sed "s#+/\*\}\}\}\*/#+ /*}}}*/#" | \ + grep -v '^clang-format did not modify any files$' | \ + grep -v '^no modified files to format$' | \ + patch -p1 |