拡張 API
Visual Studio Code は拡張性を念頭に置いて構築されています。UI から編集体験に至るまで、VS Code のほぼすべての部分は、拡張機能 API を通じてカスタマイズおよび強化できます。実際、VS Code のコア機能の多くは拡張機能として構築されており、同じ拡張機能 API を使用しています。
このドキュメントでは以下について説明します。
- 拡張機能の構築、実行、デバッグ、テスト、公開の方法
- VS Code の豊富な拡張機能 API を活用する方法
- 開始に役立つガイドやコードサンプルの探し方
- ベストプラクティスとしてのUX ガイドラインの遵守
コードサンプルは Microsoft/vscode-extension-samples で公開されています。
公開されている拡張機能を探している場合は、VS Code Extension Marketplace にアクセスしてください。
拡張機能で何ができるか?
拡張機能 API を使用して実現できることの例をいくつか挙げます。
- カラーテーマやファイルアイコンテーマで VS Code の外観を変更する - テーマ設定
- UI にカスタムコンポーネントやビューを追加する - ワークベンチの拡張
- HTML/CSS/JS で構築されたカスタム Web ページを表示する Webview を作成する - Webview ガイド
- 新しいプログラミング言語をサポートする - 言語拡張機能の概要
- 特定のランタイムのデバッグをサポートする - デバッガー拡張機能ガイド
拡張機能 API のより包括的な概要が必要な場合は、拡張機能の機能概要ページを参照してください。拡張機能ガイドの概要には、さまざまな拡張機能 API の使用法を示すコードサンプルやガイドのリストも含まれています。
拡張機能を構築するには?
優れた拡張機能を構築するには多くの時間と労力がかかることがあります。API ドキュメントの各セクションでできることは以下の通りです。
- Get Started(はじめに)は、Hello World サンプルを使用して、拡張機能を構築するための基本的な概念を教えます。
- Extension Capabilities(拡張機能の機能)は、VS Code の広大な API をより小さなカテゴリに分解し、より詳細なトピックへと導きます。
- Extension Guides(拡張機能ガイド)には、VS Code 拡張機能 API の具体的な使用方法を説明するガイドやコードサンプルが含まれています。
- UX Guidelines(UX ガイドライン)は、拡張機能で優れたユーザーエクスペリエンスを提供するためのベストプラクティスを紹介します。
- Language Extensions(言語拡張機能)は、ガイドとコードサンプルを使用してプログラミング言語のサポートを追加する方法を解説します。
- Testing and Publishing(テストと公開)には、拡張機能のテストや公開など、さまざまな拡張機能開発トピックに関する詳細なガイドが含まれています。
- Advanced Topics(高度なトピック)は、Extension Host、リモート開発と GitHub Codespaces のサポート、Proposed API(提案中の API)などの高度な概念を説明します。
- References(リファレンス)には、VS Code API、コントリビューションポイント、その他多くのトピックに関する網羅的なリファレンスが含まれています。
新着情報
VS Code は毎月アップデートされており、それは拡張機能 API にも適用されます。VS Code 拡張機能の能力と範囲を拡大するため、毎月新しい機能や API が利用可能になります。
拡張機能 API の最新情報を把握するには、以下のセクションをカバーしている月次リリースノートを確認してください。
- Extension authoring(拡張機能作成) - 最新リリースで利用可能になった新しい拡張機能 API について学びます。
- Proposed extension APIs(提案中の拡張機能 API) - 今後予定されている提案中の API を確認し、フィードバックを提供します。
ヘルプを探す
拡張機能開発に関する質問がある場合は、以下で尋ねてみてください。
- VS Code Discussions: VS Code の拡張機能プラットフォームについて議論し、質問し、コミュニティの他のメンバーを助け、回答を得るための GitHub コミュニティです。
- Stack Overflow:
vscode-extensionsタグが付いた数千もの質問があり、その半分以上はすでに回答済みです。問題を検索したり、質問したり、VS Code 拡張機能開発に関する質問に回答して他の開発者を助けたりしましょう! - VS Code Dev Slack: 拡張機能開発者のためのパブリックチャットルームです。VS Code チームのメンバーもしばしば会話に参加します。
ドキュメントに関するフィードバックを提供するには、Microsoft/vscode-docs で新しい Issue を作成してください。解決策が見つからない拡張機能に関する質問がある場合や、VS Code 拡張機能 API に問題がある場合は、Microsoft/vscode で新しい Issue を開いてください。