Skip to main content

PyNuspell Nuspell Build Python Black


About PyNuspell

PyNuspell is a set of Python 3.x bindings for Nuspell spellchecking C++ library.

About Nuspell

Nuspell is a fast and safe spelling checker software program. It is designed for languages with rich morphology and complex word compounding. Nuspell is written in modern C++ and it supports Hunspell dictionaries.

Main features of Nuspell spelling checker:

  • Provides software library and command-line tool.
  • Suggests high-quality spelling corrections.
  • Backward compatibility with Hunspell dictionary file format.
  • Up to 3 times faster than Hunspell.
  • Full Unicode support backed by ICU.
  • Twofold affix stripping (for agglutinative languages, like Azeri, Basque, Estonian, Finnish, Hungarian, Turkish, etc.).
  • Supports complex compounds (for example, Hungarian, German and Dutch).
  • Supports advanced features, for example: special casing rules (Turkish dotted i or German sharp s), conditional affixes, circumfixes, fogemorphemes, forbidden words, pseudoroots and homonyms.
  • Free and open source software. Licensed under GNU LGPL v3 or later.

See more details at https://nuspell.github.io/ and https://github.com/nuspell/nuspell

Installing using pip

You can install this package using pip:

pip install pynuspell

To download dictionaries, please refer to https://github.com/nuspell/nuspell/wiki/Dictionaries-and-Contacts

Installing from source

Requirements:

  • Python 3.6 or later
  • Git
  • C++ compiler with cmake

Open a terminal and run the following commands:

# Clone repository
git clone --recurse-submodules https://github.com/scherzocrk/pynuspell.git
cd pynuspell

# Install vcpkg (Windows)
.\extern\vcpkg\bootstrap-vcpkg.bat
set VCPKG_ROOT=.\extern\vcpkg

# Install vcpkg (Linux/MacOS)
.\extern\vcpkg\bootstrap-vcpkg.sh
export VCPKG_ROOT=.\extern\vcpkg

# Install nuspell
.\extern\vcpkg\vcpkg install nuspell

# Build and install pynuspell
python setup.py install

# You can generate stub files for IntelliSense using:
pip install pybind11-stubgen
pybind11-stubgen --no-setup-py pynuspell

# You can run somes tests using:
pip install pytest
pytest tests/tests.py

Usage

>>> import pynuspell
>>> nuspell_dict = pynuspell.load_from_path('en-US')  # path to where en_US.aff and en_US.dic are found
>>> nuspell_dict.spell('spookie')
False
>>> nuspell_dict.suggest('spookie')
['spookier', 'spook']
>>> nuspell_dict.spell('spookier')
True

Next Steps

  • Add more bindings to existing features
  • Keep up to date with new releases of Nuspell
  • Anyone is more than welcome to contribute to this package

Contact information:

Acknowledgments

Special thanks to Nuspell and PyBind11 developers

License

PyNuspell is licensed under the LGPL version 3 or later, see LICENSE for more information.

Release files for pynuspell 1.0.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distributions (wheels)

Table of built distributions (wheels) for pynuspell 1.0.0
File
pynuspell-1.0.0-cp39-cp39-win_amd64.whl CPython 3.9 CPython 3.9 Windows x86-64 Details
pynuspell-1.0.0-cp39-cp39-win32.whl CPython 3.9 CPython 3.9 Windows x86-32 Details
pynuspell-1.0.0-cp39-cp39-manylinux2014_x86_64.whl CPython 3.9 CPython 3.9 Linux glibc 2.17+ x86-64 Details
pynuspell-1.0.0-cp39-cp39-macosx_10_9_x86_64.whl CPython 3.9 CPython 3.9 macOS 10.9+ x86-64 Details
pynuspell-1.0.0-cp38-cp38-win_amd64.whl CPython 3.8 CPython 3.8 Windows x86-64 Details
pynuspell-1.0.0-cp38-cp38-win32.whl CPython 3.8 CPython 3.8 Windows x86-32 Details
pynuspell-1.0.0-cp38-cp38-manylinux2014_x86_64.whl CPython 3.8 CPython 3.8 Linux glibc 2.17+ x86-64 Details
pynuspell-1.0.0-cp38-cp38-macosx_10_9_x86_64.whl CPython 3.8 CPython 3.8 macOS 10.9+ x86-64 Details
pynuspell-1.0.0-cp37-cp37m-win_amd64.whl CPython 3.7 CPython 3.7 pymalloc Windows x86-64 Details
pynuspell-1.0.0-cp37-cp37m-win32.whl CPython 3.7 CPython 3.7 pymalloc Windows x86-32 Details
pynuspell-1.0.0-cp37-cp37m-manylinux2014_x86_64.whl CPython 3.7 CPython 3.7 pymalloc Linux glibc 2.17+ x86-64 Details
pynuspell-1.0.0-cp37-cp37m-macosx_10_9_x86_64.whl CPython 3.7 CPython 3.7 pymalloc macOS 10.9+ x86-64 Details
pynuspell-1.0.0-cp36-cp36m-win_amd64.whl CPython 3.6 CPython 3.6 pymalloc Windows x86-64 Details
pynuspell-1.0.0-cp36-cp36m-win32.whl CPython 3.6 CPython 3.6 pymalloc Windows x86-32 Details
pynuspell-1.0.0-cp36-cp36m-manylinux2014_x86_64.whl CPython 3.6 CPython 3.6 pymalloc Linux glibc 2.17+ x86-64 Details
pynuspell-1.0.0-cp36-cp36m-macosx_10_9_x86_64.whl CPython 3.6 CPython 3.6 pymalloc macOS 10.9+ x86-64 Details

