124 lines
3.5 KiB
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
|
|
}
|