在Visual Studio IDE中显示解决scheme/文件path
我经常使用Visual Studio的多个实例,通常在同一解决scheme的不同分支上工作。
VC6用来在其标题栏中显示当前源文件的完整path,但Visual Studio 2005似乎没有这样做。 这使得它比应该是我目前正在查看的解决scheme(我知道的最快的方法是hover在选项卡上,以便获取源文件的path作为工具提示)的哪个分支应该稍微尴尬。
有什么办法可以将完整的解决scheme或文件path放到标题栏中,或者至less在某处始终可见,这样我就可以快速判断哪个分支被加载到每个实例中?
没有一个原生的方式来做到这一点,但你可以用macros来实现它。 详细信息在这里完整描述: http : //www.helixoft.com/blog/archives/32
你只需要添加一个VBmacros到EvironmentEventsmacros部分,并重新启动VS.
注意:当你第一次加载VS时,path不会显示出来,但是当你改变你正在查看的文件时,path就不会显示出来。 可能有办法解决这个问题,但这似乎不是什么大问题。
这是专门为此工作量身定做的在线画廊的扩展。 结帐http://erwinmayer.com/labs/visual-studio-2010-extension-rename-visual-studio-window-title/
查看VSCommands 2010 Lite的最新版本。 它引入了一个称为“友好解决scheme名称”的function,您可以将其设置为在Visual Studio主窗口标题中显示解决scheme文件path(或其任何部分)。 更多细节: http : //vscommands.com/releasenotes/3.6.8.0和http://vscommands.com/releasenotes/3.6.9.0
对于2008年来说,从上面所接受的答案中编写macros的一个稍微好一点的方法是使用Solution事件而不是文档的事件 – 即使没有select文档,也可以始终编辑标题栏。 这里是我的同事的macros,我基于另一个放在一起 – 你要改变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
我正在使用VSCommands 10显示解决scheme文件打开的完整path。
Friendly Name: {repo} Solution Path Regex: (?<repo>.*)
现在我的主标题窗口如下所示:
c:\repositories\acme.marketplace.trunk\Acme.Marketplace.web\Acme.Marketplace.Web.sln
我可以快速浏览一下,看到我正在中继文件夹或rc文件夹中工作,因为我们使用Mercurial(Hg)并为trunk,rc,preprod保留单独的文件夹,如下所示:
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
确实很尴尬。 hover在标签上确实是less数有用的东西之一。 替代方法:右键单击文件选项卡: http: //weblogs.asp.net/piseth/archive/2008/11/08/find-your-file-path-in-visual-studio.aspx似乎我们必须做的那
使用MKLINK命令创build到现有解决scheme的链接。 就Visual Studio而言,它是关于链接文件的工作,但任何更改都会转到底层的.sln文件。
我在这里写了一篇博客文章
对于那些没有得到VB方法工作的人(比如我),你可以使用一个插件:
http://visualstudiogallery.msdn.microsoft.com/f3f23845-5b1e-4811-882f-60b7181fa6d6
在VS2008旗舰版上进行了testing。 你可以在VS的选项菜单中configuration它。
如果您使用的是VS2010或更高版本,则可以使用扩展名“Visual Studio窗口标题更改器”。 安装它并使用以下“窗口标题设置”expression式来显示解决schemepath:
'sln_dir +“/”+ orig_title'
使用扩展pipe理器下载并安装扩展。 扩展的细节和如何使用它可以在这里find:
https://visualstudiogallery.msdn.microsoft.com/2e8ebfe4-023f-4c4d-9b7a-d05bbc5cb239?SRC=VSIDE
相关说明:另外,对于Visual Studio 2005,您可以使用命令文件 – >高级保存选项。 该对话框显示当前文件的完整path,并且您可以复制文本。
如何自定义Visual Studio窗口标题
安装自定义Visual Studio窗口标题插件。
安装扩展后,可以在菜单中find设置。
Tools ► Options ► Customize VS Window Title
。
更多信息
Customize Visual Studio Window Title
是Customize Visual Studio Window Title
的轻量级扩展,它允许您更改窗口标题以包含文件夹树
特征
- 解决scheme/项目文件中可configuration的最小和最大深度距离
- 允许使用特殊标签来帮助其他许多可能的场景,其中包括
Git
,Mercurial
和TFS
。
- 我在哪里可以find在Visual Studio中安装的TypeScript版本?
- 在Visual Studio中closures自动大纲
- 我如何真正重置Visual Studio窗口布局?
- Visual Studio在构build时locking输出文件
- 为什么我的T4模板附加一个数字的文件名?
- Visual Studio:重新启用“Build failed,run last success?”对话框
- 无法从Microsoft.Web.Publishing.Tasks.dll加载TransformXml任务
- closures项目后,在Visual Studio中打开起始页面?
- 如何将现有目录树添加到Visual Studio中的项目?