Arama sonuçlarında bir klasörü yoksay


164

Ben bir dize arıyor ve bir kaynak klasörde eşleşmeleri ve bir yapı klasörü (kaynak dosya oluşturma sırasında oluşturmak için kopyalanır).

Derleme klasörü sonucuna ihtiyacım yok.

Vim, wildignoresonuçların filtrelenmesine yardımcı olur.

İntelij'de benzer bir şey var mı?

Yanıtlar:


246

Derleme klasörünüzü hariç tutuldu olarak işaretleyin:

File > Project Structure > Modules > Sources > Mark as Excluded (red icon)

Ayrıca, klasörünüze sağ tıklayıp seçebilirsiniz Mark Directory As > Excluded.

Dışlanan klasörler (rootExcluded olarak gösterilir) IntelliJ IDEA'nın "kısmen yoksaydığı" klasörlerdir. Dışlanan klasörlerdeki dosyalar için çok sınırlı kodlama yardımı sağlanır. Hariç tutulan klasörlerde bulunan sınıflar kod tamamlama öneri listelerinde görünmez, bu tür sınıflara yapılan başvurular editörde çözülmemiş olarak gösterilir. Arama yaparken IntelliJ IDEA, hariç tutulan klasörlere vb. Bakmaz.

Kaynak

Not: Scopes kullanan başka bir yaklaşım için Nader Hadji Ghanbari'nin cevabına bakınız.


1
Intellij 14'te Dosya> Proje Ayarlarım yok. Bazı klasörleri hariç tuttum ve aramaya dahil edilmediler.
Eric Francis

25
Bir klasörü yoksayarsanız, arama sonuçlarınızda görünmez. Ayrıca, klasörünüze sağ tıklayıp seçebilirsiniz Mark Directory As > Excluded.
Darek Kay

12
Projeden bir klasör eklemek yalnızca söz konusu klasörün gerçekten yoksayılması durumunda kabul edilebilir. Bazen klasörü hariç tutmak istemezsiniz, ancak yalnızca aramanın dışında bırakmak istersiniz.
Nader Ghanbari

22
Bunu IntelliJ 15.0.6'da denedim ve hariç tutulan klasörler hala arama sonuçlarında görünüyor.
Steven Byks

5
Bu Intellij 2019'da çalışmıyor gibi görünüyor. Hariç tutulan klasörler hala arama sonuçlarında görünüyor.
jrahhali

87

Kısa cevap

Arama yaparken bir Kapsam tanımlayarak , rasgele dosya / klasörleri bu kapsama dahil edebilir / hariç tutabilirsiniz.

Detaylı cevap

Gereksiniminizi karşılamanın bir yolu (dosya ve klasörleri aramadan hariç tutmak) özel bir kapsam tanımlamaktır. Bu özellikle kullanışlıdır, çünkü bazen bir klasörü tüm projenizden değil, aramanızdan hariç tutmak istersiniz.

Bu adımları takip et:

  1. Edit-> Find-> Find in pathveya Ctrl+ Shift+ tuşlarına basın F.

  2. Seç Customiçinde Scopebölüm ve ardından seçim<unknown scope>

Arama kapsamları

  1. Şimdi +yeni bir localözel kapsam eklemek için düğmeye tıklayın

Yeni bir özel kapsam ekleme

  1. Kapsama bir ad verin ve kaydedin.

Yerel özel kapsamı kaydetme

  1. Artık dizinleri bu kapsama dahil edebilir ve hariç tutabilirsiniz. Önce her şeyi ekleyebilir include recursivelyve ardından excludeveya öğesini seçerek tek tek hariç tutabilirsiniz exclude recursively.

resim açıklamasını buraya girin

Projenizin bağımlı olduğu kütüphaneleri bile dahil edebileceğinizi veya hariç tutabileceğinizi unutmayın.

  1. Arama yaparken Scope, Find in Pathiletişim kutusundaki bölümden etkin kapsamı seçebilirsiniz .

Daha fazla bilgi

Daha fazla bilgi için Kapsamlardaki JetBrains belgelerine bakabilirsiniz . Kapsamlar yalnızca arama yaparken değil, aynı zamanda IntelliJ IDEA'daki diğer birçok kullanım durumunda da kullanılabilir.

desenler

Desenleri , onları daha da güçlü ve geleceğe dönük kanıtlar haline getiren bir kapsam tanımlamak için kullanabilirsiniz .

kalıpları kullanmak, dosyaları ve klasörleri hariç tutmanın başka bir yoludur. Örneğin file:src/main/java//*&&!file:src/main/java/my//*, myklasördeki tüm dosyaları hariç tutacaktır .

resim açıklamasını buraya girin


2
Görünüşe göre Idea 15, Custom ( Özel) yanındaki "..." düğmesine tıklamak zorunda <unknown scope>.
mikebridge

dosyaları her yerde aramadan nasıl hariç tutabilirim?
ycomp

Waaay çok fazla iş! allkenang'ın aşağıdaki yanıtı sorunu iki tıklamayla çözer . Bu, bu cevabın kısa versiyonunu okumaktan daha hızlıdır.
Superole

3
@Superole true, kabul edilen cevapla aynı, ancak klasörü kelimenin tam anlamıyla projeden hariç tutuyor (artık bir kaynak veya test klasörü olmayacak) ve her zaman istediğiniz şey bu değil. Bir klasörü tamamen projeden hariç tutmak veya sadece belirli bir arama için hariç tutmak iki farklı şeydir (bu yüzden bazı insanlar bu yanıtı yararlı bulmaktadır). Yan notta, Java için Maven projeleri veya Scala için SBT (veya diğer diller için bunların benzerleri) kullanıyorsanız, muhtemelen hiçbir zaman bir klasörü hariç tutmak istemezsiniz, çünkü her şey sizin için otomatik olarak zaten yapılır.
Nader Ghanbari

Bana kapsamları öğrettiğiniz için teşekkürler, @AderGhanbari! IntelliJ'in bu işlevselliğe sahip olduğunun farkında değildim.
Jan Molak

23

Intellij 15'te, bir klasörü hariç tutmak için şunu yapın:

Proje penceresinde klasörü seçin ve sağ tıklayın ve "Dizini Farklı İşaretle"> "Hariç Tutuldu"


Ahh. Teşekkür ederim! Bu, kabul edilen cevaptan milyon kat daha kolaydı ! Önce bir kapsam oluşturmaya çalıştım, ancak bu kaydırma, tıklatma, genişletme, geçiş yapma, dahil etme ve hariç tutma kabusu oldu.
Superole

Bir Maven projesinde, ayrı bir uygulamayla şubeleri değiştirdikten sonra bu ayar devam etmez.
Pr0methean

8
IntelliJ 2018'de çalışmıyor gibi görünüyor - hariç tutuldu olarak işaretleniyor, ancak yine de sonuçlarda gösteriliyor: /
Chris Nevill


0

Kullanım arıyorsanız , kapsamı "Tüm dosyalar" dan "Proje dosyaları" na daraltmak için varsayılan olarak Ctrl+ Alt+ Shift+ olarak "Kullanım Ayarlarını Bul ..." seçeneğini açın F7.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.