連載:〜ScottGu氏のブログより〜

Visual Studio 2010拡張機能マネージャ(および新しいVS 2010 PowerCommands拡張機能)

Scott Guthrie 著/Chica
2010/05/10

 本記事は、Microsoftの本社副社長であり、ASP.NETやSilverlightなどの開発チームを率いるScott Guthrie氏のブログを翻訳したものです。氏の許可を得て転載しています。

 これは、VS 2010および.NET 4リリースに向けたブログ投稿シリーズの第23弾です。

 本日のブログ投稿は、VS 2010で行われた拡張性の改善、およびMicrosoftがリリースしたばかり(無償でダウンロードして利用可能)の新しい“PowerCommands for Visual Studio 2010”拡張機能について、いくつかカバーします。

[ブログに加え、現在Twitterを使って簡単な更新やリンク共有を行っています。twitter.com/scottguで、わたしをフォローしてください]

VS 2010における拡張性

 VS 2010は、以前のリリースに比べ、よりリッチな拡張性のあるモデルを提供しています。誰でも、Visual Studio 2010のIDE、コード・エディタ、プロジェクト・システム、関連デザイナなどを追加、カスタマイズ、そしてライトアップするような拡張機能を構築できます。

 VS 2010拡張機能は.NET 4にビルトインされている新しいMEF(Managed Extensibility Framework)を使用して作成できます。Visual Studioチーム・ブログこのブログ投稿で、VS 2010拡張機能の作成方法の詳細を確認できます。

VS 2010拡張機能マネージャ

 拡張機能を構築する開発者は自由に(各自のWebサイトを通して、またそれらを販売することで)配布できます。

 Visual Studio 2010には、IDEにビルトインの“拡張機能マネージャ”も含まれていて、開発者はより簡単にオンラインで拡張機能の検索、ダウンロード、有効化ができます。Tools->Extension Managerというメニュー・オプションを選択すれば“拡張機能マネージャ“を起動できます。


図1

 これによりMicrosoftの“オンライン・ギャラリー”にアクセスする“拡張機能マネージャ”ダイアログがロードされ、必要に応じてVisual Studioでダウンロードして有効化できる利用可能な拡張機能の一覧が表示されます。


図2

 すでにオンライン・ギャラリーには素晴らしい拡張機能が何百もあります。カテゴリ別で見ることができます(左上のツリー・ビューを使ってフィルタできます)。拡張機能の“download”をクリックすると、ダウンロード、インストール、有効化が行われます。

PowerCommands for Visual Studio 2010

 今週末、Microsoftは無償のPowerCommands for Visual Studio 2010拡張機能をオンライン・ギャラリーにリリースします*。詳細はここから確認でき、ダウンロードおよびインストールは、上記の“拡張機能マネージャ”を通して行えます(PowerCommandsで検索すると見つかります)。

* 【編集部注】PowerCommands for Visual Studio 2010は、すでにリリースされています。

 PowerCommandsをダウンロードすると、Visual Studio 2010に数十の便利なコマンドが追加されます。以下はソリューション・エクスプローラのコンテキスト・メニューに追加された、その便利なコマンドの中の数個のみのスクリーンショットです。


図3

 以下は、今週末のPowerCommands for Visual Studio 2010リリースを含めたすべてのコマンドの一覧です。

■オプション・ダイアログでPowerCommandsの有効化/無効化

 この機能はVisual Studio IDEで有効にするコマンドを選択できます。ツール・メニューを選択して、オプションをクリックします。PowerCommandsオプションを開いて、Commandsをクリックします。有効化したいコマンドをチェックします(注:すべてのPowerCommandは最初デフォルトで有効化されています)。

