220

Is there a way to exclude particular file extension from the results in IntelliJ IDEA's "Find in Path" dialog (invoked by CTRL + SHIFT + F)? I want to exclude all .css files.

Ivar
  • 6,138
  • 12
  • 49
  • 61
Robert Kusznier
  • 6,471
  • 9
  • 50
  • 71

7 Answers7

315

In intellij 16 there is a section "File name Filter" to exclude an extension use !*.java. You can give more detailed patterns as well for example I use the pattern below to only return .java files except those with a name starting or ending with test. Pattern: !*test.java,*.java,!Test*.java

enter image description here

In recent versions of Intellij the GUI has been updated a bit but the same still applies see the "File mask" on the top right hand corner see image below:

enter image description here

Marquis Blount
  • 7,585
  • 8
  • 43
  • 67
  • 2
    Can I not mention !mocks/*.json in the File Masks filter ? – CodeTweetie Oct 23 '17 at 10:12
  • 1
    @CodeTweetie what are your doing to do with the '/' not sure why its needed (i thought '/' is just a delimiter in regex). without it your filter would say exclude any file that starts with "mock"s followed by anything ending in ".json" – Marquis Blount Oct 27 '17 at 17:13
  • 1
    This "File name Filter" dialogue doesn't seem to exist in recent versions (2018.1, etc.). – Woodchuck Aug 06 '18 at 20:39
  • Note that this feature was added in IntelliJ 2016.1. If you're using a perpetual fallback license of IntelliJ 15 or older, this feature won't be available. [See my other post](https://stackoverflow.com/questions/36262526/intellij-file-mask-not-working-on-simple-excluding-file-pattern-why/55130341#55130341) – Kevin Mar 12 '19 at 20:49
  • For anybody who's interested, this works in Rider as well. – Ken Bonny Jan 18 '21 at 09:26
  • For php 2018, this option is in Settings > Editor > File Types > Ignore files and folders (at the bottom). It also uses standard positive/inclusion patterns (use \*.sql to exclude sql files instead of !\*.sql etc). – Jarrod Juleff Mar 26 '21 at 18:12
90

In "Find in Path" and "Find in Files" (Ctrl+Shift+F) you can use the "File mask" input.

For example, this would exclude all js, css and twig:

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

PhpStorm File Masks for Find in Path

It's handy cause it also keeps a list of previous inputs, but it gets messy easily when you add a lot of extensions. If it gets too crowded, consider excluding some folders as well (right-click -> "Mark directory as" -> "Excluded")

T30
  • 11,422
  • 7
  • 53
  • 57
59

You can create custom scope there: In 'Find in Path' dialog you can check radio button 'Custom' and open scopes window. There you can customize path and search pattern.

enter image description here

Examples of Patterns for Pattern field:

  • !file:*.css - exclude CSS files
  • file[MyMod]:src/main/java/com/example/my_package//* - include files from the directory in a project.
  • src[MyMod]:com.example.my_package..* - recursively include all files in a package.
  • file:*.js||file:*.coffee - include all JavaScript and CoffeeScript files.
  • file:*js&&!file:*.min.* - include all JavaScript files except those that were generated through minification, which is indicated by the min extension.

Or check the official documentation.

Good luck!

Igor Konoplyanko
  • 9,176
  • 6
  • 57
  • 100
24

If you are like me that don't want to use the File Mask option or create a custom scope, etc. but just wanted to be able to add it to project settings one time and be done with it, then here's a solution for you.

I wanted my Find in Path to not search in lock files (auto-generated manifest file by package managers), here's what I had to do for that:

Goto File >> Project Structure (or just press Command+;)

Select Modules under Project Settings

enter image description here

Add a pattern or file names to the Exclude files text-box, in this case: *.lock;package-lock.json and hit Apply, and then ok.

intellij-project-structure-screenshot

Note The above option is available in IntelliJ 2019 and versions after that, not sure about older versions. For more info, https://www.jetbrains.com/help/phpstorm/excluding-files-from-project.html

Arun Karnati
  • 1,027
  • 8
  • 9
7

WebStorm 2021

CTRL+SHIFT+F and follow the pictures

enter image description here

enter image description here

Fuad Javadov
  • 148
  • 2
  • 4
5

For 2019.2, the pattern is not set in scope but in the right top windows "File mask" in Find in path dialog. You must tick it.

The syntax I tested are:

  • exclude files with extension css: !*.css
  • exclude all under out dir: !out/*

Patterns are separated by comma.

Reference: https://www.jetbrains.com/help/idea/finding-and-replacing-text-in-project.html

WesternGun
  • 11,303
  • 6
  • 88
  • 157
3

For 2021.3.2, just right-click to the folder and Mark Directory as -> Excluded. This will work for logs etc but be careful about source folders.

Ali Colak
  • 51
  • 4