MRが楽しい

MRやVRについて学習したことを書き残す

VisualStudioCodeのGitHubCopilotのドキュメントを読む その14(VS CodeでGitHub Copilotを使ったコードの補完)

本日はVisualStudioCodeの学習枠です。
VisualStudioCodeのGitHubCopilotのドキュメントを読みながら実際に操作を試してみました。

前回記事

以下の前回記事の続きです。
bluebirdofoz.hatenablog.com

Code completions with GitHub Copilot in VS Code

以下のCode completions with GitHub Copilot in VS Codeドキュメントを日本語訳しながら実行時のキャプチャをしていきます。
code.visualstudio.com

VS CodeGitHub Copilotを使ったコードの補完

GitHub CopilotはAIを搭載したペアプログラマーとして機能し、コードやコメント、テストなどを完成させるための提案を自動的に行います。
あなたがコードを書いている間、エディターで直接これらの提案を提供して幅広いプログラミング言語フレームワークで動作します。

Copilotは以下の2種類の提案を行います。

コード補完

エディタで入力を開始すると、Copilotはコーディングスタイルにマッチして既存のコードを考慮したコード候補を表示します。

次の編集候補

次の編集候補(別名 Copilot NES)を使用して、次のコード編集を予測します。
NESは現在行っている編集に基づいて、次に行う編集の場所とその編集の内容を予測します。

インライン・サジェスチョン

Copilotは現在の行を補完することもあれば、まったく新しいコード・ブロックを提案することもあります。
提案の全てまたは一部を受け入れることも、入力を続けて提案を無視することもできます。

薄暗いゴーストテキストを使用して提案が行われます。
インラインの提案が表示されたらTabキーでそれを受け入れることができます。

Copilotはコード内に既にあるコード候補と同じコーディング・スタイルを適用しようとします。
次の例ではCopilotが前述メソッドと同じ入力パラメータの命名スキーマを提案中のメソッドに適用していることに注意してください。

提案を部分的に受け入れる

Ctrl+Right(右矢印)キーボードショートカットを使えば、提案の次の単語か次の行を受け入れることができます。
GitHub Copilotからの提案全体を受け入れたくない場合に利用します。

代替案

任意の入力に対してCopilotは複数の代替案を提示することがあります。
候補にカーソルを合わせると、他の候補を表示できます。


コード・コメントから提案を生成する

Copilotによる提案に頼るのではなく、コード・コメントを使用して期待するコードのヒントを提供できます。
例えば使用するアルゴリズムや概念の種類(「再帰を使用する」や「シングルトンパターンを使用する」など)やクラスに追加するメソッドやプロパティを指定できます。

以下は「シングルトンパターンを使用する」コメントでアルゴリズムを指定したパターンです。