Loại trừ thư mục khỏi tìm kiếm nhưng không phải khỏi danh sách dự án


95

Tôi có một vài dự án khác nhau với cùng một core.

Tất cả những gì tôi cần là đánh dấu tất cả các dự án không phải hiện tại excludedđể tránh tìm kiếm qua chúng (tìm kiếm đơn giản, shift + cmd + n, v.v.)

Nói cách khác, tôi muốn có kết quả tìm kiếm từ dấu core+ current project.

Có cách nào để thực hiện closemột số dự án nhưng chúng có sẵn trong projects listopendễ dàng như khi nó bị đóng không? Hoặc có lẽ bạn có một kinh nghiệm khác?

nhập mô tả hình ảnh ở đây


7
Loại trừ khỏi tìm kiếm văn bản thông thường - dễ dàng - chỉ cần xác định phạm vi tùy chỉnh (Tùy chọn | Phạm vi) và sử dụng nó trong "Tìm / Thay thế trong đường dẫn" và các hộp thoại tương tự. Nhưng điều này sẽ không hoạt động đối với "Điều hướng | Tệp / Lớp / Biểu tượng" vì nó luôn hoạt động với toàn bộ dự án. Thay vào đó - hãy tổ chức lại cấu trúc thư mục của bạn tốt hơn ("ẩn thư mục này vì tôi làm việc với một thư mục khác" là cách tiếp cận không đúng).
LazyOne

Vâng, tôi có một trong những cách để làm những gì tôi muốn là tạo cho từng dự án riêng biệt trong thư mục và tạo liên kết tượng trưng cho corethư mục. Nhưng tôi đang tìm cách thay thế.
Vitalii Petrychuk

1
Liên kết tượng trưng không cần thiết (mặc dù tôi cũng đang sử dụng nó - hoạt động tốt đối với tôi). Thay vào đó, bạn có thể đính kèm nó dưới dạng Gốc Nội dung Bổ sung (Tùy chọn | Thư mục).
LazyOne

Tuyệt quá! Vui lòng gửi phản hồi của bạn như một câu trả lời và tôi sẽ chấp nhận nó.
Vitalii Petrychuk

Câu trả lời:


66

Để áp dụng tùy chỉnh sử dụng tìm kiếm Scopes Setting> Project Settings> Scopesđể sử dụng nó cho Find in Pathhay Replace in Path.
Tôi đề nghị tổ chức lại các thư mục của bạn, để không có tệp không cần thiết nào còn lại trong thư mục dự án. Ngoài ra, bạn có thể xác định nguồn gốc bằng cách vào Settings> Project Settings> Directoriesvà thêm các thư mục bổ sung.


