GNU Aspell
maintained by Kevin
Atkinson (kevina@gnu.org)
GNU Aspell is a Free and Open Source spell checker designed to
eventually replace Ispell. It can either be used as a library or as
an independent spell checker. Its main feature is that it does a superior
job of suggesting possible replacements for a misspelled word
than just about any other spell checker out there for the English
language. Unlike Ispell, Aspell can also easily check documents in
UTF-8 without having to use a special dictionary. Aspell will also do
its best to respect the current locale setting. Other advantages over
Ispell include support for using multiple dictionaries at once and
intelligently handling personal dictionaries when more than one Aspell
process is open at once.
Try it out for your self using the Aspell Spell Helper or see some
Test Results Comparing Aspell
with other spell checkers.
Quick Links
- Latest Version: GNU Aspell
0.60.6.1 (Released July, 2011)
- Next Stable Version: 0.60.7-20110707
(Pre-release snapshot)
- Available Dictionaries for GNU
Aspell.
- ftp.gnu.org:/gnu/aspell -
For other versions. Or use a mirror
- alpha.gnu.org:/gnu/aspell -
For previous snapshots.
- Manual
- ChangeLog
- Devel Docs
- Mailing
Lists
- Sourceforge
Tracker - For Bug Reporting, Patches, and Feature Requests
- CVS Information
- Savannah
Project Page
- Sourceforge
Project Page
- The Aspell textual domain at the Translation Project
- Development Version: 0.61-20110707
- 0.61 ChangeLog
- 0.61 Manual
- 0.61 Devel Docs
- Previous Version: 0.50.5 (Released Feb, 2004)
- 0.50.5 Manual
- 0.50.5 Devel Docs
- Debian Packages
- Windows Port
- Information on Aspell 0.33.7 and Pspell.
News
September 12, 2011
In recent years the development of Aspell has stagnated, but I have
never really lost interest in Aspell. The problem was that I just did
not know how to move forward in light of Hunspell slower taking the
role that I meant for Aspell to take. However, after giving it
careful thought I believe Aspell future depends on making Enchant the
system spell checker. This will involve some effort on the part of
others to make it happen.
More
(Followup Discussion).
July 4, 2011
GNU Aspell 0.60.6.1 is now available.
This is a bug fix release.
More.
Aspell 0.60.7 pre-release snapshot now available
More.
May 14, 2008
Updated the Test Results page to include
recent versions of Aspell and Hunspell and to include total run times.
April 17, 2008
Need Someone to Maintain Aspell Windows Port.
More
April 16, 2008
GNU Aspell 0.60.6 is now available.
This release improves suggestion results in certain cases and fixes a
a number of bugs.
More.
November 4, 2007
At long last, the Aspell Spell Helper
is working again.
October 15, 2007
New Aspell 0.61 Snapshot Now Available.
More
November 20, 2006
Help Needed To Maintain Aspell's Many Dictionaries.
More.
November 7, 2004
MS Visual C++ Port Now Available for Aspell 0.60 at ftp.gnu.org:/gnu/aspell.
More
August 27, 2004
GNU Aspell 0.60 is now available. The two major changes in this
release, as compared to 0.50.5, are support for affix compression and
better Unicode support. More.
April 15, 2004
Thanks to Joseph Blough a small Win32/Linux GUI for Aspell is now
available. More.
March 25, 2004
Mirror for czyborra.com/charsets now
available.
Older News
Getting
The latest version of GNU Aspell is 0.60.6.1. You can find it at ftp.gnu.org:/gnu/aspell or at
a GNU mirror site. You
will also need to download at least one dictionary which can be found
at the same location.
If you are looking for Aspell 0.33.7, Pspell, or dictionaries for
Aspell 0.33.7 go here.
A patch for ispell.el for improved Aspell support also available.
This patch will notify aspell of the replacements one makes so it can
improve the suggestion list in the future. A more involved patch can
be found here
This one also adds UTF-8 support but will only apply cleanly to
Ispell.el 3.7 beta.
Support
Unofficial support for GNU Aspell can be found at the aspell-user
mailing list. You do not need to be subscribed in order to post,
however if you don't subscribe your post will need to be approved. The
list mailing address is aspell-user@gnu.org.
Please direct all problems you have with Aspell to this list and not
directly to Kevin.
Additional Information
- Manual
- Devel Docs
- Brave GNU World Questioner -
More info than you probably wanted to know about GNU Aspell.
- Administrative Changes Due to the Release of GNU Aspell 0.50
- Changes in GNU Aspell 0.50 important to a Packager.
Language Bindings
- Perl: Text::Aspell
- Ruby: Raspell
- PHP: Uses the old Pspell interface, Manual
Getting Involved
The easiest thing you can do help out is to try GNU Aspell out and
report bugs or even better submit patches to fix problems. Please use
the Sourceforge
tools to report bugs and submit patches.
If you are interested in following the latest developments be sure and
subscribe to the aspell-announce
mailing list.
If you are a fairly regular user of Aspell consider subscribing to the
aspell-user
mailing list to help other users out with their problems.
If you are interested in helping with the development of Aspell or
have an idea you would like to discuss post it to the aspell-devel
mailing list. The aspell-devel mailing list is meant for people
interested in the development of the actual Aspell utility/library.
If you have a question about how to use the Aspell library please post
to the aspell-user mailing list.
Donating
If you wish to support Aspell consider donating.
Your donation will improve Aspell by encouraging Kevin Atkinson, the
main developer of Aspell, to continue to spend his time developing
Aspell. Without your support Aspell may go into another period of
non-development as was the case for most of 2003.
To Do
Lots of jobs remain to be done. Unfortunately, I do not have the time
to do all so if you are interested in helping me with one of these
tasks please email me at kevina@gnu.org. Good C++ skills
are needed for most of these tasks involving coding.
Things that need to be done
These items need to be done before I consider Aspell finished. If you
are interested in helping me with one of these tasks please email
me. Good C++ skills are needed for most of these tasks involving
coding.
- Support Hunspell
features that Aspell doesn't have which prove to be usefull.
Most likely:
- Twofold suffix stripping
- Better support for compound words. The support for
conditional compound words found in Aspell versions 0.50
and earlier is no longer available since no one seams to be using
it. Support for unconditional compound words will still be
available. I have some ideas on the topic available here, but perhapes something
compatable with how Hunspell does it will be better.
- Maybe others.
- Create a generic filter to handle multi-character letters such as
"a
or \"a
for ä. This filter should make use of the
already exiting normalization code if possible. [Done for Aspell 0.61]
- Make Aspell Thread safe. Even though Aspell itself is not
multi-threaded I would like it to be thread safe so that it can be
used by multi-threaded programs. There are several areas of Aspell
that that are potently thread unsafe (such as accessing a global pool)
and several classes which have the potential of being used by more
than one thread (such as the personal dictionary). [In
Progress].
- Enhance ispell.el so that it will work better with GNU
Aspell. [In Progress].
- Clean up copyright notices and bring the Aspell package up to
GNU Standards. [In Progress].
Things I would like to get done
I would like to get these done. However, I may still consider Aspell
finished with out. They will probably eventually get
implemented. However, I could still use help with them.
- Be able to accept words with spaces in them as many languages
have words, such as a word in a foreign phrase, which only make sense
when followed by other words. See Words With Symbols in
Them.
- Reorganize manual to make it easier to understand and to make it
possible to break out useful man pages.
- Support soundslike lookup with affix compression. I think it
is possible, although I don't know how effective it will be. The basic
idea is to affix compress the soundslike codes and then match the
codes up with affix compressed words. If you are interested,
email aspell-devel@gnu.org, and I will explain it in more
detail.
- Use Lawrence Philips' new Double Metaphone algorithm. See
aspell.net/metaphone/. The main task involved
here is converting the algorithm into table form. This will take some
time but their is no real programming experience is required. If you
want to help with Aspell but don't have any real programming
experience, this would be a great place to start.
- Rank suggestions based on frequency information. Both global
frequency and document specific frequency can be used. The latter will
require that the whole document be made available to the spell checker.
Also use frequency information to flag words which are found in the
dictionary but not in common usage, and thus might not be what was
intended.
- Support a "dual-script" mode where Aspell can use a separate
dictionary depending on which script it detects the current word in, the
two dictionaries can have nothing in common, ie an English one and a
Russian one for example. This will not support two languages that
use the same script as that is a lot more complicated. For example if
the word is misspelled which dictionary should it use for the
suggestions?
- Write a GUI for the aspell utility. Ideally it should be able to do
everything the Aspell utility can do and not just be able spell check
a document.
- Develop a more powerfull C API for Aspell. Ideally this API should
allow one to perform all the tasks the Aspell utility can do. This
included the ability to check whole documents, and create
dictionaries, among other things.
- Create a C++ interface for Aspell, possibly on
top of the C one.
- Support more than one spell checker engine. The basic support is
there, but since there has only every been one spell checker engine,
it will probably take a decent amount of work.
Sub Projects
-
Lawrence Philips' (Double)
Metaphone Algorithm
- SCOWL (Spell Checker
Oriented Word Lists) and Friends
- czyborra.com/charsets mirror.
Copyright (C) 2004 Kevin Atkinson (kevina@gnu.org). Verbatim copying
and distribution of this entire article is permitted in any medium,
provided this notice is preserved.
Be sure to check out my
home page.
gipoco.com
is neither affiliated with the authors of this page or responsible
for its contents. This is a safe-cache copy of the original web site.
gipoco.com
is neither affiliated with the authors of this page nor responsible
for its contents. This is a safe-cache copy of the original web site.