When using undo-tree-undo in Spacemacs v 300 in ensime-mode, I will run into "No further undo information" after a small number of steps --- just around five or so.

I have the following variables set:

undo-no-redo nil

undo-limit 80000

undo-in-region nil

undo-tree-mode t

undo-outer-limit 12000000

undo-extra-outer-limit nil

I am unable to find any Ensime specific variables controlling undo behavior.

How can I maintain a larger undo tree when using Ensime?

  • The function undo-tree-discard-history contains a doc-string that states: "*Discard undo history until we're within memory usage limits set by undo-limit, undo-strong-limit and undo-outer-limit.". Due to a long-standing bug, the author of undo-tree stated in one of the emails on the bug reports that undo-tree-enable-undo-in-region should be set to nil. Other than those pointers, I cannot think of another reason why your undo history is being discarded or is otherwise inaccessible (e.g., undo-tree-enable-undo-in-region is non-nil and your region is active ...).
    – lawlist
    Feb 20, 2019 at 20:51

1 Answer 1


This should be mitigated on the current develop branch because those limits were increased by 10X. When using undo-tree these variables are increased:

undo-limit 800000 ;; previously 80000
undo-strong-limit 12000000 ;; previously 120000
undo-outer-limit 120000000 ;; previously 12000000

The change is at: https://github.com/syl20bnr/spacemacs/commit/dcb4da02a8758e7cb700d69689670b85024b068d

  • Welcome to emacs.SE! It would be nice to include a quick summary of the changes in addition to the link.
    – JeanPierre
    Aug 26, 2019 at 21:59
  • Okay, added some details! Aug 26, 2019 at 23:11

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.