summary refs log tree commit diff
diff options
context:
space:
mode:
authorNiklas Eklund <niklas.eklund@posteo.net>2020-11-22 14:15:57 +0100
committerArun Isaac <arunisaac@systemreboot.net>2020-11-24 00:36:00 +0530
commitc7584333028a568361a5b6a42334f76889248434 (patch)
tree99fdbd2290981565a7e03f188d63d2854538e91a
parentb27b0e13b6a6e450e2e584c30f2668c6bb857b44 (diff)
downloadguix-c7584333028a568361a5b6a42334f76889248434.tar.gz
gnu: Add emacs-undo-fu-session.
* gnu/packages/emacs-xyz.scm (emacs-undo-fu-session): New variable.

Signed-off-by: Arun Isaac <arunisaac@systemreboot.net>
-rw-r--r--gnu/packages/emacs-xyz.scm34
1 files changed, 34 insertions, 0 deletions
diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index 37a3bb2cd1..5f49c64bb7 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -3074,6 +3074,40 @@ adding convenient undo/redo without losing access to the full undo history,
 allowing you to visit all previous states of the document if you need.")
       (license license:gpl3+))))
 
+(define-public emacs-undo-fu-session
+  ;; There are no tagged releases upstream on gitlab, instead we are using the
+  ;; most recent commit.
+  (let ((commit "56cdd3538a058c6916bdf2d9010c2179f2505829")
+        (revision "0"))
+    (package
+      (name "emacs-undo-fu-session")
+      (version (git-version "0.2" revision commit))
+      (source
+       (origin
+         (method git-fetch)
+         (uri (git-reference
+               (url "https://gitlab.com/ideasman42/emacs-undo-fu-session")
+               (commit commit)))
+         (file-name (git-file-name name version))
+         (sha256
+          (base32 "04wq1alrzzlidcb4mjb5j7pg68pks1vgv7kvvmi6dzb3l602mb2a"))))
+      (build-system emacs-build-system)
+      (arguments
+       `(#:tests? #t
+         #:test-command '("emacs" "--batch" "-l" "undo-fu-session.el"
+                          "-l" "undo-fu-session-test.el")
+         #:phases
+         (modify-phases %standard-phases
+           (add-before 'check 'set-home
+             (lambda _
+               (setenv "HOME" "/tmp")
+               #t)))))
+      (home-page "https://gitlab.com/ideasman42/emacs-undo-fu-session")
+      (synopsis "Save & recover undo steps between Emacs sessions")
+      (description "This package writes undo/redo information upon file save
+which is restored where possible when the file is loaded again.")
+      (license license:gpl3+))))
+
 (define-public emacs-s
   (package
     (name "emacs-s")