我是谁?我从哪来?我要去哪?

0%

IntelliJ大师指南之原来搜索还可以这样用!

前言

IntelliJ IDE对于每一个Java开发工程师来说都是如雷贯耳,对于不知道这个开发IDE的同学我只能说他还活在上个世纪不认识这个世纪最先进的Java开发工具。我刚开始学习Java的时候用的是Eclipse,感觉用起来非常难受,后来朋友推荐了IntelliJ,才发现世界上原来还有这么好用的工具,那些自动补全功能、运行debug功能还有用户界面等等都是那么令人心情愉快。虽然大家都知道IntelliJ好用,但是大部分人都不会将这个工具的使用发挥到极致,可能开发者设计的90%的好用的功能都没有用到,IDE开发者的一番心血就这样被无视了。

IntelliJ的功能千千万,搜索功能是这个IDE最重要的一个部分,对于提高工作效率有着至关重要的作用,这篇文章就主要关于搜索。

我是用的IntelliJ的版本是2019.12 Ultimate

简介

IntelliJ的搜索功能是他的最核心的功能之一,比如搜索文件、搜索类名以及搜索可执行操作等等。在任何一款编辑器甚至浏览器里面都带有使用Ctrl + F进行搜索的功能,只需要输入你想要的字符就能够进行部分匹配,部分编辑器可能还有正则表达式匹配的功能。IntelliJ的编辑器也是有这种功能,直接使用Ctrl + F就能够搜索的到你想要的,并且能够选择是否匹配大小写、整词匹配或者用正则表达式。

file-search

作为一个兼具项目管理能力的IDE,IntelliJ自然而然能够进行项目级别的搜索,比如整个项目全局搜索、模块搜索、路径搜索以及自定义范围的搜索,只需要使用Ctrl + Shift + F就可以调起。

project-search

但是这些功能是IntelliJ提供的最基础的搜索功能,大多数人一直都在用这些功能,可能对他们很熟悉了,所以这篇文章要介绍的是不一样的搜索——双击Shift搜索。

搜索任何地方 双击Shift

双击Shift的搜索功能是IntelliJ的一个非常强大的功能,使用Ctrl + Shift + F只能搜索到你想找到的字符串,比如我想要找到sort这个单词,你只能在文件里面找到,可能出现在import语句里面、出现在类名方法名或者变量名里面、出现在注释里面,大多数的时候都是特别好用的。这个搜索是纯文本搜索,不能搜索文件名或者文件夹,更加不能搜索IDE配置,更别说执行操作了。

追求极致的IntelliJ的开发者就创造了这个双击Shift的功能,为的就是能够在双手不脱离键盘的情况下完成对项目的任何操作。使用这个功能你可以找到想要的类、方法或者变量名,也可以去修改IDE的配置比如修改页面布局,运行或者终止程序,打开新的项目等等。

总体来将Double Shift搜索的结果分成6大类

  • 文件
  • 符号
  • 执行操作
  • 命令
  • 运行配置
  • 最近文件

如果想直接搜索类,可以通过快捷键Ctrl + N来打开搜索框,使用Double shift也会把搜索类的结果作为一部分放到最后的结果里面。

类的搜索是Double Shift搜索最简单基础的搜索,只能搜索和关键词相关的类。

find-class

搜索范围

文件

搜索文件可以直接使用Ctrl + Shift + N来打开搜索框,或者使用Double Shift来直接搜索。

搜索文件功能的范围要比搜索类的大一些,不仅仅可以搜索类名,还可以搜索其他文件比如properties文件、xml文件,或者范围更大,可以找到对应名称的文件夹。

find-file

搜索范围

  • 文件
  • 文件夹

符号

搜索符号,也就是类名、方法名还有变量名等等。可以通过快捷键Ctrl + Shift + Alt + N直接弹出搜索框,这个快捷键要按四个键,看起来挺麻烦的,不过习惯就好了。

find-symbol

执行操作

执行操作也就是搜索Action是我在IntelliJ里面最喜欢的功能。通过这个功能可以执行大部分开发过程中需要的操作,完美实现手不离键盘。

通过Action搜索可以执行任何主菜单可以执行的程序。

main-menu

比如想打开最近打开的项目

open-project.gif

打开Git面板,查看这个文件的历史改动,可以在Git选项中搜索show就可以看到show history的选项。

show-git

Action操作还可以打开或者关闭IDE的特性的开关,比如可以修改GitAnnotation的开关,展示最近修改时间和用户

git-annotate

为了能够有更加清爽的界面,很多导航栏和工具栏都是可以移除的,取而代之的就是快捷键。这些导航栏或者工具栏都可以直接通过Action完成,免去了从主菜单找相关配置的麻烦。

nav-change.gif

除了修改配置,Action还能够执行插件操作比如执行mavenreimport操作。

maven-import

有没有觉得直接输入这一长串的英文字母很麻烦,IntelliJ的开发者也考虑到了这个问题,所以提供了缩写的功能,可以给你常用的操作提供别名,直接输入简化的名称就可以了。比如我需要经常打开最近编辑的项目,通常需要直接输入open recent,给这个操作增加一个缩写oc,我在Ctrl + Shift + A之后直接输入oc就行了。

add-abbrev.gif

另外如果需要经常循行调试程序,也可以直接在Action操作中进行。

run

命令

命令是只有在Double Shift才有的操作,在输入框里面输入斜杠/就会出现所有可以执行的命令,比如有外观(appearance)、编辑器(editor)、debug、运行(run)、插件(plugins)还有模板(template)等等,其中只有run和debug是可以运行的,其他的都是开关。

command-debug

修改配置选项的开关

command-config.gif

运行配置

运行配置相当于是简化了运行或者debug操作的步骤,原来是需要通过输入debug之后再去找对应的需要运行的对象,我们可以直接自定义经常需要运行的配置的名称,比如设置成myconfig,然后再在Double Shift之后直接输入myconfig就可以执行。

run-config.gif

最近的文件

Double Shift之后如果没有输入内容就会自动出现最近的文件,如果有文件和内容匹配,默认排在最前面的就是最近打开的文件。

recent-file

总结

总的来说IntelliJ的Double Shift是一个很强大的功能,能帮助你摆脱鼠标完全键盘操作。

Double Shift会根据你输入的内容找到最近编辑的文件,搜索的结果不仅仅有相关的文件、文件夹、类、方法、全局变量,还有你想要的IDE的配置,更加强大的是它能够帮助你运行程序,无须手动点击绿色的小按钮,直接键盘搞定。

如果你知道这些操作的小诀窍,在结对编程或者代码展示的时候肯定会令你的小伙伴眼前一亮,成为他们心中的IDE大神!哈哈!

参考

Search for a target by name (Search everywhere)
42 IntelliJ IDEA Tips and Tricks
More IntelliJ IDEA Tips and Tricks by Trisha Gee

更多精彩内容请看我的个人博客