質問

私は Visual Studio の複数のインスタンスを頻繁に使用し、同じソリューションの異なるブランチで作業することがよくあります。

VC6 ではタイトル バーに現在のソース ファイルの絶対パスが表示されていましたが、Visual Studio 2005 ではこれが行われないようです。そのため、現在参照しているソリューションのブランチを特定するのが、本来よりも少し面倒になります (私が知っている最も簡単な方法は、タブの上にカーソルを置くと、ソース ファイルのパスがツールチップとして表示されることです)。

完全なソリューションまたはファイル パスをタイトル バー、または少なくとも常に表示される場所に表示して、どのブランチが各インスタンスに読み込まれているかをすぐに確認できるようにする方法はありますか?

役に立ちましたか?

解決

これを行うネイティブな方法はありませんが、マクロを使用して実現できます。詳細はここで完全に説明されています。 http://www.helixoft.com/blog/archives/32

EvironmentEvents マクロ セクションに小さな VB マクロを追加し、VS を再起動するだけです。

注記:最初に VS をロードしたときにはパスは表示されませんが、表示しているファイルを変更するたびに表示されます。おそらくこれを修正する方法はありますが、大したことではないようです。

他のヒント

これは、このジョブ用に特別に調整されたオンライン ギャラリーで利用できる拡張機能です。チェックアウト http://erwinmayer.com/labs/visual-studio-2010-extension-rename-visual-studio-window-title/

最新リリースをチェックしてください VSコマンド 2010 ライト. 。Visual Studio のメイン ウィンドウ タイトルにソリューション ファイル パス (またはその一部) を表示するように設定できるフレンドリ ソリューション名と呼ばれる機能が導入されました。詳細: http://vscommands.com/releasenotes/3.6.8.0 そして http://vscommands.com/releasenotes/3.6.9.0

2008 の場合、上記の受け入れられた回答からマクロを記述する少し良い方法は、ドキュメント イベントの代わりにソリューション イベントを使用することです。これにより、ドキュメントが選択されていない場合でも、常にタイトル バーを編集できます。これは、同僚と私が他のマクロに基づいてまとめたマクロです。設定に応じてソース ディレクトリからブランチ名を取得するには、15 ~ 18 行目を変更する必要があります。

