public abstract class SpellDictionaryASpell extends java.lang.Object implements SpellDictionary
SpellDictionary
will use.
This class is based on the original Jazzy aspell port.
Derived classes will need words list files as spell checking reference.
Words list file is a dictionary with one word per line. There are many
open source dictionary files, see:
http://wordlist.sourceforge.net/
You can choose words lists form aspell
many differents languages dictionaries. To grab some, install
aspell
and the dictionaries you require. Then run aspell
specifying the name of the dictionary and the words list file to dump it
into, for example:
aspell --master=fr-40 dump master > fr-40.txtNote: the number following the language is the size indicator. A bigger number gives a more extensive language coverage. Size 40 is more than adequate for many usages. For some languages, Aspell can also supply you with the phonetic file. On Windows, go into aspell
data
directory and copy the
phonetic file corresponding to your language, for example the
fr_phonet.dat
for the fr
language. The phonetic
file should be in directory /usr/share/aspell
on Unix.Modifier and Type | Field and Description |
---|---|
protected Transformator |
tf
The reference to a Transformator, used to transform a word into it's phonetic code.
|
Constructor and Description |
---|
SpellDictionaryASpell(java.io.File phonetic)
Constructs a new SpellDictionaryASpell
|
SpellDictionaryASpell(java.io.File phonetic,
java.lang.String encoding)
Constructs a new SpellDictionaryASpell
|
SpellDictionaryASpell(java.io.Reader phonetic)
Constructs a new SpellDictionaryASpell
|
Modifier and Type | Method and Description |
---|---|
java.lang.String |
getCode(java.lang.String word)
Returns the phonetic code representing the word.
|
java.util.List |
getSuggestions(java.lang.String word,
int threshold)
Returns a list of Word objects that are the suggestions to an
incorrect word.
|
java.util.List |
getSuggestions(java.lang.String word,
int threshold,
int[][] matrix)
Returns a list of Word objects that are the suggestions to an
incorrect word.
|
protected abstract java.util.List |
getWords(java.lang.String phoneticCode)
Returns a list of words that have the same phonetic code.
|
boolean |
isCorrect(java.lang.String word)
Returns true if the word is correctly spelled against the current word list.
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
addWord
protected Transformator tf
public SpellDictionaryASpell(java.io.File phonetic) throws java.io.IOException
phonetic
- The file to use for phonetic transformation of the
words list. If phonetic
is null, the the transformation
uses DoubleMeta
transformation.java.io.IOException
- indicates problems reading the phonetic
informationpublic SpellDictionaryASpell(java.io.File phonetic, java.lang.String encoding) throws java.io.IOException
phonetic
- The file to use for phonetic transformation of the
words list. If phonetic
is null, the the transformation
uses DoubleMeta
transformation.encoding
- Uses the character set encoding specifiedjava.io.IOException
- indicates problems reading the phonetic
informationpublic SpellDictionaryASpell(java.io.Reader phonetic) throws java.io.IOException
phonetic
- The Reader to use for phonetic transformation of the
words list. If phonetic
is null, the the transformation
uses DoubleMeta
transformation.java.io.IOException
- indicates problems reading the phonetic
informationpublic java.util.List getSuggestions(java.lang.String word, int threshold)
This method is only needed to provide backward compatibility.
getSuggestions
in interface SpellDictionary
word
- Suggestions for given misspelt wordthreshold
- The lower boundary of similarity to misspelt wordgetSuggestions(String, int, int[][])
public java.util.List getSuggestions(java.lang.String word, int threshold, int[][] matrix)
getSuggestions
in interface SpellDictionary
word
- Suggestions for given misspelt wordthreshold
- The lower boundary of similarity to misspelt wordmatrix
- Two dimensional int array used to calculate
edit distance. Allocating this memory outside of the function will greatly improve efficiency.Word
public java.lang.String getCode(java.lang.String word)
word
- The word we want the phonetic code.protected abstract java.util.List getWords(java.lang.String phoneticCode)
phoneticCode
- The phonetic code common to the list of wordspublic boolean isCorrect(java.lang.String word)
isCorrect
in interface SpellDictionary
word
- The word to verify if it's spelling is OK.