-#!/bin/sh
-#
-# Hook used to indent all source files before commiting
-#
-
-# indent / format file by type
-indent() {
- # getting against as the current commit
- if git rev-parse --verify HEAD >/dev/null 2>&1
- then
- local against=HEAD
- else
- # Initial commit: diff against an empty tree object
- local against=4b825dc642cb6eb9a060e54bf8d69288fbee4904
- fi
-
- # loop on modified files
- git diff --cached --name-only $against | while read file;
- do
- local ext=$(expr "$file" : ".*\(\..*\)")
- case $ext in
- .R|.r)
- __indent_R;
- ;;
- esac
- done
-}
-
-# Indent the file with `indent' if this is a R file
-__indent_R() {
- if test ! -f $file
- then
- return;
- fi
-
- echo "Indenting " $file
- echo "library(formatR);formatR::tidy_source('$file',comment=TRUE,blank=TRUE,
- arrow=TRUE,brace.newline=TRUE,indent=2,width.cutoff=80,file='$file')" | R --slave
- git add "$file"
-}
-
-indent