postmodern / ffi-hunspell

Ruby FFI bindings for Hunspell.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

ffi-hunspell

CI Code Climate

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

Install

$ gem install ffi-hunspell

libhunspell

  • Debian / Ubuntu:

    $ sudo apt install libhunspell-dev hunspell-en-us
    
  • RedHat / Fedora:

    $ sudo dnf install hunspell-devel hunspell-en
    
  • macOS:

    $ brew install hunspell
    

License

Copyright (c) 2010-2021 Hal Brodigan

See {file:LICENSE.txt} for license information.

About

Ruby FFI bindings for Hunspell.

License:MIT License


Languages

Language:Ruby 100.0%