Как сделать VS Code Autocomplete Python Инициализация атрибута класса - PullRequest
0 голосов
/ 04 августа 2020

Я использую VS Code для Python проектов.

Когда я пишу:

class User:
    def __init__(self, name, age, group=None):

Я хочу, чтобы VS Code автоматически заполнял следующее:

class User:
    def __init__(self, name, age, group=None):
        self.name = name
        self.age = age
        self.group = group

Возможно ли это с помощью VS Code? Я видел, как это делал другой редактор. Есть ли для этого расширение? Большое спасибо!

1 Ответ

1 голос
/ 05 августа 2020

Я сделал версию Python с инициализаторами атрибутов на основе фрагмента инициализации класса от Mark

  "Class Initializer": {
    "prefix": "cinit",
    "body": [
      "def __init__(self, $1):",
      "${1/([^,=]+)(?:=[^,]+)?(,\\s*|)/\tself.$1 = $1${2:+\n\t}/g}"
    ],
    "description": "Class __init__"
  }

Я использую пробелы для отступов, а в другом фрагменте \t - преобразуется в пробелы.

Если табуляции не раскрываются должным образом, замените \t на нужное количество пробелов. (их 2 \t).

После ввода class name: введите , вы с отступом 1, затем введите префикс cinit.

...