■Format document on save/Remove and Sort Usings(保存されたドキュメントのフォーマット/Usingのソート)

 Format document on saveオプションは、保存されたドキュメントのタブやスペースなどをフォーマットします。これは編集メニューで詳細をクリックし、ドキュメントのフォーマットをクリックするのと同じことです。Remove and Sort Usingsオプションは、保存されたドキュメントの未使用のUsingステートメントを削除し、残りのステートメントをソートします(注:Remove and sort usingsオプションは、C#ドキュメントでのみ利用可能です。Format document on saveとRemove and Sort Usingsは両方とも初回デフォルトでオフになっています)。

■Clear All Panes(すべてのペインをクリア)

 このコマンドは、すべての出力ペインをクリアします。出力ウィンドウのツールバー上のボタンから実行できます。

■Copy Path(パスのコピー)

 このコマンドは現在選択している項目のフルパスをクリップボードにコピーします。ソリューション・エクスプローラでノード(ソリューション・ノード;プロジェクト・ノード;いずれかのプロジェクトの項目ノード;いずれかのフォルダ)の1つを右クリックすると実行できます

■Email CodeSnippet(コードスニペットをメール送信)

 コード・エディタで選択したテキストの行をメール送信するには、エディタのどこかを右クリックしてEmail CodeSnippetをクリックします。

■Insert Guid Attribute(GUID属性の挿入)

 このコマンドは選択したクラスにGUID属性を追加します。コード・エディタから、クラス定義内で右クリックして、Insert Guid Attributeをクリックします。

■Show All Files(すべてのファイルを表示)

 このコマンドはソリューション・ノードが選択されているときに、ソリューション・エクスプローラで表示されているすべてのプロジェクトの隠しファイルを表示します。

■Undo Close(クローズのやり直し)

 このコマンドは閉じたドキュメントを再読み込みし、最後にあった場所にカーソルを戻します。最新の閉じたドキュメントを再読み込みするには、編集メニューからUndo Closeをクリックします。または、[Ctrl]+[Shift]+[Z]ショートカットが使用できます(そのほかの最新の閉じたドキュメントを再読み込みするには、表示メニューから、そのほかのウィンドウをクリックし、Undo Close Windowをクリックします。通常出力ウィンドウの横にUndo Closeウィンドウが表示されます。再読み込みするには一覧のドキュメントをダブルクリックします)。

■Collapse Projects(プロジェクトの折りたたみ)

 このコマンドは、ソリューション・エクスプローラにある選択されたノードのルートから始まる1つまたは複数のプロジェクトを折りたたみます。プロジェクトを折りたたむと、ソリューションの可読性が増します。このコマンドは3つの別の場所、ソリューション、ソリューション・フォルダ、プロジェクトのノードそれぞれから実行できます。

■Copy Class(クラスのコピー)

 このコマンドはクラスの名前を変更し、選択したクラスのすべてのコンテンツをクリップボードにコピーします。このコマンドは通常コンパイル・エラーを避けるために、そのクラスの名前を変更するPaste Classコマンドの次に実行するものです。1つのプロジェクト項目またはサブアイテムのあるプロジェクト項目から実行できます。

■Paste Class(貼り付けクラス)

 このコマンドはコンパイル・エラーを避けるためにそのクラスの名前を変更し、クリップボードからクラス全体のコンテンツを貼り付けます。このコマンドは通常Copy Classコマンドの前に実行します。1つのプロジェクトもしくはフォルダ・ノードから実行できます。

■Copy References(参照のコピー)

 このコマンドは1つの参照もしくは参照一式をクリップボードにコピーします。1つの参照もしくは参照一式のノードから実行できます。

■Paste References(参照の貼り付け)

 このコマンドはクリップボードから1つの参照もしくは参照一式を貼り付けます。プロジェクトのタイプによって、異なる場所から実行できます。C#プロジェクトの場合、参照ノードから実行できます。Visual BasicやWebサイト・プロジェクトの場合、プロジェクト・ノードから実行できます。

■Copy As Project Reference(プロジェクトの参照としてコピー)

 このコマンドは1つのプロジェクトをプロジェクト参照としてクリップボードにコピーします。プロジェクト・ノードから実行できます。

■Edit Project File(プロジェクト・ファイルを編集)

 このコマンドは、Visual Studio内の選択されたプロジェクトに対してMSBuildプロジェクト・ファイルを開きます。1つのプロジェクトをプロジェクト参照としてクリップボードにコピーします。既存のプロジェクトのアンロードとプロジェクトの編集コマンドの組み合わせです。

■Open Containing Folder(含まれているフォルダを開く)

 このコマンドは選択された項目の実際のパスをWindowsエクスプローラで開きます。プロジェクト項目ノードから実行できます。

■Open Command Prompt(コマンド・プロンプトを開く)

 このコマンドは選択された項目の実際のパスを指定したVisual Studioコマンド・プロンプトを開きます。ソリューション、プロジェクト、フォルダ、プロジェクト項目のノードそれぞれから実行できます。

■Unload Projects(プロジェクトのアンロード)

 このコマンドはソリューションのすべてのプロジェクトをアンロードします。複数のプロジェクト編集時のMSBuildシナリオで便利です。このコマンドはソリューション・ノードから実行できます。

■Reload Projects(プロジェクトのリロード)

 このコマンドはソリューションのすべてのプロジェクトをリロードします。このコマンドはソリューション・ノードから実行できます。

■Remove and Sort Usings(Usingの削除とソート)

 このコマンドは、プロジェクトに与えられたすべてのクラスのUsingステートメントを削除およびソートします。例えば、ウィザードで生成されたUsingステートメントを削除および整理するときに便利です。このコマンドはソリューション・ノードまたは1つのプロジェクト・ノードから実行できます。

■Extract Constant(定数の抽出)

 このコマンドは、選択されたテキストに対して定数定義のステートメントを作成します。定数を抽出すると効果的にリテラル値に名前を付けることができます。これにより可読性が改善できます。このコマンドは選択されたテキストを右クリックすればコード・エディタから実行できます。

■Clear Recent File List(最新のファイル一覧をクリア)

 このコマンドは最新のファイル一覧をクリアします。Clear Recent File Listコマンドは、一部あるいは全部の最新ファイルを選択できるClear Fileダイアログを立ち上げます。

■Clear Recent Project List(最新のプロジェクト一覧をクリア)

 このコマンドはVisual Studioの最新のプロジェクト一覧をクリアします。Clear Recent Project Listコマンドは、一部あるいは全部の最新プロジェクトが選択できるClear Fileダイアログを立ち上げます。

■Transform Templates(テンプレートの変形)

 このコマンドは、関連付けられたテキストのテンプレート項目とともに独自のツールを実行します。このコマンドはDSLプロジェクト・ノードもしくはDSLフォルダ・ノードから実行できます。

■Close All(すべてを閉じる)

 このコマンドはすべてのドキュメントを閉じます。このコマンドはドキュメント・タブから実行できます。

一時的に拡張機能を無効にする方法

 拡張機能はVisual Studioをより強力にする素晴らしい方法で、全体的な生産性を改善する手助けをします。ですが、1つ覚えておかなければならないことは、拡張機能はVisual Studioプロセス(DevEnv.exe)内で実行されるので、拡張機能にあるバグはVisual Studioの安定性とパフォーマンスの両方に影響を与えるという点です。

 もし本来より遅い状況に遭遇したり、何度もクラッシュしたりする場合は、一時的にインストールされた拡張機能を無効にして、その問題が修正されるかを確認してください。これをオンライン・ギャラリーを通してインストールされた拡張機能に対して行うには、(ツール->拡張機能マネージャのメニュー・オプションを使用して)拡張機能マネージャを再起動し、ダイアログの左上にある“Installed Extensions(インストール済みの拡張機能)”ノードを選択し、インストール一覧の拡張機能上で“Disable(無効化)”をクリックします。


図4

 Hope this helps,

 ScottEnd of Article

   
 
インデックス・ページヘ  「〜ScottGu氏のブログより〜」


Insider.NET フォーラム 新着記事
  • 第2回 簡潔なコーディングのために (2017/7/26)
     ラムダ式で記述できるメンバの増加、throw式、out変数、タプルなど、C# 7には以前よりもコードを簡潔に記述できるような機能が導入されている
  • 第1回 Visual Studio Codeデバッグの基礎知識 (2017/7/21)
     Node.jsプログラムをデバッグしながら、Visual Studio Codeに統合されているデバッグ機能の基本の「キ」をマスターしよう
  • 第1回 明瞭なコーディングのために (2017/7/19)
     C# 7で追加された新機能の中から、「数値リテラル構文の改善」と「ローカル関数」を紹介する。これらは分かりやすいコードを記述するのに使える
  • Presentation Translator (2017/7/18)
     Presentation TranslatorはPowerPoint用のアドイン。プレゼンテーション時の字幕の付加や、多言語での質疑応答、スライドの翻訳を行える
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

Insider.NET 記事ランキング

本日 月間