现已发布!阅读 10 月份的更新内容,了解新功能和修复。

内置命令

本文档列出了您可以使用 vscode.commands.executeCommand API 的 Visual Studio Code 命令子集。

阅读 命令指南 了解如何使用命令 API。

以下是如何在 VS Code 中打开新文件夹的示例

let uri = Uri.file('/some/path/to/folder');
let success = await commands.executeCommand('vscode.openFolder', uri);

注意:您可以通过键盘快捷键编辑器查看完整的 VS Code 命令集 文件 > 首选项 > 键盘快捷键。键盘快捷键编辑器列出了 VS Code 内置或由扩展贡献的所有命令,以及它们的按键绑定和可见性 when 子句。

命令

vscode.executeDataToNotebook - 调用笔记本序列化器

  • notebookType - 笔记本类型
  • data - 要转换为数据的字节
  • (返回) - 笔记本数据

vscode.executeNotebookToData - 调用笔记本序列化器

  • notebookType - 笔记本类型
  • NotebookData - 要转换为字节的笔记本数据
  • (返回) - 字节

notebook.selectKernel - 触发指定笔记本编辑器小部件的内核选择器

  • options - 选择内核选项
  • (返回) - 无结果

interactive.open - 打开交互式窗口并返回笔记本编辑器和输入 URI

  • showOptions - 显示选项
  • resource - 交互式资源 Uri
  • controllerId - 笔记本控制器 Id
  • title - 交互式编辑器标题
  • (返回) - 笔记本和输入 URI

vscode.editorChat.start - 调用新的编辑器聊天会话

  • 运行参数 -
  • (返回) - 无结果

vscode.executeDocumentHighlights - 执行文档高亮提供程序。

  • uri - 文本文档的 Uri
  • position - 文本文档中的位置
  • (返回) - 一个解析为 DocumentHighlight 实例数组的 promise。

vscode.executeDocumentSymbolProvider - 执行文档符号提供程序。

  • uri - 文本文档的 Uri
  • (返回) - 一个解析为 SymbolInformation 和 DocumentSymbol 实例数组的 promise。

vscode.executeFormatDocumentProvider - 执行文档格式提供程序。

  • uri - 文本文档的 Uri
  • options - 格式化选项
  • (返回) - 一个解析为 TextEdits 数组的 promise。

vscode.executeFormatRangeProvider - 执行范围格式提供程序。

  • uri - 文本文档的 Uri
  • range - 文本文档中的范围
  • options - 格式化选项
  • (返回) - 一个解析为 TextEdits 数组的 promise。

vscode.executeFormatOnTypeProvider - 执行键入时格式化提供程序。

  • uri - 文本文档的 Uri
  • position - 文本文档中的位置
  • ch - 触发字符
  • options - 格式化选项
  • (返回) - 一个解析为 TextEdits 数组的 promise。

vscode.executeDefinitionProvider - 执行所有定义提供程序。

  • uri - 文本文档的 Uri
  • position - 文本文档中的位置
  • (返回) - 一个解析为 Location 或 LocationLink 实例数组的 promise。

vscode.executeTypeDefinitionProvider - 执行所有类型定义提供程序。

  • uri - 文本文档的 Uri
  • position - 文本文档中的位置
  • (返回) - 一个解析为 Location 或 LocationLink 实例数组的 promise。

vscode.executeDeclarationProvider - 执行所有声明提供程序。

  • uri - 文本文档的 Uri
  • position - 文本文档中的位置
  • (返回) - 一个解析为 Location 或 LocationLink 实例数组的 promise。

vscode.executeImplementationProvider - 执行所有实现提供程序。

  • uri - 文本文档的 Uri
  • position - 文本文档中的位置
  • (返回) - 一个解析为 Location 或 LocationLink 实例数组的 promise。

vscode.executeReferenceProvider - 执行所有引用提供程序。

  • uri - 文本文档的 Uri
  • position - 文本文档中的位置
  • (返回) - 一个解析为 Location 实例数组的 promise。

vscode.executeHoverProvider - 执行所有悬停提供程序。

  • uri - 文本文档的 Uri
  • position - 文本文档中的位置
  • (返回) - 一个解析为 Hover 实例数组的 promise。

