zsh vim 모드에서 여러 문자를 바꿀 때 백스페이스 키가 예상대로 작동하지 않습니다.

zsh vim 모드에서 여러 문자를 바꿀 때 백스페이스 키가 예상대로 작동하지 않습니다.

다음 작업을 수행하고 싶습니다. 콘솔의 모드에서 백스페이스 키를 사용하여 변경 사항을 되돌리면서 vim몇 개의 문자(vim 명령)를 바꾸십시오 . 다음과 같은 방식으로 작동 R합니다 .bashvim

bash
set -o vi
echo "foo bar" <ESC>

이제 "f"와 같은 vim 명령을 사용하여 여러 문자를 바꾸 Ff십시오 . R이제 예를 들어 글을 쓰면 bar foo얻을 수 있습니다.

echo "bar foo"

예를 들어 백스페이스 키를 세 번 누르면 알 수 있습니다.

echo "bar bar"

이것이 제가 원하는 동작입니다. 에서와 동일한 동작입니다 vim. 그러나 에서는 zsh비슷하게 시도해 볼 수 있습니다.

zsh
bindkey -v
echo "foo bar" <ESC>

위와 동일한 작업을 수행하지만 결과는 다음과 같습니다.

echo "bar "

즉, zshBACKSPACE를 사용할 때 여러 문자를 바꾸는 동작이 예상대로 작동하지 않습니다. 캐릭터를 이전 상태로 복원하는 대신 삭제합니다.

zsh에서와 동일한 동작을 어떻게 얻을 수 있습니까 vim?

관련 정보