"Garst R. Reese" wrote:
> 
> Kevin Atkinson wrote:
> >
> > Asger Alstrup Nielsen wrote:
> >
> > > The spellchecker should work on strings.  The LyX data structure will be small
> > > strings, so you should simply use LString::const_iterator to make life simplest
> > > for us.
> >
> > Only giving the Spell Checker small strings at a time will work for a
> > simple minded spell checker that only want to look at a document a
> > word at a time however it will not work for spell checkers that want
> > to be able to see the entire document at once.  Aspell is going to
> > eventually want to see the entire document at once in order to support
> > some advance skipping and suggestion algorithms.  Two such algorithms
> > include Word skipping by context (see
> > http://franklin.oit.unc.edu/cgi-bin/lyris.pl?visit=aspell&id=79941057)
> > and suggesting close matches that exist elsewhere in the document
> > before looking for matches in the dictionary.  Now, in order for these
> > algorithm to work Aspell will need to be able to first have a prescan
> > of the document to build a database of the words in the document.
> >
> > In order to get this prescan Aspell will need to iterate to the end
> > of the document before it returns anything.If you only give it small
> > segments of the document at once there is no way aspell can do this.
> > Thus Aspell needs a continuous iterator that will represent the entire
> > document.
>
> If a data base of the words in a document is going to be needed, it
> should be built as the document is written. This could be a general
> database of all the documents in a directory with a separate database
> re-building program to deal with files moved into the directory. With
> such a db you can do some nice search things.

However certain modes will need more than just a simple database of
words.  The Word skipping by context will for example.  (see the mailing
list archive from the link above)
-- 
Kevin Atkinson
[EMAIL PROTECTED]
http://metalab.unc.edu/kevina/

Reply via email to