如何从 ispell 或 aspell 获取类似编译器的消息

How to get compiler-like messages from ispell or aspell

对多个文本文件进行拼写检查。

具有 'gcc' 形式的输出产生它:

   intro/main.txt:12:                  'hierarchie' -- orthograph
   concepts/detail/experiment.txt:12:  'propper' -- orthograph

是对 'todo' 列表的一个很好的正式描述。此外,它还可以通过 vim 和 emacs 等 IDE 进行拼写检查。他们可以解析此内容并在按下按钮时跳转到焦点所在的位置。

我想 运行 ispell/aspell 处理多个文本文件,并以类似编译器错误的方式生成错误列表。

for file in $(find . -name "*.tex" -type f); \
  do for word in $(cat $file | aspell list); \
     do grep -sHIno "\b$word\b" $file \
        | sort -u; 
     done; 
  done > tmp.log

也就是说,第一个 for 循环迭代关注的文件——这里是目录子树中的“.tex”文件。嵌套的 for 循环遍历 'aspell' 抱怨的词。 'grep' 命令获取行号并生成类似编译的消息。选项 '-o' 只打印匹配的部分,即拼错的单词。 'sort -u' 确保一行中的两个错误不会产生双重输出。

将其重定向到“> tmp.log”,将 vim 设置为 'set makeprg=cat',然后使用“:make tmp.log”可以方便地逐步解决所有拼写错误在文档中。

欢迎任何评论。