Path to this page:
Subject: CVS commit: wip/undo-tree
From: PHO / phonohawk
Date: 2010-02-22 04:52:50
Message id: E1NjPM2-0001E2-2L@sfp-cvsdas-2.v30.ch3.sourceforge.com
Log Message:
Import undo-tree-0.1.6 as wip/undo-tree.
Emacs has a powerful undo system. Unlike the standard undo/redo system
in most software, it allows you to recover any past state of a buffer
(whereas the standard undo/redo system can lose past states as soon as
you redo). However, this power comes at a price: many people find
Emacs' undo system confusing and difficult to use, spawning a number
of packages that replace it with the less powerful but more intuitive
undo/redo system.
Both the loss of data with standard undo/redo, and the confusion of
Emacs' undo, stem from trying to treat undo history as a linear
sequence of changes. It's not. The undo-tree-mode provided by this
package replaces Emacs' undo system with a system that treats undo
history as what it is: a branching tree of changes. This simple idea
allows the more intuitive behaviour of the standard undo/redo system
to be combined with the power of never losing any history.
It gets better. You don't have to imagine the undo tree, because
undo-tree-mode includes an undo-tree visualizer which draws it for
you, and lets you browse around the undo history.
For more information, see the Commentary at the top of the
undo-tree.el file. (Note that undo-tree-mode does not yet support
undo-in-region, nor, for low-level reasons, does it restore marker
adjustments. I plan to support both of these in a future version.)
Files: