7年前(Visual Studio 2010の頃)のVisual Studioには,VBA Macro言語を中心に構築されたマクロシステムがあり,非常に評価が高かった。VS2012以降,この機能はVisual Studioから失われたため,ユーザはそれを諦めるか,あるいはサードパーティの代替品を探さなければならなくなった。この問題に対処するため,MicrosoftのJustin Clareburt氏は,Macros for Visual Studioという新たなエクステンションを通じて,Visual Studio 2013および2015にマクロを取り戻すという発表をした。
このエクステンションは,実行中のドキュメント操作やIDEコマンドの記録と再生など,いくつかの機能をユーザに提供する。マクロの繰り返し実行やキーボードショートカット割り当て,生成されたマクロファイルのVisual Studio内での編集が可能だ。さらにVisual Studio DTE APIを使用すれば,単なるキーストロークの記録以上の複雑なIDE操作を行なうこともできる。
DTE APIへのアクセスは,このエクステンションに機能を提供する中心的存在だ。 フォントサイズの調整やブレークポイントの設定,アクティブなソリューションの前ファイルの編集などを含むさまざまな処理を,プログラム的に実行する方法を紹介するサンプルプログラムが提供されている。
現在のエクステンションには,いくつかの制限がある点に注意が必要だ。 まず最初の,おそらく最も重要な制限として,VS2010の頃のマクロをいまだ保有している開発者は,それらのマクロがJavaScriptで記述されていないため,今回のエクステンションで使用することはできない。もうひとつの制限は,Visual Studio内のダイアログボックスへの入力を記録することができない点だ。第3に,マクロからマクロを呼び出すことはできない。そして最後は,マクロに非同期イベント(ビルドが完了するまでの可変時間のような)という概念がないため,この種のイベントに関するスクリプトの作成が意図しない動作につながる可能性があることだ。
エクステンション自体はC#で記述され,MITライセンスで提供されている。動作の検証はGitHub上で行なうことができる。Visual Studio Galleryを通じて,IDEから直接インストールして使用することも可能だ。
この記事を評価
- 編集者評
- 編集長アクション