X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2FASpell.cpp;h=c99ff0498c6eef8117285c5eea6a5b318b390c0f;hb=04a171cac68cded95b1c4018d26ca50cb191ffa4;hp=7d32fa55e21e7b3c3e3fa109d20c03f7bceb1274;hpb=28afd72c653a5c9af12f4df0b1886cddbd13c138;p=lyx.git diff --git a/src/ASpell.cpp b/src/ASpell.cpp index 7d32fa55e2..c99ff0498c 100644 --- a/src/ASpell.cpp +++ b/src/ASpell.cpp @@ -16,18 +16,17 @@ #include #include "ASpell_local.h" +#include "LyXRC.h" #include "WordLangTuple.h" -#include +#include "support/lassert.h" -using std::string; +using namespace std; namespace lyx { -ASpell::ASpell(BufferParams const &, string const & lang) - : els(0), spell_error_object(0) +ASpell::ASpell(): els(0), spell_error_object(0) { - addSpeller(lang); } @@ -65,6 +64,12 @@ void ASpell::addSpeller(string const & lang) // platforms (cygwin, OS X). Therefore we use utf-8, that does // always work. aspell_config_replace(config, "encoding", "utf-8"); + if (lyxrc.spellchecker_accept_compound) + // Consider run-together words as legal compounds + aspell_config_replace(config, "run-together", "true"); + else + // Report run-together words as errors + aspell_config_replace(config, "run-together", "false"); AspellCanHaveError * err = new_aspell_speller(config); if (spell_error_object) delete_aspell_can_have_error(spell_error_object); @@ -97,14 +102,14 @@ ASpell::Result ASpell::check(WordLangTuple const & word) AspellSpeller * m = it->second.speller; int const word_ok = aspell_speller_check(m, to_utf8(word.word()).c_str(), -1); - BOOST_ASSERT(word_ok != -1); + LASSERT(word_ok != -1, /**/); if (word_ok) return OK; AspellWordList const * sugs = aspell_speller_suggest(m, to_utf8(word.word()).c_str(), -1); - BOOST_ASSERT(sugs != 0); + LASSERT(sugs != 0, /**/); els = aspell_word_list_elements(sugs); if (aspell_word_list_empty(sugs)) res = UNKNOWN_WORD;