2.9 KiB
		
	
	
	
	
	
	
	
			
		
		
	
	Completion At Point extensions using Jinx spell checking
Cape-jinx-completion package
Simple package providing completion-at-point extension using spell checking capabilities derived from Abiword's libenchant. All of the heavy lifting is done using jinx.el package - Enchanted Spell Checker.
Libenchant wraps several of the spell checkers. Jinx.el package provides on-the-fly spell checking and is a pleasure to configure, especially when using multiple dictionaries.
Picture is worth a thousand words
Completion candidates using spell checker:

Installation instructions
Requirements
Using straight.el
  ;; First we need to configure jinx. You don't need to enable jinx-mode to use cape-jinx,
  ;; but you need to provide configuration and set up dictionaries to use.
  (use-package jinx
    :straight (:host github :repo "minad/jinx" :files ("*"))
    :config
    ;; Add unicode stuff I need to exclude from spell-checking (emojis, symbols, etc)
    (push "[\U00002600-\U0001ffff]"
          (alist-get t jinx-exclude-regexps))
    ;; set langauge dictionaries to use - the list is space seprated in a single string.
    (setq jinx-languages "pl en"))
  ;; Cape-jinx package and configuration:
  (use-package cape-jinx-completion
    :straight (:type git
                     :repo "https://code.bsdgeek.org/adam/cape-jinx-completion"
                     :files (:defaults "*.el"))
    :after jinx
    :config
    ;; add cape-jinx to completion-at-point functions list.
    (add-to-list 'completion-at-point-functions #'cape-jinx-completion))Customization
Options available to customize are literally copied from cape-dict and work exactly the same way.
- cape-jinx-case-replaceControls whether case of input be preserved.
- cape-jinx-case-foldControls whether case fold search should be used during search.
How to contribute
The latest source code is available at https://code.bsdgeek.org/adam/cape-jinx-completion
Issue reports, questions, comments and code patches are welcome – you can send them to me over e-mail at adam at kruszewski dot name (please be patient as I'm not checking this account on a daily basis).
If you haven't sent code patches via e-mail yet and would like to learn how to work with an e-mail based workflow, you can read more at git format-patch man page or at git-send-email.io.