Skip to main content
Python Software Foundation 20th Year Anniversary Fundraiser  Donate today!

PyEnchant wrapper for Kakoune

Project description


PyEnchant wrapper for Kakoune.


  1. Install the C Enchant library, and the required dictionaries. See PyEnchant documentation for details.

  2. Install the kak-spell script, for instance with pipx:

pipx install kak-spell
  1. Install plug.kak and add the following lines in your kakrc:
plug "dmerejkowsky/kak-spell"
  1. (optional): declare a user mode and some mappings:
plug "dmerejkowsky/kak-spell" config %{
  declare-user-mode kak-spell
  map global user s ': enter-user-mode -lock kak-spell<ret>' -docstring 'enter spell user mode'
  map global kak-spell a ': kak-spell-add<ret>' -docstring 'add the selection to the user dict'
  map global kak-spell d ': kak-spell-disable<ret>' -docstring 'clear spelling highlighters'
  map global kak-spell e ': kak-spell-enable en_US<ret> :kak-spell <ret>' -docstring 'enable spell check in English'
  map global kak-spell f ': kak-spell-enable fr_FR<ret> :kak-spell <ret>' -docstring 'run spell check in French'
  map global kak-spell l ': kak-spell-list <ret>' -docstring 'list spelling errors in a buffer'
  map global kak-spell n ': kak-spell-next<ret>' -docstring 'go to next spell error'
  map global kak-spell p ': kak-spell-previous<ret>' -docstring 'go to next spell error'
  map global kak-spell r ': kak-spell-replace<ret>' -docstring 'suggest a list of replacements'
  map global kak-spell x ': kak-spell-remove<ret>' -docstring 'remove the selection from the user dict'

Note that kak-spell-enable does several things:

  • Set a buffer scoped option kak_spell_lang that is used by other commands
  • Add a highlighter so that spelling errors are colored with the Error face
  • Adds a BufWritePost hook to spell check the buffer each time it gets written

The command kak-spell-disable undoes all of the above.

For now, there's no option to disable the hook, or to have it run in response to other events. Please open an issue if this bothers you.


You can discuss features of this plugin on

I'd like to thank all the people who contributed code and ideas to make usage of this plugin easier.

Project details

Download files

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

Files for kak-spell, version 0.3.1
Filename, size File type Python version Upload date Hashes
Filename, size kak_spell-0.3.1-py3-none-any.whl (6.8 kB) File type Wheel Python version py3 Upload date Hashes View
Filename, size kak-spell-0.3.1.tar.gz (6.2 kB) File type Source Python version None Upload date Hashes View

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring DigiCert DigiCert EV certificate Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page