Estas son algunas de las opciones increíbles: emacs-24, evil-mode (usando enlaces vim en emacs) y deshacer-tree.¿Cómo cambiar el nivel de granularidad de deshacer en emacs evil-mode con undo-tree?
Sin embargo, cuando estoy en el modo de edición (modo de inserción), a veces me salta un número para insertar, eliminar, etc. antes de presionar escape y salir del modo de inserción.
"Deshacer" toma toda la inserción (incluidas las eliminaciones) como una edición. Por ejemplo, no puedo deshacer el párrafo que eliminé accidentalmente sin deshacer la eliminación completa.
¿Hay alguna manera de arreglar esto?
Aquí están algunos enlaces relacionados:
- How Emacs determines a unit of work to undo
- http://vim.wikia.com/wiki/Using_undo_branches
- http://vim.wikia.com/wiki/Modified_undo_behavior
- This tip tiene probablemente mejor explicación desde el lado vim.
Estas son las asignaciones de vim que convierten ciertos comandos de vim para que puedan ser deshechos:
inoremap <c-u> <c-g>u<c-u>
inoremap <c-w> <c-g>u<c-w>
inoremap <End> <C-g>u<End>
inoremap <BS> <c-g>u<BS>
inoremap <CR> <c-g>u<CR>
inoremap <del> <c-g>u<del>
Lo que se necesita es que el modo de deshacer el interior de emacs malos deshacer-árbol para realizar un seguimiento de eventos adicionales, además de simplemente dejando el modo insertar. Por ejemplo, debería poder permanecer en el modo de inserción durante un tiempo prolongado y luego deshacer cualquier tipo de eliminar, cortar y pegar.
Basado en http://stackoverflow.com/questions/6590889/how-emacs-determines-a-unit-of-work-to-undo, los comandos adicionales dentro necesidad mal Llamar Deshacer Límite. – justingordon
Solo porque aún no se ha dicho: "Debería tratar el modo de inserción como si estuviera corriendo sobre una cama de carbón caliente; aléjese lo más pronto posible". –