新しいスペルチェック機能が 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 個の候補が見つかりました。 }