87 lines
3.4 KiB
JSON
87 lines
3.4 KiB
JSON
{
|
|
// 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"
|
|
},
|
|
// Website: don't format Zola/Tera-templated HTML on save
|
|
"[html]": {
|
|
"editor.formatOnSave": false
|
|
},
|
|
// 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.check.command": "clippy",
|
|
"rust-analyzer.cargo.allTargets": false,
|
|
"rust-analyzer.procMacro.ignored": {
|
|
"serde_derive": ["Serialize", "Deserialize"],
|
|
"specta_macros": ["Type"] // Disabled because of: https://github.com/specta-rs/specta/issues/387
|
|
},
|
|
// ESLint config
|
|
"eslint.format.enable": true,
|
|
"eslint.workingDirectories": ["./frontend", "./website"],
|
|
"eslint.validate": ["javascript", "typescript", "svelte"],
|
|
// Svelte config
|
|
"svelte.plugin.svelte.compilerWarnings": {
|
|
"css-unused-selector": "ignore", // NOTICE: Keep this list in sync with the list in `frontend/vite.config.ts`
|
|
"vite-plugin-svelte-css-no-scopable-elements": "ignore", // NOTICE: Keep this list in sync with the list in `frontend/vite.config.ts`
|
|
"a11y-no-static-element-interactions": "ignore", // NOTICE: Keep this list in sync with the list in `frontend/vite.config.ts`
|
|
"a11y-no-noninteractive-element-interactions": "ignore", // NOTICE: Keep this list in sync with the list in `frontend/vite.config.ts`
|
|
"a11y-click-events-have-key-events": "ignore", // NOTICE: Keep this list in sync with the list in `frontend/vite.config.ts`
|
|
"a11y_consider_explicit_label": "ignore", // NOTICE: Keep this list in sync with the list in `frontend/vite.config.ts`
|
|
"a11y_click_events_have_key_events": "ignore", // NOTICE: Keep this list in sync with the list in `frontend/vite.config.ts`
|
|
"a11y_no_noninteractive_element_interactions": "ignore" // NOTICE: Keep this list in sync with the list in `frontend/vite.config.ts`
|
|
},
|
|
// Git Graph config
|
|
"git-graph.repository.fetchAndPrune": true,
|
|
"git-graph.repository.showRemoteHeads": false,
|
|
"git-graph.repository.commits.fetchAvatars": true,
|
|
// VS Code Git config
|
|
"git.autofetch": true,
|
|
"git.enableStatusBarSync": false,
|
|
"git.showActionButton": {
|
|
"sync": false
|
|
},
|
|
// CSpell config
|
|
"cSpell.language": "en-US",
|
|
"cSpell.logLevel": "Information",
|
|
"cSpell.allowCompoundWords": true,
|
|
// Other extensions config
|
|
"evenBetterToml.formatter.alignComments": false,
|
|
"package-json-upgrade.ignorePatterns": ["source-sans-pro"],
|
|
// VS Code config
|
|
"html.format.wrapLineLength": 200,
|
|
"files.eol": "\n",
|
|
"files.insertFinalNewline": true,
|
|
"files.associations": {
|
|
"*.graphite": "json"
|
|
},
|
|
"editor.renderWhitespace": "boundary",
|
|
"editor.minimap.markSectionHeaderRegex": "// ===+\\n\\s*//\\s*(?<label>[^\\n]{1,18})[^\\n]*(\\n\\s*//[^\\n]*)*\\n\\s*// ===+"
|
|
}
|