Dateien finden, Symbolen folgen und Quellverweise prüfen
Wann Sie Dateisuche, Volltextsuche oder Sprachserver-Navigation nutzen und was bei fehlenden Ergebnissen zu prüfen ist.
Nutzen Sie Zur Datei, wenn Sie ungefähr wissen, wo etwas liegt, „Alle Dateien durchsuchen“, wenn Sie den Inhalt kennen, und Sprachserver-Navigation für Symbole. Zwischen diesen drei Methoden zu wechseln ist meist schneller, als eine breite Suche immer weiter zu verfeinern.
Die passende Suche wählen
| Was Sie wissen | Werkzeug | Beispiel |
|---|---|---|
| Teil eines Dateinamens oder Pfads | Command-P (Zur Datei…) | SettingsStore oder src/config |
| Meldung, Einstellung oder Codefragment | Alle Dateien durchsuchen in der Seitenleiste | Genaue Fehlermeldung oder Konfigurationsschlüssel |
| Symbol in einer geöffneten Datei | Zur Definition, Referenzen suchen | Implementierung oder Aufrufer einer Funktion |
„Zur Datei“ sucht in Dateinamen und Pfaden, nicht im Inhalt. Um eine ausgegebene Fehlermeldung zu finden, nutzen Sie „Alle Dateien durchsuchen“ und suchen Sie nach markanten Begriffen statt allgemeinen Wörtern wie data oder result.
Fehlt eine Datei oder ein Ergebnis, prüfen Sie zuerst den Projektstamm und dann die Anzeige versteckter und von Git ignorierter Dateien. Die Vorgaben unter Einstellungen → Allgemein → Dateien gelten für Seitenleiste, „Zur Datei“ und „Alle Dateien durchsuchen“. Jeder Arbeitsbereich kann sie über die Statusleiste der Seitenleiste überschreiben.
Eine Fehlermeldung bis zum auslösenden Zweig verfolgen
Eine Fehlermeldung ist ein Ausgangspunkt, doch die ausgebende Zeile kann nur einen Fehler von anderswo einrahmen.
- Den festen Teil suchen. Öffnen Sie Alle Dateien durchsuchen über die Lupe in der Seitenleiste. Lassen Sie Zeitstempel, Anfrage-IDs und zur Laufzeit eingefügte Pfade weg. Deaktivieren Sie zunächst Regex und Ganzes Wort. Ist die Schreibweise unklar, wählen Sie Ignorieren im Menü Aa.
- Suchbereich prüfen. Öffnen Sie Filter und entfernen Sie alte Ordner- oder Dateimuster vor einer breiten Suche. Sobald das wahrscheinliche Modul bekannt ist, schränken Sie den Ordner ein oder nutzen Sie ein Muster wie
*.rs. Beste Treffer bedeutet, dass die Liste unvollständig ist: Verfeinern Sie die Suche, bevor Sie aus fehlenden Treffern Schlüsse ziehen. - Den Kontext lesen. Öffnen Sie den Treffer und suchen Sie die Bedingung, die ihn erreicht. Entsteht die Meldung hier oder ergänzt eine catch-/Logging-Schicht einen anderen Fehler um Kontext? Folgen Sie im zweiten Fall der fehlgeschlagenen Operation.
- Eingabe zurückverfolgen. Folgen Sie den Aufrufern der umgebenden Funktion und dem Wert, der den Zweig auswählt. Nutzen Sie Referenzen suchen, wenn der Sprachserver dies unterstützt, oder suchen Sie Funktions- und Konfigurationsnamen und prüfen Sie jede Nutzung im Kontext.
- Erklärung prüfen. Vergleichen Sie vermutete Eingabe und Zweig mit einem gezielten Test oder Laufzeitprotokoll derselben Codeversion. Notieren Sie, was bestätigt ist und was ungeprüft bleibt. Allein die gefundene Meldung belegt die Ursache nicht.
„Alle Dateien durchsuchen“ sucht im aktuellen Arbeitsbereich, auch in ungespeichertem Text geöffneter Dateien. Es durchsucht nicht jede Git-Revision. Stammt der Fehler aus einem älteren Build, vergleichen Sie die passende Version, bevor Sie den aktuellen Code als Erklärung verwenden.
Sprachserver
„Zur Definition“, „Referenzen suchen“, Implementierungen und Aufrufhierarchie stammen von einem Sprachserver:
| Sprache | Server |
|---|---|
| Swift | SourceKit-LSP |
| Rust | rust-analyzer |
| C, C++, Objective-C, Objective-C++ | clangd |
| Python | Pyright |
| JavaScript, JSX, TypeScript, TSX | TypeScript Language Server |
| Go | gopls |
Yenpo kann rust-analyzer über Einstellungen → Codenavigation installieren. SourceKit-LSP und clangd stammen aus der gewählten Xcode-Toolchain. Pyright, TypeScript Language Server und gopls müssen Sie selbst installieren und über PATH verfügbar machen. Der Funktionsumfang variiert; manche Projekte benötigen zusätzliche Einrichtung.
Wenn ein bekanntes Symbol keine Ergebnisse liefert, prüfen Sie drei Dinge: Ist der Projektstamm geöffnet, ist der Server installiert und sind Abhängigkeiten sowie Build-Konfiguration vorhanden? Syntaxhervorhebung funktioniert auch ohne Sprachserver.
Ohne Server bringt Sie Textsuche dennoch weit. Suchen Sie Deklaration und Verwendungen und unterscheiden Sie gleichnamige Symbole anhand von Typen und Imports.
Einem Verhalten folgen, ohne den Ausgangspunkt zu verlieren
Halten Sie Ihre Ausgangsdatei in einem Tab offen, während Sie anderswo einer Definition folgen. Notieren Sie bei wichtigen Aufrufen die Eingabe und das, was den nächsten Pfad bestimmt: Einstellung, Typ, Registry-Schlüssel oder aktuellen Zustand.
„Referenzen suchen“ zeigt vom Sprachserver gemeldete Verwendungen, keinen Ausführungstrace. Serverunterstützung, Projekteinrichtung und Ergebnislimits können die Liste unvollständig machen. Hat eine Registry lokale und entfernte Implementierungen, suchen Sie den Auswahlwert. Prüfen Sie bei asynchronem Code auch, was sich bis zur Rückkehr des Ergebnisses ändern kann.
Eine Lesenotiz für einen Konfigurationswert könnte so aussehen:
CLI input → config resolver → validation → request builder
Selected source: environment override
Failure: invalid value stops before request construction
Unverified: which parent process sets that environment variable
Ergänzen Sie Datei- und Zeilenverweise für tatsächlich geprüfte Schritte. Die Konfigurationsanleitung zeigt dies vollständig mit ausführbaren Tests.
Einen KI-Quellverweis prüfen
Ein Klick auf einen Quellverweis in einer KI-Antwort öffnet die zitierten Zeilen in der Übersicht. Ist der Ausschnitt zu kurz, klicken Sie auf Datei öffnen, um die gesamte Datei in einem Tab zu lesen.
Lesen Sie die umgebenden Bedingungen und den Aufrufer, bevor Sie sich auf die Antwort verlassen. Eine Zeile, die einen Cache-Eintrag löscht, ist etwa nur sicher, wenn der Eintrag noch derselben Anfrage gehört. Der Verweis zeigt die Stelle; der umgebende Code zeigt, ob die Aussage stimmt.
Dokumentation und ältere Versionen
Markdown-Dateien öffnen sich im Lesemodus; Sie können zum Bearbeiten des Quelltexts wechseln. Halten Sie README oder Tests neben der Implementierung und notieren Sie Abweichungen.
Dateien aus der Git-Historie können neben aktuellen Dateien geöffnet sein. Prüfen Sie vor dem Folgen eines Verweises oder einer Bearbeitung die Tab-Version: Eine Erklärung zu einem älteren Commit passt möglicherweise nicht zum Arbeitsbaum. Commits und Branches vergleichen erklärt die Versionswahl.