Отобразить путь решения / файла в IDE Visual Studio - PullRequest
72 голосов
/ 27 августа 2008

Я часто работаю с несколькими экземплярами Visual Studio, часто работая над разными ветвями одного и того же решения.

VC6 раньше отображал полный путь к текущему исходному файлу в строке заголовка, но Visual Studio 2005 этого не делает. Это делает его немного более неловким, чем нужно, чтобы определить, на какую ветку решения я сейчас обращаюсь (самый быстрый способ, который я знаю, это навести курсор на вкладку, чтобы вы получили путь к исходному файлу в виде всплывающей подсказки). 1003 *

Есть ли способ получить полное решение или путь к файлу в строке заголовка, или, по крайней мере, где-нибудь, что всегда видно, чтобы я мог быстро определить, какая ветвь загружается в каждый экземпляр?

Ответы [ 13 ]

28 голосов
/ 05 июля 2011

Это расширение доступно в онлайн-галерее специально для этой работы. Оформить заказ http://erwinmayer.com/labs/visual-studio-2010-extension-rename-visual-studio-window-title/

24 голосов
/ 27 августа 2008

Нет собственного способа сделать это, но вы можете достичь этого с помощью макроса. Подробности описаны здесь полностью: http://www.helixoft.com/blog/archives/32

Вам просто нужно добавить небольшой макрос VB в раздел макросов EvironmentEvents и перезапустить VS.

Примечание. Путь не будет отображаться при первой загрузке VS, но будет отображаться при каждом изменении файла, который вы просматриваете. Вероятно, есть способ исправить это, но это не кажется большой проблемой.

17 голосов
/ 29 апреля 2011

Ознакомьтесь с последней версией VSCommands 2010 Lite . Он ввел функцию под названием Friendly Solution Name, где вы можете настроить отображение пути к файлу решения (или любой его части) в заголовке главного окна Visual Studio. Более подробная информация: http://vscommands.com/releasenotes/3.6.8.0 и http://vscommands.com/releasenotes/3.6.9.0

5 голосов
/ 03 мая 2011

В 2008 году несколько лучший способ написать макрос из принятого выше ответа - использовать события Solution вместо документов - это позволяет всегда редактировать строку заголовка, даже если у вас не выбран документ , Вот макрос, который мы с коллегой соединили на основе другого - вы захотите изменить строки 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
3 голосов
/ 21 июня 2017

Как настроить заголовок окна Visual Studio

Установите Настроить заголовок окна Visual Studio .

После установки расширения настройки можно найти в меню.

Tools ► Options ► Customize VS Window Title.

Дополнительная информация

Customize Visual Studio Window Title - это легкое расширение для Visual Studio, которое позволяет изменить заголовок окна, включив в него дерево папок

enter image description here

Особенности

  • Настраиваемая минимальная и максимальная глубина от файла решения / проекта
  • Позволяет использовать специальные теги для помощи во многих других возможных сценариях, включая Git, Mercurial и TFS.
3 голосов
/ 27 июня 2012

Я использую VSCommands 10, чтобы показать полный путь к открытому файлу решения.

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

Теперь мое главное окно заголовка выглядит так:

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

Я могу быстро заглянуть и увидеть, что я работаю в папке trunk или папке rc, потому что мы используем Mercurial (Hg) и храним отдельные папки для trunk, rc, preprod, prod следующим образом:

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
3 голосов
/ 16 сентября 2009

Это действительно неловко. Наведение на вкладке действительно является одной из немногих полезных вещей. Альтернативы: щелкните правой кнопкой мыши на вкладке файла: http://weblogs.asp.net/piseth/archive/2008/11/08/find-your-file-path-in-visual-studio.aspx Кажется, мы должны сделать с этим

2 голосов
/ 13 апреля 2015

Если вы используете VS2010 или выше, вы можете использовать расширение «Средство изменения заголовка окна Visual Studio». Установите это и используйте следующее выражение «Window Title Setup» для отображения пути решения:

'sln_dir + "/" + orig_title'

Используйте менеджер расширений для загрузки и установки расширения. Подробную информацию о расширении и как его использовать можно найти здесь:

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

2 голосов
/ 04 мая 2012

Для людей, которые не используют метод VB (как я), вы можете использовать плагин:

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

Протестировано в VS2008 Ultimate. Вы можете настроить его в меню параметров VS.

2 голосов
/ 04 мая 2012

Используйте команду MKLINK, чтобы создать ссылку на существующее решение. Что касается Visual Studio, он работает с файлом ссылок, но любые изменения относятся к базовому файлу .sln.

Я написал здесь запись в блоге об этом ...

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

...