これは非常に基本的な質問のようですが、これを実装する最善の方法がわかりません。複数の文書(Latexで書かれています)があり、そのspell
文書に対してプログラムを実行してスペルエラーリストを生成しようとしています。
spell -n -o *.tex | sort -k2 | uniq >misspelt.txt
もちろん、問題は、有効と見なされるいくつかのキーワードのスペルが間違っていることです。たとえば、ファイルの1行は次のようになります。
...
/home/me/Documents/doc1.tex: documentclass
...
同様の単語をファイルに入れ、documentclass
上記のコマンドの一部としてマージするいいえスペルエラーと見なされますか?
答え1
detex(1)
LaTeXコマンド(ほとんどのコマンド)を削除し、スペルチェッカーを介して結果を実行するために使用されます。
Terdonの答えが示すように、少なくとも直接的にはテキストではなくスペルをチェックすることはできません。たとえば、確認してください。aspell(1)
スペルチェックの前に適用するフィルタのリストは、このコマンドが望むものを正確に提供するaspell dump filters
ようです。aspell list
答え2
これはうまくいきません。テキスト以外のコンテンツにのみスペルチェッカーを使用することはできません。たとえば、\beginのスペルが間違っていることに気づくことはできませんか?まともなテキスト認識エディタでファイルを開き、エディタのスペルチェックを実行しましたか?または、ファイルをPDFまたは他の形式にコンパイルし、コンパイルされた文書のテキストをコピーしてスペルチェックを実行しますか?
とにかく、あなたが望むように動作したい場合は、期待どおりに動作するかどうか疑っていても、grep
toという単語を含むファイルを渡して-v
一致する行をスキップできます。
spell -n -o *.tex | sort -k2 | grep -vf keywords.txt | uniq >misspelt.txt