Zeigen Sie den Lösungs- / Dateipfad in der Visual Studio-IDE an


80

Ich arbeite häufig mit mehreren Instanzen von Visual Studio und arbeite häufig an verschiedenen Zweigen derselben Lösung.

Visual C ++ 6.0 wird verwendet, um den vollständigen Pfad der aktuellen Quelldatei in der Titelleiste anzuzeigen, aber Visual Studio 2005 scheint dies nicht zu tun. Dies macht es etwas umständlicher, als es sein sollte, herauszufinden, welchen Zweig der Lösung ich gerade betrachte (der schnellste Weg, den ich kenne, besteht darin, mit der Maus über eine Registerkarte zu fahren, damit Sie den Pfad der Quelldatei als Tooltip erhalten).

Gibt es eine Möglichkeit, die vollständige Lösung oder den Dateipfad in die Titelleiste oder zumindest an eine Stelle zu bringen, die immer sichtbar ist, sodass ich schnell feststellen kann, welcher Zweig in die einzelnen Instanzen geladen wird?


11 Jahre und immer noch nicht sofort verfügbar: - /
joym8

Antworten:


24

Es gibt keine native Methode, aber Sie können dies mit einem Makro erreichen. Die Details werden hier ausführlich beschrieben: So zeigen Sie den vollständigen Dateipfad (oder alles andere) in der VS 2005-Titelleiste an

Sie müssen dem EvironmentEvents-Makroabschnitt nur ein kleines Visual Basic-Makro hinzufügen und Visual Studio neu starten.

Hinweis: Der Pfad wird nicht angezeigt, wenn Sie Visual Studio zum ersten Mal laden, sondern immer dann, wenn Sie die angezeigte Datei ändern. Es gibt wahrscheinlich einen Weg, dies zu beheben, aber es scheint keine große Sache zu sein.


4
File Path On Footer ist auch eine gute Erweiterung
dan

1
@dan ... isst aber eine Zeile im Editor unten (nicht in der Statusleiste (Sie wissen, die blaue wechselt beim Debuggen zu Orange)). Berücksichtigen Sie dies besonders bei kleinen Bildschirmen usw. Trotzdem danke für den Hinweis.
yO_

32

Dies ist eine Erweiterung, die in der Online-Galerie verfügbar ist und speziell auf diesen Job zugeschnitten ist. Checkout Labs> Visual Studio-Erweiterung: Passen Sie den Titel des Visual Studio-Fensters an .


3
Genial. Minimalistische Erweiterung, die einfach funktioniert. Keine Konfiguration erforderlich.
Erik Öjebo

3
Funktioniert auch in VS2013.
Robin James Kerrison

4
Funktioniert auch 2015
Danny Beckett

2
Funktioniert auch 2017
Irsis

1
Funktioniert auch 2019. Optional können Sie die Fenstertitelleiste wieder aktivieren oder einfach Ihre Änderungen in der Taskleiste beobachten. Getestet auf v16.4.2.
Chris

17

Schauen Sie sich die neueste Version von VSCommands 2010 Lite an . Es wurde eine Funktion namens "Friendly Solution Name" eingeführt, mit der Sie festlegen können, dass der Pfad der Lösungsdatei (oder ein Teil davon) im Titel des Hauptfensters von Visual Studio angezeigt wird.

Weitere Details: http://vscommands.com/releasenotes/3.6.8.0 und http://vscommands.com/releasenotes/3.6.9.0



Alle Links (Domain vscommands.com ) scheinen defekt zu sein ( Timeout ).
Peter Mortensen

Es gibt jedoch VSCommands für Visual Studio 2010 . Ist es das Gleiche?
Peter Mortensen

5

Für Visual Studio 2008 besteht eine etwas bessere Möglichkeit, das Makro aus der akzeptierten Antwort zu schreiben, darin, die Lösungsereignisse anstelle der Dokumentereignisse zu verwenden. Auf diese Weise können Sie die Titelleiste immer bearbeiten, auch wenn Sie kein Dokument ausgewählt haben.

Hier ist das Makro, das mein Kollege und ich basierend auf dem anderen zusammengestellt haben. Sie sollten die Zeilen 15 bis 18 ändern, um Ihren Zweigstellennamen aus dem Quellverzeichnis abzurufen, unabhängig davon, wie Sie eingerichtet sind.

Private timer As System.Threading.Timer

Declare Auto Function SetWindowText Lib "user32" (ByVal hWnd As System.IntPtr, ByVal lpstring As String) As Boolean

Private _branchName As String = String.Empty

