Using spell checking in XUL

新しいスペルチェック機能が Firefox 2 で利用可能になりました。この文書は Firefox の拡張機能にスペルチェック機能を追加する mozISpellCheckingEngine コンポーネントの使いかたを紹介します。

ウェブサイトの HTML フォームにスペルチェックのサポートを追加するには HTML フォームのスペルチェック制御 を参照してください。

単語のスペルをチェックする

単語のスペルをチェックするには、最初に mozISpellCheckingEngine のインスタンスを作り、次に テストしたい文字列で check() メソッドを呼び出さなくてはなりません。このメソッドは文字列が正しいスペルなら true を、そうでなければ false を返します。

// コントラクト ID は Firefox のバージョンによって異なる
var spellclass = "@mozilla.org/spellchecker/myspell;1";
if ("@mozilla.org/spellchecker/hunspell;1" in Components.classes)
	spellclass = "@mozilla.org/spellchecker/hunspell;1";
if ("@mozilla.org/spellchecker/engine;1" in Components.classes)
	spellclass = "@mozilla.org/spellchecker/engine;1";
	
gSpellCheckEngine = Components.classes[spellclass].createInstance(Components.interfaces.mozISpellCheckingEngine);
gSpellCheckEngine.dictionary = 'en-US';

if (gSpellCheckEngine.check("kat")) {
    // 正しいスペル
}
else {
    // 正しくないスペル
}

候補リストを得る

スペルミスしている単語の候補リストを得るには、単語と、候補の配列を入れるオブジェクトを指定して suggest() メソッドを呼びます。

var suggestions = {};
gSpellCheckEngine.suggest("kat", suggestions, {}); 

if (suggestions.value) {
   // suggestions.value は文字列の JavaScript 配列です。
   // suggestions.value.length 個の候補が見つかりました。
}

Document Tags and Contributors

Contributors to this page: Shoot, Taken
最終更新者: Shoot,