Use vared in zsh instead of read.

This change seems to do what you want.  It passes ! and \ untouched, it gets history from the shell and it uses the zsh line editor for arrow keys and home/end.
This commit is contained in:
anonfunc
2012-08-27 16:49:39 -07:00
parent f5d7d68291
commit e6f4cd8694

View File

@@ -175,9 +175,7 @@ theirs(){ _git_resolve_merge_conflict "their" "$@"; }
git_commit_prompt() {
local commit_msg
if [[ $shell == "zsh" ]]; then
# zsh 'read' is weak. If you know how to make this better, please send a pull request.
# (Bash 'read' supports prompt, arrow keys, home/end, up through bash history, etc.)
echo -n "Commit Message: "; read commit_msg
vared -h -p "Commit Message: " commit_msg
else
read -r -e -p "Commit Message: " commit_msg
fi