01  Private timer As System.Threading.Timer
02  Declare Auto Function SetWindowText Lib "user32" (ByVal hWnd As System.IntPtr, ByVal lpstring As String) As Boolean
03   
04  Private _branchName As String = String.Empty
05  Private Sub SolutionEvents_Opened() Handles SolutionEvents.Opened
06      Try
07          If timer Is Nothing Then
08              ' Create timer which refreshes the caption because
09              ' IDE resets the caption very often
10              Dim autoEvent As New System.Threading.AutoResetEvent(False)
11              Dim timerDelegate As System.Threading.TimerCallback = _
12                  AddressOf tick
13              timer = New System.Threading.Timer(timerDelegate, autoEvent, 0, 25)
14          End If
15          Dim sourceIndex As Integer = DTE.Solution.FullName.IndexOf("\Source")
16          Dim shortTitle As String = DTE.Solution.FullName.Substring(0, sourceIndex)
17          Dim lastIndex As Integer = shortTitle.LastIndexOf("\")
18          _branchName = shortTitle.Substring(lastIndex + 1)
19          showTitle(_branchName)
20      Catch ex As Exception
21   
22      End Try
23  End Sub
24   
25  Private Sub SolutionEvents_BeforeClosing() Handles SolutionEvents.BeforeClosing
26      If Not timer Is Nothing Then
27          timer.Dispose()
28      End If
29  End Sub
30   
31   
32  ''' <summary>Dispose the timer on IDE shutdown.</summary>
33  Public Sub DTEEvents_OnBeginShutdown() Handles DTEEvents.OnBeginShutdown
34      If Not timer Is Nothing Then
35          timer.Dispose()
36      End If
37  End Sub
38   
39  '''<summary>Called by timer.</summary>
40  Public Sub tick(ByVal state As Object)
41      Try
42          showTitle(_branchName)
43      Catch ex As System.Exception
44      End Try
45  End Sub
46   
47  '''<summary>Shows the title in main window.</summary>
48  Private Sub showTitle(ByVal title As String)
49      SetWindowText(New System.IntPtr(DTE.MainWindow.HWnd), title & " - " & DTE.Name)
50  End Sub

確かに気まずいですね。タブ上にマウスを置くことは、確かに数少ない便利な機能の 1 つです。代替案:ファイルタブを右クリックします: http://weblogs.asp.net/piseth/archive/2008/11/08/find-your-file-path-in-visual-studio.aspx それと関係があるようだ

VSCommands 10 を使用して、開いているソリューション ファイルのフル パスを表示しています。

Friendly Name: {repo}
Solution Path Regex: (?<repo>.*)

メインのタイトル ウィンドウは次のようになります。

c:\repositories\acme.marketplace.trunk\Acme.Marketplace.web\Acme.Marketplace.Web.sln

Mercurial (Hg) を使用し、次のように、trunk、rc、preprod、prod 用に別々のフォルダーを保持しているため、trunk フォルダーまたは rc フォルダーで作業していることがすぐにわかります。

c:\repositories\acme.marketplace.rc1
c:\repositories\acme.marketplace.rc2
c:\repositories\acme.marketplace.trunk
c:\repositories\acme.marketplace.preprod
c:\repositories\acme.marketplace.prod

Visual Studio ウィンドウのタイトルをカスタマイズする方法

をインストールします Visual Studio ウィンドウのタイトルをカスタマイズする プラグイン。

拡張機能をインストールすると、メニューに設定が表示されます。

Tools ► Options ► Customize VS Window Title.

詳しくは

Customize Visual Studio Window Title Visual Studio の軽量拡張機能であり、ウィンドウのタイトルを変更してフォルダー ツリーを含めることができます。

enter image description here

特徴

  • ソリューション/プロジェクト ファイルからの構成可能な最小および最大深度距離
  • 特別なタグを使用して、他の多くの考えられるシナリオに役立つようにします。 Git, Mercurial そして TFS.

MKLINK コマンドを使用して、既存のソリューションへのリンクを作成します。Visual Studio に関する限り、リンク ファイルを使用して動作しますが、変更は基になる .sln ファイルに反映されます。

それについてはここでブログエントリを書きました...

http://willissoftware.com/?p=72

VB メソッドが機能しなかった人 (私のように) は、プラグインを使用できます。

http://visualstudiogallery.msdn.microsoft.com/f3f23845-5b1e-4811-882f-60b7181fa6d6

VS2008 Ultimateでテストしました。VS の [オプション] メニューで設定できます。

VS2010以降を使用している場合は、拡張機能「Visual Studio Window Title Changer」を使用できます。これをインストールし、次の「ウィンドウ タイトル セットアップ」式を使用してソリューション パスを表示します。

'sln_dir + "/" + orig_title'

拡張機能マネージャーを使用して、拡張機能をダウンロードしてインストールします。拡張機能の詳細と使用方法は次のとおりです。

https://visualstudiogallery.msdn.microsoft.com/2e8ebfe4-023f-4c4d-9b7a-d05bbc5cb239?SRC=VSIDE

関連メモ:代わりに、Visual Studio 2005 の場合は、[ファイル] -> [詳細保存オプション] コマンドを使用できます。ダイアログには現在のファイルのフルパスが表示され、テキストをコピーできます。

として ダン コメントでも言及しましたが、 フッターのファイルパス 拡張機能も同じ目的を果たします。

タブスタジオ | $49

以下を提供する非常に優れた (有料ですが) VS 拡張機能です。

  • タブのグループ化
  • タブの色付け
  • タイトル変換
  • 豊富なカスタマイズと拡張機能

Tabs Studio Screenshot

フッターのファイルパス |無料

エディタ ウィンドウの下部に完全なファイル パスを表示します。

File Path On Footer Screenshot

佳作:Visual Studioコード

VSコード バージョン 1.26 で実装されたブレッドクラム これにより、タブを使用する場合はエディタ ウィンドウの上部にある別の行にファイル パスが表示され、独自のウィンドウの場合はファイル名がインラインで表示されます。

VS Code Breadcrumbs Screenshot

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top