Escludi cartella dalla ricerca ma non dall'elenco dei progetti


95

Ho un progetto diverso con lo stesso core.

Tutto ciò di cui ho bisogno è contrassegnare tutti i progetti non in corso excludedper evitare di cercarli (ricerca semplice, shift + cmd + n ecc.)

In altre parole, voglio avere un risultato di ricerca dal core+ current project.

C'è un modo per fare closealcuni progetti ma averli disponibili in projects listed openè così facile dato che è stato chiuso? O forse hai un'altra esperienza?

inserisci qui la descrizione dell'immagine


7
Escludi dalla normale ricerca di testo - facile - basta definire un ambito personalizzato (Preferenze | Ambiti) e usarlo in "Trova / Sostituisci nel percorso" e finestre di dialogo simili. Ma questo non funzionerà per "Naviga | File / Classe / Simbolo" poiché funziona sempre con l'intero progetto. Invece, è meglio riorganizzare la struttura delle cartelle ("nascondere questa cartella perché lavoro con un'altra" non è un approccio corretto).
LazyOne

Sì, uno dei modi per fare ciò che voglio è creare per ogni cartella un progetto separato e creare un collegamento simbolico alla corecartella. Ma sto cercando modi alternativi.
Vitalii Petrychuk

1
Collegamento simbolico non necessario (anche se lo sto usando - funziona bene per me). Puoi invece allegarlo come radice del contenuto aggiuntivo (Preferenze | Directory).
LazyOne

Grande! Per favore pubblica la tua risposta come risposta e la accetterò.
Vitalii Petrychuk

Risposte:


66

Per applicare personalizzato utilizzo Gli ambiti di ricerca Setting> Project Settings> Scopesdi usarlo per Find in Patho Replace in Path.
Suggerisco di riorganizzare le tue cartelle, in modo che nessun file non necessario venga lasciato nella directory del progetto. Inoltre, è possibile specificare Source Root andando a Settings> Project Settings> Directoriese l'aggiunta di altre directory.


4
Puoi creare Scope con questo:!file[*]:.idea/*&&!file[*]:.idea//*&&!file[*]:app/cache//*&&!file[*]:app/logs//*
Roukmoute

13
Cordiali saluti per gli utenti Mac, èPhpStorm > Preferences > Appearance & Behavior > Scopes
Wesley Smith

Penso che questa risposta sia obsoleta ora. L'impostazione> Impostazioni progetto> Gli ambiti non sembrano esistere
Andrew

3
@Andrew è in Impostazioni> Aspetto e comportamento> Ambiti per CE 2016.3
tex

Grazie Tex ... è quello.
Andrew

41

Questo è il modo migliore per escludere directory dai risultati di ricerca. Lavoro su un grande progetto Magento con molte directory che non voglio nei risultati di ricerca. Questo ha risolto il mio problema. Se il tuo progetto contiene una directory / vendor, questo aiuterà ad accelerare l'indicizzazione in PHPStorm poiché viene ignorato.

Fare clic con il tasto destro su qualsiasi cartella per visualizzare le seguenti opzioni.

Escludi dalla ricerca


Funziona anche per lo sviluppo del pacchetto Laravel. Modo consigliato per farlo per creare la cartella dei pacchetti nella radice del progetto. Ora utilizzerà le stesse classi del tuo progetto principale, quindi finirai per ottenere un sacco di errori di classi duplicate. Fare clic con il tasto destro e farlo e funziona come per magia. L'approccio dell'ambito non ha funzionato per me!
Juha Vehnia

39

A partire dalla versione 2016.3, questo si trova in Impostazioni > Aspetto e comportamento > Ambiti .

Oppure, indipendentemente dalla versione , vai su Impostazioni e digita "ambiti" nella casella di ricerca in alto.

Quindi fai clic sul simbolo + per aggiungere l'ambito, scegli la cartella che desideri escludere e fai clic su Escludi ricorsivamente e applica.

Quindi, quando esegui la ricerca utilizzando CTRL + MAIUSC + F, in Opzioni> Ambito seleziona Personalizzato e scegli l'ambito appena creato (grazie ai commentatori).


4
Voglio solo aggiungere se stai usando TROVA come cmd + MAIUSC + F, quindi nella scheda delle opzioni puoi personalizzare la radio e quindi scegliere l'ellisse e si apre lo strumento ambito e puoi selezionare o creare un ambito per escludere ciò di cui hai bisogno.
daveferrara1

4
This automatically excludes this folder's contents from the searches...dopo aver creato il mio ambito personalizzato, la mia ricerca Ctrl + Maiusc + F stava ancora cercando a livello globale finché non ho selezionato esplicitamente "Personalizzato" e scelto il mio ambito come suggerito da @ daveferrara1.
Dimitry K

1
Nel 2020: dopo aver fatto clic su + la scelta Localvs Sharedsignifica se l'esclusione va in VCS o meno. Quindi devi nominarlo . Quindi dopo il passaggio di @ DimitryK (ora chiamato Scopescheda) devi scegliere lo stesso nome in un menu a discesa. (Jetbrains UX sta armeggiando trasformando qualcun altro in un vecchio burbero?)
Bob Stein,

2

Come hanno detto @Justinas e commentatori: potresti creare un ambito personalizzato e infastidirti ogni volta selezionando quell'ambito personalizzato quando usi Trova nel percorso (e simili) perché PhpStorm non utilizza quell'ambito personalizzato per impostazione predefinita 🤦🏻‍♂️

L'esclusione della directory node_modules interrompe comunque il completamento automatico e altre funzionalità di assistenza per il codice. Non vuoi farlo.

Tuttavia, ho trovato un hack che non richiede alcuna esclusione di directory di node_modules né un ambito personalizzato:

  1. Chiudi PhpStorm. Assicurati che non sia in esecuzione.
  2. Aprire name_of_your_project.iml nella .idea cartella nella directory del progetto con il vostro editor di testo preferito. Finché non è PhpStorm.
  3. Rimuovi la linea <content url="file://$MODULE_DIR$/node_modules" />
  4. Salva.
  5. Goditi di nuovo la vita.

Trovo dilettantesco di JetBrains includere directory di archiviazione delle dipendenze come node_modules di JavaScript / TypeScript e il fornitore di PHP per impostazione predefinita. Non c'è quasi nessun caso d'uso per includere quelle directory nella funzionalità di ricerca e sostituzione, a parte la funzionalità di refactoring.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.