Python GTK Spellcheck is a simple but quite powerful spellchecking library for GTK written in pure Python. It's spellchecking component is based on Enchant and it supports both GTK 3 and 4 via PyGObject.
⚡️ News: Thanks to @cheywood, Python GTK Spellcheck now supports GTK 4! 🎉
🟢 Status: This project is mature, actively maintained, and open to contributions and co-maintainership.
- spellchecking based on Enchant for
GtkTextView
- support for word, line, and multiline ignore regular expressions
- support for both GTK 3 and 4 via PyGObject for Python 3
- configurable extra word characters such as
'
- localized names of the available languages based on ISO-Codes
- support for custom ignore tags and hot swap of
GtkTextBuffer
- support for Hunspell (LibreOffice) and Aspell (GNU) dictionaries
Python GTK Spellcheck is available from the Python Package Index:
pip install pygtkspellcheck
Depending on your distribution, you may also find Python GTK Spellcheck in your package manager.
For instance, on Debian you may want to install the python3-gtkspellcheck
package.
Over time, several projects have used Python GTK Spellcheck or are still using it. Among those are:
- Nested Editor: “Specialized editor for structured documents.”
- Cherry Tree: “A hierarchical note taking application, […].”
- Zim: “Zim is a graphical text editor used to maintain a collection of wiki pages.”
- REMARKABLE: “The best markdown editor for Linux and Windows.”
- RedNotebook: “RedNotebook is a modern journal.”
- Reportbug: “Reports bugs in the Debian distribution.”
- UberWriter: “UberWriter is a writing application for markdown.”
- Gourmet: “Gourmet Recipe Manager is a manager, editor, and organizer for recipes.“
Version numbers follow Semantic Versioning. However, the update from 3 to 4 pertains only API incompatible changes in oxt_extract
and not the spellchecking component. The update from 4 to 5 removed support for Python 2, GTK 2, pylocales
, and the oxt_extract
API. Otherwise, the API is still compatible with version 3.
The documentation is available at Read the Docs.
We welcome all kinds of contributions! ❤️
For minor changes and bug fixes feel free to simply open a pull request. For major changes impacting the overall design of Python GTK Spellcheck, please first start a discussion outlining your idea.
By submitting a PR, you agree to license your contributions under “GPLv3 or later”.