lyx_mirror/src/ispell.h
John Levon 7c98b3bd37 spellchecker cleanup - fscked knows why pspell is broken, I am TOTALLY
baffled by that one.

Various other cleanups, including a fixed version of lyxlex that doesn't
destroy the preamble ...


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@4854 a592a061-630c-0410-9148-cb99ea01b6c8
2002-08-04 23:11:50 +00:00

69 lines
1.3 KiB
C++

// -*- C++ -*-
/**
* \file sp_ispell.h
* Copyright 2002 the LyX Team
* Read the file COPYING
*
* \author unknown
*/
#ifndef SP_ISPELL_H
#define SP_ISPELL_H
#include <cstdio>
#include "SpellBase.h"
class BufferParams;
/// i/a spell process-based spellchecker
class ISpell : public SpellBase {
public:
ISpell(BufferParams const & params, string const & lang);
~ISpell();
/// return true if the spellchecker instance still exists
virtual bool alive();
/// clean up on messy exit
virtual void cleanUp();
/// check the given word and return the result
virtual enum Result check(string const & word);
/// finish this spellchecker instance
virtual void close();
/// insert the given word into the personal dictionary
virtual void insert(string const & word);
/// accept the given word temporarily
virtual void accept(string const & word);
/// return the next near miss after a MISSED result
virtual string const nextMiss();
/// give an error message on messy exit
virtual string const error();
private:
/// instream to communicate with ispell
FILE * in;
/// outstream to communicate with ispell
FILE * out;
/// spell error
char const * error_;
/// the fd of the outgoing pipe
int isp_fd;
// vileness below ... please FIXME
/// str ???
char * str;
/// e ???
char * e;
};
#endif // ISPELL_H