Aspell .33 and better will, in general, give a higher priority to
certain misspellings which are likely to be due to typos such as
teh instead of
hapoy instead of
happy. However in order to do this well Aspell needs to know the
layout of the keyboard via the keyboard definition file. The keyboard
definition file simply identifies the keys on the keyboard and which of
them are right next to each other. It has an extension of .kbd
and all non-ASCII characters are expected to be in UTF-8.
To identify a key use:
key base other ...
where base is the base character that the key types, and other are other keys that the key can produce. For example
key a A á Á
It generally is only necessary to list keys which type more than one distinct letter as Aspell can derive the rest from the language data file. For example, it is not necessary to include the previously mentioned key.
To identify two keys as being right next to each other simply list the type keys right after each other. For example the line:
will indicate that `a' and `s' are right next to each other. If `as' is listed as an entry it is not necessary to list `sa' as an entry as that will be done automatically. Also by right next to each other I mean two keys that are close enough together that it is easy to type one instead of the other. On most keyboards this means keys that are to the left or to the right of each other and not keys that are below or above it.
The default for this option is normally standard. However the default can be changed via the language data file. The normal default, standard, should work well for most QWERTY like keyboard layouts. It may need minor adjusting for foreign keyboards. The dvorak option can be used for a Dvorak layout.