JetBrains IDE 基本快捷键

1,801 阅读7分钟

Erik Pragt 原作,授权 New Frontend 翻译。

一个好的手艺人很熟悉他的工具。软件开发者也不例外。所以,在编程的过程中,值得了解一些键盘快捷键,以免因为点击菜单项而分散注意力,干扰编码的节奏。这篇文章会介绍 IntelliJ 的快捷键(译者注:绝大部分内容同样适用于其他 JetBrains IDE,包括前端开发常用的 WebStorm 和 Android 开发常用的 Android Studio)。尽管 IntelliJ 几乎所有功能都有快捷键,但成为一个高效的程序员并不需要知道所有快捷键。相反,这篇文章只会介绍我和同事日常使用的少量快捷键,掌握这些快捷键能使你成为一个更娴熟的软件开发者。

我把键盘快捷键分了一下组,方便阅读。以下 IntelliJ 快捷键基于默认的 Windows 配置,如果你使用不同的快捷键方案,请查看 IDE 帮助(Help -> Keymap Reference)了解相应的快捷键。(译者注:由于不少开发者使用 macOS 操作系统,因此附注了 macOS 方案对应的快捷键)。

导航快捷键

Ctrl + Tab(^ Tab) —— 切换标签页

快速切换打开的文件。按住 Ctrl 键不释放时可以在打开文件列表中逐个移动,释放时会切换到相应文件。

Ctrl + E(⌘ E) —— 查看最近文件

列出最近访问的文件。

Ctrl + B (⌘ B) —— 跳转到声明/实现

在某一方法处按此快捷键,会跳转到该方法的声明处,例如,对应的接口。相反,按下 Ctrl + Alt + B(⌘ ⌥ B)不会跳转到接口,而是跳转到接口的实现,很多时候这能节省不少时间。

按两下 Shift(⇧⇧) —— 搜索任意内容

快速点按两下 shift,快速搜索项目中的任意内容,包括文件、行动、类在内的任意内容。

Ctrl + N (⌘ O) —— 查找类

如果已知需要查找的是类,那么就不必使用上面的搜索任意内容的快捷键。按下此快捷键后,开始输入类名。不必输入完整的类名,只需输入前面的部分,或者仅输入类名中的大写字母,还可以输入星号(*)表示通配符。

Ctrl + Shift + N (⌘ ⇧ O) —— 查找文件

需要查找文本文件或配置文件时,这个快捷键很方便。

Ctrl + Shift + T (⇧ ⌘ T) —— 跳转至测试

如果你对测试轻度上瘾,那么这个快捷键可以让你在测试和实现间快速跳转。当在测试处按此快捷键,会跳转至相应实现。反之,在实现处按此快捷键,则会跳转至相应测试。如果测试不存在,会根据你选择的测试框架,自动创建相应的测试类。

Ctrl + Alt + F7 (⌘ ⌥ F7) —— 显示用例

在弹出对话框中显示当前方法、类、变量的所有用例,让你可以迅速跳转。

Ctrl + F12 (⌘ F12) —— 结构视图

显示属性、方法列表,方便快捷地大致了解当前类的用途。

Ctrl + G (⌘ L) —— 跳转至行

有同事问你第 45 行的代码是做什么的时,这个方便的快捷键让你可以迅速跳转至相应代码。

F2 (F2) —— 跳转至报错/警告

IntelliJ 有报错或警告时(编辑区域右上角会显示一个小的状态图标),按下 F2 会跳转至下一处错误/警告。这个快捷键有助于你保持状态图标常绿。感谢 Anton Arhipov 提议加入这一快捷键。

编辑快捷键

除了导航,我们也希望能在编写代码时提速。以下快捷键有助于我们达成这一点。

Ctrl + W (⌥ Up) —— 扩展选择区域

这是我个人最常用的快捷键。不需要用鼠标选择文本了,只需跳转至代码中的某个元素,然后按下此快捷键。它会智能地扩展选择区域,从单词到语句,从语句到代码块,从代码块到方法,以此类推。在你想要提取方法时尤为便捷。Ctrl + Shift + W (⌥ Down)则会缩小选择区域。

Ctrl + Space (^ Space) —— 基本代码补全

必须掌握的快捷键,按下此快捷键后,会补全代码。在弹出补全菜单中选中补全项后,按 Enter 或 Tab 确认。通常情况下,按 Enter 或 Tab 效果一样,但当光标右侧有字符时,按 Enter 仅仅插入补全项,而按 Tab 会用补全项替换右侧字符。所以,善用 Tab 可以免去手工删除不再需要的字符的麻烦。

Alt + Enter (⌥ Enter) —— 显示意图

修正引入,运行测试,优化引入,等等。如果你的代码有问题,让这个快捷键来修复。如果你的代码没问题,这个快捷键能让你的代码变得更好。

Ctrl + Shift + Enter (⌘ ⇧ Enter) —— 补全语句

就我的经验而言,这是一个被严重低估的快捷键。少个括号?少了行尾的分号?不管光标是不是在行尾,按下此快捷键便可补全必要的字符。

Ctrl + D (⌘ D) —— 复制当前行

根据我的经验,还是有许多人使用鼠标选中当前行,复制,然后粘贴。相比之下,Ctrl + D (⌘ D)可以节约很多时间:按下之后就可以新增一行,内容和当前行一样。如果当前选中了多行,这个快捷键会重复整个代码块。

Ctrl + Y (⌘ ⌫) —— 删除当前行

类似 Ctrl + D (⌘ D),这个快捷键可以删除代码行。

Ctrl + / (⌘ /) —— 注释当前行

不管光标在当前行的什么位置,只需按下这个快捷键就可以注释掉当前行。我个人从不用这个快捷键注释代码,不过有时候我会用这个快捷键切换某段代码是否运行。不过,记得永远不要提交注释掉的代码。

重构快捷键

IntelliJ 的最大强项之一就是充裕到过剩的重构机会。尽管重构代码的机会很多,实践中 90% 的情况下,用到的重构快捷键是我下面列出的。

Ctrl + Alt + M (⌘ ⌥ M) —— 提取方法

选中一段代码(比如使用之前提到的 Ctrl + W / ⌥ Up 快捷键),接着按下 Ctrl + Alt + M (⌘ ⌥ M),便可将选中的代码提取为新方法或匿名函数表达式。

Shift + F6 (⇧ F6) —— 重命名

不管是方法、变量,还是类,按下 Shift + F6 (⇧ F6)便可将当前选中元素在所有代码中的用例一次性替换。不过要小心点,IntelliJ 的默认配置有点激进,同时也会替换文本中的用例,这常常不合你意。按下两次 Shift + F6 (⇧ F6)将提供重命名选项,让你可以定制设定。我建议只替换代码,关闭文本替换选项。

Ctrl + Alt + V (⌘ ⌥ V) —— 提取变量

同样,使用 Ctrl + W / ⌥ Up 选中一段代码,接着按下 Ctrl + Alt + V (⌘ ⌥ V),便可创建一个新变量,变量的类型常常是正确的,命名常常是合理的。将表达式传入方法或类时,赋值给一个变量常常可以增强可读性,此时这个快捷键很方便。

结语

IntelliJ 有超过 100 个快捷键,不过没有必要完全掌握。在 IntelliJ 使用效率提升之旅上,这些我和同事最常用的快捷键,应该能给你不小的优势。

一个额外的建议,安装 Key Promoter X 插件。当你使用鼠标和菜单项时,这个插件会提示相应的快捷键。学习高效使用 IntelliJ 快捷键时,这是一个很有帮助的工具。我漏掉了你最爱的快捷键?请留言告诉我。