博客 / 詳情

返回

vscode插件開發中文文檔教程(8)——擴展API導覽

vscode插件開發中文文檔教程(8)——擴展API導覽

原文鏈接:Extension Guides
作者:Microsoft
譯者:倔強青銅三

前言

大家好,我是倔強青銅三。是一名熱情的軟件工程師,我熱衷於分享和傳播IT技術,致力於通過我的知識和技能推動技術交流與創新,歡迎關注我,微信公眾號:倔強青銅三。歡迎點贊、收藏、關注,一鍵三連!!!

擴展API導覽

一旦您已經瞭解了 Visual Studio Code 擴展 API 的基礎知識,例如在 Hello World 示例中展示的內容,就可以開始構建一些實際的擴展了。雖然 擴展功能 部分提供了擴展 可以 做什麼的高級概述,但本節包含一系列詳細的代碼指南和示例,解釋了 如何 使用特定的 VS Code API。

在每個指南或示例中,您可以期望找到以下內容:

  • 註釋詳盡的源代碼。
  • 展示示例擴展用法的 GIF 或圖片。
  • 運行示例擴展的説明。
  • 列出使用的 VS Code API。
  • 列出使用的貢獻點(Contribution Points)。
  • 與示例類似的現實世界擴展。
  • API 概念的解釋。

指南與示例

以下是 VS Code 網站上的指南列表,包括它們對 VS Code API 和 貢獻點 的使用情況。別忘了參考 UX 指南,以瞭解創建擴展的最佳用户界面實踐。

VS Code 網站上的指南 API & 貢獻點
命令 commands
contributes.commands
顏色主題 contributes.themes
文件圖標主題 contributes.iconThemes
產品圖標主題 contributes.productIconThemes
樹視圖 window.createTreeView window.registerTreeDataProvider
TreeView
TreeDataProvider
contributes.views
contributes.viewsContainers
Webview window.createWebviewPanel
window.registerWebviewPanelSerializer
自定義編輯器 window.registerCustomEditorProvider
CustomTextEditorProvider
contributes.customEditors
虛擬文檔 workspace.registerTextDocumentContentProvider
commands.registerCommand
window.showInputBox
虛擬工作區 workspace.fs
capabilities.virtualWorkspaces
工作區信任 workspace.isTrusted
workspace.onDidGrantWorkspaceTrust
capabilities.untrustedWorkspaces
任務提供程序 tasks.registerTaskProvider
Task
ShellExecution
contributes.taskDefinitions
源代碼控制 workspace.workspaceFolders
SourceControl
SourceControlResourceGroup
scm.createSourceControl
TextDocumentContentProvider
contributes.menus
調試器擴展 contributes.breakpoints
contributes.debuggers
debug
Markdown 擴展 markdown.previewStyles
markdown.markdownItPlugins
markdown.previewScripts
測試擴展 TestController
TestItem
自定義數據擴展 contributes.html.customData
contributes.css.customData

以下是來自 VS Code Extensions 示例倉庫 的更多示例列表。

GitHub 示例 API & 貢獻點
Webview 示例 window.createWebviewPanel
window.registerWebviewPanelSerializer
狀態欄示例 window.createStatusBarItem
StatusBarItem
樹視圖示例 window.createTreeView
window.registerTreeDataProvider
TreeView
TreeDataProvider
contributes.views
contributes.viewsContainers
任務提供程序示例 tasks.registerTaskProvider
Task
ShellExecution
contributes.taskDefinitions
多根工作區示例 workspace.getWorkspaceFolder
workspace.onDidChangeWorkspaceFolders
自動完成提供程序示例 languages.registerCompletionItemProvider
CompletionItem
SnippetString
文件系統提供程序示例 workspace.registerFileSystemProvider
編輯器裝飾示例 TextEditor.setDecorations
DecorationOptions
DecorationInstanceRenderOptions
ThemableDecorationInstanceRenderOptions
window.createTextEditorDecorationType
TextEditorDecorationType
contributes.colors
本地化示例
終端示例 window.createTerminal
window.onDidChangeActiveTerminal
window.onDidCloseTerminal
window.onDidOpenTerminal
window.Terminal
window.terminals
Vim 示例 commands
StatusBarItem
window.createStatusBarItem
TextEditorCursorStyle
window.activeTextEditor
Position
Range
Selection
TextEditor
TextEditorRevealType
TextDocument
源代碼控制示例 workspace.workspaceFolders
SourceControl
SourceControlResourceGroup
scm.createSourceControl
TextDocumentContentProvider
contributes.menus
評論 API 示例
文檔編輯示例 commands
contributes.commands
入門示例 contributes.walkthroughs
測試擴展 TestController
TestItem

語言擴展示例

以下是 語言擴展 的示例:

示例 VS Code 網站上的指南
代碼片段示例 /api/language-extensions/snippet-guide
語言配置示例 /api/language-extensions/language-configuration-guide
LSP 示例 /api/language-extensions/language-server-extension-guide
LSP 日誌流示例 N/A
LSP 多根服務器示例 https://github.com/microsoft/vscode/wiki/Adopting-Multi-Root-Workspace-APIs#language-client--language-server (GitHub 倉庫 wiki)
LSP Web 擴展示例 /api/language-extensions/language-server-extension-guide

最後感謝閲讀!歡迎關注我,微信公眾號倔強青銅三。歡迎點贊收藏關注,一鍵三連!!!
user avatar
0 位用戶收藏了這個故事!

發佈 評論

Some HTML is okay.