vscode.executeSelectionRangeProvider - 执行选择范围提供程序。

  • uri - 文本文档的 Uri
  • position - 文本文档中的位置
  • (返回) - 一个解析为范围数组的 promise。

vscode.executeWorkspaceSymbolProvider - 执行所有工作区符号提供程序。

  • query - 搜索字符串
  • (返回) - 一个解析为 SymbolInformation 实例数组的 promise。

vscode.prepareCallHierarchy - 在文档中的位置准备调用层次结构

  • uri - 文本文档的 Uri
  • position - 文本文档中的位置
  • (返回) - 一个解析为 CallHierarchyItem 实例数组的 promise

vscode.provideIncomingCalls - 为项目计算传入调用

  • item - 调用层次结构项目
  • (返回) - 一个解析为 CallHierarchyIncomingCall 实例数组的 promise

vscode.provideOutgoingCalls - 为项目计算传出调用

  • item - 调用层次结构项目
  • (返回) - 一个解析为 CallHierarchyOutgoingCall 实例数组的 promise

vscode.prepareRename - 执行重命名提供程序的 prepareRename。

  • uri - 文本文档的 Uri
  • position - 文本文档中的位置
  • (返回) - 一个解析为范围和占位符文本的 promise。

vscode.executeDocumentRenameProvider - 执行重命名提供程序。

  • uri - 文本文档的 Uri
  • position - 文本文档中的位置
  • newName - 新的符号名称
  • (返回) - 一个解析为 WorkspaceEdit 的 promise。

vscode.executeLinkProvider - 执行文档链接提供程序。

  • uri - 文本文档的 Uri
  • linkResolveCount - (可选) 应解析的链接数量,仅当链接未解析时。
  • (返回) - 一个解析为 DocumentLink 实例数组的 promise。

vscode.provideDocumentSemanticTokensLegend - 为文档提供语义令牌图例

  • uri - 文本文档的 Uri
  • (返回) - 一个解析为 SemanticTokensLegend 的 promise。

vscode.provideDocumentSemanticTokens - 为文档提供语义令牌

  • uri - 文本文档的 Uri
  • (返回) - 一个解析为 SemanticTokens 的 promise。

vscode.provideDocumentRangeSemanticTokensLegend - 为文档范围提供语义令牌图例

  • uri - 文本文档的 Uri
  • range - (可选) 文本文档中的范围
  • (返回) - 一个解析为 SemanticTokensLegend 的 promise。

vscode.provideDocumentRangeSemanticTokens - 为文档范围提供语义令牌

  • uri - 文本文档的 Uri
  • range - 文本文档中的范围
  • (返回) - 一个解析为 SemanticTokens 的 promise。

