🚀 在 VS Code 中免費取得

內建命令

本文列出您可能會與 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 - 格式化選項
  • (傳回) - 解析為 TextEdit 陣列的 Promise。

vscode.executeFormatRangeProvider - 執行範圍格式提供器。

  • uri - 文字文件的 Uri
  • range - 文字文件中的範圍
  • options - 格式化選項
  • (傳回) - 解析為 TextEdit 陣列的 Promise。

vscode.executeFormatOnTypeProvider - 執行輸入時格式提供器。

  • uri - 文字文件的 Uri
  • position - 文字文件中的位置
  • ch - 觸發字元
  • options - 格式化選項
  • (傳回) - 解析為 TextEdit 陣列的 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 - 在編輯器中開啟提供的資源。可以是文字或二進位檔案,或 http(s) URL。如果您需要更多控制項來控制開啟文字檔案的選項,請改用 vscode.window.showTextDocument

  • uri - 文字或二進位檔案,或 http(s) URL 的 Uri
  • columnOrOptions - (選用) 要在其中開啟的欄位或編輯器選項,請參閱 vscode.TextDocumentShowOptions
  • label - 編輯器標籤 (選用)
  • (傳回) - 無結果

vscode.openWith - 使用特定編輯器開啟提供的資源。

  • resource - 要開啟的資源
  • viewId - 自訂編輯器檢視 ID 或 'default' 以使用 VS Code 的預設編輯器
  • columnOrOptions - (選用) 要在其中開啟的欄位或編輯器選項,請參閱 vscode.TextDocumentShowOptions
  • (傳回) - 無結果

vscode.diff - 在差異編輯器中開啟提供的資源,以比較其內容。

  • left - 差異編輯器的左側資源
  • right - 差異編輯器的右側資源
  • title - 差異編輯器的人工可讀標題
  • options - (選用) 要在其中開啟的欄位或編輯器選項 (請參閱 vscode.TextDocumentShowOptions)

vscode.changes - 在變更編輯器中開啟資源清單,以比較其內容。

  • title - 變更編輯器的人工可讀標題
  • resourceList - 要比較的資源清單

vscode.prepareTypeHierarchy - 在文件內的位置準備類型階層

  • uri - 文字文件的 Uri
  • position - 文字文件中的位置
  • (傳回) - 解析為 TypeHierarchyItem 執行個體陣列的 Promise

vscode.provideSupertypes - 計算項目的超類型

  • item - 類型階層項目
  • (傳回) - 解析為 TypeHierarchyItem 執行個體陣列的 Promise

vscode.provideSubtypes - 計算項目的子類型

  • item - 類型階層項目
  • (傳回) - 解析為 TypeHierarchyItem 執行個體陣列的 Promise

vscode.revealTestInExplorer - 在檔案總管中顯示測試執行個體

  • testItem - VS Code TestItem。
  • (傳回) - 無結果

setContext - 設定可在 when 條件子句中使用的自訂內容金鑰值。

  • name - 內容金鑰名稱
  • value - 內容金鑰值
  • (傳回) - 無結果

vscode.executeMappedEditsProvider - 執行對應編輯提供器

  • uri - 文字文件的 Uri
  • string_array - 字串陣列,
  • MappedEditsContext - 對應編輯內容
  • (傳回) - 解析為工作區編輯或 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'。

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 - 使用特定選項開啟新的編輯器內尋找小工具。

  • searchString - 要預先填入尋找輸入的字串
  • replaceString - 要預先填入取代輸入的字串
  • isRegex - 啟用 regex
  • 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)