Total release size:196.6 MB

Release files / pynuspell-1.0.0-cp39-cp39-win_amd64.whl

Download URL pynuspell-1.0.0-cp39-cp39-win_amd64.whl
Size 12.4 MB
Tags CPython 3.9 Windows x86-64
SHA-256 checksum
How to use checksums
5872a3a3bc482c4d8e7fde41a751a2904b40663d0a99ce5e649174f5a3b6afb2
BLAKE2b-256 checksum
How to use checksums
a1a17dade250e54ad30262ee9585ec6645b41b9c1f3b99f94a4d26410ba07350
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.0 CPython/3.9.5

Release files / pynuspell-1.0.0-cp39-cp39-win32.whl

Download URL pynuspell-1.0.0-cp39-cp39-win32.whl
Size 12.2 MB
Tags CPython 3.9 Windows x86-32
SHA-256 checksum
How to use checksums
b7b6ee6a8226f61a3c9d15aa1ae0adb3d13f67b52445f7e580fe8be681ad44a4
BLAKE2b-256 checksum
How to use checksums
1068a4542beed85dc69acbc70f0a6b175892066da6023691e83dc1885bccace1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.0 CPython/3.9.5

Release files / pynuspell-1.0.0-cp39-cp39-manylinux2014_x86_64.whl

Download URL pynuspell-1.0.0-cp39-cp39-manylinux2014_x86_64.whl
Size 12.3 MB
Tags CPython 3.9 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
3270b63cb6211b67c1219d56349f1cd5b1204831f7b28c64e50330b4d7b0250a
BLAKE2b-256 checksum
How to use checksums
63dc6119702e5f804f45fb489cbf40aecf1567c135175da4e73cc566fa2a36b1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.0 CPython/3.9.5

Release files / pynuspell-1.0.0-cp39-cp39-macosx_10_9_x86_64.whl

Download URL pynuspell-1.0.0-cp39-cp39-macosx_10_9_x86_64.whl
Size 12.2 MB
Tags CPython 3.9 macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
db2ab55d4c7e73f1adf710fefc46b55b011fab805a3290fe153b49b2a1334f2d
BLAKE2b-256 checksum
How to use checksums
2904100aa1f4ec696703a594acf034dbad67ec7c93f1b22ca1254aefe975a506
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.0 CPython/3.9.5

Release files / pynuspell-1.0.0-cp38-cp38-win_amd64.whl

Download URL pynuspell-1.0.0-cp38-cp38-win_amd64.whl
Size 12.4 MB
Tags CPython 3.8 Windows x86-64
SHA-256 checksum
How to use checksums
85d69fad13df7376989c7be4ae8786cd36b3aa1a76478ec3b8680ea29bb1fc6b
BLAKE2b-256 checksum
How to use checksums
e9a4f095be99510313710ddb3b4105ae62a22170245858b0dcbeb32a9bb56ab3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.0 CPython/3.9.5

Release files / pynuspell-1.0.0-cp38-cp38-win32.whl

Download URL pynuspell-1.0.0-cp38-cp38-win32.whl
Size 12.2 MB
Tags CPython 3.8 Windows x86-32
SHA-256 checksum
How to use checksums
11af49a7c2e66acc048cdac6e5f807478b954977be33f277293230fafde13d61
BLAKE2b-256 checksum
How to use checksums
04857b56a01252269644c1560cd417308f1f08a9bbf15c1b934b8a2ec2706333
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.0 CPython/3.9.5

Release files / pynuspell-1.0.0-cp38-cp38-manylinux2014_x86_64.whl

Download URL pynuspell-1.0.0-cp38-cp38-manylinux2014_x86_64.whl
Size 12.3 MB
Tags CPython 3.8 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
8e37169e666e0718f8d8ad060de66c083fcd1868c9913d05a9e7474674f040da
BLAKE2b-256 checksum
How to use checksums
600ebb6fa297832c0a0e251dd40e1856bfb70e8ed0a6ad07ffbccc95c1020854
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.0 CPython/3.9.5

Release files / pynuspell-1.0.0-cp38-cp38-macosx_10_9_x86_64.whl

Download URL pynuspell-1.0.0-cp38-cp38-macosx_10_9_x86_64.whl
Size 12.2 MB
Tags CPython 3.8 macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
60fd0026c35a6d5cdd943e47c52b62665a0ed8d099a188e721cc3a42297396d9
BLAKE2b-256 checksum
How to use checksums
9698902fcbe197f6734687c9e046c796bdfb2c4da097ff2ef7c041ba05c1d932
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.0 CPython/3.9.5

