Skip to main content

spaCy extension for Hunspell.

Project description

## spacy_hunspell: Hunspell extension for spaCy

This package uses the [spaCy 2.0 extensions](https://spacy.io/usage/processing-pipelines#extensions)
to add [Hunspell](http://hunspell.github.io) support for spellchecking.
Inspired from [this discussion here](https://github.com/explosion/spaCy/issues/315#issuecomment-346194645).

## Usage

Add the spaCyHunSpell to the spaCy pipeline.

```
import spacy
from spacy_hunspell import spaCyHunSpell

nlp = spacy.load('en_core_web_sm')
hunspell = spaCyHunSpell('mac')
nlp.add_pipe(hunspell)

doc = nlp('I can haz cheezeburger.')
haz = doc[2]
haz._.hunspell_spell # False
haz._.hunspell_suggest # ['ha', 'haze', 'hazy', 'has', 'hat', 'had', 'hag', 'ham', 'hap', 'hay', 'haw', 'ha z']
```

There are two default locations for Hunspell dictionaries for each platform
(`mac`, and `linux`). If there are not you can specify the two files manually.

```
hunspell = spaCyHunSpell('mac')
hunspell = spaCyHunSpell('linux')
hunspell = spaCyHunSpell('en_US.dic', 'en_US.aff')
```

You can find the [English dictionary files here](http://wordlist.aspell.net/dicts/).

## Installation

You can install the package directly if you have the prerequisites to
install Hunspell. If it errors out, manually install Hunspell (see below).

```
pip install spacy_hunspell
```

Install Hunspell on Linux.

```
sudo apt-get install libhunspell-dev
```

Install Hunspell on Mac.

```
brew install hunspell
```

Install the Python bindings for Hunspell ([`pyhunspell`](https://github.com/blatinier/pyhunspell)):

```
pip install hunspell
```

For Mac, you may have to add a few steps before pip installing:

```
export C_INCLUDE_PATH=/usr/local/include/hunspell
ln -s /usr/local/lib/libhunspell-{VERSION_NUMBER}.a /usr/local/lib/libhunspell.a
```

For Mac 10.13 High Sierra, you may have to set the C flags ([issue](https://github.com/blatinier/pyhunspell/issues/33)).

```
CFLAGS=$(pkg-config --cflags hunspell) LDFLAGS=$(pkg-config --libs hunspell) pip install hunspell
```

Install the rest of the requirements.

```
pip install -r requirements.txt
```

And download at least one spaCy model.

```
python -m spacy download en_core_web_sm
```

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

spacy_hunspell-0.1.0.tar.gz (2.8 kB view details)

Uploaded Source

File details

Details for the file spacy_hunspell-0.1.0.tar.gz.

File metadata

File hashes

Hashes for spacy_hunspell-0.1.0.tar.gz
Algorithm Hash digest
SHA256 d3c34cc7197d0d484c41f4c58bc6282aca48be2178f53aac93121fac6fedd7c6
MD5 5a1448af06dd52951774ff865b16e03e
BLAKE2b-256 d96ad977f74eff8354a5fdd6b5c0d8b4f8caa8d676970e18ff961694d978e7f7

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page