Examiner les fonctionnalités de complétion automatique du code de GitHub Copilot
GitHub Copilot fournit des suggestions automatiques pendant que vous écrivez du code. Outre les suggestions d’autocomplétion classiques, GitHub Copilot propose également des suggestions de modification suivante (NES), qui anticipent l’emplacement de la prochaine modification que vous pourriez effectuer et suggèrent une complétion correspondante.
Vous recevez des suggestions de style autocomplétion lorsque vous effectuez les actions suivantes :
- Entrez une ligne de code partielle ou complète dans l’éditeur.
- Entrez un commentaire de code partiel ou complet dans l’éditeur.
- Entrez une ligne de code vide dans l’éditeur.
Les suggestions de modification suivantes s’affichent automatiquement lorsque vous modifiez le code. Ils prédisent la modification que vous êtes susceptible d’apporter en fonction de vos modifications récentes et s’affichent avec un indicateur spécial montrant l’emplacement de modification suggéré.
Générer une suggestion de complétion automatique
GitHub Copilot accélère le développement d'applications en suggérant des suggestions de complétion de code basées sur le code que vous écrivez.
Par exemple, supposons que vous souhaitez créer une méthode C# nommée addInt qui retourne la somme de deux entiers. Si vous commencez à taper la signature de méthode, GitHub Copilot suggère le code qu’il croit que vous souhaitez créer.
L’autocomplétion suggérée s’affiche sans mise en évidence colorée de la syntaxe. Cela permet de différencier l’autocomplétion de votre code existant. Vous pouvez accepter le code suggéré en appuyant sur la touche Tab.
Vous pouvez appuyer sur la touche Échap pour ignorer une suggestion.
L’exemple addInt est un peu simpliste. Vous pouvez donc vous demander comment GitHub Copilot faire avec quelque chose de plus complexe.
Supposons que vous souhaitez créer une méthode qui accepte une liste de nombres et retourne la somme des nombres premiers contenus dans la liste. Vous pouvez nommer la méthode addPrimeNumbersInNumericList. Lorsque vous commencez à taper la signature de méthode, GitHub Copilot génère une suggestion pour vous. Par exemple:
Il est important de passer en revue les suggestions avant de les accepter. Cette autocomplétion semble correcte. Vous pouvez donc accepter la suggestion en appuyant sur la touche Tab.
Poursuivons le scénario un peu plus loin.
Une fois la suggestion fusionnée dans votre code, vous remarquerez que la isPrime méthode est soulignée en rouge. Cela est dû au fait que la isPrime méthode n’existe pas encore dans le code.
GitHub Copilot est formé pour suivre les meilleures pratiques, qui incluent la décomposition de problèmes complexes en pièces plus petites et plus gérables. Dans ce cas, GitHub Copilot suggère de créer une méthode isPrime distincte pour vérifier si un nombre est premier.
GitHub Copilot est prêt à suggérer un extrait de code pour la méthode isPrime. Lorsque vous entrez une ligne vide sous la méthode addPrimeNumbersInNumericList, GitHub Copilot suggère une méthode isPrime que vous pouvez utiliser.
Les suggestions de saisie automatique accélèrent le processus de développement en fournissant des extraits de code. Mais que se passe-t-il si les suggestions ne sont pas tout à fait ce dont vous avez besoin ? GitHub Copilot fournit une interface permettant de gérer les suggestions de saisie semi-automatique.
Gérer les suggestions d’autocomplétion
Lorsque GitHub Copilot suggère une autocomplétion, elle fournit également une interface permettant de gérer les suggestions. Vous pouvez accepter une suggestion, passer en revue d’autres suggestions ou ignorer les suggestions.
Lorsque vous pointez le pointeur de la souris sur une autocomplétion suggérée, vous disposez de plusieurs options pour gérer les suggestions.
L’interface par défaut pour la gestion des suggestions comprend les options suivantes :
- Acceptez la suggestion (en totalité) en sélectionnant Accepter. Vous pouvez également accepter la suggestion en appuyant sur la touche Tab.
- Acceptez partiellement la suggestion en sélectionnant Accept Word. Vous pouvez également accepter partiellement une suggestion en appuyant sur les
Ctrl+→touches (flèche droite). - Affichez d’autres suggestions en sélectionnant
>ou<. Vous pouvez également afficher les suggestions alternatives en appuyant sur les touchesAlt+]ou lesAlt+[touches.
La sélection de l’option Accept Word accepte le mot suivant de la suggestion. Cela est utile lorsque vous souhaitez accepter une partie de la suggestion, puis continuer à taper votre propre code. Par exemple, vous pouvez accepter le premier mot de la isPrime suggestion de méthode.
Continuez à sélectionner Accept Word jusqu'à ce que vous ayez accepté autant de suggestions que vous le souhaitez.
En cliquant sur l’icône à trois points (...) située à droite du bouton Accepter le mot, vous accédez à des options supplémentaires telles que Toujours afficher la barre d’outils et Ouvrir le panneau de complétions.
La sélection de l’option Always Show Toolbar garantit que la barre d’outils reste visible lors de l’utilisation de raccourcis clavier pour gérer les suggestions de saisie semi-automatique. La sélection de l’option Open Completions Panel ouvre le panneau GitHub Copilot Achèvements. L’affichage de plusieurs suggestions à l’aide du panneau Complétions GitHub Copilot est abordé à la fin de cette unité.
Note
Pour accepter une ligne entière d’une suggestion, vous devez configurer un raccourci clavier personnalisé pour la editor.action.inlineSuggest.acceptNextLine commande. Cette option n’est pas disponible par défaut dans la barre d’outils.
Générer des suggestions de code à partir de commentaires
Outre la suggestion d’une autocomplétion basée sur le code, GitHub Copilot pouvez utiliser des commentaires de code pour suggérer des extraits de code. Utilisez des expressions en langage naturel pour décrire le code que vous souhaitez créer. Cela permet à GitHub Copilot de proposer des suggestions de saisie semi-automatique qui répondent à des exigences spécifiques. Par exemple, vous pouvez spécifier le type d’algorithme que vous souhaitez utiliser dans un calcul ou les méthodes et propriétés que vous souhaitez ajouter à une classe.
Revenons à l’exemple de nombre premier. À ce stade, vous disposez du code suivant :
Les méthodes addPrimeNumbersInNumericList et isPrime semblent être complètes. Toutefois, vous avez toujours besoin d’une liste de nombres qui peuvent être utilisés comme argument lorsque vous appelez la addPrimeNumbersInNumericList méthode. Vous pouvez écrire un commentaire qui décrit la liste des nombres souhaités. Par exemple, une liste de 100 nombres aléatoires compris entre 1 et 1 000.
Lorsque vous commencez à entrer le commentaire, GitHub Copilot suggère une autocomplétion qui termine le commentaire pour vous. GitHub Copilot utilise votre code environnant pour améliorer ses suggestions. Par exemple, si vous commencez à entrer le commentaire // create, GitHub Copilot utilise le code environnant pour prédire ce que vous souhaitez créer. Dans ce cas, GitHub Copilot utilise la méthode addPrimeNumbersInNumericList pour prédire que vous souhaitez créer a list of numbers.
À mesure que vous rédigez votre commentaire, GitHub Copilot actualise sa suggestion de saisie automatique. Lorsque vous êtes prêt à accepter la suggestion, sélectionnez Accepter ou appuyez sur Tabulation.
Lorsque vous créez une ligne de code après le commentaire, GitHub Copilot commence à générer un extrait de code basé sur le commentaire et votre code existant.
Acceptez chacune des suggestions telles qu’elles apparaissent.
Si GitHub Copilot n'a pas terminé, il génère une autre suggestion que vous pouvez accepter.
Si vous entrez une nouvelle ligne de code une fois l’extrait de code terminé, GitHub Copilot génère une autre suggestion de saisie semi-automatique en fonction des exigences de votre projet de code. Dans ce cas, GitHub Copilot suggère une ligne de code qui appelle la méthode addPrimeNumbersInNumericList, en passant la liste nommée numbers.
Afficher plusieurs suggestions à l’aide du panneau de complétions GitHub Copilot
Si vous n'êtes pas satisfait des suggestions de saisie semi-automatique initiales, GitHub Copilot peut ouvrir un nouvel onglet dans l'éditeur avec davantage d'options. Vous pouvez consulter la liste plus grande des suggestions pour trouver une meilleure correspondance, puis la sélectionner.
Pour illustrer cette fonctionnalité, revenons à une étape antérieure de l’exemple de nombres premiers.
Supposons que vous deviez toujours créer la isPrime méthode. Lorsque vous entrez une ligne vide sous la méthode addPrimeNumbersInNumericList, GitHub Copilot suggère une méthode isPrime pour vous. Il s’agit du même processus que celui que vous avez utilisé précédemment. Toutefois, supposons que vous n'êtes pas satisfait des suggestions que GitHub Copilot offre et souhaitez voir d'autres options.
Pour ouvrir le panneau GitHub Copilot Achèvements et afficher d’autres suggestions, appuyez sur les touches Ctrl + Enter. Vous pouvez également ouvrir le menu Plus d'actions, puis sélectionner Ouvrir le panneau des complétions.
Le panneau de complétions GitHub Copilot affiche jusqu'à 10 autres suggestions. Passez en revue les suggestions pour trouver celle qui convient le mieux à vos besoins.
Pour accepter une suggestion, sélectionnez l’étiquette Accept suggestion NUMBER sous la suggestion. Par exemple, sélectionnez l’étiquette Accepter la suggestion 1 sous la première suggestion.
Pour rejeter toutes les suggestions, fermez l’onglet.
Résumé
Les suggestions de saisie semi-automatique et les suggestions de modification suivantes vous aident à écrire du code plus efficacement et avec précision. GitHub Copilot fournit des suggestions de saisie semi-automatique lorsque vous entrez du code et des suggestions de modification suivantes qui prédisent votre prochaine modification probable. Vous pouvez générer une suggestion de saisie semi-automatique en entrant une ligne de code partielle ou complète, un commentaire de code partiel ou complet ou une ligne de code vide. Vous pouvez accepter une suggestion en appuyant sur la touche Tab ou ignorer les suggestions en appuyant sur la touche Échap. Vous pouvez gérer les suggestions à l’aide de la barre d’outils qui s’affiche lorsque vous pointez sur une suggestion. La barre d’outils vous permet de passer en revue d’autres suggestions, d’accepter une suggestion, d’accepter un mot d’une suggestion ou d’ouvrir le panneau GitHub Copilot Achèvements pour afficher d’autres suggestions.