{
  "editor.formatOnSave": true,
  "[python]": {
    "editor.defaultFormatter": "charliermarsh.ruff",
    "editor.codeActionsOnSave": {
      "source.fixAll": "explicit",
      "source.organizeImports": "explicit"
    }
  },
  "[json]": {
    "editor.defaultFormatter": "esbenp.prettier-vscode"
  },
  "notebook.formatOnSave.enabled": true,
  "notebook.codeActionsOnSave": {
    // "notebook.source.fixAll": "explicit",
    // "notebook.source.organizeImports": "explicit"
  },
  "notebook.output.wordWrap": true,
  "notebook.output.textLineLimit": 200,
  "jupyter.debugJustMyCode": false,
  "python.defaultInterpreterPath": "./.venv/bin/python",
  "python.terminal.activateEnvironment": true,
  "python.terminal.activateEnvInCurrentTerminal": true,
  "python.envFile": "${workspaceFolder}/.env",
  "terminal.integrated.env.linux": {
    "VIRTUAL_ENV": "${workspaceFolder}/.venv",
    "PATH": "${workspaceFolder}/.venv/bin:${env:PATH}"
  },
  "terminal.integrated.defaultProfile.linux": "bash",
  "terminal.integrated.profiles.linux": {
    "bash": {
      "path": "bash",
      "args": [
        "-c",
        "source ${workspaceFolder}/.venv/bin/activate && exec bash"
      ]
    }
  },
  "python.testing.pytestEnabled": true,
  "python.testing.pytestArgs": ["tests"],
  "python.testing.pytestPath": "${workspaceFolder}/.venv/bin/pytest",
  "python.testing.unittestEnabled": false,
  "python.testing.autoTestDiscoverOnSaveEnabled": false,
  "python.testing.cwd": "${workspaceFolder}",
  "python.testing.debugPort": 5678,
  "files.exclude": {
    "**/*.egg-info": true,
    "**/htmlcov": true,
    "**/~$*": true,
    "**/.coverage.*": true,
    "**/.venv": true,
    "**/__pycache__": true,
    "**/.mypy_cache": true,
    "**/.pytest_cache": true
  }
}
