Version 2.1 of package Jinx has just been released in GNU ELPA. You can now find it in M-x list-packages RET.
Jinx describes itself as: ======================= Enchanted Spell Checker ======================= More at https://elpa.gnu.org/packages/jinx.html ## Summary: ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ JINX.EL - ENCHANTED SPELL CHECKER ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Jinx is a fast just-in-time spell-checker for Emacs. Jinx highlights misspelled words in the text of the visible portion of the buffer. For efficiency, Jinx highlights misspellings lazily, recognizes window boundaries and text folding, if any. For example, when unfolding or scrolling, only the newly visible part of the text is checked if it has not been checked before. Each misspelling can be corrected from a list of dictionary words presented as a completion menu. ## Recent NEWS: ━━━━━━━━━━━━━━━━━━━━━ JINX.EL - CHANGELOG ━━━━━━━━━━━━━━━━━━━━━ 1 Version 2.1 (2025-04-04) ══════════════════════════ • `jinx-correct': For capitalized words, offer lower case variants to save in personal dictionary and file local variables. • Add `help-echo' to the Jinx overlays. 2 Version 2.0 (2025-03-11) ══════════════════════════ • Add `jinx-dir-local-words' saved in `.dir-locals.el'. Words can be added to the `.dir-locals.el' with the `/' key in the `jinx-correct' dialog. The `.dir-locals.el' file of the current or a parent directory is used. If it does not exist it is created in the project root or the current directory. 3 Version 1.12 (2025-01-28) ═══════════════════════════ • Improve performance in large folded Org buffers. • Support `lisp-data-mode'. • Retain dictionaries in weak hash table for sharing. 4 Version 1.11 (2024-12-22) ═══════════════════════════ • Require Emacs 28.1. • Remove special `org-fold' code. Set `org-fold-core-style' to `overlays' if unfolding in Org files does not work for you. • `jinx-languages': Group dictionaries by dictionary provider. 5 Version 1.10 (2024-07-23) ═══════════════════════════ • Bump Compat dependency to Compat 30. • Add include and linkpaths from FreeBSD for compilation. • Add `jinx--syntax-overrides' to override syntax table. 6 Version 1.9 (2024-06-29) ══════════════════════════ • Bugfix: In some rare scenarios, Jinx could hang when checking pending regions. • `jinx-correct-all': Add `ONLY-CHECK' prefix argument. 7 Version 1.8 (2024-06-19) ══════════════════════════ • Bugfix in `jinx-correct': Fix `wrong-type-argument' error if no Enchant dictionaries are found. 8 Version 1.7 (2024-05-15) ══════════════════════════ • `jinx--word-valid-p': Do not error on invalid characters. • `jinx-save-languages': New custom variable. 9 Version 1.6 (2024-04-12) ══════════════════════════ • Bugfix (again): Ensure that directory local variables work correctly with Jinx. It is possible to turn Jinx on or off via dir-locals, and also configure the language and local words. 10 Version 1.5 (2024-04-04) ═══════════════════════════ • Bugfix: Ensure that `jinx-next' unfolds hidden misspellings. • Bugfix: Ensure that directory local variable enabling `jinx-mode' works. 11 Version 1.4 (2024-03-10) ═══════════════════════════ • Bugfix: Ensure that `jinx-correct' saves words without text properties in the file-local variable `jinx-local-words'. • Bugfix: Ensure that `eval' local variable enabling `jinx-mode' works. • `jinx-correct': If a region is marked, call `jinx-correct-all' and restrict corrections to the marked region. • `jinx-exclude-faces', `jinx-include-faces', `jinx-exclude-regexps': Support mode aliases. 12 Version 1.3 (2024-02-23) ═══════════════════════════ • Fix interaction bug with the newest version of AUCTeX, where the major mode got changed unexpectedly. 13 Version 1.2 (2024-01-22) ═══════════════════════════ • Fix deadlock on MacOS during Jinx startup. • Timer optimizations. 14 Version 1.1 (2023-12-27) ═══════════════════════════ • Add mouse context menu to correct misspellings. The menu is triggered by a right click on a misspelling. 15 Version 1.0 (2023-12-01) ═══════════════════════════ • Allow capitalized form of a word if non-capitalized word is stored in the session word list. • Replace `jinx-excluded-modes' with `global-jinx-modes', the Emacs 28 convention for globalized minor modes. • `jinx-correct': Offer session words as suggestions. • Add `jinx-correct-nearest', `jinx-correct-all' and `jinx-correct-word' commands. The command `jinx-correct' dispatches to one of those commands depending on the prefix argument. • Recommend libenchant 2.3.1 or newer. Print a message if Enchant is outdated. • Support $LANG=C and $LANG=POSIX environment variable settings. 16 Version 0.9 (2023-07-02) ═══════════════════════════ • 🪄 Make sure that Emojis are not marked as misspelled 🧙🏼♀️. • Rename `jinx-correct-next/previous' to `jinx-next/previous'. The commands can be used outside the minibuffer. • Bind `M-n' and `M-p' to `jinx-next/previous' in `jinx-overlay-map'. • Bind `M-$' to `jinx-correct' in the `jinx-overlay-map'. • Add `jinx-repeat-map'. • Rename category of Jinx overlays to `jinx-overlay'. • Rename `jinx-misspelled-map' to `jinx-overlay-map'. • Add many more language modes to `jinx-camel-modes'. 17 Version 0.8 (2023-04-28) ═══════════════════════════ • `jinx-correct': Consistently move backward to the previous misspelling. In order … …