All Projects → phanect → eslint-plugin-editorconfig

phanect / eslint-plugin-editorconfig

Licence: MIT license
An ESLint plugin to enforce EditorConfig rules

Programming Languages

javascript
184084 projects - #8 most used programming language
shell
77523 projects
typescript
32286 projects

Projects that are alternatives of or similar to eslint-plugin-editorconfig

Eslint Import Resolver Alias
a simple Node behavior import resolution plugin for eslint-plugin-import, supporting module alias
Stars: ✭ 121 (+450%)
Mutual labels:  eslint, eslint-plugin
Eslint Plugin Lodash
ESLint rules for lodash
Stars: ✭ 208 (+845.45%)
Mutual labels:  eslint, eslint-plugin
Eslint Plugin Unicorn
Various awesome ESLint rules
Stars: ✭ 2,157 (+9704.55%)
Mutual labels:  eslint, eslint-plugin
Typescript Eslint
✨ Monorepo for all the tooling which enables ESLint to support TypeScript
Stars: ✭ 10,831 (+49131.82%)
Mutual labels:  eslint, eslint-plugin
Eslint Plugin Mocha
ESLint rules for mocha
Stars: ✭ 249 (+1031.82%)
Mutual labels:  eslint, eslint-plugin
Eslint Plugin I18n Json
Fully extendable eslint plugin for JSON i18n translation files.
Stars: ✭ 101 (+359.09%)
Mutual labels:  eslint, eslint-plugin
html-eslint
ESLint plugin for linting HTML
Stars: ✭ 72 (+227.27%)
Mutual labels:  eslint, eslint-plugin
Eslint Plugin Lwc
Official ESLint rules for LWC
Stars: ✭ 51 (+131.82%)
Mutual labels:  eslint, eslint-plugin
Eslint Plugin Ember
An ESlint plugin that provides set of rules for Ember Applications based on commonly known good practices.
Stars: ✭ 240 (+990.91%)
Mutual labels:  eslint, eslint-plugin
Eslint Plugin Eslint Comments
Additional ESLint rules for directive comments of ESLint.
Stars: ✭ 221 (+904.55%)
Mutual labels:  eslint, eslint-plugin
Eslint Mdx
ESLint Parser/Plugin for MDX
Stars: ✭ 89 (+304.55%)
Mutual labels:  eslint, eslint-plugin
figma-plugin-typescript-boilerplate
Figma plugin TypeScript boilerplate to start developing right away
Stars: ✭ 43 (+95.45%)
Mutual labels:  eslint, editorconfig
Sowing Machine
🌱A React UI toolchain & JSX alternative
Stars: ✭ 64 (+190.91%)
Mutual labels:  eslint, eslint-plugin
Eslint Plugin Css Modules
Project status: NOT MAINTAINED; Checks that you are using the existent css/scss classes, no more no less
Stars: ✭ 115 (+422.73%)
Mutual labels:  eslint, eslint-plugin
Eslint Plugin Monorepo
ESLint Plugin for monorepos
Stars: ✭ 56 (+154.55%)
Mutual labels:  eslint, eslint-plugin
Eslint Plugin Boundaries
Eslint plugin checking architecture boundaries between elements
Stars: ✭ 157 (+613.64%)
Mutual labels:  eslint, eslint-plugin
Eslint Plugin
ESLint configurations and additional rules for me
Stars: ✭ 19 (-13.64%)
Mutual labels:  eslint, eslint-plugin
Eslint Plugin Vue I18n
🌐 ESLint plugin for Vue I18n
Stars: ✭ 50 (+127.27%)
Mutual labels:  eslint, eslint-plugin
Eslint Plugin Ava
ESLint rules for AVA
Stars: ✭ 209 (+850%)
Mutual labels:  eslint, eslint-plugin
eslint-plugin-pug
An ESLint plugin for linting inline scripts in Pug files
Stars: ✭ 17 (-22.73%)
Mutual labels:  eslint, eslint-plugin

eslint-plugin-editorconfig

An ESLint plugin to enforce EditorConfig rules

CircleCI NPM Version

Install

$ npm install --save-dev eslint eslint-plugin-editorconfig

or

$ yarn add --dev eslint eslint-plugin-editorconfig

If you use typescript-eslint, you need to install @typescript-eslint/eslint-plugin too.

$ npm install --save-dev @typescript-eslint/eslint-plugin

Usage

Like other ESLint plugins,

  • add rules in the rules
  • add "editorconfig" in the plugins

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-last
  • indent
  • linebreak-style
  • no-trailing-spaces
  • unicode-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

MIT

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].