Wie kann eine Dateierweiterung von der IntelliJ IDEA-Suche ausgeschlossen werden?

126

Gibt es eine Möglichkeit, eine bestimmte Dateierweiterung von den Ergebnissen im IntelliJ IDEA- Dialogfeld " In Pfad suchen" auszuschließen (aufgerufen durch CTRL+ SHIFT+ F)? Ich möchte alle .cssDateien ausschließen.

Robert Kusznier
quelle

Antworten:

184

In Intellij 16 gibt es einen Abschnitt "Dateinamenfilter", um die Verwendung einer Erweiterung auszuschließen !*.java. Sie können auch detailliertere Muster angeben. Zum Beispiel verwende ich das folgende Muster, um nur Java-Dateien zurückzugeben, außer solche mit einem Namen, der mit test beginnt oder endet. Muster:!*test.java,*.java,!Test*.java

Geben Sie hier die Bildbeschreibung ein

In neueren Versionen von Intellij wurde die GUI ein wenig aktualisiert, aber das Gleiche gilt weiterhin, siehe "Dateimaske" in der oberen rechten Ecke, siehe Abbildung unten:

Geben Sie hier die Bildbeschreibung ein

Marquis Blount
quelle
1
Kann ich! Mocks / *. Json im Filter "Dateimasken" nicht erwähnen?
CodeTweetie
1
@CodeTweetie, was machst du mit dem '/', nicht sicher, warum es benötigt wird (ich dachte '/' ist nur ein Trennzeichen in Regex). ohne sie würde Ihr Filter sagen, schließen Sie jede Datei aus, die mit "mock" beginnt, gefolgt von allem, was mit ".json" endet
Marquis Blount
1
Dieser Dialog "Dateinamenfilter" scheint in neueren Versionen (2018.1 usw.) nicht vorhanden zu sein.
J Woodchuck
Beachten Sie, dass diese Funktion in IntelliJ 2016.1 hinzugefügt wurde. Wenn Sie eine unbefristete Fallback-Lizenz von IntelliJ 15 oder älter verwenden, ist diese Funktion nicht verfügbar. Siehe meinen anderen Beitrag
Kevin
47

Dort können Sie einen benutzerdefinierten Bereich erstellen: Im Dialogfeld "In Pfad suchen" können Sie das Optionsfeld "Benutzerdefiniert" aktivieren und das Fenster "Bereiche" öffnen. Dort können Sie Pfad und Suchmuster anpassen.

Geben Sie hier die Bildbeschreibung ein

Beispiele für Muster für das PatternFeld:

  • !file:*.css - CSS-Dateien ausschließen
  • file[MyMod]:src/main/java/com/example/my_package//* - Dateien aus dem Verzeichnis in ein Projekt aufnehmen.
  • src[MyMod]:com.example.my_package..* - rekursiv alle Dateien in ein Paket aufnehmen.
  • file:*.js||file:*.coffee - Alle JavaScript- und CoffeeScript-Dateien einschließen.
  • file:*js&&!file:*.min.* - Alle JavaScript-Dateien mit Ausnahme derjenigen einschließen, die durch Minimierung generiert wurden, was durch die Erweiterung min angezeigt wird.

Oder überprüfen Sie die offizielle Dokumentation.

Viel Glück!

Igor Konoplyanko
quelle
2
Wie sieht das Muster aus, um alle CSS-Stylesheets auszuschließen?
Robert Kusznier
3
Entschuldigung, es steht in der Dokumentation von IntelliJ: jetbrains.com/idea/webhelp/scope-language-syntax-reference.html . Zum Ausschließen von CSS gilt Folgendes :! File: *. CSS.
Robert Kusznier
Du hast meinen Tag gerettet! Schließlich kann ich nervige Testfälle ausschließen. Js
Halyna
18

Dies würde zum Beispiel alle js, css und twig ausschließen:

!*.js, !*.css, !*.twig

PhpStorm-Dateimasken für Find in Path

T30
quelle
3

Wenn Sie wie ich nicht die Option Dateimaske verwenden oder einen benutzerdefinierten Bereich usw. erstellen möchten, sondern ihn nur einmal zu den Projekteinstellungen hinzufügen und damit fertig werden möchten, finden Sie hier eine Lösung für Sie .

Ich wollte, dass meine Suche im Pfad nicht in lockDateien sucht (automatisch generierte Manifestdatei von Paketmanagern). Dazu musste ich Folgendes tun:

Gehe zu Datei >> Projektstruktur (oder drücke einfach Befehl +;)

Wählen Sie unter Projekteinstellungen die Option Module

Geben Sie hier die Bildbeschreibung ein

Fügen Sie dem Textfeld Dateien ausschließen in diesem Fall ein Muster oder Dateinamen hinzu: *.lock;package-lock.jsonKlicken Sie auf Übernehmen und dann auf OK.

Intellij-Projekt-Struktur-Screenshot

Hinweis Die obige Option ist in IntelliJ 2019 und späteren Versionen verfügbar, bei älteren Versionen nicht sicher. Weitere Informationen finden Sie unter https://www.jetbrains.com/help/phpstorm/excluding-files-from-project.html

Arun Karnati
quelle
Das Problem dabei ist, dass es auch Dateien mit diesen Erweiterungen vom Build-Recht ausschließt, nicht nur von der Suche!?
Suan
@Suan, soweit ich weiß, wird die Datei nur von Suchvorgängen, Code-Vervollständigungen, Inspektionen usw. ausgeschlossen. Kasse diesen Artikel von JetBrains, jetbrains.com/help/phpstorm/excluding-files-from-project.html
Arun Karnati
Die Beschreibung ist nicht gut. Ich habe 5 Minuten gebraucht, um diese Option in der Projektstruktur zu finden. Bitte fügen Sie einen weiteren Screenshot hinzu, der zeigt, wo genau dies zu finden ist.
Frederic Leitenberger
@FredericLeitenberger - fertig!
Arun Karnati
@ArunKarnati Großartig! Vielen Dank!
Frederic Leitenberger
2

Für 2019.2 wird das Muster nicht im Bereich festgelegt, sondern im rechten oberen Fenster "Dateimaske" im Find in pathDialogfeld. Sie müssen es ankreuzen.

Die von mir getestete Syntax lautet:

  • Dateien mit der Erweiterung ausschließen css:!*.css
  • Alle unter outdir ausschließen:!out/*

Muster werden durch Komma getrennt.

Referenz: https://www.jetbrains.com/help/idea/finding-and-replacing-text-in-project.html

WesternGun
quelle