I am using zsh on my Mac and after some bindkey trickery I managed to get left/right/delete/backspace to work on zsh (and bash). In git --interactive, this does not work correctly though.
When I try to commit things in interactive mode, only backspace works. When I press left, right, delete I get the ANSI escape sequences for those keys: ^[[D ^[[C ^[[3~. When I look for these in my bindkey list, they seem to be configured correctly though:
% bindkey | \grep -F "^[[D"
"^[[D" backward-char
% bindkey | \grep -F "^[[C"
"^[[C" forward-char
% bindkey | \grep -F "^[[3~"
"^[[3~" delete-char
This occurs both when I use bash as well as when I use zsh. It also happens when I use X11's xterm instead of Terminal.app. I have found numerous posts regarding these problems in zsh itself (for example this forum, this post or on SU itself), but none of them relate to git.
In short: left/right/delete keys do work in my shell, but not in git --interactive. How can I fix this?