#include "SpellBase.h"
+#include "support/docstring.h"
+
#include <boost/scoped_ptr.hpp>
#include <cstdio>
-class BufferParams;
namespace lyx {
-namespace support {
-class ForkedProcess;
-}
-}
+
+class BufferParams;
+
+namespace support { class ForkedProcess; }
/// i/a spell process-based spellchecker
class ISpell : public SpellBase {
public:
- ISpell(BufferParams const & params, string const & lang);
+ ISpell(BufferParams const & params, std::string const & lang);
~ISpell();
/// accept the given word temporarily
virtual void accept(WordLangTuple const & word);
- /// return the next near miss after a MISSED result
- virtual string const nextMiss();
+ /// return the next near miss after a SUGGESTED_WORDS result
+ virtual docstring const nextMiss();
/// give an error message on messy exit
- virtual string const error();
+ virtual docstring const error();
private:
/// read some data. Returns true on an error. Sets err_read
char buf[BUFSIZ];
/// spell error
- string error_;
+ docstring error_;
+
+ boost::scoped_ptr<support::ForkedProcess> child_;
- boost::scoped_ptr<lyx::support::ForkedProcess> child_;
+ /// iconv name of the encoding that is used to communicate with ispell
+ std::string encoding;
// vileness below ... please FIXME
/// str ???
};
+} // namespace lyx
+
#endif // ISPELL_H