Private Sub SolutionEvents_Opened() Handles SolutionEvents.Opened
    Try
        If timer Is Nothing Then
            ' Create timer which refreshes the caption because
            ' IDE resets the caption very often
            Dim autoEvent As New System.Threading.AutoResetEvent(False)
            Dim timerDelegate As System.Threading.TimerCallback = _
                AddressOf tick
            timer = New System.Threading.Timer(timerDelegate, autoEvent, 0, 25)
        End If
        Dim sourceIndex As Integer = DTE.Solution.FullName.IndexOf("\Source")
        Dim shortTitle As String = DTE.Solution.FullName.Substring(0, sourceIndex)
        Dim lastIndex As Integer = shortTitle.LastIndexOf("\")
        _branchName = shortTitle.Substring(lastIndex + 1)
        showTitle(_branchName)
    Catch ex As Exception

    End Try
End Sub


Private Sub SolutionEvents_BeforeClosing() Handles SolutionEvents.BeforeClosing
    If Not timer Is Nothing Then
        timer.Dispose()
    End If
End Sub


''' <summary>Dispose the timer on IDE shutdown.</summary>
Public Sub DTEEvents_OnBeginShutdown() Handles DTEEvents.OnBeginShutdown
    If Not timer Is Nothing Then
        timer.Dispose()
    End If
End Sub


'''<summary>Called by timer.</summary>
Public Sub tick(ByVal state As Object)
    Try
        showTitle(_branchName)
    Catch ex As System.Exception
    End Try
End Sub


'''<summary>Shows the title in main window.</summary>
Private Sub showTitle(ByVal title As String)
    SetWindowText(New System.IntPtr(DTE.MainWindow.HWnd), title & " - " & DTE.Name)
End Sub

4

Es ist in der Tat umständlich. Das Schweben auf der Registerkarte ist in der Tat eines der wenigen nützlichen Dinge.

Alternative: Klicken Sie mit der rechten Maustaste auf die Registerkarte Datei: Suchen Sie Ihren Dateipfad in Visual Studio . Es scheint, dass wir damit zu tun haben.


4

So passen Sie den Titel des Visual Studio-Fensters an

Installieren Sie das Plugin zum Anpassen des Visual Studio-Fenstertitels .

Nach der Installation der Erweiterung finden Sie die Einstellungen im Menü.

Menü ExtrasOptionenVS-Fenstertitel anpassen .

Mehr Informationen

Anpassen des Visual Studio-Fenstertitels ist eine einfache Erweiterung von Visual Studio, mit der Sie den Fenstertitel so ändern können, dass er einen Ordnerbaum enthält:

Geben Sie hier die Bildbeschreibung ein

Eigenschaften

  • Ein konfigurierbarer minimaler und maximaler Tiefenabstand von der Lösungs- / Projektdatei
  • Ermöglicht die Verwendung spezieller Tags, um bei vielen anderen möglichen Szenarien zu helfen, einschließlich Git , Mercurial und TFS .

Während dieser Code die Frage beantworten kann, würde die Bereitstellung eines zusätzlichen Kontexts darüber, wie und / oder warum das Problem gelöst wird, den langfristigen Wert der Antwort verbessern. Bitte lesen Sie diese Anleitung, um eine qualitativ hochwertige Antwort zu erhalten.
thewaywewere

3

Ich verwende VSCommands 10, um den vollständigen Pfad der geöffneten Lösungsdatei anzuzeigen.

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

Jetzt sieht mein Haupttitelfenster so aus:

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

Ich kann schnell einen Blick darauf werfen und feststellen, dass ich im Trunk-Ordner oder in einem RC-Ordner arbeite, da wir Mercurial (Hg) verwenden und separate Ordner für Trunk, RC, Preprod und Prod wie folgt aufbewahren:

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




1

Zugehöriger Hinweis: Alternativ können Sie für Visual Studio 2005 das Befehlsmenü DateiErweiterte Speicheroptionen verwenden . Das Dialogfeld zeigt den vollständigen Pfad der aktuellen Datei an, und Sie können den Text kopieren.


1

Verwenden Sie den Befehl MKLINK, um einen Link zu Ihrer vorhandenen Lösung zu erstellen. In Visual Studio wird mit der Linkdatei gearbeitet, alle Änderungen werden jedoch an der zugrunde liegenden SLN-Datei vorgenommen.

Ich habe hier einen Blogeintrag darüber geschrieben ...

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


Die Verbindung ist unterbrochen ( "Wir können unter www.willissoftware.com keine Verbindung zum Server herstellen." ). Domain abgelaufen?
Peter Mortensen

Diese Antwort ist bei dem defekten Link nicht sehr nützlich.
Peter Mortensen

1

Wenn Sie Visual Studio 2010 oder höher verwenden, können Sie die Erweiterung "Visual Studio Window Title Changer" verwenden.

Installieren Sie dies und verwenden Sie den folgenden Ausdruck "Fenstertitel einrichten", um den Lösungspfad anzuzeigen:

'sln_dir + "/" + orig_title'

Verwenden Sie den Erweiterungsmanager, um die Erweiterung herunterzuladen und zu installieren. Details zur Erweiterung und deren Verwendung finden Sie hier:

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


1
Die Verbindung ist unterbrochen (404).
Peter Mortensen

0

TabsStudio | 49 US-Dollar

Es ist eine ziemlich gute (obwohl kostenpflichtige) Visual Studio-Erweiterung, die Folgendes bietet:

  • Tab-Gruppierung
  • Tab Färbung
  • Titelumwandlung
  • Viele Anpassungen und Erweiterungen

Tabs Studio Screenshot

Dateipfad in der Fußzeile | Kostenlos

Der vollständige Dateipfad wird unten im Editorfenster angezeigt:

Dateipfad in der Fußzeile Screenshot

Lobende Erwähnung: Visual Studio Code

In Visual Studio Code Version 1.26 wurden Breadcrumbs implementiert, die den Dateipfad in einer separaten Zeile oben im Editorfenster anzeigen, wenn Registerkarten verwendet werden, oder den Dateinamen in einem eigenen Fenster inline einfügen.

Screenshot von Visual Studio Code Breadcrumbs

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.