內建命令
本文件列出了 Visual Studio Code 命令的一個子集,您可能會將其與 vscode.commands.executeCommand
API 一起使用。
閱讀命令指南,瞭解如何使用命令 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 - 要轉換為資料的位元組
- (returns) - 筆記本資料
vscode.executeNotebookToData
- 呼叫筆記本序列化器
- notebookType - 筆記本型別
- NotebookData - 要轉換為位元組的筆記本資料
- (returns) - 位元組
notebook.selectKernel
- 為指定的筆記本編輯器小部件觸發核心選擇器
- options - 選擇核心選項
- (returns) - 無結果
interactive.open
- 開啟互動式視窗並返回筆記本編輯器和輸入 URI
- showOptions - 顯示選項
- resource - 互動式資源 Uri
- controllerId - 筆記本控制器 Id
- title - 互動式編輯器標題
- (returns) - 筆記本和輸入 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
- 執行 CodeLens 提供程式。
- uri - 文字文件的 Uri
- itemResolveCount - (可選) 應解析並返回的透鏡數量。只會返回已解析的透鏡,會影響效能
- (returns) - 解析為 CodeLens 例項陣列的 Promise。
vscode.executeCodeActionProvider
- 執行程式碼操作提供程式。
- uri - 文字文件的 Uri
- rangeOrSelection - 文字文件中的範圍。某些重構提供程式需要 Selection 物件。
- 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
- 解析筆記本內容提供程式
- (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) - 無結果
vscode.executeMappedEditsProvider
- 執行對映編輯提供程式
- uri - 文字文件的 Uri
- string_array - 字串陣列,
- MappedEditsContext - 對映編輯上下文
- (returns) - 解析為工作區編輯或 null 的 Promise
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'。
- 'to':強制的邏輯位置值,指示游標的移動位置。
editorScroll
- 沿給定方向滾動編輯器
- 編輯器滾動引數物件 - 可透過此引數傳遞的屬性值對
- 'to':強制的方向值。
'up', 'down'
- 'by':移動單位。預設值根據“to”值計算。
'line', 'wrappedLine', 'page', 'halfPage', 'editor'
- 'value':要移動的單位數量。預設值為“1”。
- 'revealCursor':如果為 'true' 則在游標超出檢視時顯示游標。
- 'to':強制的方向值。
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
- 使用特定選項開啟新的編輯器內查詢小部件。
- 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
- 筆記本核心引數
- 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
- 獲取編輯器佈局
- (returns) - 一個編輯器佈局物件,格式與 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
,請從命令面板執行首選項:開啟預設鍵盤快捷方式 (JSON)(⇧⌘P(Windows、Linux Ctrl+Shift+P))。