From mboxrd@z Thu Jan 1 00:00:00 1970 From: KAction@gnu.org Subject: [PATCH] gnu: Add emacs-undo-tree. Date: Sun, 27 Dec 2015 19:58:35 +0300 Message-ID: <1451235515-20440-1-git-send-email-KAction@gnu.org> Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:51547) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aDEeq-0002rd-Rw for guix-devel@gnu.org; Sun, 27 Dec 2015 11:59:02 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1aDEem-0001T3-RW for guix-devel@gnu.org; Sun, 27 Dec 2015 11:59:00 -0500 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:43414) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aDEem-0001Sz-OI for guix-devel@gnu.org; Sun, 27 Dec 2015 11:58:56 -0500 List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org To: guix-devel@gnu.org Cc: Dmitry Bogatov From: Dmitry Bogatov * gnu/packages/emacs.scm (emacs-undo-tree): New variable. --- gnu/packages/emacs.scm | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm index 7d95f55..55717ff 100644 --- a/gnu/packages/emacs.scm +++ b/gnu/packages/emacs.scm @@ -1007,6 +1007,42 @@ and stored in memory.") (description "This package provides a modern list API library for Emacs.") (license license:gpl3+))) +(define-public emacs-undo-tree + (package + (name "emacs-undo-tree") + (version "0.6.4") + (source (origin + (method git-fetch) + (uri (git-reference + (url "http://dr-qubit.org/git/undo-tree.git") + (commit "release/0.6.4"))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "0b6hnv6bq1g5np5q2yw9r9aj1cxpp14akm21br7vpb7wp01fv4b3")))) + (build-system emacs-build-system) + (home-page "http://www.dr-qubit.org/emacs.php") + (synopsis "Treat undo history as a tree") + (description "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 @code{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. An added side +bonus is that undo history can in some cases be stored more efficiently, +allowing more changes to accumulate before Emacs starts discarding +history.") + (license license:gpl3+))) + (define-public emacs-s (package (name "emacs-s") -- I may be not subscribed. Please, keep me in carbon copy.