0

运行 emacs calc 时,键入前缀键,例如“m”,然后是“?” 应该在 minibuffer 中显示所有与模式相关的命令,作为一种快速帮助工具。

几年来,我注意到这对我不起作用。当我点击'?minibuffer 会在几分之一秒内闪烁帮助,然后变为空白。我有时可以看到渲染的帮助文本的一部分,但通常它空白得太快而看不到它。

当我运行 emacs -Q 跳过我的 init 文件时,这不会发生,所以它是 init 文件中的一部分,即 cuplprit。

我的初始化文件很大。我想在我的初始化文件中的不同位置放置类似“(退出)”的内容,以停止处理初始化文件并查看是否可以确定导致问题的原因。

(1)这样做的正确方法是什么?

(2) 其他人看到 calc 中的 minibuffer 有这个问题吗?

4

2 回答 2

1

好问题。答案很简单:递归地平分你的 init 文件

通过注释掉其中的 1/2,然后是 3/4,然后是 7/8,来做到这一点……这是一个二分搜索,它非常快,尽管一开始可能看起来不是这样。它是系统的,本质上是盲目的(没有思想的)。

要注释掉一段文本,请使用 command comment-region。要取消注释文本块,请使用C-u相同的命令。

相信我 - 无论您的 init 文件有多大,您都将很快识别出罪魁祸首代码。如果您从您的 init 文件加载其他库,并且执行上面的练习表明罪魁祸首代码在其中一个库中,那么对该库代码(的副本)执行相同的操作:递归地平分它。

于 2014-11-07T23:14:07.473 回答
1

经过几个小时试图缩小问题范围后,我找到了罪魁祸首。

当在 calc 中设置 key-chord-mode 时,key help 工具会显示我上面提到的症状。

希望保持全局启用键和弦并在 calc-mode 中禁用它,但在 calc-mode-hook 中将其关闭会在所有模式下将其关闭。有任何想法吗?

无论如何,我更接近于弄清楚这个长期的刺激物。

于 2014-11-08T14:39:44.203 回答