{ // Rust: save on format "[rust]": { "editor.formatOnSave": true, "editor.formatOnPaste": true, "editor.defaultFormatter": "rust-lang.rust-analyzer", }, // Web: save on format "[typescript][javascript][vue]": { "editor.codeActionsOnSave": { "source.fixAll.eslint": true, }, "editor.formatOnSave": true, "editor.defaultFormatter": "dbaeumer.vscode-eslint", }, "[scss]": { "editor.codeActionsOnSave": { "source.fixAll.eslint": true, }, "editor.formatOnSave": true, "editor.defaultFormatter": "esbenp.prettier-vscode", }, // Handlebars: don't save on format // (`about.hbs` is used by Cargo About to encode license information) "[handlebars]": { "editor.formatOnSave": false, }, // Rust Analyzer config "rust-analyzer.cargo.target": "wasm32-unknown-unknown", "rust-analyzer.checkOnSave.command": "clippy", "rust-analyzer.diagnostics.disabled": ["unresolved-macro-call"], // Remove when https://github.com/rust-lang/rust-analyzer/issues/6835 is fixed // ESLint config "eslint.format.enable": true, "eslint.workingDirectories": [ "./frontend", "./website/other/bezier-rs-demos", "./website", ], "eslint.validate": [ "javascript", "typescript", ], // Vue config "volar.completion.preferredAttrNameCase": "camel", "volar.completion.preferredTagNameCase": "pascal", // VS Code config "html.format.wrapLineLength": 200, "files.eol": "\n", "files.insertFinalNewline": true, }