Added check to avoid tabs in source files

This commit is contained in:
Antonin Descampe 2005-12-01 12:38:36 +00:00
parent 4458ef921c
commit 76016d509b
2 changed files with 36 additions and 0 deletions

34
CVSROOT/checktabs.sh Executable file
View File

@ -0,0 +1,34 @@
#!/bin/tcsh
#
# checkTabs checks source code for explicit TABS
# checks only files with the following extensions: .c, .cxx, .txx,
# exits with 0, if all commited files pass the test.
# exits with 1, if any one of the tests fails
#
# checkTabs can be run as a cvs commitinfo command.
# The following commitinfo line (without the #) will run the script
# ALL $CVSROOT/CVSROOT/checkTabs
#
set failed=0
#
# skip the first arg, the directory
foreach file ( $argv[2-] )
#
# select files with extentions .txx, .cxx, .h, .html, .htm
set match=`echo $file | egrep \[\.\]txx\$\|\[\.\]cxx\$\|\[\.\]h\$\|\[\.\]c\$`
if ( $match == "" ) continue;
set count=`grep -n " " /dev/null $file|wc -c`
set results=`expr $count \| 0`
if ( "$results" != "0" ) then
echo
"=========================================================="
grep -n " " /dev/null $file
echo ""
echo "$file has explicit TABSs."
echo "They must be converted to SPACES(2 per TAB) before you can commit."
echo
"=========================================================="
set failed=1
endif
end
exit $failed

View File

@ -13,3 +13,5 @@
#
# If the name "ALL" appears as a regular expression it is always used
# in addition to the first matching regex or "DEFAULT".
ALL $CVSROOT/CVSROOT/checktabs.sh