From fa3149fb6ca0f0b1993ea713074c4d184978e025 Mon Sep 17 00:00:00 2001 From: Phil Schaf Date: Thu, 5 Sep 2024 18:00:14 +0200 Subject: [PATCH] Add VS Code integration --- {{cookiecutter.project_name}}/.gitignore | 4 --- .../.vscode/extensions.json | 18 ++++++++++ .../.vscode/launch.json | 33 +++++++++++++++++++ .../.vscode/settings.json | 20 +++++++++++ 4 files changed, 71 insertions(+), 4 deletions(-) create mode 100644 {{cookiecutter.project_name}}/.vscode/extensions.json create mode 100644 {{cookiecutter.project_name}}/.vscode/launch.json create mode 100644 {{cookiecutter.project_name}}/.vscode/settings.json diff --git a/{{cookiecutter.project_name}}/.gitignore b/{{cookiecutter.project_name}}/.gitignore index d01a5d5d..31e10b3e 100644 --- a/{{cookiecutter.project_name}}/.gitignore +++ b/{{cookiecutter.project_name}}/.gitignore @@ -18,7 +18,3 @@ __pycache__/ # docs /docs/generated/ /docs/_build/ - -# IDEs -/.idea/ -/.vscode/ diff --git a/{{cookiecutter.project_name}}/.vscode/extensions.json b/{{cookiecutter.project_name}}/.vscode/extensions.json new file mode 100644 index 00000000..a6fa5803 --- /dev/null +++ b/{{cookiecutter.project_name}}/.vscode/extensions.json @@ -0,0 +1,18 @@ +{ + "recommendations": [ + // GitHub integration + "github.vscode-github-actions", + "github.vscode-pull-request-github", + // Language support + "ms-python.python", + "ms-python.vscode-pylance", + "ms-toolsai.jupyter", + "tamasfe.even-better-toml", + // Dependency management + "ninoseki.vscode-mogami", + // Linting and formatting + "editorconfig.editorconfig", + "charliermarsh.ruff", + "esbenp.prettier-vscode", + ], +} diff --git a/{{cookiecutter.project_name}}/.vscode/launch.json b/{{cookiecutter.project_name}}/.vscode/launch.json new file mode 100644 index 00000000..c544566d --- /dev/null +++ b/{{cookiecutter.project_name}}/.vscode/launch.json @@ -0,0 +1,33 @@ +{ + // Use IntelliSense to learn about possible attributes. + // Hover to view descriptions of existing attributes. + // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387 + "version": "0.2.0", + "configurations": [ + { + "name": "Python: Build Documentation", + "type": "debugpy", + "request": "launch", + "module": "sphinx", + "args": ["-M", "html", ".", "_build"], + "cwd": "${workspaceFolder}/docs", + "console": "internalConsole", + "justMyCode": false, + }, + { + "name": "Python: Debug Test", + "type": "debugpy", + "request": "launch", + "program": "${file}", + "purpose": ["debug-test"], + "console": "internalConsole", + "justMyCode": false, + "env": { + "PYTEST_ADDOPTS": "--color=yes", + }, + "presentation": { + "hidden": true, + } + }, + ] +} diff --git a/{{cookiecutter.project_name}}/.vscode/settings.json b/{{cookiecutter.project_name}}/.vscode/settings.json new file mode 100644 index 00000000..473ef3e3 --- /dev/null +++ b/{{cookiecutter.project_name}}/.vscode/settings.json @@ -0,0 +1,20 @@ +{ + "[python][jsonc][yaml]": { + "editor.formatOnSave": true, + }, + "[python]": { + "editor.defaultFormatter": "charliermarsh.ruff", + "editor.codeActionsOnSave": { + "source.fixAll": "always", + "source.organizeImports": "always", + }, + }, + "[jsonc][yaml]": { + "editor.defaultFormatter": "esbenp.prettier-vscode", + }, + "python.analysis.typeCheckingMode": "basic", + "python.testing.pytestEnabled": true, + "python.testing.pytestArgs": ["-vv", "--color=yes"], +} + +