Architect's Log

I'm a Cloud Architect. I'm highly motivated to reduce toils with driving DevOps.

【Visual Studio】Visual StudioのビルドイベントをPowerShellで書く

要旨

Windowsサービスアプリをビルドする時は、ビルド前にサービスを停止する必要があります。Visual Studioのビルドイベントを書いて自動化すると楽です。

バッチコマンドで書くのはつらそうなので、PowerShellで書いてみました。

続きを読む

Visual StudioからGitHubのコードを検索するマクロを書いてみました

Visual Studioのマクロ機能は2012で廃止されてしまいました。理由は使用しているユーザーが少ないからだそうですが、個人的は残念でした。

そのマクロを2015で使える拡張機能「Macros for Visual Studio」が公開されたので、GitHubのコードを検索するマクロを書いてみました。

マクロ作成手順

1. Nugetから「Macros for Visual Studio」をインストールします。
2. メニュー[ツール] - [Macros] - [Macro Explorer]を実行します。
3. Macro Explorerの保存アイコンを実行します。
f:id:JHashimoto:20160521140849p:plain
4. ダイアログで、マクロ名と割り当てるショートカットキーを入力し、OKを実行します。
5. Macro Explorerで、作成されたファイルを右クリックし、[開く]を実行します。
6. ソースコードをエディタに貼り付けて、保存します。

ソースコード

var queryBase1 = "https://github.com/search?l="
var queryBase2 = "&ref=searchresults&type=Code&utf8=✓";

if (dte.ActiveDocument.Selection != "") {
    var fileName = new String(dte.ActiveDocument.ProjectItem);

    if (fileName.match(".+.cs"))
        queryBase1 += "C%23";
    else if (fileName.match(".+.vb"))
        queryBase1 += "visual-basic";
    else if (fileName.match(".+.js"))
        queryBase1 += "JavaScript";

    dte.ExecuteCommand("View.WebBrowser", queryBase1 + "&q=" + dte.ActiveDocument.Selection + queryBase2);
}

とりあえず、C#とVBとJavaScriptに対応しました。

使い方

1. エディターで、検索したい文字列を選択します。
f:id:JHashimoto:20160521141539p:plain
2 .割り当てたショートカットキーを入力します。
3. 新しいタブが開き、GitHubの検索結果が表示されます。
f:id:JHashimoto:20160521141717p:plain

昔はマクロといえばVisual Basicでしたが、今時はやっぱりJavaScriptなんですね。

【Visual Studio】F12キーで.NET Frameworkのソースコードを参照可能にする拡張機能「Ref12」

以前、.NET FrameworkのソースコードをホストしているWebサイトを紹介しました。
blog.jhashimoto.net

会社の先輩から、このWebサイトのソースコードをVisual Studioから簡単に参照する拡張機能「Ref12」を教えてもらったので、紹介します。

続きを読む