#!/bin/sh die () { echo "$*" >&2 exit 1 } case "$1" in */.git/*) ;; # needs LF line endings *) exec notepad.exe "$1" || die "Could not launch notepad.exe";; esac test $# = 1 || die "Usage: $0 " if test -f "$1" then case "$(git config i18n.commitencoding 2>/dev/null)" in ''|utf-8|utf8) unix2dos.exe -m "$1";; *) unix2dos.exe "$1";; esac fi && notepad.exe "$1" && dos2unix.exe "$1" && case "$1" in */COMMIT_EDITMSG|*\\COMMIT_EDITMSG) ! columns="$(git config format.commitmessagecolumns)" || { msg="$(fmt.exe -s -w "$columns" "$1" -p '#' | \ fmt.exe -s -w "$columns" -)" && printf "%s" "$msg" >"$1" } ;; esac