Python-mode 保存会卡死 Emacs

关于上一个问题,好像缩进不对的时候保存会卡死 Emacs。

在 Python Mode 下保存代码,Emacs 会卡死。如何 debug 这种行为呢?

M-x toggle-debug-on-quit 然后重现卡死, C-g

我看看哦,等我下。

诶我在想我要不要也 Spacemacs Base 得了,他们这么多插件和 Layer 我都不会用 也不知道用到了没。

然后呢?帅哥。我现在 C-g 可以恢复了 不卡死了?那我怎么知道是什么问题呢?

先得 toggle-debug-on-quit 啊,然后C-g就会打印调用栈的

我 toggle-debug-on-quit 了,C-g 打印到 message buffer 里面吗?

不是,会弹出来才对

并没有弹出来呢。我再观察观察下咯

@xcodebuild 我又试了试,没有东西弹出来呀。 message buffer 里面也没有错误报告。

但是开启了 toggle-debuge-on-quit 就可以 C-g 终止无响应,但是不开起就直接卡死。按啥子都没用的。

我发现就i是 python 代码的的问题,如果我把这段缩减有问题的代码删掉,就没有卡死的问题了。

好烦呀,完全不知道该咋办了。读文档去了。。。。干干干干干干干干干了都。

然而 toggle-debug-on-quit 的作用并不是让它“能够” C-g 来着。。保存的时候一定是执行了什么才导致卡死,如果实在看不到调用栈

toggle-debug-on-quit -> profile-start -> 重现问题,让它多卡一会 -> C-g -> profile-report

应该能看到导致卡顿的问题所在

就没保存,只有 python 模式里面注释格式不对了(比如用了空格了?)他就直接卡死。

只有现象没有用。。。必须要知道具体导致卡死的代码

1 个赞

好,我再发现卡死的时候我会做 profile 的。