Отображение решения/пути к файлу в Visual Studio IDE

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

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

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

13 ответов


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

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

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


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


Проверьте последнюю версию VSCommands 2010 Lite. Он представил функцию под названием дружественное имя решения, где вы можете установить его для отображения пути к файлу решения (или любой его части) в заголовке главного окна 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

Это действительно неловко. Наведение на вкладку действительно является одной из немногих полезных вещей. Альтернативы: щелкните правой кнопкой мыши на вкладке Файл: 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

Я могу быстро взглянуть и увидеть, что я работаю в папке 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

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

установить Настройка Заголовка Окна Visual Studio плагин.

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

Tools ► Options ► Customize VS Window Title.

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

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

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, можно использовать команду Файл -> Дополнительные параметры сохранения. В диалоговом окне отображается полный путь к текущему файлу, и вы можете скопировать текст.


As Дэн также упоминается в комментарии,Путь К Файлу В Нижнем Колонтитуле


TabsStudio | 49$

является довольно хорошим (хотя и платным) против расширения, которое обеспечивает:

    Группировка Раскраска
  • Трансформация
  • много настройки и расширения

Tabs Studio Screenshot

Путь К Файлу В Нижнем Колонтитуле | бесплатное

отображает полный путь к файлу в нижней части редактора окно

File Path On Footer Screenshot

Почетное Упоминание: Код Visual Studio

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

VS Code Breadcrumbs Screenshot