| 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. |