From 2e8306c28149f5420de40790c7bd52a1820bf72e Mon Sep 17 00:00:00 2001 From: John Lancaster <32917998+jsl12@users.noreply.github.com> Date: Thu, 20 Mar 2025 19:11:04 -0500 Subject: [PATCH] lots of python/ruff settings --- ad-nix.code-workspace | 63 +++++++++++++++++++++++++++++++++++++++---- 1 file changed, 58 insertions(+), 5 deletions(-) diff --git a/ad-nix.code-workspace b/ad-nix.code-workspace index dcccc94..debe874 100644 --- a/ad-nix.code-workspace +++ b/ad-nix.code-workspace @@ -14,12 +14,65 @@ }, ], "settings": { - "python.defaultInterpreterPath": "/home/appdaemon/ad-lola/.devenv/state/venv/bin/python3", - "python.analysis.extraPaths": [ - "~/ad-lola" + // Python + "[python]": { + "editor.autoClosingDelete": "always", + "editor.autoClosingBrackets": "always", + "editor.defaultFormatter": "charliermarsh.ruff", + // "editor.formatOnSave": true, + "editor.codeActionsOnSave": { + "source.organizeImports.ruff": "explicit", + "source.fixAll": "explicit" + } + }, + "python.defaultInterpreterPath": "${workspaceFolder}/.devenv/state/venv/bin/python3", + "python.autoComplete.extraPaths": ["~/ad-lola"], + "python.analysis.extraPaths": ["~/ad-lola"], + "python.analysis.autoFormatStrings": true, + "python.analysis.completeFunctionParens": true, + "python.analysis.autoImportCompletions": true, + "python.analysis.importFormat": "relative", + "python.analysis.autoIndent": true, + "python.analysis.useLibraryCodeForTypes": true, + "python.analysis.languageServerMode": "full", + "python.analysis.typeEvaluation.enableReachabilityAnalysis": true, + "python.languageServer": "Pylance", + "python.terminal.shellIntegration.enabled": true, + + // Ruff settings + "ruff.enable": true, + "ruff.organizeImports": false, + "ruff.importStrategy": "fromEnvironment", + "ruff.nativeServer": true, + "ruff.configurationPreference": "filesystemFirst", + "ruff.configuration": "${workspaceFolder}/ruff.toml", + "ruff.fixAll": true, + "ruff.lint.enable": true, + // https://docs.astral.sh/ruff/rules/ + "ruff.lint.extendSelect": [ + // "FURB", "UP", + "I" ], - "ruff.interpreter": [ - "/home/appdaemon/ad-lola/.devenv/state/venv/bin/python3" + "ruff.lint.select": [ + "F", "W", + "E1", "E2", "E3", "E4", "E5", "E7", "E9" ], + + + // Notebooks + // "jupyter.askForKernelRestart": false, + "notebook.defaultFormatter": "charliermarsh.ruff", + "notebook.formatOnSave.enabled": true, + "notebook.codeActionsOnSave": { + "notebook.source.fixAll": "explicit", + "notebook.source.organizeImports": "explicit" + }, + + "editor.rulers": [120], + "editor.wordWrap": "on", + "editor.wordWrapColumn": 120, + // https://docs.astral.sh/ruff/rules/#pycodestyle-e-w + // https://pycodestyle.pycqa.org/en/latest/intro.html#error-codes + } } \ No newline at end of file