现已发布!阅读 10 月份的新功能和修复。

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

GitHub Copilot 就像一个人工智能驱动的编程搭档,它会自动提供建议来完成您的代码、注释、测试等。它在您编写代码时直接在编辑器中提供这些建议,并且可以与各种编程语言和框架配合使用。

入门

注意:在查看本主题后,您可以开始使用 Copilot 入门教程 来设置并体验 VS Code 中的 Copilot。

  • 要使用 GitHub Copilot,您必须在个人帐户中拥有 GitHub Copilot 的有效订阅,或者您需要由您的组织分配一个座位。

  • 要在 VS Code 中使用 GitHub Copilot,您必须拥有 GitHub Copilot 扩展。安装此扩展时,GitHub Copilot Chat 扩展也会被安装。

请按照以下步骤 在 VS Code 中设置 GitHub Copilot,方法是注册订阅并在 VS Code 中安装 Copilot 扩展。

内联建议

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

请注意以下示例中 Copilot 如何使用淡色的幽灵文本建议使用 calculateDaysBetweenDates JavaScript 函数的实现

JavaScript ghost text suggestion.

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

Copilot 尝试对您代码中已有的代码建议应用相同的编码风格。请注意以下示例中 Copilot 如何对建议的 subtract 方法应用与 add 方法相同的输入参数命名方案。

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 Chat 进行人工智能聊天对话。

其他资源

您可以在 Copilot 文档中阅读有关如何在 VS Code 中使用 Copilot 的更多信息,该文档位于 GitHub Copilot 文档 中。

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