{ config, lib, ... }: with lib; mkIf (elem "emacs::undo-tree" config.machine.pkgs) { programs.emacs.init.usePackage.undo-tree = { enable = true; hook = [ "(after-init . global-undo-tree-mode)" ]; config = '' (setq undo-tree-visualizer-diff 't) (setq undo-tree-auto-save-history 't) (setq undo-tree-enable-undo-in-region 't) (setq undo-tree-history-directory-alist '(("." . "~/.emacs_undo"))) ''; }; }