Files
wild-cloud/.vscode/settings.json

124 lines
3.5 KiB
JSON

{
// === 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
}