Evil의 기본 실행 취소 동작은 삽입 모드를 시작하고 하나의 편집 작업으로 두는 것 사이에 발생하는 모든 것을 고려하기 때문에 너무 거칠습니다. 한 번의 삽입 동안 텍스트의 전체 단락을 입력 한 후 실행 취소를 실행하면 전체 단락이 제거됩니다. 반대로 Vim은 텍스트를 입력하는 것 이외의 방법으로 커서를 삽입 모드에서 움직일 때마다 새로운 실행 취소 단위를 시작합니다.
Evil에는보다 세밀한 실행 취소 기록을 얻는 데 사용할 수있는 사용자 정의 변수가 있습니다.
(setq evil-want-fine-undo t)
이 설정을 사용하면 Vim처럼 커서가 삽입 모드에서 움직일 때 Evil이 새로운 실행 취소 장치를 시작합니다. 그러나이 설정은 또한 바꾸기 작업을 처리하는 방식에 영향을줍니다.를 사용하여 단어를 바꾸는 경우 cw
원래 단어를 복원하려면 두 번 실행 취소해야합니다. 한 번은 새 단어를 제거하고 한 번은 원래 단어를 다시 삽입해야합니다. 이것은 Vim과 일치하지 않으며 대체가 원자 적이어야하기 때문에별로 의미가 없습니다.
질문 : Vim의 실행 취소 동작을 얻기 위해 어떻게 악과 실행 취소 트리를 구성 할 수 있습니까?