{ // Rust: save on format "[rust]": { "editor.formatOnSave": true, "editor.formatOnPaste": true, "editor.defaultFormatter": "rust-lang.rust-analyzer" }, // Web: save on format "[javascript][typescript][svelte]": { "editor.codeActionsOnSave": { "source.fixAll.eslint": "explicit" }, "editor.formatOnSave": true, "editor.defaultFormatter": "dbaeumer.vscode-eslint" }, "[scss]": { "editor.codeActionsOnSave": { "source.fixAll.eslint": "explicit" }, "editor.formatOnSave": true, // Configured in `.prettierrc` "editor.defaultFormatter": "esbenp.prettier-vscode" }, "[json][jsonc][yaml][github-actions-workflow]": { "editor.formatOnSave": true, // Configured in `.prettierrc` "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.allTargets": false, // ESLint config "eslint.format.enable": true, "eslint.workingDirectories": ["./frontend", "./website/other/bezier-rs-demos", "./website"], "eslint.validate": ["javascript", "typescript", "svelte"], // Svelte config "svelte.plugin.svelte.compilerWarnings": { // NOTICE: Keep this list in sync with the list in `frontend/vite.config.ts` "css-unused-selector": "ignore", "vite-plugin-svelte-css-no-scopable-elements": "ignore", "a11y-no-static-element-interactions": "ignore", "a11y-no-noninteractive-element-interactions": "ignore" }, // VS Code config "html.format.wrapLineLength": 200, "files.eol": "\n", "files.insertFinalNewline": true, "files.associations": { "*.graphite": "json" } }