Как использовать YAPF в VSCode - PullRequest
1 голос
/ 20 января 2020

Я установил yapf с помощью:

conda install yapf

и добавил следующие строки в мой .vscode/settings.json файл:

{
    //"python.linting.pylintEnabled": true,
    //"python.linting.pycodestyleEnabled": false,
    //"python.linting.flake8Enabled": true,
    "python.formatting.provider": "yapf",
    "python.formatting.yapfArgs": [
        " — style",
        "{based_on_style: pep8, indent_width: 4}"
    ],
    "python.linting.enabled": true,
}

Но я не могу понять, как его использовать - это не так не отображать ошибки в плохо отформатированном скрипте:

import pandas as pd

class MyClass(object):
    def __init__(self, some_value: int):
        self.value = some_value
    def one_more_function(self, another_value):
        print(another_value)
myObject = MyClass(45)
myObject.one_more_function(2)
my__object2 = MyClass(324)

    print('ok')
def some_foo():
    """
    """
    pass

1 Ответ

1 голос
/ 04 февраля 2020

Проблема была в неправильных настройках. Чтобы использовать yapf, black или autopep8, вам необходимо:

  1. Установить yapf / black / autopep8 (pip install black)
  2. Настроить .vscode/settings.json следующим образом:

часть файла:

{
    "python.linting.enabled": true,
    "python.linting.pylintPath": "pylint",
    "editor.formatOnSave": true,
    "python.formatting.provider": "black",
    "python.linting.pylintEnabled": true,
}

Параметр ключа - "editor.formatOnSave": true, это означает, что yapf форматирует документ при каждом его сохранении.

...