A resposta rápida, coloque isso no seu ~/.zshrc :
bindkey -v '^?' backward-delete-char
Normalmente, '^?' (backspace) está ligado a vi-backward-delete-char , que deve ter o comportamento observado, pois é assim que vi (não vim , a menos que no modo vi clássico) se comporta.