ละเว้นโฟลเดอร์ในผลการค้นหา


164

ฉันกำลังค้นหาสตริงและรับการจับคู่ในโฟลเดอร์ซอร์สและโฟลเดอร์บิลด์ (ไฟล์ในซอร์สถูกคัดลอกเพื่อสร้างระหว่างบิลด์)

ฉันไม่ต้องการผลลัพธ์การสร้างโฟลเดอร์

เสียงเรียกเข้ามี wildignoreซึ่งจะช่วยกรองผลลัพธ์

มีอะไรที่คล้ายกันใน intelij?

คำตอบ:


246

ทำเครื่องหมายโฟลเดอร์การสร้างของคุณเป็นยกเว้น:

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

Mark Directory As > Excludedนอกจากนี้คุณยังสามารถคลิกเพียงขวาที่โฟลเดอร์ของคุณและเลือก

โฟลเดอร์ที่ถูกแยก (แสดงเป็น rootExcluded) เป็นโฟลเดอร์ที่ IntelliJ IDEA "ละเว้นบางส่วน" มีการให้ความช่วยเหลือในการเข้ารหัสที่ จำกัด มากสำหรับไฟล์ในโฟลเดอร์ที่ไม่รวม คลาสที่อยู่ในโฟลเดอร์ที่ถูกแยกจะไม่ปรากฏในรายการคำแนะนำในการเติมโค้ดให้สมบูรณ์การอ้างอิงไปยังคลาสดังกล่าวจะแสดงในตัวแก้ไขว่ายังไม่ได้แก้ไข เมื่อทำการค้นหา IntelliJ IDEA จะไม่ค้นหาในโฟลเดอร์ที่ถูกแยก ฯลฯ

แหล่ง

หมายเหตุ: ดูคำตอบของ Nader Hadji Ghanbari สำหรับวิธีการอื่นโดยใช้ขอบเขต


1
ฉันไม่มีไฟล์> การตั้งค่าโครงการในระบบ Intellij 14. ฉันได้ยกเว้นบางโฟลเดอร์แล้วและไม่รวมอยู่ในการค้นหา
Eric Francis

25
หากคุณไม่สนใจโฟลเดอร์หากจะไม่ปรากฏในผลการค้นหาของคุณ Mark Directory As > Excludedนอกจากนี้คุณยังสามารถคลิกเพียงขวาที่โฟลเดอร์ของคุณและเลือก
Darek Kay

12
การรวมโฟลเดอร์จากโครงการจะยอมรับได้ก็ต่อเมื่อโฟลเดอร์นั้นควรถูกเพิกเฉยจริงๆ บางครั้งคุณไม่ต้องการแยกโฟลเดอร์ แต่ต้องการแยกออกจากการค้นหา
Nader Ghanbari

22
ฉันเพิ่งลองสิ่งนี้ใน IntelliJ 15.0.6 และโฟลเดอร์ที่ถูกแยกยังคงปรากฏในผลการค้นหา
Steven Byks

5
ดูเหมือนจะไม่สามารถใช้งานได้ใน Intellij 2019 โฟลเดอร์ที่แยกออกมานั้นยังคงปรากฏในผลการค้นหา
jrahhali

87

คำตอบสั้น ๆ

โดยการกำหนดขอบเขตเมื่อทำการค้นหาคุณสามารถรวม / แยกไฟล์ / โฟลเดอร์โดยพลการจากขอบเขตนั้น

คำตอบโดยละเอียด

วิธีหนึ่งในการบรรลุความต้องการของคุณ (ไม่รวมไฟล์และโฟลเดอร์จากการค้นหา) คือการกำหนดขอบเขตที่กำหนดเอง สิ่งนี้มีประโยชน์เป็นพิเศษเพราะบางครั้งคุณเพียงต้องการแยกโฟลเดอร์ออกจากการค้นหาไม่ใช่จากโครงการทั้งหมด

ทำตามขั้นตอนเหล่านี้:

  1. Edit-> Find-> Find in pathหรือกดCtrl+ +ShiftF

  2. เลือกCustomในScopeส่วนจากนั้นเลือก<unknown scope>

ขอบเขตการค้นหา

  1. ตอนนี้คลิกที่+ปุ่มเพื่อเพิ่มlocalขอบเขตที่กำหนดเองใหม่

การเพิ่มขอบเขตที่กำหนดเองใหม่

  1. ตั้งชื่อขอบเขตและบันทึก

บันทึกขอบเขตที่กำหนดเองในเครื่อง

  1. ตอนนี้คุณสามารถรวมและแยกไดเรกทอรีออกจากขอบเขตนี้ได้ ครั้งแรกที่คุณสามารถเพิ่มทุกอย่างโดยการเลือกinclude recursivelyจากนั้นจึงยกเว้นหนึ่งโดยหนึ่งโดยการเลือกหรือexcludeexclude recursively

