Giter VIP home page Giter VIP logo

eslint-plugin-editorconfig's Introduction

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/max-len": "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
  • max-len
  • 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/max-len Enforce EditorConfig rules for maximum line length
editorconfig/no-trailing-spaces Enforce EditorConfig rules for trailing spaces

License & Credit

MIT

This plugin includes code derived from klona.

eslint-plugin-editorconfig's People

Contributors

phanect avatar piranna avatar renovate-bot avatar dependabot[bot] avatar

eslint-plugin-editorconfig's Issues

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.