/eslint-plugin-communist-spelling

Promotes American values in variable names

Primary LanguageJavaScript

Build Status npm

eslint-plugin-communist-spelling

An ESLint plugin containing a single rule to catch variable names written in Communist Commonwealth English instead of American English. Keep them Reds out of decent American codebases.

function favouriteCountry({ colours = ["communist", "red"] }) {} // πŸ‘ŽπŸ˜ β˜­
function favoriteCountry({ colors = ["red", "white", "blue"] }) {} // πŸ‘πŸ‡ΊπŸ‡ΈπŸ¦…

...or, if you're a Godless Communist Commonwealther, the rule can be inverted to enforce Commonwealth spellings in your variable names.

In-depth documentation for the rule, the available options, and more examples of code are located here:

Installation

If using yarn:

yarn add -D eslint-plugin-communist-spelling

If using npm:

npm install --save-dev eslint-plugin-communist-spelling

Usage

Add communist-spelling to the plugins section of your .eslintrc configuration file, and communist-spelling/communist-spelling to the list of rules. You can omit the eslint-plugin- prefix:

{
    "plugins": ["communist-spelling"],
    "rules": {
        "communist-spelling/communist-spelling": "error"
    }
}

or, if using a YAML ESLint config file:

plugins:
    - communist-spelling
rules:
    communist-spelling/communist-spelling:
        - error

Releasing

Releases to NPM are performed via Travis when tagged commits are pushed to the repo. Create a new tagged commit and bump the version in package.json with:

npm version patch

and push the new commits and tags with:

git push && git push --tags

Acknowledgements

The JSON data for spelling differences was adapted from the American-British-English-Translator. The core functionality of the tree-traversing code was adapted from the camelCase rule included in the core ESLint package.