17

ispell-buffer当我在处于 LaTeX 模式的 Emacs 缓冲区上运行 Emacs 命令时,ispell 还会检查数学表达式中的拼写。

我非常想禁用它。有没有简单的方法来做到这一点?

我读过关于 detex 的文章,但 detex 似乎没有集成到 Emacs 中。

4

6 回答 6

7

如果您使用乳胶(例如 \[ ... \]、方程环境和 &c)来调用数学模式,则不应该这样做。检查内容ispell-tex-skip-alists;参看。ispell FAQ 的第 6 部分应该有什么样的东西。

您可以使用 $..$, $$..$$ 使用 ispell-tex-skip-alists 来标记数学,但要小心让它们脱离平衡...

后记

还要检查ispell-parser变量的值:这应该是'tex,否则 ispell 不会查找 $...$ 和 $$...$$ 区域。

于 2010-01-24T11:17:15.150 回答
3

是的,您可以:安装aspell而不是 ispell,并使用 flyspell。

于 2010-01-23T03:49:20.313 回答
1

这并不能直接回答您的问题,但我发现Flyspell是一种即时拼写检查器,在编辑 LaTeX 文档时非常有用。它仍然会在方程式内进行拼写检查,但与 ispell 的交互式命令相比,忽略一些额外的红色下划线要容易得多。

于 2010-01-23T03:42:04.040 回答
0

您可能知道这一点,但您可以A在拼写检查期间按下以将单词添加到缓冲区本地字典(即大写A字母,小写a将其添加到全局字典)。这并不理想,但这就是我通常在我的 LaTeX 文档中禁止对技术术语和变量名等进行拼写检查的方式。

于 2010-01-23T16:30:13.397 回答
0

这个AUCTeX邮件列表线程:“拼写检查器(ispell-buffer)抱怨数学模式下的产品”有一些解决方法,答案演示了如何使用ispell-tex-skip-alists。

于 2010-01-29T14:31:26.097 回答
0

另一种方法是使用ispell-skip-region-alist. 以下示例是排除 org-mode src 块

(add-to-list 'ispell-skip-region-alist '("#\\+begin_src". "#\\+end_src"))
于 2017-07-28T11:30:33.990 回答