#!/bin/sh # automatically configured by git-annex git annex pre-commit . # check grammar of staged Markdown files check_grammar() { # get list of staged Markdown files (added or modified) staged_files=$(git diff --cached --name-only --diff-filter=AM | grep '^content/.*\.md$') [ -z "$staged_files" ] && return 0 printf "Checking grammar of staged files.\n" language_tool_python --picky $staged_files printf "Proceed with commit? (y/n): " read yn < /dev/tty [ "$yn" == "${yn#[Yy]}" ] && return 1 return 0 } # run grammar check check_grammar if [ $? -ne 0 ]; then printf "Aborted.\n" exit 1 fi