Domyślne zachowanie cofania w Evil jest zbyt gruboziarniste, ponieważ bierze pod uwagę wszystko, co dzieje się między przejściem do trybu wstawiania a pozostawieniem go jako jednej operacji edycji. Po wprowadzeniu całego akapitu tekstu podczas jednej wstawki, a następnie wykonaniu cofnięcia, cały akapit jest usuwany. W przeciwieństwie do tego, Vim uruchamia nową jednostkę cofania za każdym razem, gdy przesuwasz kursor w trybie wstawiania w inny sposób niż wprowadzanie tekstu.
Zło ma zmienną dostosowywania, której można użyć, aby uzyskać bardziej szczegółową historię cofania:
(setq evil-want-fine-undo t)
Przy tym ustawieniu Zło uruchamia nową jednostkę cofania, gdy kursor jest przesuwany w trybie wstawiania, podobnie jak robi to Vim. Jednak to ustawienie ma również związek z tym, jak obsługiwana jest operacja zamiany: jeśli zastępujesz słowo przy użyciu cw
, musisz cofnąć dwa razy, aby przywrócić oryginalne słowo: raz, aby usunąć nowe słowo, a raz, aby ponownie wstawić oryginalne słowo. Jest to niespójne z Vimem i nie ma większego sensu, ponieważ zamiana powinna być atomowa.
Pytanie: Jak mogę skonfigurować Zło i cofnąć drzewko, aby uzyskać zachowanie cofania Vima?
źródło
Odpowiedzi:
Ponieważ @shosti wskazał, że Zło uważa odstępstwo od zachowania Vima za błędy, zgłosiłem błąd, a jeden z autorów Zła dodał nową możliwą wartość dla
evil-want-fine-undo
:Przy tym ustawieniu otrzymujesz nowe jednostki cofania podczas przesuwania kursora w trybie wstawiania, ale operacje zastępowania są cofane w jednym kroku. O ile mogę stwierdzić, jest to zgodne z Vimem. Zobacz tutaj, aby uzyskać szczegółowe informacje.
źródło
'fine
ustawienie zostało wycofane.Zgodnie z opisem zmiennej (patrz
C-h v evil-want-fine-undo
) wartośćfine
nie jest już obsługiwana z powodu niespójnego zachowania.Kiedy używam cofania do cofania literówek lub wspomniane ustawienie pomogło mojemu przydziałowi.
Miałem problemy Cofanie błędów w edycji formuły org stołu, ponieważ nie trzeba wychodzić z trybu edycji, jeśli chcesz zmienić
*Edit Forumlas*
zC-'
.źródło