Package Exports
- eslint-plugin-editorconfig
- eslint-plugin-editorconfig/main.js
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (eslint-plugin-editorconfig) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
eslint-plugin-editorconfig
An ESLint plugin to enforce EditorConfig rules
Install
$ npm install --save-dev eslint eslint-plugin-editorconfigor
$ yarn add --dev eslint eslint-plugin-editorconfigIf you use typescript-eslint, you need to install @typescript-eslint/eslint-plugin too.
$ npm install --save-dev @typescript-eslint/eslint-pluginUsage
Like other ESLint plugins,
- add rules in the
rules - add
"editorconfig"in theplugins
in your .eslintrc*
{
// ...
"rules": {
"editorconfig/charset": "error",
"editorconfig/eol-last": "error",
"editorconfig/indent": "error",
"editorconfig/linebreak-style": "error",
"editorconfig/no-trailing-spaces": "error"
},
"plugins": [ "editorconfig" ]
}Or you can extend plugin:editorconfig/all instead of adding rules.
{
// ...
"extends": [ "plugin:editorconfig/all" ],
"plugins": [ "editorconfig" ]
}Conflicting ESLint rules
Following rules may conflict editorconfig/* rule.
It is recommended to disable them.
eol-lastindentlinebreak-styleno-trailing-spacesunicode-bom@typescript-eslint/eol-last@typescript-eslint/indent@typescript-eslint/linebreak-style@typescript-eslint/no-trailing-spaces@typescript-eslint/unicode-bom
If above rules are specified in your .eslintrc, just remove them.
If they are specified in the extended config, consider adding plugin:editorconfig/noconflict to your extends.
{
"extends": [
"@phanect/phanective",
"plugin:editorconfig/noconflict"
],
// ...
}If you extend plugin:editorconfig/all, the rules above are turned off too, so you don't have to add plugin:editorconfig/noconflict in addition to plugin:editorconfig/all.
Rules
Internally, eslint-plugin-editorconfig uses the existing ESLint and typescript-eslint rules to verify/fix the code. Some rules allow passing options.
All the citation in the docs is from the backend ESLint rule document otherwise noted.
| Rule | Description | Fixable |
|---|---|---|
| editorconfig/charset | Enforce EditorConfig rules for charset | ✅ |
| editorconfig/eol-last | Enforce EditorConfig rules for the newlines at the end of files | ✅ |
| editorconfig/indent | Enforce EditorConfig rules for indentation | ✅ |
| editorconfig/linebreak-style | Enforce EditorConfig rules for linebreak style | ✅ |
| editorconfig/no-trailing-spaces | Enforce EditorConfig rules for trailing spaces | ✅ |
License & Credit
This plugin includes code derived from klona.