🚀 在 VS Code 中

VS Code 中 GitHub Copilot 设置参考

本文列出了 Visual Studio Code 中 GitHub Copilot 的配置设置。有关在 VS Code 中使用设置的常规信息,请参阅用户和工作区设置,以及变量参考,了解有关预定义变量支持的信息。

提示

如果您还没有 Copilot 订阅,可以通过注册 Copilot Free 计划 免费使用 Copilot,并获得每月有限次数的补全和聊天互动。

团队正在不断努力改进 VS Code 中的 Copilot 并添加新功能。某些功能仍处于实验阶段。请试用它们并在我们的问题中分享您的反馈。获取有关 VS Code 中的功能生命周期的更多信息。

常规设置

  • github.copilot.editor.enableAutoCompletions:自动显示内联补全。
  • github.copilot.enable:为指定的语言启用或禁用 Copilot 补全。
  • github.copilot.editor.enableCodeActions:控制 Copilot 命令是否在可用时显示为代码操作。
  • github.copilot.renameSuggestions.triggerAutomatically:控制 Copilot 是否自动生成重命名建议。
  • chat.commandCenter.enabled:控制是否在 VS Code 标题栏中显示 Copilot 菜单(默认值:true)。
  • github.copilot.nextEditSuggestions.enabled:启用 Copilot Next Edit Suggestions (Copilot NES)。
  • editor.inlineSuggest.edits.allowCodeShifting:配置 Copilot NES 是否能够移动您的代码以显示建议。
  • editor.inlineSuggest.edits.renderSideBySide:配置 Copilot NES 是否可以在可能的情况下并排显示更大的建议,或者 Copilot NES 是否应始终在相关代码下方显示更大的建议。
  • workbench.commandPalette.experimental.askChatLocation (实验性):控制命令面板应在何处询问聊天问题。
  • github.copilot.chat.search.semanticTextResults (实验性):在搜索视图中启用语义搜索结果。
  • chat.setupFromDialog (实验性):控制在启动聊天会话时是否显示 Copilot 设置对话框。

