Check possible insensitive, inconsiderate language
Clone or download
AhmedRedaAmin and wooorm Add more notes and racially insensitive patterns
Closes GH-49.

Reviewed-by: Titus Wormer <tituswormer@gmail.com>
Latest commit 5c880e1 Oct 12, 2018

readme.md

retext-equality Build Status Coverage Status Chat

Warn about possible insensitive, inconsiderate language with retext.

Installation

npm:

npm install retext-equality

Usage

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:

var vfile = require('to-vfile')
var report = require('vfile-reporter')
var unified = require('unified')
var english = require('retext-english')
var stringify = require('retext-stringify')
var equality = require('retext-equality')

unified()
  .use(english)
  .use(equality)
  .use(stringify)
  .process(vfile.readSync('example.txt'), function(err, file) {
    console.error(report(err || file))
  })

Now, running node example yields:

example.txt
    1:1-1:4  warning  `His` may be insensitive, use `Their`, `Theirs`, `Them` instead           her-him       retext-equality
  1:31-1:37  warning  `master` / `slave` may be insensitive, use `primary` / `replica` instead  master-slave  retext-equality

⚠ 2 warnings

API

retext().use(equality[, options])

Adds warnings for possible insensitive, inconsiderate language to the processed virtual files.

options
options.ignore

Array.<string> — List of phrases not to warn about

options.noBinary

boolean, default: false — Do not allow binary references. 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.

Rules

See rules.md for a list of rules.

Contributing

Thanks, contributions are greatly appreciated! 👍 See contributing.md in retextjs/retext for ways to get started. This organisation has a Code of Conduct. By interacting with this repository, organisation, or community you agree to abide by its terms.

To create new patterns, add them in the YAML files in the script/ directory, and run npm install and then npm test to build everything. New rules will be automatically added to rules.md. Please see the current patterns for inspiration.

Once you are happy with the new rule, add a test for it in test.js and open a Pull Request.

Related

License

MIT © Titus Wormer