作者:氷泠
链接:https://zhuanlan.zhihu.com/p/136346657
来源:知乎
1 概述
IDEA全称IntelliJ IDEA,主要用于Java开发的IDE,代码自动提示,重构,JUnit,代码分析等的功能非常牛逼,这篇文章首先介绍目前为止IDEA最新版本的特性,然后从UI,常用设置,快捷键,插件四个部分去食用IDEA.文章内容有点长,慢慢细品.
2 新版本特性
JetBrains在2020年4月9日发布了目前最新的版本:IntelliJ IDEA 2020.1.下面来看看新版本的特性:
2.1 中文
界面支持中文了,需要安装一个叫
Chinses(Simplified) Language Pack
的插件,这个插件是官方提供的.
至于汉化效果....不清楚,笔者不用哈哈.
2.2 Java14
新版本支持Java14,另外可以直接从IDE中下载JDK,不过下载源没有Oracle的...
2.3 LightEdit模式
就是作为简单的文本编辑器模式,无需创建或加载整个项目,就可以在类似文本编辑器中快速修改独立文件. 可以直接右键文件选择IDEA或者使用命令行打开:
界面非常清爽,启动速度非常快,同时菜单栏只剩下了4个:
2.4 禅模式ZenMode
这个模式超赞啊,结合了原来的免打扰模式和全屏模式.
2.5 javadoc渲染
需要设置中开启:
打开一个源码文件,快捷键Ctrl+Alt+Q,渲染后可以调节字体大小.
2.6 导航栏
可以定位到具体字段或方法.
2.7 改进Http Client
可以补全URL路径:
并且对于Spring MVC可以直接创建或者打开现有的HTTP请求文件并导航到HTTP Client:
2.8 其他
- 终端拆分:
- JBR11: JBR8成为历史,彻底过渡到JBR11:
- IntelliJ Light与Windows10 Liight主题:
- 新字体:JetBrains Mono(支持连字哦):
更多新特性请看官网:
3 UI篇
好了,新特性看完了,下面看看如何做出一个漂亮的IDEA.
3.1 背景
一个好看的IDE怎么能没有背景?
可以选择透明度和缩放方式,提供了预览:
整体效果:
3.2 主题
一个好看的IDE怎么能没有一个好看的主题?
上面链接下载主题.
笔者用的是Monokai Sublime Text 3:
下载之后,从Fille处导入:
提示窗口ok就行,然后重启:
(这里真心吹一下这个主题...不得不说真的漂亮)
3.3 字体
嗯...字体...这个贼重要!!! 推荐使用等宽字体,例如: Source Code Pro:
Consolas:
Droid Sans Mono:
或者新字体也不错JetBrains Mono:
下面看看连字字体,首先开启连字设置:
新字体JetBrains Mono是支持连字的:
另一个要推荐的连字字体是Fira Code:
也很不错.
3.4 整体风格
3.4.1 字体大小
如果觉得菜单栏字体小的话可以调大一点,字体建议不要改,改大小就好.
3.4.2 UI元素以及模式切换
建议为工具栏,工具窗口栏,状态栏以及导航栏设置一个快捷键,然后可以快速切换一个简洁模式. 另外为全屏模式/免打扰模式/禅模式设置一个缩写词也是一个不错的选择,方便快速切换:
推荐为其中一个绑定一个鼠标快捷键,比如中键单击,这样就可以中键单击切换.
3.4.3 侧栏窗口
非必要固定建议改成Undock,滑动效果非常不错:
3.4.4 编辑器
第一个是Soft-Wrap,就是对于太长的行显示成多行,但并没有实际插入换行符,相对的是Hard Wrap,可以在Editor->Code Style中设置.
第二个会对Tab进行显示:
第三个显示行数,第四个是侧栏图标:
关闭后:
第五个是缩进引导线:
第六个"面包屑"(实际上是个导航栏,概念来自童话故事"汉赛尔和格莱特"):
第七个是import时的弹出的窗口.
4 常用设置篇
这部分包含了一些常用的而且有用的设置.
4.1 控制台
Windows下的终端有很多,除了自带的cmd ,powershell ,还有Fluent Terminal,Windows Terminal,ConEmu,Hyper,Cmder,wsl等等,随便美化一下都很不错: ~~没错来晒终端了.~~ 先来自带的powershell(感谢伟大的oh-my-posh):
Fluent Terminal:
Windows Terminal:
VSCode集成效果:
至于IDEA...显示有点问题,就不截图了,图形显示得有点奇怪,可能是windows上的终端支持得不够好. 搞了这么多最后还是决定把终端给关了(老老实实用Windows Terminal...)
IDEA的终端是一个插件,不需要的话关了就好,如果需要的话,可以直接搜索Terminal,在shell Path这里设置默认终端的路径(默认cmd),搜索Console Font修改字体.
4.2 自动去除未引用的包
Editor-Gereral-Auto Import:
4.3 编码统一UTF8
4.4 JDK
建议JDK统一.
4.4.1 编译JDK
4.4.2 项目JDK
4.4.3 模块JDK
4.4.4 已有JDK
2020.1版本提供了下载JDK的功能.
4.5 Maven/Gradle
构建工具一般用Maven或Gradle,通常需要用其中一个即可,笔者用的是Maven,以Maven为例. 首先修改用户目录下的.m2/settings.xml,这个是Maven的配置文件,建议修改localRepository:
默认位置如图,对于Windows用户不建议C盘,在其他地方找一个,填绝对路径. 其次在<mirrors>加入如下镜像:
-
<mirror>
-
<id>alimaven</id>
-
<name>aliyun maven</name>
-
<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
-
<mirrorOf>central</mirrorOf>
-
</mirror>
-
-
<mirror>
-
<id>uk</id>
-
<mirrorOf>central</mirrorOf>
-
<name>Human Readable Name for this Mirror.</name>
-
<url>http://uk.maven.org/maven2/</url>
-
</mirror>
-
-
<mirror>
-
<id>CN</id>
-
<name>OSChina Central</name>
-
<url>http://maven.oschina.net/content/groups/public/</url>
-
<mirrorOf>central</mirrorOf>
-
</mirror>
-
-
<mirror>
-
<id>nexus</id>
-
<name>internal nexus repository</name>
-
<url>http://repo.maven.apache.org/maven2</url>
-
<mirrorOf>central</mirrorOf>
-
</mirror>
然后打开设置就可以看到对应的更改了.
4.6 关闭标签栏
一次只打开一个文件,也就是说没有标签栏,看个人吧.
4.7 自动编译
这功能用起来非常爽,强烈建议开启,配合JRebel,从此让漫长的编译与部署见鬼去吧!
两次shift搜索Registry:
找到compiler.automake.allow.when.app.running:
需要的话可以加上compile.document.save.trigger.delay,这个是针对静态文件如JS,CSS的更新.
4.8 代码补全不区分大小写
看个人,关了匹配大小写的话,直接输入小写字母除了补全变量以外还会补全类,可能会带来一点不方便.
4.9 代码模板/补全
VScode中的syso就可以输出System.out.println,这个应该很多人知道,但是IDEA中不可以(虽然,用的是sout).
如果想用syso输出怎么办呢?
没事,用补全!
IDEA中的补全分为两种,一种是模板补全(Live Templates),一种是后缀补全(Postfix Completion).
4.9.1 Live Templates
先看一下自带的模板:
新建一个模板组,叫Java:
然后添加模板:
define这里可以选择应用的范围,从上到下是:注释,声明,表达式,智能类型补全,语句,字符串,其他.
然后输入补全的内容,其中
$END$
表示光标的位置(类似的还有很多,具体查看默认的模板).
如果不想用Tab补全,可以考虑一下空格(不过估计半年后键盘的空格就弹不起来). 当然,这样只能补全自定义的模板,一些自定义的类无法使用空格,可以考虑加一个全局的快捷键:
这样就能实现空格补全了(努力让空格弹不起来吧!!!) 再介绍一个字符串常量补全:
利用了内置的函数capitalizeAndUnderscore(字母大写,并且下划线分隔)与cipboard(调用剪贴板最近一次内容). 首先把变量名复制到剪贴板,然后调用补全"cs",配置如下:
还有其他很多函数,详见官网文档(戳这里).
4.9.2 Postfix Completion
后缀补全其实就是输入.之后出现的补全,比如:
自带的后缀补全已经很强大了,包括常用的for,fori,if,iter等:
这里添加一个数组输出的补全作为例子:
其中
$EXPR$
表示目标表达式,上面可以选择应用的表达式类型,这里是数组,也就是说,只有对于数组类型才会出现这个后缀补全:
4.10 ctrl+滚轮改变字体大小
5 快捷键篇
官方快捷键参考列表:
5.1 编辑
5.2 查找类/方法/变量使用情况
5.3 导航
5.4 搜索/替换
5.5 代码模板
5.6 重构
5.7 调试
5.8 编译和运行
5.9 版本控制系统/本地历史
5.10 通用
5.11 必记
记一些必要的就好了.
- 重载/接口方法:Ctrl+O/I
- 代码包裹:Ctrl+Alt+T
- 注释:Ctrl+/ Ctrl+Shift+/
- 选择:Ctrl+W Ctrl+Shift+W
- 万能搜索:两次Shift
- 定位文件:Ctrl+E
- 定位行:Ctrl+G
- 搜索/替换:Ctrl+(Shift+)F Ctrl+(Shift+)R
- 代码模板:Ctrl+(Alt+)J
- 重构:Ctrl+Alt+C/V/M
- 调试:F7 F8 Shift+F9
- 运行:Shift+F10
- VCS:Alt+反引号
- 切换窗口:Alt+数字
6 插件篇
6.1 自带插件
IDEA自带的插件分为了18类,分别是
- Android
- Build Tools
- Code Coverage
- Database
- Deployment
- HTML and XML
- IDE Settings
- JavaScript Frameworks and Tools
- JVM Frameworks
- Languages
- Plugin Development
- Style Sheets
- Swing
- Template Languages
- Test Tools
- Themes
- Version Controls
- Other Tools
建议不需要的可以选择关闭,只是Java开发的话,可以关掉Android,Build Tools中的Ant与Gradle,JavaScript Frameworks and Tools中的CoffeeScript等等.另外新版本带了一个win10主题插件:
是亮色主题,不需要也可以顺便关了. 对于VCS,大部分人应该用的是Git与Github,可以把Mercuial,Perforce,Subversion关了. 作为一个牛逼的IDE,除了自带的插件外,当然需要安装额外的插件,那么,下面就是激动人心的插件推荐环节.
6.2 Code Glance
代码小地图,默认快捷键Ctrl+Shift+G:
6.3 Grep Console
控制台高亮输出,默认配置有一个叫default的组,里面按照日志的等级划分,可以进行不同颜色的高亮,需要手动配置.
6.4 GsonFormat
根据JSON自动生成对应的字段与getter/setter.
6.5 IdeaVim
Vim键位绑定,神器不解释.
6.6 Key Promoter X
快捷键提示工具,每次使用鼠标点击操作会提示这个操作的快捷键和个人使用次数,如果没有快捷键的话会提示绑定快捷键.
6.7 Rainbow Brackets
看名字就知道了,彩色的括号:
6.8 JRebel and XRebel
热部署插件,有了它,不用再等待漫长的编译和部署. 具体使用看笔者的另一篇文章,戳这里.
6.9 Lombok
强大的注解工具,常用的注解有:
- @Getter/@Setter:可以作用与类或成员上,作用与类上生成所有成员的getter/setter,作用与成员生成该成员的getter/setter.
- @ToString:作用与类上,覆盖默认的toString,可以通过of/exclude限定/排除某些字段.
- @EqualsAndHashCode:作用与类上,覆盖默认的equals与hashCode. @NonNull:作用与成员变量/参数,标识不能为空.
- @NoArgsConstructor/@RequiredArgsConstructor/@AllArgsConstructor:作用与类上,分别表示生成无参构造方法,生成包含final与@NonNull的成员变量的构造方法,生成所有成员变量的构造方法.
- @Data:作用与类上,等价于@ToString+@EqualsAndHashCode+@Getter+@Setter+@RequiredArgsConstructor.
具体使用方式自行搜索.
6.10 power-mode
敲代码爽得飞起:
设置在Apperance中,建议把SHAKE!(晃动),FLAMES!(火焰)与POWER INDICATOR!(右下角的小窗口)关闭.
6.11 Translation
谷歌翻译插件,直接右键翻译即可.
设置目标语言为中文.
6.12 插件安装
如果直接从插件仓库安装得慢的话可以直接下载插件从本地安装.
以上插件合集,附上Github与码云链接:https://link.zhihu.com/?target=https%3A//gitee.com/imykr/IDEAPlugins
来源:oschina
链接:https://my.oschina.net/u/4588392/blog/4713674