В vscode я хочу использовать Prettier в качестве средства форматирования по умолчанию, но не для Python, где я просто буду использовать autopep8. У меня сейчас следующие настройки:
{
"workbench.iconTheme": "vscode-icons",
"workbench.editorAssociations": [
{
"viewType": "jupyter.notebook.ipynb",
"filenamePattern": "*.ipynb"
}
],
"git.confirmSync": false,
"editor.formatOnPaste": true,
"editor.formatOnSave": true,
"editor.defaultFormatter": "esbenp.prettier-vscode",
"python.formatting.provider": "autopep8",
"explorer.confirmDelete": false,
"python.showStartPage": false,
"explorer.confirmDragAndDrop": false
}
Когда я сохраняю файл python, он выдает мне сообщение: «Расширение« Pretier - средство форматирования кода не может форматировать и т. д. ». Итак, очевидно, оно все еще использует неправильный форматировщик для файлов python. Как мне это изменить ?!






В VSCode Python «Formatting» предоставляется расширением Python. Поэтому для Python используйте форматирование из расширения Python (например: autopepe8), чтобы не использовать повторяющиеся настройки форматирования, чтобы они не работали.
Ссылка: Форматирование.
Если бы я отключил Prettier в качестве средства форматирования по умолчанию, он больше не будет форматироваться при сохранении, но мой Python будет отформатирован autopep8 при сохранении. Имея это в виду, следующее решение сработало для меня, чтобы Prettier работал для других языков и autopep8 для Python:
{
"workbench.iconTheme": "vscode-icons",
"workbench.editorAssociations": [
{
"viewType": "jupyter.notebook.ipynb",
"filenamePattern": "*.ipynb"
}
],
"git.confirmSync": false,
"editor.formatOnPaste": true,
"editor.formatOnSave": true,
"python.formatting.provider": "autopep8",
"explorer.confirmDelete": false,
"python.showStartPage": false,
"explorer.confirmDragAndDrop": false,
"python.linting.pylintArgs": ["--load-plugins=pylint_django"],
"javascript.updateImportsOnFileMove.enabled": "always",
"editor.defaultFormatter": "esbenp.prettier-vscode",
"[python]": {
"editor.defaultFormatter": "ms-python.python"
}
}
Дайте мне знать, если кто-то найдет лучшее решение!
спс за подсказки а то я голову сломал
большое спасибо! Я долго искал решение этой проблемы. :)
большое спасибо. Я тоже ищу это. подскажите куда добавить этот конфиг? Я новичок в VSCode. Спасибо.
Вы можете сделать то, что сделал @round_circle, так как это должно работать. Если вы не хотите устанавливать начального поставщика, например, вместо этого вы можете использовать черный, вы также можете добавить в свой settings.json:
"[python]": {
"editor.defaultFormatter": null
},
Я использую расширение Python от Microsoft и по умолчанию использую autoPep8, и это предложит вам настроить средство форматирования, которое вы хотите использовать. фото приглашения на добавление форматтера Затем вы можете добавить своего провайдера в settings.json, добавив:
"python.formatting.provider": <your_formatter>
На это также можно сослаться здесь: Форматирование кода VS
Значимый фрагмент конфигурации из ответа @round_circle:
"[python]": {
"editor.defaultFormatter": "ms-python.python"
}
После его добавления autopep8 заработал для файлов python.
Вот и все — мне нужно было отредактировать settings.json в моей папке .vscode для тех, кто ищет, где это отредактировать.
это потрясающе! большое спасибо