2つの言語を含む大きな.texファイルがあり、気が狂うことなくスペルチェックしたいと思います。したがって、1つの言語のスペルチェックを行い、他の言語の単語に対して「無視」を押すことはできません。
だから私はaspellを読んで、辞書を組み合わせるためにあなた自身の.multi
ファイルを定義できることを知りました。しかし、明らかに、異なる言語の辞書に対してこれを行うことはできません。エラーがスローされます(または、GUIから作業している場合、辞書は空で表示されます)。
また、この機能をウィッシュリストに載せているバグレポートを見つけましたが、まだ誰も実装していないようです。
だから、私の質問は:2つの異なる言語の2つの辞書を一度に使用する正しい方法はありますか?
この問題は私に頭痛の種を与えました、そしてインターネット上でそれをする方法についての文書はほとんどありません。だから、私は答えとして見つけた回避策を提示し、他の誰か(将来の私を含む)のトラブルを救うために。しかし、もっと良い解決策があれば、投稿してください。
だから、これが私のハウツーです:
ステップ1:システム上でaspell辞書を見つけます。 /usr/lib/aspell/
で見つけました。 .multi
ファイルと.rws
ファイルが表示されます。以下のすべてのコマンドは、そのディレクトリで実行されます。
ステップ2:必要な辞書からワードリストを生成します。辞書に単語とともに接辞が保存されている場合は、それらを展開する必要があります。
aspell --lang=en --master=en.multi dump master > /home/user/meinwoerterbuch.txt
aspell -d de dump master | aspell -l de expand | Perl -e 'while(<>){ print join("\n", split), "\n";}' >> /home/user/meinwoerterbuch.txt
ここではドイツ語の辞書を拡張する必要があり、1行に1つの単語が必要だったため、Perlを使用して1行に複数の単語を取得し、それぞれを1行余分に印刷しました。 aspellの出力(私はhead
をお勧めします)を見て、辞書を拡張する必要があるかどうかを確認してください。
ステップ3:辞書の言語名を選択します。ハンガリー語を選んだのは、実際にハンガリー語の辞書を使ってスペルチェックを行うことは絶対にないだろうからです。そうすれば、簡単に見つけることができます。有効なISO言語コードを備えたものでなければならないと思います。ハンガリー語の場合、それはhu
です。
ステップ4:hu.dat
およびhu_phonet.dat
ファイルを作成します。動作しているように見える最も削除されたバージョンは次のとおりです。
hu.dat
:
name hu
charset iso8859-1
soundslike hu
hu_phonet.dat
:
version 0.1-2002.12.15-3
ステップ5:でマージされた辞書を作成する
Sudo aspell --lang=hu --encoding=utf-8 create master ./hu.rws < /home/user/meinwoerterbuch.txt
Txtファイルはutf-8でエンコードされているため、encoding = utf-8を指定する必要がありました。それなしでエラーを投げました。
手順6:次のような適切なhu.multi
ファイルを作成します。
add hu.rws
ステップ7:スペルチェッカーでハンガリー語を選択し、スペルチェックを開始します。