vscode.executeCompletionItemProvider - 执行补全项提供程序。

  • uri - 文本文档的 Uri
  • position - 文本文档中的位置
  • triggerCharacter - (可选) 当用户键入字符(如 ,()时触发补全
  • itemResolveCount - (可选) 要解析的补全项数量(过大的数字会减慢补全速度)
  • (返回) - 一个解析为 CompletionList 实例的 promise。

vscode.executeSignatureHelpProvider - 执行签名帮助提供程序。

  • uri - 文本文档的 Uri
  • position - 文本文档中的位置
  • triggerCharacter - (可选) 当用户键入字符(如 ,()时触发签名帮助
  • (返回) - 一个解析为 SignatureHelp 的 promise。

vscode.executeCodeLensProvider - 执行代码透镜提供程序。

  • uri - 文本文档的 Uri
  • itemResolveCount - (可选) 应解析和返回的透镜数量。将只返回解析的透镜,这会影响性能
  • (返回) - 一个解析为 CodeLens 实例数组的 promise。

vscode.executeCodeActionProvider - 执行代码操作提供程序。

  • uri - 文本文档的 Uri
  • rangeOrSelection - 文本文档中的范围。一些重构提供程序需要 Selection 对象。
  • kind - (可选) 要为其返回代码操作的代码操作类型
  • itemResolveCount - (可选) 要解析的代码操作数量(过大的数字会减慢代码操作速度)
  • (返回) - 一个解析为 Command 实例数组的 promise。

vscode.executeDocumentColorProvider - 执行文档颜色提供程序。

  • uri - 文本文档的 Uri
  • (返回) - 一个解析为 ColorInformation 对象数组的 promise。

vscode.executeColorPresentationProvider - 执行颜色呈现提供程序。

  • color - 要显示和插入的颜色
  • context - 包含 uri 和范围的上下文对象
  • (返回) - 一个解析为 ColorPresentation 对象数组的 promise。

vscode.executeInlayHintProvider - 执行内联提示提供程序

  • uri - 文本文档的 Uri
  • range - 文本文档中的范围
  • (返回) - 一个解析为 Inlay 对象数组的 promise

vscode.executeFoldingRangeProvider - 执行折叠范围提供程序

  • uri - 文本文档的 Uri
  • (返回) - 一个解析为 FoldingRange 对象数组的 promise

vscode.resolveNotebookContentProviders - 解析笔记本内容提供程序

  • (返回) - 一个解析为 NotebookContentProvider 静态信息对象数组的 promise。

vscode.executeInlineValueProvider - 执行内联值提供程序

  • uri - 文本文档的 Uri
  • range - 文本文档中的范围
  • context - InlineValueContext
  • (返回) - 一个解析为 InlineValue 对象数组的 promise

vscode.open - 在编辑器中打开提供的资源。

  • Uri -

vscode.openWith - 使用特定编辑器打开提供的资源。

  • resource - 要打开的资源
  • viewId - 自定义编辑器视图 id 或“default”以使用 VS Code 的默认编辑器
  • columnOrOptions - (可选) 要打开的列或编辑器选项,请参阅 vscode.TextDocumentShowOptions
  • (返回) - 无结果

vscode.diff - 在差异编辑器中打开提供的资源以比较其内容。

  • left - 差异编辑器的左侧资源
  • right - 差异编辑器的右侧资源
  • 标题 - Diff 编辑器的用户可读标题
  • 选项 - (可选)要打开的列或编辑器选项(参见 vscode.TextDocumentShowOptions)

vscode.prepareTypeHierarchy - 在文档内的某个位置准备类型层次结构

  • uri - 文本文档的 Uri
  • position - 文本文档中的位置
  • (返回值) - 一个解析为 TypeHierarchyItem 实例数组的承诺

vscode.provideSupertypes - 计算某个项目的超类型

  • 项目 - 类型层次结构项目
  • (返回值) - 一个解析为 TypeHierarchyItem 实例数组的承诺

vscode.provideSubtypes - 计算某个项目的子类型

  • 项目 - 类型层次结构项目
  • (返回值) - 一个解析为 TypeHierarchyItem 实例数组的承诺

vscode.revealTestInExplorer - 在资源管理器中显示测试实例

  • 测试项目 - 一个 VS Code 测试项目。
  • (返回) - 无结果

setContext - 设置一个自定义上下文键值,可在 when 子句中使用。

  • 名称 - 上下文键名称
  • - 上下文键值
  • (返回) - 无结果

vscode.executeMappedEditsProvider - 执行映射编辑提供程序

  • uri - 文本文档的 Uri
  • 字符串数组 - 字符串数组,
  • MappedEditsContext - 映射编辑上下文
  • (返回值) - 一个解析为工作区编辑或 null 的承诺

cursorMove - 将光标移动到视图中的逻辑位置

  • 光标移动参数对象 - 可以通过此参数传递的属性-值对
    • 'to': 一个强制的逻辑位置值,用于提供将光标移动到的位置。
      'left', 'right', 'up', 'down', 'prevBlankLine', 'nextBlankLine',
      'wrappedLineStart', 'wrappedLineEnd', 'wrappedLineColumnCenter'
      'wrappedLineFirstNonWhitespaceCharacter', 'wrappedLineLastNonWhitespaceCharacter'
      'viewPortTop', 'viewPortCenter', 'viewPortBottom', 'viewPortIfOutside'
      
    • 'by': 移动单位。默认值根据 'to' 值计算。
      'line', 'wrappedLine', 'character', 'halfLine'
      
    • 'value': 要移动的单位数量。默认值为 '1'。
    • 'select': 如果为 'true',则进行选择。默认值为 'false'。

editorScroll - 按给定方向滚动编辑器

  • 编辑器滚动参数对象 - 可以通过此参数传递的属性-值对
    • 'to': 一个强制的方向值。
      'up', 'down'
      
    • 'by': 移动单位。默认值根据 'to' 值计算。
      'line', 'wrappedLine', 'page', 'halfPage', 'editor'
      
    • 'value': 要移动的单位数量。默认值为 '1'。
    • 'revealCursor': 如果为 'true',则如果光标在视窗外部,则显示光标。

revealLine - 在给定的逻辑位置显示给定的行

  • 显示行参数对象 - 可以通过此参数传递的属性-值对
    • 'lineNumber': 一个强制的行号值。
    • 'at': 必须显示行的逻辑位置。
      'top', 'center', 'bottom'
      

editor.unfold - 展开编辑器中的内容

  • 展开编辑器参数 - 可以通过此参数传递的属性-值对
    • 'levels': 要展开的级别数。如果未设置,则默认为 1。
    • 'direction': 如果为 'up',则向上展开给定数量的级别,否则向下展开。
    • 'selectionLines': 要应用展开操作的编辑器选择的开始行(从 0 开始)的数组。如果未设置,则将使用活动选择。

editor.fold - 折叠编辑器中的内容

  • 折叠编辑器参数 - 可以通过此参数传递的属性-值对
    • 'levels': 要折叠的级别数。
    • 'direction': 如果为 'up',则向上折叠给定数量的级别,否则向下折叠。
    • 'selectionLines': 要应用折叠操作的编辑器选择的开始行(从 0 开始)的数组。如果未设置,则将使用活动选择。如果没有设置级别或方向,则折叠位置处的区域,或者如果已折叠,则折叠第一个未折叠的父项。

editor.toggleFold - 根据当前状态折叠或展开编辑器中的内容

editor.actions.findWithArgs - 使用特定选项打开一个新的 In-Editor Find Widget。

  • searchString - 用于预填充查找输入的字符串
  • replaceString - 用于预填充替换输入的字符串
  • isRegex - 启用正则表达式
  • preserveCase - 在替换时尝试保留大小写
  • findInSelection - 将查找位置限制为当前选择
  • matchWholeWord
  • isCaseSensitive

editor.action.goToLocations - 从文件中的某个位置跳转到位置

  • uri - 要开始的文本文档
  • position - 要开始的位置
  • locations - 位置数组。
  • multiple - 定义在有多个结果时要执行的操作,可以是 peekgotoAndPeek 或 `goto
  • noResultsMessage - 当位置为空时显示的用户可读消息。

editor.action.peekLocations - 从文件中的某个位置预览位置

  • uri - 要开始的文本文档
  • position - 要开始的位置
  • locations - 位置数组。
  • multiple - 定义在有多个结果时要执行的操作,可以是 peekgotoAndPeek 或 `goto

workbench.action.quickOpen - 快速访问

  • prefix -

notebook.cell.toggleOutputs - 切换输出

  • options - 单元格范围选项

notebook.fold - 折叠单元格

  • index - 单元格索引

notebook.unfold - 展开单元格

  • index - 单元格索引

notebook.selectKernel - 笔记本内核参数

  • kernelInfo - 内核信息

notebook.cell.changeLanguage - 更改单元格语言

  • range - 单元格范围
  • language - 目标单元格语言

notebook.execute - 运行全部

  • uri - 文档 URI

notebook.cell.execute - 执行单元格

  • options - 单元格范围选项

notebook.cell.executeAndFocusContainer - 执行单元格并聚焦容器

  • options - 单元格范围选项

notebook.cell.cancelExecution - 停止单元格执行

  • options - 单元格范围选项

workbench.action.findInFiles - 打开工作区搜索

  • 搜索的一组选项 -

_interactive.open - 打开交互式窗口

  • showOptions - 显示选项
  • resource - 交互式资源 Uri
  • controllerId - 笔记本控制器 Id
  • title - 笔记本编辑器标题

interactive.execute - 执行输入框中的内容

  • resource - 交互式资源 Uri

search.action.openNewEditor - 打开一个新的搜索编辑器。传递的参数可以包含变量,例如 ${relativeFileDirname}。

  • 打开新的搜索编辑器参数 -

search.action.openEditor - 打开一个新的搜索编辑器。传递的参数可以包含变量,例如 ${relativeFileDirname}。

  • 打开新的搜索编辑器参数 -

search.action.openNewEditorToSide - 打开一个新的搜索编辑器。传递的参数可以包含变量,例如 ${relativeFileDirname}。

  • 打开新的搜索编辑器参数 -

vscode.openFolder - 在当前窗口或新窗口中打开一个文件夹或工作区,具体取决于 newWindow 参数。请注意,在同一窗口中打开将关闭当前扩展主机进程,并在给定的文件夹/工作区上启动一个新进程,除非 newWindow 参数设置为 true。

  • uri - (可选)要打开的文件夹或工作区文件的 URI。如果没有提供,则本机对话框将提示用户选择文件夹
  • options - (可选)选项。具有以下属性的对象:forceNewWindow: 是否在新窗口或同一窗口中打开文件夹/工作区。默认为在同一窗口中打开。forceReuseWindow: 是否强制在同一窗口中打开文件夹/工作区。默认为 false。noRecentEntry: 是否在“最近打开”列表中显示打开的 URI。默认为 false。注意,为了向后兼容,选项也可以是布尔类型,表示 forceNewWindow 设置。

vscode.newWindow - 根据 newWindow 参数打开一个新窗口。

  • options - (可选)选项。具有以下属性的对象:reuseWindow: 是否打开一个新窗口或同一窗口。默认为打开一个新窗口。

vscode.removeFromRecentlyOpened - 从最近打开的列表中删除具有给定路径的条目。

  • path - 要从最近打开的列表中删除的 URI 或 URI 字符串。

moveActiveEditor - 通过选项卡或组移动活动编辑器

  • 活动编辑器移动参数 - 参数属性
    • 'to': 提供要移动到的位置的字符串值。
    • 'by': 提供移动单位的字符串值(按选项卡或按组)。
    • 'value': 提供要移动多少个位置或绝对位置的数字值。

copyActiveEditor - 通过组复制活动编辑器

  • 活动编辑器复制参数 - 参数属性
    • 'to': 提供要复制到的位置的字符串值。
    • 'value': 提供要复制多少个位置或绝对位置的数字值。

vscode.getEditorLayout - 获取编辑器布局

  • (返回值) - 一个编辑器布局对象,与 vscode.setEditorLayout 的格式相同

workbench.action.files.newUntitledFile - 新建无标题文本文件

  • 新建无标题文本文件参数 - 如果已知,则为编辑器视图类型或语言 ID

workbench.extensions.installExtension - 安装给定的扩展

  • extensionIdOrVSIXUri - 扩展 ID 或 VSIX 资源 URI
  • options - (可选)安装扩展的选项。具有以下属性的对象:installOnlyNewlyAddedFromExtensionPackVSIX: 启用后,VS Code 仅安装从扩展包 VSIX 中新添加的扩展。此选项仅在安装 VSIX 时考虑。

workbench.extensions.uninstallExtension - 卸载给定的扩展

  • 要卸载的扩展的 ID -

workbench.extensions.search - 搜索特定扩展

  • 要在搜索中使用的查询 -

workbench.action.tasks.runTask - 运行任务

  • args - 筛选快速选择中显示的任务

workbench.action.openIssueReporter - 打开问题报告器,并可选地预填充表单的一部分。

  • options - 用于预填充问题报告器的数据。

vscode.openIssueReporter - 打开问题报告器,并可选地预填充表单的一部分。

  • options - 用于预填充问题报告器的数据。

workbench.action.openLogFile - workbench.action.openLogFile

  • logFile -

workbench.action.openWalkthrough - 打开演练。

  • walkthroughID - 要打开的演练的 ID。
  • toSide - 在侧面的新编辑器组中打开演练。

简单命令

不需要参数的简单命令可以在默认 keybindings.json 文件中的键盘快捷键列表中找到。未绑定的命令列在文件末尾的注释块中。

要查看默认 keybindings.json,从命令面板(⇧⌘P(Windows、Linux Ctrl+Shift+P))运行**首选项:打开默认键盘快捷键 (JSON)**。