Отображение решения / пути к файлу в среде 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. Он представил функцию под названием Friendly Solution Name, где вы можете настроить ее для отображения пути к файлу решения (или любой его части) в заголовке главного окна 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, чтобы показать полный путь к файлу решения open.
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, которое позволяет изменить заголовок окна, чтобы включить папку деревоособенности
- настраиваемое минимальное и максимальное расстояние глубины от файла решения / проекта
- позволяет использовать специальные теги, чтобы помочь со многими другими возможными сценариями, которые включают в себя
Git
,Mercurial
иTFS
.
используйте команду MKLINK для создания ссылки на существующее решение. Что касается Visual Studio, то он работает с файлом ссылки, но любые изменения идут в базовый .sln файл.
Я написал запись в блоге здесь об этом...
для людей, которые не получили метод 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, можно использовать команду Файл -> Дополнительные параметры сохранения. В диалоговом окне отображается полный путь к текущему файлу, и вы можете скопировать текст.
Как Дэн также упомянул об этом в комментарии Путь К Файлу В Нижнем Колонтитуле
TabsStudio | 49$
это довольно хороший (хотя и платный) VS расширение, которое обеспечивает:
Группировка Раскраска
- Трансформация
- много настройки и расширения
Путь К Файлу В Нижнем Колонтитуле | бесплатное
отображает полный путь к файлу в нижней части редактора окно
Почетное Упоминание: Visual Studio Code
VS Code версия 1.26 реализованы панировочные сухари который отображает путь к файлу в отдельной строке в верхней части окна редактора при использовании вкладок или встроить имя файла, когда в своем собственном окне.