Visual Studioではなく、WebブラウザーのVisual Studioでリンクを開くにはどうすればよいですか?


136

ソースファイルのコメントにURLがある場合、「CTRL +クリックしてリンクをたどる」ことができます。ただし、これを実行すると、Visual Studio内でリンクが開きます。Webブラウザー(私の場合はGoogle Chrome)で開くにはどうすればよいですか?


6
2.5年後のこの質問に関する最新情報はありますか?今より良い方法はありますか?
Borek Bernard、2011

1
受け入れ答えは、Visual Studio 2012のための作業は、その新しい質問を開いていませんstackoverflow.com/questions/13047914/...を
大佐はパニック

11
こちらの VS 修正されるよう投票してください
2013

3
4年後にこれに関する更新はありますか?
Xonatron 2013

2
6年後のこれに関する更新はありますか?:)
monstro 2015

回答:


63

この動作を提供する拡張機能がOpen in External Browserと呼ばれています。Visual Studio 2012、2013、2015、2017で動作しますGitHubで入手可能な古いバージョンはVisual Studio 2010をサポートしています)。

この同様の質問に対する彼の回答でこれを指摘してくれたDmitryに感謝します。

編集:Visual Studioチームは、これをVisual Studioに組み込む作業にようやく着手しました。この機能リクエストのステータスは、「レビュー中」から「開始」に移動しました。


マイクありがとう!素敵で簡単なソリューション。
xofz 2014年

10
更新ロブをありがとう。VS2015でこれを使用する必要があるのは残念です。
mikesigs 2015

1
VS2017でも機能
Logerfo

それがVisual Studio 2019で機能するのではないかと思っている人は誰でも、それを含めてほしいと思います。
SharpIncTechAndProgramming

7

この設定が見つからなかったため、使用できる簡単なマクロを作成しました。すべてのマクロと同様に、これをキーコンボにバインドできます。これで、より良い答えが得られるまで仕事が完了します。

Sub OpenURLInChrome()
   'copy to end of line
   DTE.ActiveDocument.Selection.EndOfLine(True)

  'set var
   Dim url As String = DTE.ActiveDocument.Selection.Text

   'launch chrome with url
   System.Diagnostics.Process.Start( _
      Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData) _
      + "\Google\Chrome\Application\chrome.exe", url)
End Sub

カーソルをURLの前に置いてマクロを実行するだけです...


私はVBをインストールしていませんが、(URLの前の行の終わりに何もない場合)機能するように見え、さらに、未回答の質問がないので、回答としてマークします。ご協力ありがとうございます:)
xofz

2
@Sam:Visual Studioマクロを使用するためにVBをインストールする必要はありません。同じ構文を使用します。
Roger Lipscombe 2010年

これは何とかインストールする必要があるものですか?
大佐パニック

3
Visual Studio 2012はマクロをサポートしていないことが判明したため、インストールできませんでした。emacsを試してください。
大佐パニック

5

これは、mracokerによって上記で提案されたマクロの改善です。

このマクロは、現在の行でURLを検索し、前の回答のようにURLの後のテキストをキャプチャしません。

Sub OpenURLInChrome()

   ' Select to end of line
   DTE.ActiveDocument.Selection.EndOfLine(True)
   Dim selection As TextSelection = DTE.ActiveDocument.Selection

   ' Find URL within selection
   Dim match = System.Text.RegularExpressions.Regex.Match( _
      selection.Text, ".*(http\S+)")

   Dim url As String = ""
   If (match.Success) Then
      If match.Groups.Count = 2 Then
         url = match.Groups(1).Value
      End If
   End If

   ' Remove selection
   selection.SwapAnchor()
   selection.Collapse()

   If (url = String.Empty) Then
       MsgBox("No URL found")
   End If

   ' Launch chrome with url
   System.Diagnostics.Process.Start( _
      Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData) _
      + "\Google\Chrome\Application\chrome.exe", url)
End Sub

使用方法:URLの前のどこかにカーソルを置きます。マクロを実行(Ctrl-Shift-Gにマップ)


0

2019アップデート:すべての回答は古くなっています。VS2019コミュニティのオプションでこれを行うネイティブな方法があります:

オプション>> Webブラウザ


これはファイル内のクリック可能なリンクを開くために何もしないようです。何をするかわからない、それを試してみました。何もしないようです。
DarrenMB

0

これは私にとってはうまくいきます。Windowsのデフォルトのブラウザを変更しました。

Windowsサポート

または設定への直接リンク:ms-settings:defaultapps


-4

VS2008では、リンクを右クリックして[リンクを外部ウィンドウで開く]を選択します。デフォルトのブラウザとしてChromeを選択する必要があります。


私もこれを考えましたが、ソースコード内の直接のリンクには適用されず、たとえばヘルプ内のリンクにのみ適用されます。
マシュージョーンズ

正しいのは、内部ナビゲーターのリンクだけで、ソースコードペインにはありません。
バックスラッシュ17

-1は質問に答えません。:-)...右クリックメニューまたはCTRLクリックを含まないソリューションを誰かが持っている場合、それはさらに良いでしょう:-)
Myster
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.