$ npm install eslint-plugin-putout
ESLint plugin for 🐊Putout with built-in rules from @putout/eslint-config.
npm i putout eslint eslint-plugin-putout -D
☝️If you installed eslint
globally (using the -g
flag) then you must also install putout
and eslint-plugin-putout
globally.
Add putout
to the plugins section of your .eslintrc.json
configuration file. You can omit the eslint-plugin-
prefix:
{
"extends": ["plugin:putout/recommended"],
"plugins": ["putout"]
}
Then configure the rules you want to use under the rules section.
{
"rules": {
"putout/add-newlines-between-types-in-union": "error",
"putout/add-newlines-between-specifiers": "error",
"putout/add-newline-before-return": "error",
"putout/add-newline-before-function-call": "error",
"putout/add-newline-after-function-call": "error",
"putout/putout": "error",
"putout/array-element-newline": "error",
"putout/single-property-destructuring": "error",
"putout/multiple-properties-destructuring": "error",
"putout/long-properties-destructuring": "error",
"putout/destructuring-as-function-argument": "error",
"putout/align-spaces": "error",
"putout/keyword-spacing": "error",
"putout/newline-function-call-arguments": "error",
"putout/function-declaration-paren-newline": "error",
"putout/remove-newline-after-default-import": "error",
"putout/remove-newline-between-declarations": "error",
"putout/remove-newline-from-empty-object": "error",
"putout/remove-empty-newline-before-first-specifier": "error",
"putout/remove-empty-newline-after-last-specifier": "error",
"putout/remove-empty-newline-after-last-element": "error",
"putout/remove-empty-newline-after-import": "error",
"putout/remove-empty-specifiers": "error",
"putout/objects-braces-inside-array": "error",
"putout/object-property-newline": "error",
"putout/tape-add-newline-between-tests": "error",
"putout/tape-add-newline-before-assertion": "error",
"putout/tape-remove-newline-before-t-end": "error"
}
}
When using 🐊Putout in IDE with --fix
on save, or when you want to disable the most dangerous rules, use:
{
"extends": ["plugin:putout/safe"],
"plugins": ["putout"]
}
Disabled ESLint rules:
Disabled 🐊Putout rules:
apply-template-literals
;remove-empty
;nodejs/remove-process-exit
;remove-unused-variables
;typescript/remove-unused-types
;remove-unused-expressions
;remove-unreferenced-variables
;remove-useless-arguments
;remove-useless-return
;remove-useless-spread
;remove-useless-variables
;tape/remove-skip
;tape/remove-only
;remove-console
;remove-debugger
;remove-unreachable-code
;for-of/for
;for-of/remove-useless
;for-of/remove-unused-variables
;maybe/noop
;When you want to enable ability to align spaces on empty lines, while have all benefits of safe
preset: use safe+align
.
When you need to support jsx
in files using js
extension, use:
{
"extends": [
"plugin:putout/jsx"
],
"plugins": [
"putout"
]
}
If you want to use ESM plugins of 🐊Putout you need to use esm
preset:
{
"extends": [
"plugin:putout/esm"
],
"plugins": [
"putout"
]
}
The time is came for a FlatConfig. To use it with eslint-plugin-putout
add to eslint.config.js
:
const {recommended} = require('eslint-plugin-putout/config');
module.exports = [
...recommended,
{},
];
safe
and safeAlign
supported as well.
MIT
© 2010 - cnpmjs.org x YWFE | Home | YWFE