Автодополнение кода в SourceCraft Code Assistant

Примечание

Язык интерфейса плагина для Visual Studio Code зависит от установленного языка IDE.

В режиме Smart autocompletion явно поддерживается автодополнение кода для следующих языков программирования и фреймворков:

  • C++
  • Go
  • Java
  • JavaScript/TypeScript
  • Kotlin
  • Python
  • Scala
  • SQL
  • Swift

Автодополнение может работать и для других языков программирования. Для языков, которые представлены в общедоступных репозиториях в меньшей мере, количество и качество предлагаемых подсказок будет ниже.

Примеры работы

В примере сначала для корректировки кода используется режим Insert-режим, а затем задействуется Replace-режим, предлагая саджест к последующим строкам исходя из правки:

В примере в соответствии с изменением названия аргумента с помощью режима Replace-режим корректируются места его использования:

Insert-режим

Insert-режим в Code Assistant может предлагать наиболее подходящие варианты для завершения текущей строки или слова.

Code Assistant анализирует контекст вашего кода и предлагает подсказки в следующих режимах:

  • автоматический;
  • по запросу пользователя — с помощью сочетания клавиш Ctrl + Space. В Visual Studio Code вы также можете использовать сочетание клавиш Ctrl + Enter.
  1. Откройте IDE и создайте тестовый файл server.cpp со следующим содержимым:

    // simple web-server to work with sockets
    
    #include <iostream>
    #include <string>
    #include <sys/socket.h>
    #include <netinet/in.h>
    #include <unistd.h>
    
    using namespace std;
    
    int main() {
    
    }
    
  2. В блоке int main() начните вводить текст, например комментарий //create socket. Посмотрите предложение от Code Assistant:

    ...
    int main() {
    
    //create socket
    int sockfd = socket(AF_INET, SOCK_STREAM, 0);
    
    }
    
  3. Выберите, что делать с предложением:

    • Чтобы принять предложение, нажмите клавишу Tab.
    • Чтобы принять часть предложения по одному слову, используйте сочетание клавиш Ctrl + в Windows/Linux или Command + в macOS.
    • Чтобы отменить предложение, нажмите клавишу Esc.
    • Если предложений несколько, вы можете переключаться между ними с помощью сочетаний клавиш Alt + [ и Alt + ] в Windows/Linux или Option + [ и Option + ] в macOS.

    image

    • Чтобы принять предложение, нажмите клавишу Tab.
    • Чтобы отменить предложение, нажмите клавишу Esc.

    image

Видео с демонстрацией работы плагина см. на странице Code Assistant.

Replace-режим

Replace-режим в Code Assistant может предлагать исправления и переименования в коде текущего файла в соответствии с внесенными изменениями.

  1. Откройте IDE и создайте тестовый файл fibonacci.py со следующим содержимым:

    def fibonacci(k):
        if k == 0:
            return 0
        elif k == 1:
            return 1
        else:
            return fibonacci(k-1) + fibonacci(k-2)
    
    print(fibonacci(10))
    
  2. Поменяйте название переменной k, например на n. Посмотрите исправления от Code Assistant:

    def fibonacci(n):
        if n == 0:
            return 0
        elif n == 1:
            return 1
        else:
            return fibonacci(n-1) + fibonacci(n-2)
    
    print(fibonacci(10))
    

    Code Assistant предлагает исправления построчно. Переместите курсор редактирования на нужную строку, чтобы увидеть ее исправление от Code Assistant.

  3. Выберите, что делать с предложением:

    • Чтобы принять предложение, нажмите клавишу Tab.
    • Чтобы отменить предложение, нажмите клавишу Esc.

Модель учитывает историю редактирования кода. В зависимости от этой истории подсказки могут быть очень разными.

Индикатор генерации или отсутствия подсказки

Во время генерации подсказки слева от редактируемого кода отобразится значок загрузки . Если генерация прекратится или результата не будет, вы увидите значок отсутствия подсказки .

По умолчанию индикатор подсказки включен.

Чтобы выключить или включить индикатор:

  1. На панели слева нажмите на значок плагина .
  2. На открывшейся панели выберите Settings.
  3. Перейдите в раздел Автодополнение.
  4. В открывшихся настройках выключите или включите опции Индикатор подсказки Code Assistant и Индикатор загрузки Code Assistant.

image

  1. В правом верхнем углу нажмите и выберите Settings....
  2. В колонке слева выберите SourceCraft Code Assistant.
  3. Включите или выключите опцию Disable suggest indicator.
  4. Нажмите кнопку Apply, чтобы сохранить настройки.

image

См. также