vscode install eslint and esformat
Example:
Install Plugins vscode
Babel ES6/ES7esformatter
eslint
install npm packages
Terminal:
npm install -g babel-eslint esformatter-quotes eslint-plugin-babel eslint-plugin-jsx-a11y node-gyp webpack csslint eslint eslint-plugin-import eslint-plugin-react npm-check-updates esformatter eslint-config-airbnb eslint-plugin-jest jshint update -f
files configure
Terminal:
nano /home/"$USER"/.esformatter
{ "indent": { "value": " ", "ArrayExpression": 1, "AssignmentExpression": 1, "BinaryExpression": 1, "ConditionalExpression": 1, "CallExpression": 1, "CatchClause": 1, "DoWhileStatement": 1, "ForInStatement": 1, "ForStatement": 1, "FunctionDeclaration": 1, "FunctionExpression": 1, "IfStatement": 1, "MemberExpression": 1, "MultipleVariableDeclaration": 1, "ObjectExpression": 1, "ReturnStatement": 1, "SwitchCase": 1, "SwitchStatement": 1, "TopLevelFunctionBlock": 1, "TryStatement": 1, "WhileStatement": 1 }, "lineBreak": { "value": "\n", "before": { "AssignmentExpression": ">=1", "AssignmentOperator": 0, "BlockStatement": 0, "CallExpression": "-1", "ConditionalExpression": ">=1", "CatchOpeningBrace": 0, "CatchClosingBrace": ">=1", "CatchKeyword": 0, "DeleteOperator": ">=1", "DoWhileStatement": ">=1", "DoWhileStatementOpeningBrace": 0, "DoWhileStatementClosingBrace": ">=1", "EndOfFile": 1, "EmptyStatement": -1, "FinallyOpeningBrace": 0, "FinallyClosingBrace": ">=1", "ForInStatement": ">=1", "ForInStatementExpressionOpening": 0, "ForInStatementExpressionClosing": 0, "ForInStatementOpeningBrace": 0, "ForInStatementClosingBrace": ">=1", "ForStatement": ">=1", "ForStatementExpressionOpening": 0, "ForStatementExpressionClosing": "<2", "ForStatementOpeningBrace": 0, "ForStatementClosingBrace": ">=1", "FunctionExpression": 0, "FunctionExpressionOpeningBrace": 0, "FunctionExpressionClosingBrace": ">=1", "FunctionDeclaration": ">=1", "FunctionDeclarationOpeningBrace": 0, "FunctionDeclarationClosingBrace": ">=1", "IfStatement": ">=1", "IfStatementOpeningBrace": 0, "IfStatementClosingBrace": ">=1", "ElseIfStatement": 0, "ElseIfStatementOpeningBrace": 0, "ElseIfStatementClosingBrace": ">=1", "ElseStatement": 0, "ElseStatementOpeningBrace": 0, "ElseStatementClosingBrace": ">=1", "LogicalExpression": -1, "ObjectExpressionClosingBrace": ">=1", "Property": ">=1", "ReturnStatement": -1, "SwitchOpeningBrace": 0, "SwitchClosingBrace": ">=1", "ThisExpression": -1, "ThrowStatement": ">=1", "TryOpeningBrace": 0, "TryClosingBrace": ">=1", "VariableName": ">=1", "VariableValue": 0, "VariableDeclaration": ">=1", "VariableDeclarationWithoutInit": ">=1", "WhileStatement": ">=1", "WhileStatementOpeningBrace": 0, "WhileStatementClosingBrace": ">=1" }, "after": { "AssignmentExpression": ">=1", "AssignmentOperator": 0, "BlockStatement": 0, "CallExpression": -1, "CatchOpeningBrace": ">=1", "CatchClosingBrace": ">=0", "CatchKeyword": 0, "ConditionalExpression": ">=1", "DeleteOperator": ">=1", "DoWhileStatement": ">=1", "DoWhileStatementOpeningBrace": ">=1", "DoWhileStatementClosingBrace": 0, "EmptyStatement": -1, "FinallyOpeningBrace": ">=1", "FinallyClosingBrace": ">=1", "ForInStatement": ">=1", "ForInStatementExpressionOpening": "<2", "ForInStatementExpressionClosing": -1, "ForInStatementOpeningBrace": ">=1", "ForInStatementClosingBrace": ">=1", "ForStatement": ">=1", "ForStatementExpressionOpening": "<2", "ForStatementExpressionClosing": -1, "ForStatementOpeningBrace": ">=1", "ForStatementClosingBrace": ">=1", "FunctionExpression": ">=1", "FunctionExpressionOpeningBrace": ">=1", "FunctionExpressionClosingBrace": -1, "FunctionDeclaration": ">=1", "FunctionDeclarationOpeningBrace": ">=1", "FunctionDeclarationClosingBrace": ">=1", "IfStatement": ">=1", "IfStatementOpeningBrace": ">=1", "IfStatementClosingBrace": ">=1", "ElseIfStatement": ">=1", "ElseIfStatementOpeningBrace": ">=1", "ElseIfStatementClosingBrace": ">=1", "ElseStatement": ">=1", "ElseStatementOpeningBrace": ">=1", "ElseStatementClosingBrace": ">=1", "LogicalExpression": -1, "MemberExpression": 3, "ObjectExpressionOpeningBrace": ">=1", "Property": 0, "ReturnStatement": -1, "SwitchOpeningBrace": ">=1", "SwitchClosingBrace": ">=1", "ThisExpression": 0, "ThrowStatement": ">=1", "TryOpeningBrace": ">=1", "TryClosingBrace": 1, "VariableDeclaration": ">=1", "WhileStatement": ">=1", "WhileStatementOpeningBrace": ">=1", "WhileStatementClosingBrace": ">=1" } }, "whiteSpace": { "value": " ", "removeTrailing": 1, "before": { "ArrayExpressionOpening": 0, "ArrayExpressionClosing": 0, "ArrayExpressionComma": 0, "ArgumentComma": 0, "ArgumentList": 0, "ArgumentListArrayExpression": 0, "ArgumentListFunctionExpression": 0, "ArgumentListObjectExpression": 0, "AssignmentOperator": 1, "BinaryExpression": 0, "BinaryExpressionOperator": 1, "BlockComment": 1, "CallExpression": -1, "CatchParameterList": 0, "CatchOpeningBrace": 1, "CatchClosingBrace": 1, "CatchKeyword": 1, "CommaOperator": 0, "ConditionalExpressionConsequent": 1, "ConditionalExpressionAlternate": 1, "DoWhileStatementOpeningBrace": 1, "DoWhileStatementClosingBrace": 1, "DoWhileStatementConditional": 1, "EmptyStatement": 0, "ExpressionClosingParentheses": 0, "FinallyOpeningBrace": 1, "FinallyClosingBrace": 1, "ForInStatement": 1, "ForInStatementExpressionOpening": 1, "ForInStatementExpressionClosing": 0, "ForInStatementOpeningBrace": 1, "ForInStatementClosingBrace": 1, "ForStatement": 1, "ForStatementExpressionOpening": 1, "ForStatementExpressionClosing": 0, "ForStatementOpeningBrace": 1, "ForStatementClosingBrace": 1, "ForStatementSemicolon": 0, "FunctionDeclarationOpeningBrace": 1, "FunctionDeclarationClosingBrace": 1, "FunctionExpressionOpeningBrace": 1, "FunctionExpressionClosingBrace": 1, "IfStatementConditionalOpening": 1, "IfStatementConditionalClosing": 0, "IfStatementOpeningBrace": 1, "IfStatementClosingBrace": 1, "ElseStatementOpeningBrace": 1, "ElseStatementClosingBrace": 1, "ElseIfStatementOpeningBrace": 1, "ElseIfStatementClosingBrace": 1, "MemberExpressionClosing": 0, "LineComment": 1, "LogicalExpressionOperator": 1, "Property": 1, "PropertyValue": 1, "ParameterComma": 0, "ParameterList": 0, "SwitchDiscriminantOpening": 1, "SwitchDiscriminantClosing": 0, "ThrowKeyword": 1, "TryOpeningBrace": 1, "TryClosingBrace": 1, "UnaryExpressionOperator": 0, "VariableName": 1, "VariableValue": 1, "WhileStatementConditionalOpening": 1, "WhileStatementConditionalClosing": 0, "WhileStatementOpeningBrace": 1, "WhileStatementClosingBrace": 1 }, "after": { "ArrayExpressionOpening": 0, "ArrayExpressionClosing": 0, "ArrayExpressionComma": 1, "ArgumentComma": 1, "ArgumentList": 0, "ArgumentListArrayExpression": 0, "ArgumentListFunctionExpression": 0, "ArgumentListObjectExpression": 0, "AssignmentOperator": 1, "BinaryExpression": 0, "BinaryExpressionOperator": 1, "BlockComment": 1, "CallExpression": 0, "CatchParameterList": 0, "CatchOpeningBrace": 1, "CatchClosingBrace": 1, "CatchKeyword": 1, "CommaOperator": 1, "ConditionalExpressionConsequent": 1, "ConditionalExpressionTest": 1, "DoWhileStatementOpeningBrace": 1, "DoWhileStatementClosingBrace": 1, "DoWhileStatementBody": 1, "EmptyStatement": 0, "ExpressionOpeningParentheses": 0, "FinallyOpeningBrace": 1, "FinallyClosingBrace": 1, "ForInStatement": 1, "ForInStatementExpressionOpening": 0, "ForInStatementExpressionClosing": 1, "ForInStatementOpeningBrace": 1, "ForInStatementClosingBrace": 1, "ForStatement": 1, "ForStatementExpressionOpening": 0, "ForStatementExpressionClosing": 1, "ForStatementClosingBrace": 1, "ForStatementOpeningBrace": 1, "ForStatementSemicolon": 1, "FunctionReservedWord": 0, "FunctionName": 0, "FunctionExpressionOpeningBrace": 1, "FunctionExpressionClosingBrace": 0, "FunctionDeclarationOpeningBrace": 1, "FunctionDeclarationClosingBrace": 1, "IfStatementConditionalOpening": 0, "IfStatementConditionalClosing": 1, "IfStatementOpeningBrace": 1, "IfStatementClosingBrace": 1, "ElseStatementOpeningBrace": 1, "ElseStatementClosingBrace": 1, "ElseIfStatementOpeningBrace": 1, "ElseIfStatementClosingBrace": 1, "MemberExpressionOpening": 0, "LogicalExpressionOperator": 1, "ObjectExpressionClosingBrace": 0, "PropertyName": 0, "PropertyValue": 0, "ParameterComma": 1, "ParameterList": 0, "SwitchDiscriminantOpening": 0, "SwitchDiscriminantClosing": 1, "ThrowKeyword": 1, "TryOpeningBrace": 1, "TryClosingBrace": 1, "UnaryExpressionOperator": 0, "VariableName": 1, "WhileStatementConditionalOpening": 0, "WhileStatementConditionalClosing": 1, "WhileStatementOpeningBrace": 1, "WhileStatementClosingBrace": 1 } }, "plugins": [ "esformatter-quotes", "esformatter-braces", "esformatter-dot-notation", "esformatter-jsx" ], "quotes": { "type": "single", "avoidEscape": false }, "jsx": { "alignWithFirstAttribute": true, "attrsOnSameLineAsTag": true, "firstAttributeOnSameLine": false, "formatJSX": true, "maxAttrsOnTag": 1 } }
Terminal:
nano /home/"$USER"/.eslintrc.json
{ "parser": "babel-eslint", "parserOptions": { "allowImportExportEverywhere": true, "ecmaVersion": 6, "sourceType": "module" }, "plugins": [ "babel", "react", "jsx-a11y" ], "extends": [ "airbnb" ], "rules": { "indent":"warn", "react/jsx-indent-props":"warn", "react/jsx-closing-bracket-location":"warn", "object-curly-spacing":"warn", "max-len": [1, 200, 1], // specify the maximum length of a line in your program (off by default) "consistent-return":"warn", "padded-blocks":"error", "prefer-template":"warn", "no-template-curly-in-string":"off", "no-useless-escape":"off", "prefer-const":"off", "no-multiple-empty-lines": [2, {"max": 2}], // disallow multiple empty lines (off by default) "no-unused-vars":"off", "comma-dangle":"off", "jsx-a11y/href-no-hash": "off", "jsx-a11y/anchor-is-valid": ["warn", { "aspects": ["invalidHref"] }], "no-console": 0, "no-script-url": 0, "no-var": 0, "no-underscore-dangle": [ 0 ] }, "env": { "es6": true, "node": true, "mocha": true } }
and get the config files
https://cirelramos.blogspot.com/2017/07/visual-studio-code-setup-basic-settings.html
0 comentarios :