summaryrefslogtreecommitdiff
path: root/README.myspell
blob: 25934eec017c6a1b1bdc843e564665f7166feb18 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
MySpell is a simple spell checker that uses affix 
compression and is modelled after the spell checker
ispell.  

MySpell was written to explore how affix compression 
can be implemented. 

The Main features of MySpell are:

1. written in C++ to make it easier to interface with 
   Pspell, OpenOffice, AbiWord, etc

2. it is stateless, uses no static variables and
   should be completely reentrant with almost no 
   ifdefs  

3. it tries to be as compatible with ispell to
   the extent it can.  It can read slightly modified 
   versions of munched ispell dictionaries (and it 
   comes with a munched english wordlist borrowed from 
   Kevin Atkinson's excellent Aspell.

4. it uses a heavily modified aff file format that
   can be derived from ispell aff files but uses
   the iso-8859-X character sets only
 
5. it is simple with *lots* of comments that 
   describes how the affixes are stored
   and tested for (based on the approach used by 
   ispell).

6. it supports improved suggestions with replacement
   tables and ngram-scoring based mechanisms in addition
   to the main suggestion mechanisms

7. like ispell it has a BSD license (and  no 
   advertising clause)

But ... it has *no* support for adding words
to a personal dictionary, *no* support for converting
between various text encodings, and *no* command line
interface (it is purely meant to be a library).

It can not (in any way) replace all of the functionality
of ispell or aspell/pspell.  It is meant as a learning
tool for understanding affix compression and for 
being used by front ends like OpenOffice, Abiword, etc.

MySpell has been tested under Linux and Solaris
and has the world's simplest Makefile and no 
configure support.

It does come with a simple example program that 
spell checks some words and returns suggestions.

To build a static library and an example
program under Linux simply type:

tar -zxvf myspell.tar.gz
cd myspell2
make

To run the example program:
./example ./en_US.aff ./en_US.dic checkme.lst

Please play around with it and let me know
what you think.

Please see the file CONTRIBUTORS for more info.