{ "editor.formatOnSave": true, "[python]": { "editor.defaultFormatter": "ms-python.black-formatter", "editor.formatOnSave": true, "editor.codeActionsOnSave": { "source.organizeImports": "always", "source.fixAll": "always" } }, // Black: tell the Python extension / Black extension to use this args "python.formatting.provider": "black", "python.formatting.blackArgs": ["--line-length=88"], // isort: use the isort extension key (NOT python.sortImports.args) "isort.args": ["--profile", "black"], // Ruff: extension exposes lint/format args keys (use ruff.lint.args or ruff.format.args) "ruff.lint.args": ["--line-length=88"], "ruff.format.args": ["--line-length=88"], "files.exclude": { "**/.vscode": true, "**/.zed": true, "**/.ruff_cache": true, // optional extras you might want hidden too: "**/.venv": true, "**/__pycache__": true }, // exclude them from full-text search "search.exclude": { "**/.vscode": true, "**/.zed": true, "**/.ruff_cache": true }, // stop the file watcher watching these (improves perf on large repos) "files.watcherExclude": { "**/.vscode/**": true, "**/.zed/**": true, "**/.ruff_cache/**": true, "**/.venv/**": true } }