Android Studio - File in Path 搜索

2021-01-27  本文已影响0人  zii4914

1. 前言

在AS中,我们经常使用 Ctrl+Shift+FFile in Path 去搜索内容,但是总是会搜索出很多非项目的或者包含Build下的文件结果,现在就来解决一下这个问题。

搜索结果中包含Build目录下文件结果

2. File in Path 的 Scope

Scope提供了自定义搜索范围功能,可以添加设置自己想要的搜索范围。

2.1 进入Scope设置

Ctrl+Shift+F 打开 File in Path

打开Scopes设置

2.2 Scope设置介绍

填写名称 Scope设置介绍

2.3 Scope设置操作

Scope设置操作

3. 定制想要的搜索范围

操作的时候,使用左边目录选择,加右边操作,可以快速定制。但是一般还需要通过手动调整 Pattern 来达到更精准效果。

3.1 默认搜索范围

File in Path 默认搜索范围包含三大块,选择 Package 方式查看,分别是 Libs ClassesProduction ClassesTest Classes值得注意的是,使用 Project 只能看到 项目目录,但是搜索时的范围,还是包含前面提到的三大块。在包含文件数目中,可以看到写明【未显示非项目目录】


3.2 定制操作

定制操作

3.3 语法简介

语法格式

头部

指定模块

尾部
路径,可以用 * 代表作为通配符,指任意。例如:file:*/build//*,指任意build目录,匹配xxx/build/xxxxx,后面//*的一个 / 属于转意,放在 *

运算符

3.4 最终效果

下面以搜索 项目文件(包含未include模块源码) 为目的,给出最终结果,并解释各项。

file[*]:*/&&!file:*build//*&&!file[*]:*libs//*&&!test:*..*&&!file:*.iml&&!file:*.aar&&!file:mapping.txt&&!file:.gitignore&&!file:.idea//*&&!file:gradle//*

4. Scope组合使用

除了直接使用一条完整的Scope过滤代码,也可以把他们拆开,使用 &&||! 进行自由组合。记得先保存,引用才能生效。

4. 参考

StackOverflow:
Android Studio : Exclude files in build folder from search result
IntelliJ IDEA - JetBrains:
Scopes—IntelliJ IDEA - JetBrains
Scopes语法介绍

上一篇 下一篇

猜你喜欢

热点阅读