自定义 flyspell (ispell) 字典

man*_*off 4 spell-checking ispell

我知道如何向 ispell 添加自定义单词,但我想从字典中删除某些单词。例如,虽然assandasses是正确的单词,但我很少输入它们,并且想将它们标记为可能错别字asassess

ispell 在哪里存储它的字典?手册页不提供位置。此外,手册页使构建新词典的步骤看起来很多,而且它不仅仅是一个 ASCII 文件,我可以在其中删除某些单词。任何建议如何在没有给定单词的情况下构建新词典?

编辑

从一些提示:http : //docstore.mik.ua/orelly/unix/upt/ch29_05.htm

似乎我可以从 /usr/share/dict/words 开始,删除我不想要的单词,然后从中制作一个新的 ispell 字典。但是,我在制作新词典时遇到了麻烦。buildhash是这里的关键程序,但它想要一个词缀文件,我不知道如何生成该文件。

man*_*off 5

我为aspell.

  1. 创建一个包含您不希望拼写检查识别的单词的排序文件aspell_no

  2. 运行以下代码:

aspell dump master | sort > aspell_master
comm -2 -3 aspell_master ~/.aspell_words_list_no > better_master
aspell --lang=en create master ./custom < better_master
sudo cp custom `aspell config dict-dir`
Run Code Online (Sandbox Code Playgroud)

测试一下:

echo "some words I do not want spell check to recognize" > test.txt
cat test.txt |aspell list --master=custom
Run Code Online (Sandbox Code Playgroud)

让它在 emacs 中工作(可能需要重新启动 flyspell 或 emacs 才能使其工作):

(setq ispell-program-name "aspell")
(setq ispell-list-command "list")
(setq ispell-extra-args '("--master=custom"))
Run Code Online (Sandbox Code Playgroud)