¿Existe una extensión 'deshacer local' para Emacs?

16

Sucede con bastante frecuencia que deseo deshacer cambios localmente o en línea. Por ejemplo, cuando cambio varias líneas en un código fuente y quiero revertir solo una de ellas, entonces tengo que recorrer todo el árbol de deshacer para encontrar el estado al que quiero regresar. Sería mejor si solo pudiera revertir la región marcada o la línea donde está el punto. ¿Hay algo como esto ya en existencia?

Lenar Hoyt
fuente

Respuestas:

22

Esta es la funcionalidad estándar de Emacs (desde 1998 / 20.3).

Suponiendo que tiene habilitado el modo de marca transitoria, simplemente marque la región y use deshacer como normal, y Emacs realizará operaciones de deshacer relevantes solo para la región (activa).

Con el modo de marca transitoria desactivado, o si la región marcada no está activa, use un C-uargumento prefijo para el comando deshacer.

Consulte: C-hf undo
o "deshacer selectivamente" en el manual:C-hig (emacs) Undo

phils
fuente