$ cnpm install retext-equality
retext plugin to check for possible insensitive, inconsiderate language.
This package is ESM only:
Node 12+ is needed to use it and it must be imported instead of required.
npm:
npm install retext-equality
Say we have the following file, example.txt:
He’s pretty set on beating your butt for sheriff.
…and our script, example.js, looks like this:
import {readSync} from 'to-vfile'
import {reporter} from 'vfile-reporter'
import {unified} from 'unified'
import retextEnglish from 'retext-english'
import retextEquality from 'retext-equality'
import retextStringify from 'retext-stringify'
const file = readSync('example.txt')
unified()
.use(retextEnglish)
.use(retextEquality)
.use(retextStringify)
.process(file)
.then((file) => {
console.error(reporter(file))
})
Now, running node example yields:
example.txt
1:1-1:5 warning `He’s` may be insensitive, use `They`, `It` instead he-she retext-equality
⚠ 1 warning
This package exports no identifiers.
The default export is retextEquality.
unified().use(retextEquality[, options])Check for possible insensitive, inconsiderate language.
options.ignoreList of phrases not to warn about (Array.<string>).
options.noBinaryDo not allow binary references (boolean, default: false).
By default he is warned about unless it’s followed by something like or she
or and she.
When noBinary is true, both cases would be warned about.
See rules.md for a list of rules and how rules work.
Each message is emitted as a VFileMessage on file, with the
following fields:
message.sourceName of this plugin ('retext-equality').
message.ruleIdSee id in rules.md.
message.actualCurrent not ok phrase (string).
message.expectedSuggest ok phrase (Array.<string>).
message.noteExtra information, when available (string?).
alex
— Catch insensitive, inconsiderate writingretext-passive
— Check passive voiceretext-profanities
— Check for profane and vulgar wordingretext-simplify
— Check phrases for simpler alternativesSee contributing.md in retextjs/.github for ways
to get started.
See support.md for ways to get help.
To create new patterns, add them in the YAML files in the data/
directory, and run npm install and then npm test to build everything.
Please see the current patterns for inspiration.
New English rules will be automatically added to rules.md.
Once you are happy with the new rule, add a test for it in test.js and
open a pull request.
This project has a code of conduct. By interacting with this repository, organization, or community you agree to abide by its terms.
Copyright 2013 - present © cnpmjs.org | Home |