{ // === UNIVERSAL EDITOR SETTINGS === // These apply to all file types and should be consistent everywhere "editor.bracketPairColorization.enabled": true, "editor.codeActionsOnSave": { "source.organizeImports": "explicit", "source.fixAll": "explicit" }, "editor.guides.bracketPairs": "active", "editor.formatOnPaste": true, "editor.formatOnType": true, "editor.formatOnSave": true, "files.eol": "\n", "files.trimTrailingWhitespace": true, // === PYTHON CONFIGURATION === "python.analysis.ignore": ["output", "logs", "ai_context", "ai_working"], "python.defaultInterpreterPath": "${workspaceFolder}/.venv/bin/python", "python.terminal.activateEnvironment": true, "python.analysis.autoFormatStrings": true, "python.analysis.autoImportCompletions": true, "python.analysis.diagnosticMode": "workspace", "python.analysis.fixAll": ["source.unusedImports"], "python.analysis.inlayHints.functionReturnTypes": true, "python.analysis.typeCheckingMode": "standard", "python.analysis.autoSearchPaths": true, // Workspace-specific Python paths "python.analysis.extraPaths": [], // === PYTHON FORMATTING === "[python]": { "editor.defaultFormatter": "charliermarsh.ruff", "editor.formatOnSave": true, "editor.rulers": [120], "editor.codeActionsOnSave": { "source.fixAll": "explicit", "source.unusedImports": "explicit", "source.organizeImports": "explicit", "source.formatDocument": "explicit" } }, // === RUFF CONFIGURATION === "ruff.nativeServer": "on", "ruff.configuration": "${workspaceFolder}/ruff.toml", "ruff.interpreter": ["${workspaceFolder}/.venv/bin/python"], "ruff.exclude": [ "**/output/**", "**/logs/**", "**/ai_context/**", "**/ai_working/**" ], // === TESTING CONFIGURATION === // Testing disabled at workspace level due to import conflicts // Use the recipe-tool.code-workspace file for better multi-project testing "python.testing.pytestEnabled": false, "python.testing.unittestEnabled": false, // === JSON FORMATTING === "[json]": { "editor.defaultFormatter": "esbenp.prettier-vscode", "editor.formatOnSave": true }, "[jsonc]": { "editor.defaultFormatter": "esbenp.prettier-vscode", "editor.formatOnSave": true }, // === FILE WATCHING & SEARCH OPTIMIZATION === "files.watcherExclude": { "**/.uv/**": true, "**/.venv/**": true, "**/node_modules/**": true, "**/__pycache__/**": true, "**/.pytest_cache/**": true }, "search.exclude": { "**/.uv": true, "**/.venv": true, "**/.*": true, "**/__pycache__": true, "**/.data": true, "**/ai_context": true, "**/ai_working": true }, // === FILE ASSOCIATIONS === "files.associations": { "*.toml": "toml" }, // === SPELL CHECKER CONFIGURATION === // (Only include if using Code Spell Checker extension) "cSpell.ignorePaths": [ ".claude", ".devcontainer", ".git", ".github", ".gitignore", ".vscode", ".venv", "node_modules", "package-lock.json", "pyproject.toml", "settings.json", "uv.lock", "output", "logs", "*.md", "*.excalidraw", "ai_context", "ai_working" ], "cSpell.customDictionaries": { "custom-dictionary-workspace": { "name": "custom-dictionary-workspace", "path": "${workspaceFolder:wild-cloud}/.cspell/custom-dictionary-workspace.txt", "addWords": true, "scope": "workspace" } }, "makefile.configureOnOpen": false }