Release files / pynuspell-1.0.0-cp37-cp37m-win_amd64.whl

Download URL pynuspell-1.0.0-cp37-cp37m-win_amd64.whl
Size 12.4 MB
Tags CPython 3.7 CPython 3.7 pymalloc Windows x86-64
SHA-256 checksum
How to use checksums
fd64d53630a8e9ea814fca9f017ad2bcfaf5dfe573c63803705b002476a2565b
BLAKE2b-256 checksum
How to use checksums
188211f9861c3ee988d80fcf10651983210f960ed7e554f66553271b2ae05d4f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.0 CPython/3.9.5

Release files / pynuspell-1.0.0-cp37-cp37m-win32.whl

Download URL pynuspell-1.0.0-cp37-cp37m-win32.whl
Size 12.2 MB
Tags CPython 3.7 CPython 3.7 pymalloc Windows x86-32
SHA-256 checksum
How to use checksums
467e50e3e0bad9a9bb2520acf8a67b7e852c6ed99d9bf11d5f4b4f006dc90100
BLAKE2b-256 checksum
How to use checksums
ef2d1033d01422ce8acfd038347706f58c12ff0580c1258979aad625e85a7257
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.0 CPython/3.9.5

Release files / pynuspell-1.0.0-cp37-cp37m-manylinux2014_x86_64.whl

Download URL pynuspell-1.0.0-cp37-cp37m-manylinux2014_x86_64.whl
Size 12.3 MB
Tags CPython 3.7 CPython 3.7 pymalloc Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
cefe8b8a9b03982b5af722e2407fb61b2e21ea104e888161f60a3b3db50746fb
BLAKE2b-256 checksum
How to use checksums
1caa2596ced89bb6a9559f3c3bc22619c0188d66b4e2353b7d9f94f2e2b8cd89
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.0 CPython/3.9.5

Release files / pynuspell-1.0.0-cp37-cp37m-macosx_10_9_x86_64.whl

Download URL pynuspell-1.0.0-cp37-cp37m-macosx_10_9_x86_64.whl
Size 12.2 MB
Tags CPython 3.7 CPython 3.7 pymalloc macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
db250b8cc062f8dc92ba02f4dd1fb7d7297b89fe309a8b750af6c2dc9691af98
BLAKE2b-256 checksum
How to use checksums
5c1413305777facce246c58766e9fb0dec86ab45e1d1fdaa21f1d44dc040961f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.0 CPython/3.9.5

Release files / pynuspell-1.0.0-cp36-cp36m-win_amd64.whl

Download URL pynuspell-1.0.0-cp36-cp36m-win_amd64.whl
Size 12.4 MB
Tags CPython 3.6 CPython 3.6 pymalloc Windows x86-64
SHA-256 checksum
How to use checksums
ccd5b6799eae91a5cfd7aac76a828bdc8da69479500618e5b10f63d00fd3ea71
BLAKE2b-256 checksum
How to use checksums
6a3e9a11413fd0b8af664445e030c9cde23db03b29e4ec8e7aaf223a5cacc99a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.0 CPython/3.9.5

Release files / pynuspell-1.0.0-cp36-cp36m-win32.whl

Download URL pynuspell-1.0.0-cp36-cp36m-win32.whl
Size 12.2 MB
Tags CPython 3.6 CPython 3.6 pymalloc Windows x86-32
SHA-256 checksum
How to use checksums
987d379cf945c032215af56a345338836c92b893f7a760688c120b9d7f9ba7c7
BLAKE2b-256 checksum
How to use checksums
3f0c9a3544a4a6cf83b88ddad4c7849258841bd311816cd5807d388e8921df98
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.0 CPython/3.9.5

Release files / pynuspell-1.0.0-cp36-cp36m-manylinux2014_x86_64.whl

Download URL pynuspell-1.0.0-cp36-cp36m-manylinux2014_x86_64.whl
Size 12.3 MB
Tags CPython 3.6 CPython 3.6 pymalloc Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
d6b6939e77f3ad33b69656d7786246e46ad97c3a1085509acca19ca9a6ed5340
BLAKE2b-256 checksum
How to use checksums
bcf6260224a5c5d36a6a6dca40f78cce919bd9f7ae315fb06d7767117195f02b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.0 CPython/3.9.5

Release files / pynuspell-1.0.0-cp36-cp36m-macosx_10_9_x86_64.whl

Download URL pynuspell-1.0.0-cp36-cp36m-macosx_10_9_x86_64.whl
Size 12.2 MB
Tags CPython 3.6 CPython 3.6 pymalloc macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
786f7a5adbe442650c46d39ce313bd35e65dacd59eee29245581c8d2629674b7
BLAKE2b-256 checksum
How to use checksums
8911f1656ec3553657fd20a87c75cae17b102e6ad4aa93194fd9c5b58ebb9faf
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.0 CPython/3.9.5

Release history Release notifications | RSS feed

This release

1.0.0 This release

16 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page