unified

Project: retextjs/retext-spell

Package: retext-spell@5.0.0

  1. Dependents: 15
  2. retext plugin to check spelling
  1. unified 173
  2. plugin 135
  3. retext 38
  4. retext-plugin 25

retext-spell

Build Coverage Downloads Size Sponsors Backers Chat

retext plugin to check spelling (with nspell).

Install

This package is ESM only: Node 12+ is needed to use it and it must be imported instead of required.

npm:

npm install retext-spell

Use

import {reporter} from 'vfile-reporter'
import {retext} from 'retext'
import retextSpell from 'retext-spell'
import dictionary from 'dictionary-en-gb'

retext()
  .use(retextSpell, dictionary)
  .process('Some useles documeant.')
  .then((file) => {
    console.error(reporter(file))
  })

Yields:

   1:6-1:12  warning  `useles` is misspelt; did you mean `useless`?      useles     retext-spell
  1:13-1:22  warning  `documeant` is misspelt; did you mean `document`?  documeant  retext-spell

⚠ 2 warnings

API

This package exports no identifiers. The default export is retextSpell.

unified().use(retextSpell, options)

retext-spell is async; use process, not processSync.

Check spelling (with nspell).

Signatures
options.dictionary

A dictionary (Function). Result of requiring one of the dictionaries in wooorm/dictionaries.

options.personal

Personal dictionary (string or a Buffer in UTF-8, optional).

options.ignore

List of words to ignore (Array.<string>, default []).

options.ignoreLiteral

Whether to ignore literal words (boolean?, default true).

options.ignoreDigits

Whether to ignore “words” that contain only digits, such as 123456 (boolean?, default true).

options.normalizeApostrophes

Deal with apostrophes (boolean?, default true). Whether to swap smart apostrophes () with straight apostrophes (') before checking spelling. Dictionaries typically support this, but this option can be used if not.

options.max

Number of unique words to suggest for (number?, default 30). By default, up to thirty words are suggested for. Further misspellings are still warned about, but without suggestions. Increasing this number significantly impacts performance.

Messages

Each message is emitted as a VFileMessage on file, with the following fields:

message.source

Name of this plugin ('retext-spell').

message.ruleId

Normalized not ok word (string, such as 'useles').

message.actual

Current not ok word (string, such as 'Useles').

message.expected

List of suggestions of words to use (Array.<string>, such as ['Useless']).

Contribute

See contributing.md in retextjs/.github for ways to get started. See support.md for ways to get help.

This project has a code of conduct. By interacting with this repository, organization, or community you agree to abide by its terms.

License

MIT © Titus Wormer