Zbadaj funkcje uzupełniania kodu w GitHub Copilot
GitHub Copilot udostępnia sugestie autouzupełniania podczas wprowadzania kodu. Oprócz standardowych sugestii autouzupełniania, GitHub Copilot również dostarcza sugestie dotyczące następnej edycji (NES), które przewidują miejsce następnej zmiany, którą prawdopodobnie wprowadzisz, oraz sugerują jej ukończenie.
Podczas wykonywania następujących akcji otrzymujesz sugestie dotyczące stylu autouzupełniania:
- Wprowadź częściowy lub kompletny wiersz kodu w edytorze.
- Wprowadź częściowy lub kompletny komentarz kodu w edytorze.
- Wprowadź pusty wiersz kodu w edytorze.
Podczas edytowania kodu są automatycznie wyświetlane sugestie dotyczące następnej edycji. Przewidują, jaką zmianę prawdopodobnie wprowadzisz na podstawie ostatnich edycji i będą wyświetlane ze specjalnym wskaźnikiem pokazującym sugerowaną lokalizację edycji.
Generuj sugestię autouzupełniania
GitHub Copilot przyspiesza tworzenie aplikacji, proponując uzupełnienia kodu na podstawie kodu, który piszesz.
Załóżmy na przykład, że chcesz utworzyć metodę języka C# o nazwie addInt , która zwraca sumę dwóch liczb całkowitych. Jeśli zaczniesz wpisywać podpis metody, GitHub Copilot sugeruje kod, który uważa, że chcesz utworzyć.
Sugerowane autouzupełnienie jest wyświetlane bez kolorowego podświetlania składni. Pomaga to odróżnić autouzupełnianie od istniejącego kodu. Sugerowany kod można zaakceptować, naciskając Tab.
Możesz nacisnąć Esc, aby odrzucić sugestię.
Przykład addInt jest nieco uproszczony, więc możesz się zastanawiać, jak GitHub Copilot robi z czymś bardziej złożonym.
Załóżmy, że chcesz utworzyć metodę, która akceptuje listę liczb i zwraca sumę liczb pierwszych zawartych na liście. Możesz nazwać metodę addPrimeNumbersInNumericList. Po rozpoczęciu wpisywania sygnatury metody GitHub Copilot generuje sugestię. Przykład:
Ważne jest, aby przejrzeć sugestie przed ich zaakceptowaniem. Propozycja autouzupełniania wygląda dobrze, można ją zaakceptować, naciskając klawisz Tab.
Kontynuujmy nieco dalej scenariusz.
Po scaleniu sugestii z kodem zauważysz, że metoda isPrime jest podkreślona na czerwono. Jest to spowodowane tym, że isPrime metoda jeszcze nie istnieje w kodzie.
GitHub Copilot jest szkolony w celu stosowania najlepszych rozwiązań, które obejmują podzielenie złożonych problemów na mniejsze, bardziej zarządzane elementy. W tym przypadku GitHub Copilot sugeruje utworzenie oddzielnej metody isPrime w celu sprawdzenia, czy liczba jest liczbą główną.
GitHub Copilot jest gotowy zasugerować fragment kodu dla metody isPrime. Po wprowadzeniu pustego wiersza poniżej metody addPrimeNumbersInNumericList GitHub Copilot sugeruje metodę isPrime, której można użyć.
Sugestie autouzupełniania przyspieszają proces programowania, dostarczając fragmenty kodu. Ale co zrobić, jeśli sugestie nie do końca spełniają twoje oczekiwania? GitHub Copilot zapewnia interfejs do zarządzania propozycjami autouzupełniania.
Zarządzaj sugestiami autouzupełniania
Gdy GitHub Copilot sugeruje autouzupełnianie, udostępnia również interfejs do zarządzania sugestiami. Możesz zaakceptować sugestię, przejrzeć inne sugestie lub odrzucić sugestie.
Po najechaniu wskaźnikiem myszy na sugerowane autouzupełnianie, masz kilka opcji zarządzania tymi sugestiami.
Domyślny interfejs do zarządzania sugestiami obejmuje następujące opcje:
- Zaakceptuj sugestię (w całości), wybierając pozycję Akceptuj. Możesz również zaakceptować sugestię, naciskając Tab.
- Częściowo zaakceptuj sugestię, wybierając pozycję Accept Word. Możesz również częściowo zaakceptować sugestię, naciskając
Ctrl+→klawisze (strzałka w prawo). - Wyświetl alternatywne sugestie, wybierając
>lub<. Możesz również wyświetlić sugestie alternatywne, naciskającAlt+]klawisze lub .Alt+[
Wybranie opcji Accept Word akceptuje następne słowo w sugestii. Jest to przydatne, gdy chcesz zaakceptować część sugestii, a następnie kontynuować wpisywanie własnego kodu. Możesz na przykład zaakceptować pierwsze słowo sugestii isPrime metody.
Kontynuuj wybieranie Accept Word dopóki nie zaakceptujesz tak dużej ilości sugestii, jak chcesz.
Wybranie ikony wielokropka (...) po prawej stronie przycisku Akceptuj Word umożliwia dostęp do dodatkowych opcji, takich jak Zawsze pokazuj pasek narzędzi i Otwórz panel uzupełniania.
Wybranie opcji Zawsze pokazuj pasek narzędzi gwarantuje, że pasek narzędzi pozostanie widoczny podczas korzystania ze skrótów klawiaturowych w celu zarządzania sugestiami autouzupełniania. Wybranie opcji Otwórz panel uzupełniania otwiera panel uzupełniania GitHub Copilot. Wyświetlanie wielu sugestii przy użyciu panelu uzupełniania GitHub Copilot zostało omówione na końcu tej lekcji.
Uwaga / Notatka
Aby zaakceptować cały wiersz sugestii, należy skonfigurować niestandardowy skrót klawiaturowy dla editor.action.inlineSuggest.acceptNextLine polecenia. Ta opcja jest domyślnie niedostępna na pasku narzędzi.
Generowanie sugestii dotyczących kodu na podstawie komentarzy
Oprócz sugerowania autouzupełniania na podstawie kodu, GitHub Copilot może używać komentarzy kodu do sugerowania fragmentów kodu. Użyj fraz języka naturalnego, aby opisać kod, który chcesz utworzyć. Dzięki temu GitHub Copilot proponuje sugestie autouzupełniania spełniające określone wymagania. Można na przykład określić typ algorytmu, którego chcesz użyć w obliczeniach, lub metody i właściwości, które chcesz dodać do klasy.
Wróćmy do przykładu liczby prime. W tym momencie masz następujący kod:
Metody addPrimeNumbersInNumericList i isPrime wydają się być kompletne. Jednak podczas wywoływania metody nadal potrzebna jest lista liczb, których można użyć jako argumentu addPrimeNumbersInNumericList . Możesz napisać komentarz opisujący listę liczb, którą chcesz. Na przykład lista 100 losowych liczb z zakresu od 1 do 1000.
Po rozpoczęciu wprowadzania komentarza GitHub Copilot sugeruje autouzupełnianie, które kończy komentarz. GitHub Copilot używa otaczającego kodu, aby poprawić jego sugestie. Jeśli na przykład zaczniesz wprowadzać komentarz // create, GitHub Copilot używa otaczającego kodu do przewidywania, co chcesz utworzyć. W tym przypadku GitHub Copilot używa metody addPrimeNumbersInNumericList do przewidywania, że chcesz utworzyć a list of numbers.
Podczas pisania komentarza GitHub Copilot aktualizuje sugestię autouzupełniania. Gdy wszystko będzie gotowe do zaakceptowania sugestii, wybierz pozycję Akceptuj lub naciśnij klawisz Tab.
Po utworzeniu nowego wiersza kodu po komentarzu GitHub Copilot rozpoczyna generowanie fragmentu kodu na podstawie komentarza i istniejącego kodu.
Zaakceptuj każdą sugestię, gdy się pojawi.
Jeśli GitHub Copilot nie zakończy pracy, wygeneruje kolejną sugestię do zaakceptowania.
Jeśli wprowadzisz nowy wiersz kodu po zakończeniu fragmentu kodu, GitHub Copilot generuje kolejne sugestie autouzupełniania na podstawie wymagań projektu kodu. W tym przypadku GitHub Copilot sugeruje wiersz kodu, który wywołuje metodę addPrimeNumbersInNumericList, przekazując listę o nazwie numbers.
Wyświetlanie wielu sugestii przy użyciu panelu uzupełniania GitHub Copilot
Jeśli nie jesteś zadowolony z początkowych sugestii autouzupełniania, GitHub Copilot może otworzyć nową kartę w edytorze z większą ilością opcji. Możesz przejrzeć większą listę sugestii, aby znaleźć lepsze dopasowanie, a następnie wybrać ją.
Aby zademonstrować tę funkcję, wróćmy do wcześniejszego etapu w przykładzie liczb pierwszych.
Załóżmy, że nadal musisz utworzyć metodę isPrime . Po wprowadzeniu pustego wiersza poniżej metody addPrimeNumbersInNumericList GitHub Copilot sugeruje metodę isPrime. Jest to ten sam proces, który został użyty wcześniej. Załóżmy jednak, że nie jesteś zadowolony z sugestii, które oferuje GitHub Copilot, i chcesz zobaczyć więcej opcji.
Aby otworzyć panel uzupełniania GitHub Copilot i wyświetlić inne sugestie, naciśnij klawisze Ctrl + Enter. Możesz również otworzyć menu Więcej akcji i wybrać pozycję Otwórz panel uzupełniania.
Panel uzupełniania GitHub Copilot wyświetla maksymalnie 10 innych sugestii. Przejrzyj sugestie, aby znaleźć te, które najlepiej pasują do Twoich potrzeb.
Aby zaakceptować sugestię, wybierz etykietę Zaakceptuj numer sugestii poniżej sugestii. Na przykład wybierz etykietę Zaakceptuj sugestię 1 poniżej pierwszej sugestii.
Aby odrzucić wszystkie sugestie, zamknij kartę.
Podsumowanie
Sugestie autouzupełniania i kolejne sugestie edycji ułatwiają wydajniejsze i dokładniejsze pisanie kodu. GitHub Copilot udostępnia sugestie autouzupełniania podczas wprowadzania kodu i następne sugestie edycji, które przewidują kolejną prawdopodobną edycję. Możesz wygenerować sugestię autouzupełniania, wprowadzając częściowy lub kompletny wiersz kodu, częściowy lub kompletny komentarz kodu lub pusty wiersz kodu. Możesz zaakceptować sugestię, naciskając Tab lub odrzucając sugestie, naciskając Esc. Sugestiami można zarządzać, korzystając z paska narzędzi, który pojawia się po najechaniu kursorem na sugestię. Pasek narzędzi umożliwia przeglądanie alternatywnych sugestii, akceptowanie sugestii, akceptowanie jednego słowa sugestii lub otwieranie panelu uzupełniania GitHub Copilot, aby wyświetlić więcej sugestii.