Pregunta

Con frecuencia trabajo con varias instancias de Visual Studio, a menudo trabajando en diferentes ramas de la misma solución.

VC6 solía mostrar la ruta completa del archivo fuente actual en su barra de título, pero Visual Studio 2005 no parece hacer esto.Esto hace que sea un poco más complicado de lo que debería ser determinar qué rama de la solución estoy viendo actualmente (la forma más rápida que conozco es pasar el cursor sobre una pestaña para obtener la ruta del archivo fuente como información sobre herramientas).

¿Hay alguna forma de obtener la solución completa o la ruta del archivo en la barra de título, o al menos en algún lugar que esté siempre visible para poder saber rápidamente qué rama está cargada en cada instancia?

¿Fue útil?

Solución

No existe una forma nativa de hacerlo, pero puedes lograrlo con una macro.Los detalles se describen aquí en su totalidad: http://www.helixof.com/blog/archives/32

Sólo tienes que agregar una pequeña macro VB a la sección de macros EvironmentEvents y reiniciar VS.

Nota:La ruta no aparecerá cuando cargue VS por primera vez, pero aparecerá cada vez que cambie el archivo que está viendo.Probablemente haya una manera de solucionar este problema, pero no parece gran cosa.

Otros consejos

Esta es una extensión disponible en la galería en línea diseñada específicamente para este trabajo.Verificar http://erwinmayer.com/labs/visual-studio-2010-extension-rename-visual-studio-window-title/

Consulte la última versión de VSCommands 2010 Lite.Introdujo una característica llamada Nombre descriptivo de la solución donde puede configurarla para que muestre la ruta del archivo de la solución (o cualquier parte de ella) en el título de la ventana principal de Visual Studio.Más detalles: http://vscommands.com/releasenotes/3.6.8.0 y http://vscommands.com/releasenotes/3.6.9.0

Para 2008, una forma ligeramente mejor de escribir la macro a partir de la respuesta aceptada anterior es usar los eventos de Solución en lugar de los del documento; esto le permite editar siempre la barra de título, incluso si no tiene un documento seleccionado.Aquí está la macro que mi compañero de trabajo y yo armamos en base a la otra: querrás cambiar las líneas 15 a 18 para extraer el nombre de tu sucursal del directorio de origen según la configuración que tengas.

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

Es realmente incómodo.De hecho, pasar el cursor sobre la pestaña es una de las pocas cosas útiles.Alternativas:haga clic derecho en la pestaña del archivo: http://weblogs.asp.net/piseth/archive/2008/11/08/find-your-file-path-in-visual-studio.aspx Parece que tenemos que ver con eso.

Estoy usando VSCommands 10 para mostrar la ruta completa del archivo de solución abierto.

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

Ahora mi ventana de título principal se ve así:

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

Puedo echar un vistazo rápidamente y ver que estoy trabajando en la carpeta troncal o en una carpeta rc porque usamos Mercurial (Hg) y mantenemos carpetas separadas para troncal, rc, preprod, prod como esta:

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

Cómo personalizar el título de la ventana de Visual Studio

Instala el Personalizar el título de la ventana de Visual Studio enchufar.

Después de instalar la extensión, la configuración se puede encontrar en el menú.

Tools ► Options ► Customize VS Window Title.

Más información

Customize Visual Studio Window Title es una extensión ligera de Visual Studio, que le permite cambiar el título de la ventana para incluir un árbol de carpetas

enter image description here

Características

  • Una distancia de profundidad mínima y máxima configurable desde el archivo de solución/proyecto
  • Permite el uso de etiquetas especiales para ayudar con muchos otros escenarios posibles, que incluyen Git, Mercurial y TFS.

Utilice el comando MKLINK para crear un enlace a su solución existente.En lo que respecta a Visual Studio, funciona con el archivo de enlace, pero cualquier cambio se realiza en el archivo .sln subyacente.

Escribí una entrada de blog aquí al respecto...

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

Para las personas que no lograron que el método VB funcione (como yo), pueden usar un complemento:

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

Lo probé en VS2008 Ultimate.Puede configurarlo en el menú Opciones de VS.

Si está utilizando VS2010 o superior, puede utilizar la extensión "Visual Studio Window Title Changer".Instálelo y utilice la siguiente expresión 'Configuración de título de ventana' para mostrar la ruta de la solución:

'sln_dir + "/" + título_origen'

Utilice el administrador de extensiones para descargar e instalar la extensión.Los detalles de la extensión y cómo usarla se pueden encontrar aquí:

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

Nota relacionada:Como alternativa, para Visual Studio 2005 puede utilizar el comando Archivo -> Opciones avanzadas de guardado.El cuadro de diálogo muestra la ruta completa del archivo actual y puede copiar el texto.

Como Dan También lo mencioné en un comentario, el Ruta del archivo en pie de página La extensión tiene el mismo propósito.

TabsStudio | $49

Es una extensión VS bastante buena (aunque paga) que proporciona:

  • Agrupación de pestañas
  • Coloración de pestañas
  • Transformación del título
  • Mucha personalización y extensión

Tabs Studio Screenshot

Ruta del archivo en pie de página | Gratis

Muestra la ruta completa del archivo en la parte inferior de la ventana del editor.

File Path On Footer Screenshot

Mención de Honor:Código de estudio visual

Código VS versión 1.26 implementó rutas de navegación que muestra la ruta del archivo en una fila separada en la parte superior de la ventana del editor cuando se usan pestañas o inserta el nombre del archivo cuando está en su propia ventana.

VS Code Breadcrumbs Screenshot

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top