当前位置:  开发笔记 > 编程语言 > 正文

emacs中各种拼写检查模式的优缺点

如何解决《emacs中各种拼写检查模式的优缺点》经验,为你挑选了1个好方法。

我想知道是否有人可以权衡Emacs不同拼写模式的优缺点.Emacswiki-CategorySpelling 提到三种拼写检查模式:

Flyspell模式(默认值为1)

Speck模式(似乎被设计为比flyspell更快)

Wcheck模式.(旨在成为通用)

我也感兴趣的是,这些模式中的哪一种为拼写检查器提供了一种方法,可以根据语法跳过部分缓冲区(例如,为了跳过LaTeX文档中的数学模式部分,在AUCTEX中突出显示为棕色模式).Flyspell似乎没有这样做



1> Joe Casadont..:

您可以通过多种不同方式进行部分flyspell模式.一种是使用多模式方法,在单一缓冲区中定义多种模式,其中一种模式是编辑注释(例如),其中启用了flyspell模式.我以前为某些编程语言做了这个,但我找不到它的配置了,所以我想我不再使用那种语言了.无论如何,请参阅mmm-mode获取更多信息.

第二种方法是使用`flyspell-prog-mode'(参见参考资料),它为缓冲区的某些部分设置flyspell模式,在这种情况下由字体面定义(对于大多数编程语言,字符串和注释都有特定的面)主要模式).它使用谓词回调函数,可以根据需要定义; 我维护TNT,这是Emacs的AIM模式,我们这样使用它:

(defun tnt-im-mode-flyspell-verify ()
  "This function is used for `flyspell-generic-check-word-p' in TNT."
  (not (get-text-property (point) 'read-only)))

(put 'tnt-im-mode 'flyspell-mode-predicate 'tnt-im-mode-flyspell-verify)
(put 'tnt-chat-mode 'flyspell-mode-predicate 'tnt-im-mode-flyspell-verify)

关于flyspell vs. speck vs. wcheck - 我只使用了flyspell模式.speck似乎非常适合于可查看的内容,这可能很好,但一般来说我希望我正在处理的任何文档都要经过拼写检查,所以我不希望这样.wcheck似乎是外部程序的通用接口; 我猜你将不得不自己建立它的用途.flyspell可以使用两种不同的方式:as-you-type,这是我通常使用它的方式,以及"批处理模式",其中一次检查整个区域或缓冲区.前者非常快,我从来没有找到寻找更好工具的理由.后者可能有点慢,特别是当有很多拼写错误的单词并且文档很大时,但我真的记不起等待超过15秒才能完成.在观看屏幕15秒并且什么都不做的时候看起来好像很长时间,但事实并非如此.YMMV,当然.

一句话:当然,我坚持使用flyspell模式,假设它符合您的需求.

推荐阅读
wurtjq
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有