ป้อนคำอธิบายรูปภาพที่นี่

โปรดทราบว่าคุณสามารถรวมหรือแยกไลบรารีของโครงการของคุณได้

  1. เมื่อค้นหาคุณสามารถเลือกขอบเขตที่มีประสิทธิภาพโดยในScopeส่วนในFind in Pathกล่องโต้ตอบ

ข้อมูลเพิ่มเติม

คุณสามารถตรวจสอบเอกสาร JetBrains ได้ในขอบเขตสำหรับข้อมูลเพิ่มเติม ขอบเขตสามารถใช้งานได้ไม่เฉพาะเมื่อค้นหา แต่ยังอยู่ในกรณีการใช้งานอื่น ๆ ใน IntelliJ IDEA

รูปแบบ

คุณสามารถใช้รูปแบบเพื่อกำหนดขอบเขตซึ่งทำให้พวกเขามีประสิทธิภาพยิ่งขึ้นและเป็นข้อพิสูจน์ในอนาคต

การใช้รูปแบบเป็นอีกวิธีในการแยกไฟล์และโฟลเดอร์ ตัวอย่างเช่น file:src/main/java//*&&!file:src/main/java/my//*จะแยกไฟล์ทั้งหมดในmyโฟลเดอร์

ป้อนคำอธิบายรูปภาพที่นี่


2
ดูเหมือนความคิดที่ 15 มีให้คุณคลิกที่ "..." ข้างที่กำหนดเอง<unknown scope>แทนที่จะเลือก
mikebridge

ฉันจะแยกไฟล์ออกจากการค้นหาได้ทุกที่
ycomp

Waaay ทำงานมากเกินไป! คำตอบของ allkenangด้านล่างแก้ปัญหาด้วยการคลิกสองครั้ง เร็วกว่าการอ่านคำตอบสั้น ๆ นี้
Superole

3
@ Superole true เช่นเดียวกับคำตอบที่ได้รับการยอมรับ แต่มันไม่รวมโฟลเดอร์จากโครงการ (มันจะไม่เป็นแหล่งที่มาหรือโฟลเดอร์ทดสอบอีกต่อไป) และนั่นไม่ใช่สิ่งที่คุณต้องการเสมอ การแยกโฟลเดอร์ทั้งหมดออกจากโปรเจ็กต์หรือแยกเฉพาะสำหรับการค้นหาเฉพาะนั้นเป็นสองสิ่งที่แตกต่างกัน (นั่นเป็นสาเหตุที่บางคนพบว่าคำตอบนี้มีประโยชน์) ถ้าคุณใช้ Maven สำหรับโปรเจ็กต์ Java หรือ SBT for Scala (หรือสิ่งเหล่านี้สำหรับ langs อื่น ๆ ) คุณอาจไม่ต้องการแยกโฟลเดอร์ออกเพราะทุกอย่างทำได้โดยอัตโนมัติสำหรับคุณแล้ว
Nader Ghanbari

ขอบคุณที่สอนฉันเกี่ยวกับขอบเขต @NaderGhanbari! ฉันไม่ทราบว่า IntelliJ มีฟังก์ชั่นนี้
Jan Molak

23

ใน Intellij 15 เพื่อแยกโฟลเดอร์ให้ทำดังนี้

ในหน้าต่างโครงการเลือกโฟลเดอร์จากนั้นคลิกขวาแล้วเลือก "ทำเครื่องหมายไดเรกทอรีเป็น"> "ยกเว้น"


อ่า ขอบคุณ! นี่เป็นล้านครั้งง่ายกว่าคำตอบที่ยอมรับ ! ฉันพยายามสร้างขอบเขตก่อน แต่นั่นเป็นฝันร้ายของการเลื่อนคลิกขยายขยายสลับรวมถึงและยกเว้น
Superole

ในโครงการ Maven การตั้งค่านี้จะไม่คงอยู่หลังจากเปลี่ยนสาขาด้วยแอปแยก
Pr0methean

8
ดูเหมือนจะไม่ทำงานใน IntelliJ 2018 - ถูกทำเครื่องหมายว่าถูกแยกออก แต่ยังคงแสดงในผลลัพธ์: /
Chris Nevill


0

หากคุณกำลังค้นหาประเพณีให้เปิด "ค้นหาการตั้งค่าประเพณี ... " โดยค่าเริ่มต้นCtrl+ Alt+ Shift+ F7เพื่อ จำกัด ขอบเขตจาก "ไฟล์ทั้งหมด" เป็น "ไฟล์โครงการ"

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.