const char * what = e.what();
LYXERR(Debug::FILES, "cannot add enchant speller: " <<
((what && *what) ? what : "unspecified enchant exception in request_dict()"));
- m.speller = 0;
+ m.speller = nullptr;
}
spellers_[lang] = m;
return m.speller;
}
-SpellChecker::Result EnchantChecker::check(WordLangTuple const & word)
+SpellChecker::Result EnchantChecker::check(WordLangTuple const & word,
+ std::vector<WordLangTuple> const & docdict)
{
enchant::Dict * m = d->speller(word.lang()->code());
if (m->check(utf8word))
return WORD_OK;
+ vector<WordLangTuple>::const_iterator it = docdict.begin();
+ for (; it != docdict.end(); ++it) {
+ if (it->lang()->code() != word.lang()->code())
+ continue;
+ if (it->word() == word.word())
+ return DOCUMENT_LEARNED_WORD;
+ }
+
return UNKNOWN_WORD;
}