Làm cách nào để loại trừ phần mở rộng tệp khỏi tìm kiếm IntelliJ IDEA?


126

Có cách nào để loại trừ phần mở rộng tệp cụ thể khỏi kết quả trong hộp thoại " Tìm trong đường dẫn " của IntelliJ IDEA (được gọi bởi CTRL+ SHIFT+ F) không? Tôi muốn loại trừ tất cả .csscác tập tin.

Câu trả lời:


184

Trong intellij 16 có một phần "Bộ lọc tên tệp" để loại trừ việc sử dụng tiện ích mở rộng !*.java. Bạn cũng có thể đưa ra các mẫu chi tiết hơn, ví dụ tôi sử dụng mẫu bên dưới để chỉ trả về các tệp .java ngoại trừ các mẫu có tên bắt đầu hoặc kết thúc bằng thử nghiệm. Mẫu:!*test.java,*.java,!Test*.java

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

Trong các phiên bản gần đây của Intellij, GUI đã được cập nhật một chút nhưng vẫn áp dụng tương tự, xem "Mặt nạ tệp" ở góc trên cùng bên phải, xem hình ảnh bên dưới:

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


1
Tôi không thể đề cập đến! Mocks / *. Json trong bộ lọc File Masks?
CodeTweetie

1
@CodeTweetie bạn đang làm gì với '/' không chắc tại sao lại cần thiết (tôi nghĩ '/' chỉ là một dấu phân cách trong regex). không có nó, bộ lọc của bạn sẽ nói loại trừ bất kỳ tệp nào bắt đầu bằng "mock", theo sau là bất cứ thứ gì kết thúc bằng ".json"
Hầu tước Blount

1
Cuộc hội thoại "Bộ lọc tên tệp" này dường như không tồn tại trong các phiên bản gần đây (2018.1, v.v.).
J Woodchuck

Lưu ý rằng tính năng này đã được thêm vào trong IntelliJ 2016.1. Nếu bạn đang sử dụng giấy phép dự phòng vĩnh viễn của IntelliJ 15 trở lên, tính năng này sẽ không khả dụng. Xem bài đăng khác của tôi
Kevin

47

Bạn có thể tạo phạm vi tùy chỉnh ở đó: Trong hộp thoại 'Tìm trong đường dẫn', bạn có thể kiểm tra nút radio 'Tùy chỉnh' và mở cửa sổ phạm vi. Ở đó bạn có thể tùy chỉnh đường dẫn và mẫu tìm kiếm.

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

Ví dụ về các mẫu cho Patterntrường:

  • !file:*.css - loại trừ các tệp CSS
  • file[MyMod]:src/main/java/com/example/my_package//* - bao gồm các tập tin từ thư mục trong một dự án.
  • src[MyMod]:com.example.my_package..* - đệ quy bao gồm tất cả các tệp trong một gói.
  • file:*.js||file:*.coffee - bao gồm tất cả các tệp JavaScript và CoffeeScript.
  • file:*js&&!file:*.min.* - bao gồm tất cả các tệp JavaScript ngoại trừ các tệp được tạo thông qua thu nhỏ, được biểu thị bằng phần mở rộng tối thiểu.

Hoặc kiểm tra tài liệu chính thức .

Chúc may mắn!


2
Vì vậy, mẫu để loại trừ tất cả các bảng kiểu CSS là gì?
Robert Kusznier

3
Xin lỗi, đó là trong tài liệu của IntelliJ: jetbrains.com/idea/webhelp/scope-lingu-syntax-reference.html . Để loại trừ CSS, tập tin :!: *. Css.
Robert Kusznier

Bạn đã làm cho ngày của tôi! Cuối cùng, tôi có thể loại trừ test-case.js gây phiền nhiễu
Halyna

18

Điều này sẽ loại trừ tất cả js, css và twig chẳng hạn:

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

Mặt nạ tệp PhpStorm để tìm trong đường dẫn


3

Nếu bạn giống như tôi không muốn sử dụng tùy chọn Mặt nạ tệp hoặc tạo phạm vi tùy chỉnh, v.v. mà chỉ muốn có thể thêm nó vào cài đặt dự án một lần và được thực hiện với nó, thì đây là giải pháp cho bạn .

Tôi muốn Tìm trong Đường dẫn không tìm kiếm trong locktệp (tệp kê khai được tạo tự động bởi người quản lý gói), đây là những gì tôi phải làm cho việc đó:

Tệp Goto >> Cấu trúc dự án (hoặc chỉ cần nhấn Command +;)

Chọn mô-đun trong Cài đặt dự án

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

Thêm một mẫu hoặc tên tệp vào hộp văn bản Loại trừ tệp, trong trường hợp này: *.lock;package-lock.jsonvà nhấn Áp dụng, sau đó ok.

intellij-dự án-cấu trúc-ảnh chụp màn hình

Lưu ý Tùy chọn trên có sẵn trong IntelliJ 2019 và các phiên bản sau đó, không chắc chắn về các phiên bản cũ hơn. Để biết thêm thông tin, https://www.jetbrains.com/help/phpstorm/excluding-files-from-project.html


Vấn đề với điều này là nó cũng loại trừ các tệp có các phần mở rộng đó khỏi quyền xây dựng, không chỉ từ các tìm kiếm!?
Suan

@Suan theo như tôi biết, nó sẽ chỉ loại trừ tệp khỏi các tìm kiếm, hoàn thành mã, kiểm tra, v.v. Kiểm tra bài viết này từ JetBrains, jetbrains.com/help/phpstorm/excluding-files-from-project.html
Arun Karnati

Mô tả không tốt. Tôi mất 5 phút để tìm thấy tùy chọn này trong Cấu trúc dự án. Vui lòng thêm một ảnh chụp màn hình khác cho thấy nơi chính xác để tìm thấy điều này.
Frederic Leitenberger

@FredericLeitenberger - xong rồi!
Arun Karnati

@ArunKarnati Tuyệt vời! Cảm ơn!
Frederic Leitenberger

2

Đối với năm 2019.2, mẫu không được đặt trong phạm vi mà ở cửa sổ trên cùng bên phải "Mặt nạ tệp" trong Find in pathhộp thoại. Bạn phải đánh dấu nó.

Cú pháp tôi đã kiểm tra là:

  • loại trừ các tệp có phần mở rộng css:!*.css
  • loại trừ tất cả theo outdir:!out/*

Các mẫu được phân tách bằng dấu phẩy.

Tham khảo: https://www.jetbrains.com/help/idea/finding-and-replaces-text-in-project.html

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.