ffi-hunspell
Description
Ruby FFI bindings for Hunspell.
Examples
Open a dictionary:
require 'ffi/hunspell'
FFI::Hunspell.dict do |dict|
# ...
end
FFI::Hunspell.dict('en_GB') do |dict|
# ...
end
dict = FFI::Hunspell.dict('en_GB')
# ...
dict.close
Check if a word is valid:
dict.check?('dog')
# => true
dict.check?('d0g')
# => false
Find the stems of a word:
dict.stem('dogs')
# => ["dog"]
Suggest alternate spellings for a word:
dict.suggest('arbitrage')
# => ["arbitrage", "arbitrages", "arbitrager", "arbitraged", "arbitrate"]
Requirements
- libhunspell >= 1.2.0
- ffi ~> 1.0
- env ~> 0.2
Install
$ gem install ffi-hunspell
Known Issues
Some Linux distributions do not install the libhunspell-1.2.so
shared library file, but instead installs libhunspell-1.2.so.0
.
Simply create a symbolic link to the hunspell shared library,
so that FFI::Hunspell can find the library:
# ln -s /usr/lib/libhunspell-1.2.so.0 /usr/lib/libhunspell-1.2.so
License
Copyright (c) 2010-2012 Hal Brodigan
See LICENSE for license information.