raspell
An interface binding for the Aspell spelling checker.
¶ ↑
LicenseCopyright 2007-2012 Cloudburst, LLC. Licensed under the GPL 2.0. See included LICENSE file. Portions copyright 2005 Matthias Veit, Biro Eszter and used with permission.
¶ ↑
RequirementsRaspell requires Aspell version 0.6 (www.aspell.net) and at least one Aspell dictionary.
MacPorts:
port install aspell aspell-dict-en
Homebrew:
brew install aspell --lang=en
Ubuntu:
apt-get install aspell libaspell-dev aspell-en
¶ ↑
InstallationMac:
gem install raspell -- --with-opt-dir=/opt/local
Ubuntu:
gem install raspell
¶ ↑
UsageAspell lets you check
words and suggest
corrections. For example:
require 'rubygems' require 'raspell' speller = Aspell.new("en_US") speller.suggestion_mode = Aspell::NORMAL string = "my haert wil go on" string.gsub(/[\w\']+/) do |word| if !speller.check(word) # word is wrong puts "Possible correction for #{word}:" puts speller.suggest(word).first end end
This outputs:
Possible correction for haert: heart Possible correction for wil: Will
Note that suggest
returns an array of suggestions even for words that are correctly spelled.
¶ ↑
OptionsThe most useful options are suggestion_mode
, and the passthrough option ignore_case
. Passthrough options have to be set as so:
speller.set_option("ignore-case", "true")
See aspell.net/man-html/The-Options.html for a list of the passthrough options.
¶ ↑
Reporting problemsThe support forum is here.
Patches and contributions are very welcome. Please note that contributors are required to assign copyright for their additions to Cloudburst, LLC.