Я использую VSCode с расширением Ruff для проверки и автоформатирования. Я знаю стоимость неиспользованного импорта, но иногда мне просто нужно прокомментировать строку для теста, и очень неприятно видеть, как соответствующий импорт автоматически уничтожается.
Оптимальным для меня поведением было бы закомментировать импорт, а не жестоко удалять его!
Я нашел этот вопрос: Как запретить VS Code удалять неиспользуемые импорты Python при сохранении
Но это не помогает, я подозреваю, потому что Рафф перезаписывает исходное поведение. Здесь я вижу: https://docs.astral.sh/ruff/settings/#lint_ignore, что я должен иметь возможность игнорировать правило F401
, но не могу найти, как это сделать в VSCode.
Вот как выглядит мой файл settings.json (посмотрите, как я пытался смешать source.organizeImports
и source.sortImports
...):
{
"[python]": {
"editor.formatOnSave": true,
"editor.codeActionsOnSave": {
"source.organizeImports": "never",
"source.sortImports": "explicit",
"source.fixAll": "explicit",
},
"editor.defaultFormatter": "charliermarsh.ruff",
},
}
То, чего я пытаюсь достичь, не выглядит очень сложным, но любая помощь будет оценена :)
Вот пример Чарли Марша здесь. Он советует поместить следующее в ваш файл pyproject.toml, ruff.toml или .ruff.toml (если у вас его нет, создайте его):
[lint]
# Disable fix for unused imports (`F401`).
unfixable = ["F401"]
Также есть возможность использовать настройку ruff.lint.args
VS Code, предоставленную расширением ruff.
Предлагаю вам также прочитать https://github.com/astral-sh/ruff-vscode?tab=readme-ov-file#configuring-ruff.
Существует также специальная настройка проверки только для модулей инициализации: ignore-init-module-imports.
Спасибо, мне не хватало ключевого слова
"ruff.lint.args"
. Я подумываю о добавлении ruff.toml, но это кажется излишним для того, что я делаю сейчас :)