Skip to main content

PyEnchant wrapper for Kakoune

Project description

kak-spell

PyEnchant wrapper for Kakoune.

Installation

  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.

Discuss

You can discuss features of this plugin on discuss.kakoune.com.

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.

Source Distribution

kak-spell-0.3.1.tar.gz (6.2 kB view details)

Uploaded Source

Built Distribution

kak_spell-0.3.1-py3-none-any.whl (6.8 kB view details)

Uploaded Python 3

File details

Details for the file kak-spell-0.3.1.tar.gz.

File metadata

  • Download URL: kak-spell-0.3.1.tar.gz
  • Upload date:
  • Size: 6.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.4 CPython/3.9.2 Linux/5.11.2-arch1-1

File hashes

Hashes for kak-spell-0.3.1.tar.gz
Algorithm Hash digest
SHA256 1317bbefe8be91ea659a948afa4c1c2d67b9393e7b1e9eb5cb7a462e20889f5a
MD5 a232bbc6d936ae9263f32be28947ba2d
BLAKE2b-256 05160b357c9123deb1f143f6a0c74dc78d534683acff23e99a4d01f5a9a11868

See more details on using hashes here.

File details

Details for the file kak_spell-0.3.1-py3-none-any.whl.

File metadata

  • Download URL: kak_spell-0.3.1-py3-none-any.whl
  • Upload date:
  • Size: 6.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.4 CPython/3.9.2 Linux/5.11.2-arch1-1

File hashes

Hashes for kak_spell-0.3.1-py3-none-any.whl
Algorithm Hash digest
SHA256 d89f5093b2c2501ff45be3ad18e488fb075e4cacc060e5d9f2f0c063c864a0a9
MD5 74942ff9ad4a7008ad7f339e58c6010b
BLAKE2b-256 26e522c4fa282f899a4a3b7a19672bf5b0d247a25da82dfbf321da020783c0d5

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