0

この質問はスーパーユーザーに尋ねられましたが、7日間で8回しか表示されませんでした。Hunspellの知識のある人はstackoverflowに行くので、ここでもう一度質問します。


スウェーデン語の辞書を使用して、コマンドラインでhunspellをテストしています。インタラクティブモードでの入力は、スペルチェッシングの前に、すべての特殊文字(たとえば、åäö)をブランクに置き換えます。

Hunspell 1.3.2
sjögräs
& sj 15 0: SJ, aj, dj, sk, s, j, sej, sju, sjö, sjå, sa, se, ej, st, si
& gr 15 3: ge, g, r, ger, gir, gro, gör, grå, går, gry, er, nr, dr, go, kr
*

sj gr s
& sj 15 0: SJ, aj, dj, sk, s, j, sej, sju, sjö, sjå, sa, se, ej, st, si
& gr 15 3: ge, g, r, ger, gir, gro, gör, grå, går, gry, er, nr, dr, go, kr
*

ご覧のとおり、プロンプトのエンコーディングは機能しており、入力と出力の両方にåäとöが表示されます。

配管でも同じ結果が得られます。

echo sjögräs | hunspell -d sv_SE

、、およびaffファイルの保持など-i UTF-8、hunspellにさまざまなオプションを提供しようとしました。何も機能しませんでした。-i UTF-16SET ISO8859-1

同じことがフランス語でも起こります:

C:\Users\gauthier>echo résultat | hunspell -d fr-moderne
Hunspell 1.3.2
*
& sultat 2 2: sultan, rAcsultat

さらに、出力に問題があります。

MinGWでhunspellをコンパイルし、結果として必要なファイルをパスのどこかに移動しましたが、この情報はあまり関連性がないと思います。

hunspellに入力の特殊文字を認識させるにはどうすればよいですか?

4

1 に答える 1

0

変数をエコーする$LC_ALL$LANG、端末にある言語とロケールの構成を確認できます。

hunspell次に、これらの変数を再定義して、文字セットに変更することができます。たとえば、次のように設定できます。

LC_ALL=en_US.ISO8859-15

また

LANG=ca_ES.cp1252

思い出すと、デフォルトの文字セットは latin1 ですが、よくわかりません (現在 Linux を使用していません)。

hunspell ソフトウェアを変更する代わりに、このアプローチを試してください。

于 2012-05-17T09:06:31.297 に答える