eslint-plugin-array-plural
ESLint plugin to force usage of plural nouns to name array variables.
Installation
You'll first need to install ESLint:
npm i eslint --save-dev
yarn add eslint --dev
Next, install eslint-plugin-array-plural
:
npm i eslint-plugin-array-plural --save-dev
yarn add eslint-plugin-array-plural --dev
Note: If you installed ESLint globally (using the -g
flag) then you must also install eslint-plugin-array-plural
globally.
Usage
Add array-plural
to the plugins section of your .eslintrc
configuration file. You can omit the eslint-plugin-
prefix:
{
"plugins": [
"array-plural"
]
}
Then configure the rules you want to use under the rules section.
{
"rules": {
"array-plural/array-plural": 2
}
}
Rule Details
Examples of incorrect code for this rule:
const number = [0, 1, 2];
const correctNumber = [0, 1, 2];
const ULTIMATE_NUMBER = [0, 1, 2];
let coordinary;
coordinary = [0, 0];
const uppercaseArgument = arguments.map(a => a.toUpperCase());
const fiveHappyNumber = new Array(5);
const specialCharacter = Array.from("foobar");
Examples of correct code for this rule:
var numbers = [0, 1, 2];
var strings = ["foo", "bar", "baz"];
var ids;
ids = [0, 1, 2];
let ultimateNumbers = [6, 7, 42];
const PREDEFINED_NUMBERS = [0, 1, 2];
const {number} = {number: [0, 1, 2]};
const crazyFish = ["black bass", "shark", "koi"];
const subdividedNumbersArray = [[0, 3, 6, 9], [1, 4, 7], [2, 5, 8]];
Options
bracket
(boolean: Default = true
) Detect variable with bracket access as array and force usage of plural nouns.allows
(array of strings: Default = ["array", "list"]
) Whitelist name which can be used to name array variables.
bracket
Examples of incorrect code for this rule with the default { "bracket": true }
option:
number[0];
predefinedNumber[1];
Examples of correct code for this rule with the default { "bracket": true }
option:
numbers[0];
object.number[0];
predefinedNumber['foo'];
Examples of correct code for this rule with the { "bracket": false }
option:
number[0];
predefinedNumber[1];
allows
Examples of incorrect code for this rule with the default { "allows": ["array", "list"] }
option:
const number = [0, 1, 2];
const numberarray = [0, 1, 2];
Examples of correct code for this rule with the default { "allows": ["array", "list"] }
option:
const numberArray = [0, 1, 2];
const NUMBER_ARRAY = [0, 1, 2];
const numberList = [0, 1, 2];
const NUMBER_LIST = [0, 1, 2];
Examples of correct code for this rule with the { "allows": ["group"] }
option:
const numberGroup = [0, 1, 2];
const NUMBER_GROUP = [0, 1, 2];