完成品
コミットメッセージ編集後に、そのコミットメッセージを翻訳させて、
英文的におかしくないかを簡易的に確認できる
準備
必要なパッケージ入れる
$ brew install translate-shell
これを入れると、
$ trans en:ja "hello"
で翻訳結果が表示されるようになる
プロジェクトに適用
以下を.git/hooks/commit-msg
に設置
# !/bin/sh
txt=`cat "$1" | grep -v '^#' | sed '/^$/d' | head -n 1`
# git now の機能でのコミットならスルー
if [ "`echo "$txt" | grep 'from now'`" ] ; then
exit 0;
fi
echo '翻訳前:'
echo "$txt"
echo "\n翻訳後:"
trans en:ja -b "$txt"
exec < /dev/tty # これをしないと git hook では read コマンドが使えない
while true; do
read -p 'これでいいですか? [y/N]: ' Answer
case $Answer in
'' | [Yy]* )
exit 0;
break;
;;
[Nn]* )
exit 1;
break;
;;
* )
echo "y/Nを入力してください [y/N]: "
esac
done;
その後
$ chmod +x .git/hooks/commit-msg
参考
nodeのプロジェクトでgit-hookを用いたい場合はgit-hooks-jsやhuskyを使うと良い気がする