A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://github.com/d12frosted/flyspell-correct below:

d12frosted/flyspell-correct: Distraction-free words correction with flyspell via selected interface.

Correcting misspelled words with flyspell using favourite interface.

flyspell-correct provides several functions to start the correction process:

In most cases flyspell-correct-wrapper is the most convenient, so don’t forget to bind it.

(define-key flyspell-mode-map (kbd "C-;") #'flyspell-correct-wrapper)

Most interfaces also allow you to save the new word to your dictionary, accept this spelling in current buffer or for a whole session, or even skip this word (useful in a rapid flow).

flyspell-correct comes with default interface, which uses completing-read. If you use Ivy, Helm or Ido as completion system you probably want to replace the default interface with the specialized interface. All additional interfaces come in separate packages:

A so called ‘rapid mode’ means that you can correct multiple words in a single invocation of flyspell-correct-wrapper following current direction (usually, backwards). In order to enable it, one should call flyspell-correct-wrapper with universal argument - C-u. For example, C-u C-; will enable it.

flyspell-correct-completing-read interface

In order to use flyspell-correct-completing-read interface you have to install flyspell-correct package in any preferred way and then add following snippet to relevant part of your init.el file.

(require 'flyspell-correct)
(define-key flyspell-mode-map (kbd "C-;") 'flyspell-correct-wrapper)

Or via use-package.

(use-package flyspell-correct
  :after flyspell
  :bind (:map flyspell-mode-map ("C-;" . flyspell-correct-wrapper)))

If you do not want any binding, just replace :bind (:map flyspell-mode-map ("C-;" . flyspell-correct-wrapper)) with :defer t to use lazy loading.

In order to select the (s)ave, (a)ccept, sto(p) or s(k)ip actions, you can enter the shortcut key @s, @a, @p or @k. The actions will be automatically submitted. Furthermore suggestions can be quickly submitted by entering the numeric index in front of the suggestion. Besides the quick keys the usual completing-read interface is available, which may be enhanced and allow scrolling through candidates if you have a completion UI like Icomplete-vertical, Selectrum or Vertico installed.

flyspell-correct-ivy interface

In order to use flyspell-correct-ivy interface you have to install flyspell-correct-ivy package in any preferred way and then add following snippet to relevant part of your init.el file.

(require 'flyspell-correct-ivy)
(define-key flyspell-mode-map (kbd "C-;") 'flyspell-correct-wrapper)

Or via use-package.

(use-package flyspell-correct
  :after flyspell
  :bind (:map flyspell-mode-map ("C-;" . flyspell-correct-wrapper)))

(use-package flyspell-correct-ivy
  :after flyspell-correct)

If you do not want any binding, just replace :bind (:map flyspell-mode-map ("C-;" . flyspell-correct-wrapper)) with :defer t to use lazy loading.

Note that in order to access actions in ivy interface you need to press M-o. More on ivy mini buffer key bindings you can read in official documentation.

flyspell-correct-avy-menu interface

In order to use flyspell-correct-avy-menu interface you have to install flyspell-correct-avy-menu package in any preferred way and then add following snippet to relevant part of your init.el file.

(require 'flyspell-correct-avy-menu)
(define-key flyspell-mode-map (kbd "C-;") 'flyspell-correct-wrapper)

Or via use-package.

(use-package flyspell-correct
  :after flyspell
  :bind (:map flyspell-mode-map ("C-;" . flyspell-correct-wrapper)))

(use-package flyspell-correct-avy-menu
  :after flyspell-correct)

If you do not want any binding, just replace :bind (:map flyspell-mode-map ("C-;" . flyspell-correct-wrapper)) with :defer t to use lazy loading.

flyspell-correct-ido interface

In order to use flyspell-correct interface you have to install flyspell-correct-ido package in any preferred way and then add following snippet to relevant part of your init.el file.

(require 'flyspell-correct)
(require 'flyspell-correct-ido)
(define-key flyspell-mode-map (kbd "C-;") 'flyspell-correct-wrapper)

Or via use-package.

(use-package flyspell-correct
  :after flyspell
  :bind (:map flyspell-mode-map ("C-;" . flyspell-correct-wrapper)))

(use-package flyspell-correct-ido
  :after flyspell-correct)

If you do not want any binding, just replace :bind (:map flyspell-mode-map ("C-;" . flyspell-correct-wrapper)) with :defer t to use lazy loading.

flyspell-correct-helm interface

In order to use flyspell-correct-helm interface you have to install flyspell-correct-helm package in any preferred way and then add following snippet to relevant part of your init.el file.

(require 'flyspell-correct-helm)
(define-key flyspell-mode-map (kbd "C-;") 'flyspell-correct-wrapper)

Or via use-package.

(use-package flyspell-correct
  :after flyspell
  :bind (:map flyspell-mode-map ("C-;" . flyspell-correct-wrapper)))

(use-package flyspell-correct-helm
  :after flyspell-correct)

If you do not want any binding, just replace :bind (:map flyspell-mode-map ("C-;" . flyspell-correct-wrapper)) with :defer t to use lazy loading.

flyspell-correct-popup interface

In order to use flyspell-correct-popup interface you have to install flyspell-correct-popup package in any preferred way and then add following snippet to relevant part of your init.el file.

(require 'flyspell-correct-popup)
(define-key flyspell-mode-map (kbd "C-;") 'flyspell-correct-wrapper)

Or via use-package.

(use-package flyspell-correct
  :after flyspell
  :bind (:map flyspell-mode-map ("C-;" . flyspell-correct-wrapper)))

(use-package flyspell-correct-popup
  :after flyspell-correct)

If you do not want any binding, just replace :bind (:map flyspell-mode-map ("C-;" . flyspell-correct-wrapper)) with :defer t to use lazy loading.

There are some cool usability suggestions by @alphapapa shared in d12frosted/flyspell-correct#30 that you might want to use. Enjoy!

Unfortunately, the following functions are renamed.

Please make sure to update to new names.

One can easily implement custom interface for flyspell-correct. It has to be a function accepting two arguments:

Result must be either a string (replacement word) or a cons of a command and a string (replacement word), where the command is one of the following:

Check any existing interface for reference.

The word that is being currently corrected (e.g. you are selecting the correction for misspelled word) is highlighted with flyspell-correct-highlight-face. If you wish to disable extra highlighting, just set the value of flyspell-correct-highlight to nil.

(setq flyspell-correct-highlight nil)

/Take my advice and don’t use this functionality unless you find flyspell-correct-wrapper function useless for your purposes. You can find more info in this comment.

This package also provides auto correction minor mode called flyspell-correct-auto-mode. When enabled it will automatically invoke flyspell-correct-previous-word-generic after certain delay configured by flyspell-correct-auto-delay when there is at least one incorrect word.

(add-hook 'flyspell-mode-hook #'flyspell-correct-auto-mode)

One can also configure interface specially for flyspell-correct-previous-word-generic called by flyspell-correct-auto-mode by setting value of flyspell-correct-auto-mode-interface.

There are already packages like helm-flyspell and flyspell-popup. So why would anyone create yet another similar package? The reason is simple - to support another interface or completion system. flyspell-correct started because ivy was missing similar to helm-flyspell package. But I didn’t want to create a package just for ivy. The reasoning is simple - all those packages should have similar functionality but different interface. Adding something new to one of these packages ideally should be reflected in all others. So I decided to create generic package that works with any interfaces. It’s not about one package containing all possible interfaces, but about a package giving you functionality with an interface of your choice.

And over the time, flyspell-correct got some killer features (like quick access to misspelled words from anywhere), rapid mode and some others.

completing-read interface

This package is available thanks to these people:

Additional thanks to all contributors:


RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4