聊天设置

  • github.copilot.chat.followUps:控制 Copilot 是否应在聊天中建议后续问题。
  • github.copilot.chat.localeOverride:指定 Copilot 应以哪种语言响应,例如 enfr
  • github.copilot.chat.runCommand.enabled:在聊天视图中启用 /runCommand 意图以运行 VS Code 命令。
  • github.copilot.chat.useProjectTemplates:使用 /new 时,使用相关的 GitHub 项目作为启动项目。
  • github.copilot.chat.scopeSelection:如果您使用 /explain 且活动编辑器没有选择内容,是否提示指定符号范围。
  • github.copilot.chat.terminalChatLocation:控制应在何处打开来自终端的聊天查询。
  • chat.detectParticipant.enabled:在聊天视图中启用聊天参与者检测。
  • chat.editor.fontFamily:聊天代码块中的字体系列。
  • chat.editor.fontSize:聊天代码块中的字体大小(像素)。
  • chat.editor.fontWeight:聊天代码块中的字体粗细。
  • chat.editor.lineHeight:聊天代码块中的行高(像素)。
  • chat.editor.wordWrap:切换聊天代码块中的行自动换行。
  • chat.editing.confirmEditRequestRemoval:在撤消编辑之前请求确认(默认值:true
  • chat.editing.confirmEditRequestRetry:在重做上次编辑之前请求确认(默认值:true
  • chat.editing.autoAcceptDelay:配置自动接受建议编辑的延迟时间,使用零禁用自动接受(默认值:0)
  • chat.agent.enabled:启用或禁用代理模式(默认值:false
  • chat.agent.maxRequests:Copilot 在代理模式下可以发出的最大请求数(默认值:15)
  • github.copilot.chat.agent.runTasks:在使用代理模式时运行工作区任务(默认值:true
  • github.copilot.chat.codesearch.enabled (预览):当在提示中使用 #codebase 时,Copilot 会自动发现要编辑的相关文件。
  • chat.implicitContext.enabled (实验性):配置是否应将活动编辑器自动添加为聊天提示的上下文。
  • github.copilot.chat.agent.thinkingTool (实验性):在代理模式下启用思考工具。
  • github.copilot.chat.newWorkspaceCreation.enabled (实验性):在聊天中启用用于搭建新工作区的代理模式工具。
  • github.copilot.chat.edits.temporalContext.enabled (实验性):是否在 Copilot 编辑的请求中包含最近查看和编辑的文件。
  • github.copilot.chat.edits.suggestRelatedFilesFromGitHistory (实验性):在 Copilot 编辑中建议来自 git 历史记录的相关文件(默认值:false

行内聊天设置

  • inlineChat.acceptedOrDiscardBeforeSave:控制编辑器中挂起的行内聊天会话是否阻止保存文件。
  • inlineChat.finishOnType:在更改区域外键入时是否完成行内聊天会话。
  • inlineChat.holdToSpeech:按住行内聊天键盘快捷键是否会自动启用语音识别。
  • inlineChat.lineEmptyHint (实验性):控制是否在空行上显示行内聊天的提示。
  • inlineChat.lineNaturalLanguageHint (实验性):实验性建议,一旦某行主要由单词组成,就会触发行内聊天。
  • editor.inlineSuggest.syntaxHighlightingEnabled:控制是否为内联建议显示语法突出显示。
  • github.copilot.chat.editor.temporalContext.enabled (实验性):是否在行内聊天中包含最近查看和编辑的文件以及 Copilot 请求。

自定义 Copilot 提示

  • github.copilot.chat.codeGeneration.useInstructionFiles:控制是否将来自 .github/copilot-instructions.md 的代码指令添加到 Copilot 请求中。
  • github.copilot.chat.reviewSelection.enabled (预览):为编辑器文本选择启用代码审查。
  • github.copilot.chat.reviewSelection.instructions (预览):一组指令,将添加到 Copilot 请求中,用于审查当前编辑器选择。
  • github.copilot.chat.codeGeneration.instructions (实验性):一组指令,将添加到生成代码的 Copilot 请求中。
  • github.copilot.chat.testGeneration.instructions (实验性):一组指令,将添加到生成测试的 Copilot 请求中。
  • github.copilot.chat.commitMessageGeneration.instructions (实验性):一组指令,将添加到生成提交消息的 Copilot 请求中。用于审查当前编辑器选择的 Copilot 请求。
  • github.copilot.chat.pullRequestDescriptionGeneration.instructions (实验性):一组指令,将添加到生成拉取请求标题和描述的 Copilot 请求中。
  • chat.promptFiles (实验性):启用或禁用可重用提示文件。
  • chat.promptFilesLocations (实验性):指定提示文件的位置。设置为 true 以使用默认位置 (.github/prompts),或使用 { "/path/to/folder": boolean } 表示法来指定不同的路径。相对路径从工作区的根文件夹解析。

调试设置

  • github.copilot.chat.startDebugging.enabled (预览):在聊天视图中启用实验性的 /startDebugging 意图以生成调试配置。
  • github.copilot.chat.copilotDebugCommand.enabled (预览):启用 copilot-debug 终端命令。

测试设置

  • github.copilot.chat.generateTests.codeLens (实验性):为当前测试覆盖率信息未涵盖的符号显示生成测试 CodeLens。
  • github.copilot.chat.setupTests.enabled (实验性):在 /tests 生成中启用实验性的 /setupTests 意图和提示。
  • github.copilot.chat.testGeneration.instructions (实验性):一组指令,将添加到生成测试的 Copilot 请求中。

Notebook 设置

  • notebook.experimental.generate (实验性):启用生成操作以在 Notebook 编辑器中创建启用行内代码聊天的代码单元格。

辅助功能设置

  • inlineChat.accessibleDiffView:行内聊天是否也为其更改渲染可访问的差异查看器。
  • accessibility.signals.chatRequestSent:在发出聊天请求时播放信号 - 声音(音频提示)和/或公告(警报)。
  • accessibility.signals.chatResponseReceived:在收到响应时播放声音/音频提示。
  • accessibility.verbosity.inlineChat:提供有关如何访问行内编辑器聊天辅助功能帮助菜单的信息,并在输入获得焦点时使用提示警报,描述如何使用该功能。
  • accessibility.verbosity.inlineCompletions:提供有关如何访问内联补全悬停和辅助功能视图的信息。
  • accessibility.verbosity.panelChat:在聊天输入获得焦点时,提供有关如何访问聊天帮助菜单的信息。
  • accessibility.voice.keywordActivation:控制是否识别关键字短语“Hey Code”以启动语音聊天会话。
  • accessibility.voice.autoSynthesize:控制当使用语音作为输入时,是否应自动朗读文本响应。
  • accessibility.voice.speechTimeout:在您停止说话后,语音语音识别保持活动状态的持续时间(毫秒)。