现已发布!了解 11 月的新功能和修复。

在 VS Code 中使用 GitHub Copilot 进行代码补全

GitHub Copilot 充当 AI 驱动的结对程序员,自动提供建议来完成你的代码、注释、测试等。它在您编写代码时直接在编辑器中提供这些建议,并且可以与各种编程语言和框架一起使用。

入门

  1. 安装 GitHub Copilot 扩展。 这也会安装 GitHub Copilot Chat 扩展。

    安装 GitHub Copilot 扩展

  2. 按照Copilot 设置指南中的步骤,在 VS Code 中配置 GitHub Copilot。

    提示

    如果您还没有 GitHub Copilot 订阅,请在您的个人帐户中注册GitHub Copilot 免费试用

  3. 通过以下动手教程,了解如何在 VS Code 中使用 GitHub Copilot。

内联建议

Copilot 会在您键入时提供代码建议:有时是当前行的完成,有时是全新的代码块。您可以接受全部或部分建议,也可以继续键入并忽略这些建议。

请注意,在下面的示例中,Copilot 如何通过使用灰色的虚影文本来建议实现 calculateDaysBetweenDates JavaScript 函数

JavaScript ghost text suggestion.

当您看到内联建议时,可以使用Tab键接受它。

Copilot 会尝试为您代码中已有的代码建议应用相同的编码风格。请注意,在下面的示例中,Copilot 将 add 方法中的相同输入参数命名方案应用于建议的 subtract 方法。

JavaScript ghost text suggestion.

部分接受建议

您可能不想接受 GitHub Copilot 的整个建议。您可以使用 ⌘→ (Windows, Linux Ctrl+Right) 键盘快捷键来接受建议中的下一个单词或下一行。

备选建议

对于任何给定的输入,Copilot 可能会提供多个备选建议。您可以将鼠标悬停在建议上,以查看任何其他建议。

Hovering over inline suggestions enables you to select from multiple suggestions

从代码注释生成建议

您可以使用代码注释提供有关您期望的代码的提示,而不是依赖 Copilot 提供建议。例如,您可以指定要使用的算法或概念类型(例如,“使用递归”或“使用单例模式”),或者要添加到类中的方法和属性。

以下示例演示如何指示 Copilot 在 TypeScript 中创建一个类来表示学生,并提供有关方法和属性的信息

Use code comments to let Copilot generate a Student class in TypeScript with properties and methods.

启用或禁用内联建议

您可以临时启用或禁用所有语言或仅特定语言的代码补全。

  1. VS Code 状态栏中的 GitHub Copilot 状态图标指示 GitHub Copilot 是启用还是禁用。

    Screenshot showing the VS Code status bar, highlighting the Copilot icon that indicates Copilot is active.

  2. 要启用或禁用 Copilot 补全,请先选择状态栏中的 GitHub Copilot 图标。

  3. 如果您要禁用 GitHub Copilot,系统会询问您是希望全局禁用建议,还是仅禁用您当前正在编辑的文件的语言的建议。

    • 要全局禁用 GitHub Copilot 的建议,请选择 全局禁用
    • 要禁用 GitHub Copilot 对指定语言的建议,请选择 禁用 <语言>

    Screenshot showing the VS Code command menu for Copilot, highlighting the options to disable completions.

技巧和窍门

上下文

为了向您提供相关的内联建议,Copilot 会查看编辑器中当前和打开的文件,以分析上下文并创建适当的建议。在使用 Copilot 时,在 VS Code 中打开相关文件有助于设置此上下文,并让 Copilot 更好地了解您的项目。

设置

  • editor.inlineSuggest.enabled - 启用或禁用内联补全。

  • editor.inlineSuggest.fontFamily - 配置内联补全的字体。

  • editor.inlineSuggest.showToolbar - 启用或禁用内联补全显示的工具栏。

  • editor.inlineSuggest.syntaxHighlightingEnabled - 启用或禁用内联补全的语法突出显示。

后续步骤

  • 从入门Copilot 教程开始,在 VS Code 中设置 Copilot 并亲身体验 Copilot。

  • 了解如何使用 Copilot 聊天进行 AI 聊天对话。

其他资源

您可以在Copilot 了解更多信息,以及如何在GitHub Copilot 文档中了解如何在 VS Code 中使用它。

或者查看 YouTube 上的VS Code Copilot 系列,您可以在其中找到更多关于使用 Copilot 的入门内容和特定于编程的视频,例如PythonC#JavaPowerShellC++等等。