undo-tree 卡死 macOS GUI Emacs

undo-tree-undo 有时会卡死 Emacs,整个 UI 都无法响应,狂按 C-g 也无效,需要等很久(如半分钟),或者强制退出(界面会提示 Emacs 无响应),每天都会遇到一两次, 26.3 和 master 版本,Emacs Mac Port 和官方的都遇到了这个问题,遇到这个问题好几个月了。

苦于不知道如何重现,也不了解 undo-tree 的实现。大家有遇到此类情况吗?或者了解什么 debug 方法?


我使用 undo-tree 最新版 0.7.5,没特殊配置

(use-package undo-tree                  ; Branching undo
  :ensure t
  :diminish undo-tree-mode
  :config
  (setq undo-tree-visualizer-timestamps t)
  (global-undo-tree-mode))
1 个赞

有,不过基本几秒钟就能反应过来,但是较早修改的部分就undo不了了。

你不说我还以为是 doom-modeline / powerline 的问题,折腾好长时间这俩的配置……

undo-tree如果遇到问题:(setq undo-tree-enable-undo-in-region nil),同时调大各种undo-*-limit。可以参照doom的配置:

另:1. 可以用pkill -SIGUSR2 emacs来打断卡死的emacs。 2. undo-tree有各种玄学问题,推荐用undo-fu或者undo-redo

我这 undo-tree-undo 平时就点卡,有明显的延迟,现在每次 C-/ 都有点提心吊胆,无奈自带的 undo/redo 又用不明白。

我没用这两个,我的配置全是自己写的,如果有其他插件中间干扰,我应该知道。

等会看看

Emacs 处理过这个信号后,就没法继续正常工作,以前我试过,有机会再确认看看。

目前我用undo-tree感觉还行。之前换成udo-fu之后也是各种玄学小问题,无奈又换回来了

我也一直用的undo-tree,没什么问题。可能是用的没你们高级 :grinning: