VS Codeのエージェントモードを拡張するには、を試してください!

拡張機能ガイド

Hello World サンプルでVisual Studio Code 拡張機能APIの基本を学んだら、いよいよ実際の拡張機能を作成する時です。拡張機能の機能セクションでは、拡張機能が**できること**の概要が示されていますが、このセクションには、特定のVS Code APIを**どのように**使用するかを説明する詳細なコードガイドとサンプルのリストが含まれています。

各ガイドまたはサンプルには、次の内容が含まれています。

  • 徹底的にコメントされたソースコード。
  • サンプル拡張機能の使用状況を示すGIFまたは画像。
  • サンプル拡張機能の実行手順。
  • 使用されているVS Code APIの一覧。
  • 使用されている寄与ポイントの一覧。
  • サンプルに類似した実際の拡張機能。
  • APIコンセプトの説明。

ガイドとサンプル

以下は、VS Code API寄与ポイントの使用法を含む、VS Code Webサイトのガイドです。拡張機能を作成する際のユーザーインターフェースのベストプラクティスを学ぶには、UXガイドラインを参照することを忘れないでください。

VS Code Webサイトのガイド APIと寄与
コマンド コマンド
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 samplesリポジトリからの追加サンプルのリストです。

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
L10Nサンプル
ターミナルサンプル window.createTerminal
window.onDidChangeActiveTerminal
window.onDidCloseTerminal
window.onDidOpenTerminal
window.Terminal
window.terminals
Vimサンプル コマンド
StatusBarItem
window.createStatusBarItem
TextEditorCursorStyle
window.activeTextEditor
Position
Range
Selection
TextEditor
TextEditorRevealType
TextDocument
ソース管理サンプル workspace.workspaceFolders
SourceControl
SourceControlResourceGroup
scm.createSourceControl
TextDocumentContentProvider
contributes.menus
コメントAPIサンプル
ドキュメント編集サンプル コマンド
contributes.commands
入門サンプル contributes.walkthroughs
テスト拡張機能 TestController
TestItem

言語拡張機能のサンプル

これらのサンプルは「言語拡張機能」のサンプルです

サンプル VS Code Webサイトのガイド
スニペットサンプル /api/language-extensions/snippet-guide
言語設定サンプル /api/language-extensions/language-configuration-guide
LSPサンプル /api/language-extensions/language-server-extension-guide
LSPログストリーミングサンプル 該当なし
LSPマルチルートサーバーサンプル https://github.com/microsoft/vscode/wiki/Adopting-Multi-Root-Workspace-APIs#language-client--language-server (GitHub repo wiki)
LSP Web拡張機能サンプル /api/language-extensions/language-server-extension-guide