内置命令
本文档列出了你可能在 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 - 调用 Notebook 序列化器
- notebookType - Notebook 类型
- data - 要转换为数据的字节
- (returns) - Notebook 数据
vscode.executeNotebookToData - 调用 Notebook 序列化器
- notebookType - Notebook 类型
- NotebookData - 要转换为字节的 Notebook 数据
- (returns) - 字节
notebook.selectKernel - 为指定的 notebook 编辑器组件触发内核选择器
- options - 选择内核选项
- (returns) - 无结果
interactive.open - 打开交互式窗口并返回 notebook 编辑器和输入 URI
- showOptions - 显示选项
- resource - 交互式资源 URI
- controllerId - Notebook 控制器 ID
- title - 交互式编辑器标题
- (returns) - Notebook 和输入 URI
vscode.editorChat.start - 调用新的编辑器聊天会话
- 运行参数 -
- (returns) - 无结果
vscode.executeDocumentHighlights - 执行文档高亮提供程序。
- uri - 文本文档的 URI
- position - 文本文档中的位置
- (returns) - 解析为 DocumentHighlight 实例数组的 Promise。
vscode.executeDocumentSymbolProvider - 执行文档符号提供程序。
- uri - 文本文档的 URI
- (returns) - 解析为 SymbolInformation 和 DocumentSymbol 实例数组的 Promise。
vscode.executeFormatDocumentProvider - 执行文档格式化提供程序。
- uri - 文本文档的 URI
- options - 格式化选项
- (returns) - 解析为 TextEdit 数组的 Promise。
vscode.executeFormatRangeProvider - 执行范围格式化提供程序。
- uri - 文本文档的 URI
- range - 文本文档中的范围
- options - 格式化选项
- (returns) - 解析为 TextEdit 数组的 Promise。
vscode.executeFormatOnTypeProvider - 执行键入时格式化提供程序。
- uri - 文本文档的 URI
- position - 文本文档中的位置
- ch - 触发字符
- options - 格式化选项
- (returns) - 解析为 TextEdit 数组的 Promise。
vscode.executeDefinitionProvider - 执行所有定义提供程序。
- uri - 文本文档的 URI
- position - 文本文档中的位置
- (returns) - 解析为 Location 或 LocationLink 实例数组的 Promise。
vscode.executeTypeDefinitionProvider - 执行所有类型定义提供程序。
- uri - 文本文档的 URI
- position - 文本文档中的位置
- (returns) - 解析为 Location 或 LocationLink 实例数组的 Promise。
vscode.executeDeclarationProvider - 执行所有声明提供程序。
- uri - 文本文档的 URI
- position - 文本文档中的位置
- (returns) - 解析为 Location 或 LocationLink 实例数组的 Promise。
vscode.executeImplementationProvider - 执行所有实现提供程序。
- uri - 文本文档的 URI
- position - 文本文档中的位置
- (returns) - 解析为 Location 或 LocationLink 实例数组的 Promise。
vscode.executeReferenceProvider - 执行所有引用提供程序。
- uri - 文本文档的 URI
- position - 文本文档中的位置
- (returns) - 解析为 Location 实例数组的 Promise。
vscode.executeHoverProvider - 执行所有悬停提供程序。
- uri - 文本文档的 URI
- position - 文本文档中的位置
- (returns) - 解析为 Hover 实例数组的 Promise。
vscode.executeSelectionRangeProvider - 执行选择范围提供程序。
- uri - 文本文档的 URI
- position - 文本文档中的位置
- (returns) - 解析为范围数组的 Promise。
vscode.executeWorkspaceSymbolProvider - 执行所有工作区符号提供程序。
- query - 搜索字符串
- (returns) - 解析为 SymbolInformation 实例数组的 Promise。
vscode.prepareCallHierarchy - 在文档内部的位置准备调用层级结构
- uri - 文本文档的 URI
- position - 文本文档中的位置
- (returns) - 解析为 CallHierarchyItem 实例数组的 Promise
vscode.provideIncomingCalls - 计算项目的传入调用
- item - 调用层级结构项目
- (returns) - 解析为 CallHierarchyIncomingCall 实例数组的 Promise
vscode.provideOutgoingCalls - 计算项目的传出调用
- item - 调用层级结构项目
- (returns) - 解析为 CallHierarchyOutgoingCall 实例数组的 Promise
vscode.prepareRename - 执行重命名提供程序的准备重命名(prepareRename)。
- uri - 文本文档的 URI
- position - 文本文档中的位置
- (returns) - 解析为范围和占位符文本的 Promise。
vscode.executeDocumentRenameProvider - 执行重命名提供程序。
- uri - 文本文档的 URI
- position - 文本文档中的位置
- newName - 新的符号名称
- (returns) - 解析为 WorkspaceEdit 的 Promise。
vscode.executeLinkProvider - 执行文档链接提供程序。
- uri - 文本文档的 URI
- linkResolveCount - (可选)应解析的链接数量,仅在链接未解析时有效。
- (returns) - 解析为 DocumentLink 实例数组的 Promise。
vscode.provideDocumentSemanticTokensLegend - 为文档提供语义词元图例
- uri - 文本文档的 URI
- (returns) - 解析为 SemanticTokensLegend 的 Promise。
vscode.provideDocumentSemanticTokens - 为文档提供语义词元
- uri - 文本文档的 URI
- (returns) - 解析为 SemanticTokens 的 Promise。
vscode.provideDocumentRangeSemanticTokensLegend - 为文档范围提供语义词元图例
- uri - 文本文档的 URI
- range - (可选)文本文档中的范围
- (returns) - 解析为 SemanticTokensLegend 的 Promise。
vscode.provideDocumentRangeSemanticTokens - 为文档范围提供语义词元
- uri - 文本文档的 URI
- range - 文本文档中的范围
- (returns) - 解析为 SemanticTokens 的 Promise。
vscode.executeCompletionItemProvider - 执行补全项提供程序。
- uri - 文本文档的 URI
- position - 文本文档中的位置
- triggerCharacter - (可选)当用户键入诸如
,或(之类的字符时触发补全 - itemResolveCount - (可选)要解析的补全数量(数字太大会减慢补全速度)
- (returns) - 解析为 CompletionList 实例的 Promise。
vscode.executeSignatureHelpProvider - 执行签名帮助提供程序。
- uri - 文本文档的 URI
- position - 文本文档中的位置
- triggerCharacter - (可选)当用户键入诸如
,或(之类的字符时触发签名帮助 - (returns) - 解析为 SignatureHelp 的 Promise。
vscode.executeCodeLensProvider - 执行代码透镜(Code Lens)提供程序。
- uri - 文本文档的 URI
- itemResolveCount - (可选)应解析并返回的代码透镜数量。将仅返回已解析的代码透镜,这会影响性能
- (returns) - 解析为 CodeLens 实例数组的 Promise。
vscode.executeCodeActionProvider - 执行代码操作提供程序。
- uri - 文本文档的 URI
- rangeOrSelection - 文本文档中的范围。某些重构提供程序需要 Selection 对象。
- kind - (可选)为其返回代码操作的代码操作类型(kind)
- itemResolveCount - (可选)要解析的代码操作数量(数字太大会减慢代码操作速度)
- (returns) - 解析为 Command 实例数组的 Promise。
vscode.executeDocumentColorProvider - 执行文档颜色提供程序。
- uri - 文本文档的 URI
- (returns) - 解析为 ColorInformation 对象数组的 Promise。
vscode.executeColorPresentationProvider - 执行颜色表示形式提供程序。
- color - 要显示和插入的颜色
- context - 包含 uri 和 range 的上下文对象
- (returns) - 解析为 ColorPresentation 对象数组的 Promise。
vscode.executeInlayHintProvider - 执行内联提示提供程序
- uri - 文本文档的 URI
- range - 文本文档中的范围
- (returns) - 解析为 Inlay 对象数组的 Promise
vscode.executeFoldingRangeProvider - 执行折叠范围提供程序
- uri - 文本文档的 URI
- (returns) - 解析为 FoldingRange 对象数组的 Promise
vscode.resolveNotebookContentProviders - 解析 Notebook 内容提供程序
- (returns) - 解析为 NotebookContentProvider 静态信息对象数组的 Promise。
vscode.executeInlineValueProvider - 执行内联值提供程序
- uri - 文本文档的 URI
- range - 文本文档中的范围
- context - 一个 InlineValueContext
- (returns) - 解析为 InlineValue 对象数组的 Promise
vscode.open - 在编辑器中打开提供的资源。可以是文本文件、二进制文件或 http(s) URL。如果你需要对打开文本文件的选项进行更多控制,请改用 vscode.window.showTextDocument。
- uri - 文本文件、二进制文件或 http(s) URL 的 URI
- columnOrOptions - (可选)打开所在的列或编辑器选项,参见
vscode.TextDocumentShowOptions - label - 编辑器标签(可选)
- (returns) - 无结果
vscode.openWith - 使用特定的编辑器打开提供的资源。
- resource - 要打开的资源
- viewId - 自定义编辑器视图 ID,或者使用 'default' 来使用 VS Code 的默认编辑器
- columnOrOptions - (可选)打开所在的列或编辑器选项,参见 vscode.TextDocumentShowOptions
- (returns) - 无结果
vscode.diff - 在差异编辑器中打开提供的资源以比较其内容。
- left - 差异编辑器的左侧资源
- right - 差异编辑器的右侧资源
- title - 差异编辑器的人类可读标题
- options - (可选)打开所在的列或编辑器选项(参见 vscode.TextDocumentShowOptions)
vscode.changes - 在更改编辑器中打开资源列表以比较其内容。
- title - 更改编辑器的人类可读标题
- resourceList - 要比较的资源列表
vscode.prepareTypeHierarchy - 在文档内部的位置准备类型层级结构
- uri - 文本文档的 URI
- position - 文本文档中的位置
- (returns) - 解析为 TypeHierarchyItem 实例数组的 Promise
vscode.provideSupertypes - 计算项目的超类型
- item - 类型层级结构项目
- (returns) - 解析为 TypeHierarchyItem 实例数组的 Promise
vscode.provideSubtypes - 计算项目的子类型
- item - 类型层级结构项目
- (returns) - 解析为 TypeHierarchyItem 实例数组的 Promise
vscode.revealTestInExplorer - 在资源管理器中显示测试实例
- testItem - VS Code TestItem。
- (returns) - 无结果
setContext - 设置可用于 when 子句的自定义上下文键值。
- name - 上下文键名
- value - 上下文键值
- (returns) - 无结果
cursorMove - 将光标移动到视图中的逻辑位置
- Cursor move argument object - 可以通过此参数传递的属性-值对
- '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'。
- 'to': 一个必需的逻辑位置值,指示光标移动到的位置。
editorScroll - 沿指定方向滚动编辑器
- Editor scroll argument object - 可以通过此参数传递的属性-值对
- 'to': 必需的方向值。
'up', 'down' - 'by': 移动的单位。默认值根据 'to' 值计算。
'line', 'wrappedLine', 'page', 'halfPage', 'editor' - 'value': 移动的单位数量。默认为 '1'。
- 'revealCursor': 如果为 'true',则在光标位于视口之外时将其显示出来。
- 'to': 必需的方向值。
revealLine - 在指定的逻辑位置显示给定的行
- Reveal line argument object - 可以通过此参数传递的属性-值对
- 'lineNumber': 必需的行号值。
- 'at': 必须显示该行的逻辑位置。
'top', 'center', 'bottom'
editor.unfold - 展开编辑器中的内容
- Unfold editor argument - 可以通过此参数传递的属性-值对
- 'levels': 要展开的层级数。如果未设置,则默认为 1。
- 'direction': 如果为 'up',则向上展开指定层级数,否则向下展开。
- 'selectionLines': 要应用展开操作的编辑器选区起始行(从 0 开始)数组。如果未设置,将使用活动选区。
editor.fold - 折叠编辑器中的内容
- Fold editor argument - 可以通过此参数传递的属性-值对
- 'levels': 要折叠的层级数。
- 'direction': 如果为 'up',则向上折叠指定层级数,否则向下折叠。
- 'selectionLines': 要应用折叠操作的编辑器选区起始行(从 0 开始)数组。如果未设置,将使用活动选区。如果未设置层级或方向,则折叠该位置的区域,如果该区域已折叠,则折叠第一个未折叠的父级。
editor.toggleFold - 根据当前状态折叠或展开编辑器中的内容
editor.actions.findWithArgs - 使用特定选项打开一个新的编辑器内查找部件。
- searchString - 用于预填查找输入框的字符串
- replaceString - 用于预填替换输入框的字符串
- isRegex - 启用正则表达式
- preserveCase - 替换时尽量保持相同的大小写
- findInSelection - 将查找位置限制为当前选区
- matchWholeWord
- isCaseSensitive
editor.action.goToLocations - 从文件中的某个位置转到多个位置
- uri - 要开始的文本文档
- position - 开始的位置
- locations - 位置数组。
- multiple - 定义有多个结果时的操作,可以是
peek、gotoAndPeek或 `goto - noResultsMessage - 当位置为空时显示的人类可读消息。
editor.action.peekLocations - 从文件中的某个位置预览位置
- uri - 要开始的文本文档
- position - 开始的位置
- locations - 位置数组。
- multiple - 定义有多个结果时的操作,可以是
peek、gotoAndPeek或 `goto
workbench.action.quickOpen - 快速打开
- prefix -
notebook.cell.toggleOutputs - 切换输出
- options - 单元格范围选项
notebook.fold - 折叠单元格
- index - 单元格索引
notebook.unfold - 展开单元格
- index - 单元格索引
notebook.selectKernel - Notebook 内核参数
- 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 - Notebook 控制器 ID
- title - Notebook 编辑器标题
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。注意,为了向后兼容,options 也可以是布尔类型,表示forceNewWindow设置。
vscode.newWindow - 根据 newWindow 参数打开新窗口。
- options - (可选)选项。具有以下属性的对象:
reuseWindow:是打开新窗口还是在同一窗口中打开。默认为在新窗口中打开。
vscode.removeFromRecentlyOpened - 从最近打开列表中移除具有给定路径的条目。
- path - 要从最近打开列表中移除的 URI 或 URI 字符串。
moveActiveEditor - 按标签页或组移动活动编辑器
- Active editor move argument - 参数属性
- 'to': 指示移动位置的字符串值。
- 'by': 指示移动单位的字符串值(按标签页或按组)。
- 'value': 提供移动多少个位置或绝对位置的数值。
copyActiveEditor - 按组复制活动编辑器
- Active editor copy argument - 参数属性
- 'to': 指示复制位置的字符串值。
- 'value': 提供复制多少个位置或绝对位置的数值。
vscode.getEditorLayout - 获取编辑器布局
- (returns) - 一个编辑器布局对象,格式与 vscode.setEditorLayout 相同
workbench.action.files.newUntitledFile - 新建无标题文本文件
- New Untitled Text File arguments - 编辑器视图类型或语言 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 - 过滤快速选择(Quick Pick)中显示的任务
workbench.action.openIssueReporter - 打开问题报告器并可选择预填表单的一部分。
- options - 用于预填问题报告器的数据。
vscode.openIssueReporter - 打开问题报告器并可选择预填表单的一部分。
- options - 用于预填问题报告器的数据。
workbench.action.openLogFile - workbench.action.openLogFile
- logFile -
workbench.action.openWalkthrough - 打开漫游引导。
- walkthroughID - 要打开的漫游引导的 ID。
- toSide - 在侧边的新编辑器组中打开漫游引导。
简单命令
不需要参数的简单命令可以在默认 keybindings.json 文件的键盘快捷方式列表中找到。未绑定的命令列在文件底部的注释块中。
要查看默认的 keybindings.json,请从命令面板中运行 Preferences: Open Default Keyboard Shortcuts (JSON)(首选项: 打开默认键盘快捷方式 (JSON))(⇧⌘P (Windows, Linux Ctrl+Shift+P))。