4
Bạn có thể tạo Phạm vi với điều này:!file[*]:.idea/*&&!file[*]:.idea//*&&!file[*]:app/cache//*&&!file[*]:app/logs//*
Roukmoute

13
FYI dành cho người dùng Mac, đó làPhpStorm > Preferences > Appearance & Behavior > Scopes
Wesley Smith,

Tôi nghĩ câu trả lời này đã lỗi thời. Cài đặt> Cài đặt dự án> Phạm vi dường như không tồn tại
Andrew

3
@Andrew Nó trong Cài đặt> Giao diện & Hành vi> Phạm vi cho CE 2016.3
tex

Cảm ơn tex ... đó là một.
Andrew

41

Đây là cách tốt nhất để loại trừ các thư mục khỏi kết quả tìm kiếm của bạn. Tôi làm việc trong dự án Magento lớn với nhiều thư mục mà tôi không muốn có trong kết quả tìm kiếm. Điều này đã giải quyết vấn đề của tôi. Nếu dự án của bạn chứa thư mục / nhà cung cấp, điều này sẽ giúp tăng tốc độ lập chỉ mục trong PHPStorm vì nó bị bỏ qua.

Nhấp chuột phải vào bất kỳ thư mục nào để hiển thị các tùy chọn sau.

Loại trừ khỏi tìm kiếm


Cũng hoạt động để phát triển gói Laravel. Cách đề xuất để làm điều này để tạo thư mục gói trong thư mục gốc dự án của bạn. Bây giờ nó sẽ sử dụng các lớp giống như dự án chính của bạn, vì vậy bạn sẽ nhận được hàng tấn các lớp trùng lặp tồn tại lỗi. Nhấp chuột phải và làm điều này và nó hoạt động như ma thuật. Phương pháp tiếp cận phạm vi không hoạt động với tôi!
Juha Vehnia

39

Kể từ phiên bản 2016.3, điều này được tìm thấy trong Cài đặt > Giao diện & Hành vi > Phạm vi .

Hoặc bất kể phiên bản nào , chỉ cần đi tới Cài đặt và nhập "phạm vi" vào hộp tìm kiếm ở trên cùng.

Sau đó, chỉ cần nhấp vào biểu tượng + để thêm phạm vi, chọn thư mục bạn muốn loại trừ và nhấp vào Loại trừ đệ quy và áp dụng.

Sau đó, khi bạn tìm kiếm bằng CTRL + SHIFT + F, trong Tùy chọn> Phạm vi, chọn Tùy chỉnh và chọn phạm vi bạn vừa tạo (cảm ơn người bình luận).


4
Chỉ muốn thêm nếu bạn đang sử dụng TÌM như cmd + shift + F thì trong tab tùy chọn, bạn có thể tùy chỉnh radio rồi chọn hình elip và nó sẽ mở ra công cụ phạm vi và bạn có thể chọn hoặc tạo phạm vi để loại trừ những gì bạn cần.
daveferrara1

4
This automatically excludes this folder's contents from the searches...sau khi tôi đã tạo phạm vi tùy chỉnh của mình, tìm kiếm Ctrl + Shift + F của tôi vẫn đang tìm kiếm trên toàn cầu cho đến khi tôi chọn rõ ràng "Tùy chỉnh" và chọn phạm vi của mình như @ daveferrara1 đề xuất.
Dimitry K

1
Vào năm 2020: Sau khi nhấp vào + lựa chọn Localvs Sharedcó nghĩa là loại trừ có đi vào VCS hay không. Sau đó, bạn phải đặt tên cho nó. Sau đó, sau bước của @ DimitryK (bây giờ được gọi là Scopetab), bạn phải chọn cùng tên đó trong menu thả xuống. (Có phải Jetbrains UX đang mày mò biến bất cứ ai khác thành một ông già khó tính không?)
Bob Stein

2

Giống như @Justinas và những người bình luận đã nói: Bạn có thể tạo phạm vi tùy chỉnh và tự làm phiền mình mọi lúc bằng cách chọn phạm vi tùy chỉnh đó khi sử dụng Tìm trong Đường dẫn (và tương tự) vì PhpStorm không sử dụng phạm vi tùy chỉnh đó theo mặc định 🤦🏻‍♂️

Việc loại trừ thư mục node_modules vẫn phá vỡ chức năng tự động hoàn thành và chức năng hỗ trợ mã khác. Bạn không muốn làm điều đó.

Tuy nhiên, tôi đã tìm thấy một bản hack không yêu cầu bất kỳ loại trừ thư mục nào của node_modules cũng như phạm vi tùy chỉnh:

  1. Đóng PhpStorm. Đảm bảo rằng nó không chạy.
  2. Mở name_of_your_project.iml trong thư mục .idea trong thư mục dự án của bạn bằng trình soạn thảo văn bản yêu thích của bạn. Miễn là nó không phải là PhpStorm.
  3. Xóa dòng <content url="file://$MODULE_DIR$/node_modules" />
  4. Tiết kiệm.
  5. Tận hưởng cuộc sống một lần nữa.

Tôi thấy JetBrains là nghiệp dư khi bao gồm các thư mục lưu trữ phụ thuộc như node_modules của JavaScript / TypeScript và nhà cung cấp PHP theo mặc định. Hầu như không có bất kỳ trường hợp sử dụng nào để đưa các thư mục đó vào chức năng tìm và thay thế, chỉ còn lại chức năng tái cấu trúc.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.