{ "typescript.tsdk": "./node_modules/typescript/lib", "volar.tsPlugin": true, "volar.tsPluginStatus": false, //=========================================== //============= Editor ====================== //=========================================== "explorer.openEditors.visible": 0, "editor.minimap.renderCharacters": false, "editor.minimap.maxColumn": 300, "editor.minimap.showSlider": "always", "editor.smoothScrolling": true, "editor.cursorBlinking": "phase", "editor.cursorSmoothCaretAnimation": true, "editor.detectIndentation": false, "diffEditor.ignoreTrimWhitespace": false, "javascript.format.insertSpaceBeforeFunctionParenthesis": true, "editor.formatOnPaste": true, "editor.formatOnSave": true, "editor.suggestSelection": "first", "editor.trimAutoWhitespace": true, "editor.quickSuggestions": { "other": true, "comments": true, "strings": true }, //=========================================== //============= Other ======================= //=========================================== "breadcrumbs.enabled": true, "open-in-browser.default": "chrome", //=========================================== //============= emmet ======================= //=========================================== "emmet.triggerExpansionOnTab": true, "emmet.showAbbreviationSuggestions": true, "emmet.showExpandedAbbreviation": "always", "emmet.syntaxProfiles": { "vue-html": "html", "vue": "html", "javascript": "javascriptreact", "xml": { "attr_quotes": "single" } }, "emmet.includeLanguages": { "jsx-sublime-babel-tags": "javascriptreact" }, //=========================================== //============= files ======================= //=========================================== "files.trimTrailingWhitespace": true, "files.insertFinalNewline": true, "files.trimFinalNewlines": true, "files.eol": "\n", "search.exclude": { "**/node_modules": true, "**/*.log": true, "**/*.log*": true, "**/bower_components": true, "**/dist": true, "**/elehukouben": true, "**/.git": true, "**/.gitignore": true, "**/.svn": true, "**/.DS_Store": true, "**/.idea": true, "**/.vscode": false, "**/yarn.lock": true, "**/tmp": true, "out": true, "dist": true, "node_modules": true, "CHANGELOG.md": true, "examples": true, "res": true, "screenshots": true }, "files.exclude": { "**/bower_components": true, "**/.idea": true, "**/yarn.lock": true, "**/tmp": true, "**/.git": true, "**/.svn": true, "**/.hg": true, "**/CVS": true, "**/.DS_Store": true }, "files.watcherExclude": { // 文件监视排除 "**/.git/objects/**": true, "**/.git/subtree-cache/**": true, "**/.vscode/**": true, "**/node_modules/**": true, "**/tmp/**": true, "**/bower_components/**": true, "**/dist/**": true, "**/yarn.lock": true }, "files.associations": { "*.vue": "vue", "*.wxss": "css" }, "stylelint.enable": true, "stylelint.packageManager": "yarn", "css.validate": true, "less.validate": true, "scss.validate": true, // ↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓ // =========================================== // ================ Eslint =================== // =========================================== // "eslint.enable": true, "eslint.alwaysShowStatus": true, "eslint.options": { // 配置 "plugins": ["html", "vue", "javascript", "jsx", "typescript"], "extensions": [".js", ".jsx", ".ts", ".tsx", ".vue"] }, "eslint.validate": [ "javascript", "typescript", "reacttypescript", "reactjavascript", "html", "vue" ], // "eslint.autoFixOnSave": true, // =========================================== // ================ Vetur ==================== // =========================================== "vetur.experimental.templateInterpolationService": true, "vetur.format.options.tabSize": 2, "vetur.format.defaultFormatter.html": "js-beautify-html", "vetur.format.defaultFormatter.scss": "prettier", "vetur.format.defaultFormatter.css": "prettier", "vetur.format.defaultFormatter.ts": "prettier-tslint", "vetur.format.defaultFormatter.js": "prettier", "vetur.languageFeatures.codeActions": false, "vetur.format.defaultFormatterOptions": { "js-beautify-html": { "wrap_attributes": "force-expand-multiline" }, "prettier": { "eslintIntegration": true, "arrowParens": "always", "semi": false, "singleQuote": true } }, "javascript.updateImportsOnFileMove.enabled": "never", "liveServer.settings.donotShowInfoMsg": true, "terminal.integrated.rendererType": "dom", "telemetry.enableCrashReporter": false, "telemetry.enableTelemetry": false, "workbench.settings.enableNaturalLanguageSearch": false, "path-intellisense.mappings": { "/@/": "${workspaceRoot}/src" }, "prettier.requireConfig": true, "typescript.updateImportsOnFileMove.enabled": "always", "workbench.sideBar.location": "left", "[javascriptreact]": { "editor.defaultFormatter": "esbenp.prettier-vscode" }, "[typescript]": { "editor.defaultFormatter": "esbenp.prettier-vscode" }, "[typescriptreact]": { "editor.defaultFormatter": "esbenp.prettier-vscode" }, "[html]": { "editor.defaultFormatter": "esbenp.prettier-vscode" }, "[css]": { "editor.defaultFormatter": "esbenp.prettier-vscode" }, "[less]": { "editor.defaultFormatter": "esbenp.prettier-vscode" }, "[scss]": { "editor.defaultFormatter": "esbenp.prettier-vscode" }, "[markdown]": { "editor.defaultFormatter": "esbenp.prettier-vscode" }, "editor.codeActionsOnSave": { "source.fixAll.eslint": true }, "i18n-ally.localesPaths": ["src/locales/lang"], "i18n-ally.keystyle": "nested", "i18n-ally.sortKeys": true, "i18n-ally.namespace": true, "i18n-ally.pathMatcher": "{locale}/{namespaces}.{ext}", "i18n-ally.enabledParsers": ["ts"], "i18n-ally.sourceLanguage": "zh", "i18n-ally.enabledFrameworks": ["vue", "react"] }