菜单
菜单
文章目录
  1. Mac键盘符号和修饰键说明
  2. Editing(编辑)
  3. Search/Replace(查询/替换)
  4. Usage Search(使用查询)
  5. Compile and Run(编译和运行)
  6. Debugging(调试)
  7. Navigation(导航)
  8. Refactoring(重构)
  9. VCS/Local History(版本控制/本地历史记录)
  10. Live Templates(动态代码模板)
  11. General(通用)
  12. Other(一些官方文档上没有体现的快捷键)
  13. 导航
  14. 编辑
  15. 查找
  16. 导航
  17. 通用
  18. 自动代码
  19. 探索ing

IntelliJ IDEA for Mac 快捷键总结

:Android Studio适用以下内容

Mac键盘符号和修饰键说明

  •  Command
  •  Shift
  •  Option
  •  Control
  • ↩︎ Return/Enter
  •  Delete
  •  向前删除键(Fn+Delete)
  •  上箭头
  •  下箭头
  •  左箭头
  •  右箭头
  •  Page Up(Fn+↑)
  •  Page Down(Fn+↓)
  • Home Fn + ←
  • End Fn + →
  •  右制表符(Tab键)
  •  左制表符(Shift+Tab)
  •  Escape (Esc)

Editing(编辑)

  • ⌃Space 基本的代码补全(补全任何类、方法、变量)
  • ⌃⇧Space 智能代码补全(过滤器方法列表和变量的预期类型)
  • ⌘⇧↩ 自动结束代码,行末自动添加分号
  • ⌘P 显示方法的参数信息
  • ⌃J, Mid. button click 快速查看文档
  • ⇧F1 查看外部文档(在某些代码上会触发打开浏览器显示相关文档)
  • ⌘+鼠标放在代码上 显示代码简要信息
  • ⌘F1 在错误或警告处显示具体描述信息
  • ⌘N, ⌃↩, ⌃N 生成代码(getter、setter、构造函数、hashCode/equals,toString)
  • ⌃O 覆盖方法(重写父类方法)
  • ⌃I 实现方法(实现接口中的方法)
  • ⌘⌥T 包围代码(使用if…else, try…catch, for, synchronized等包围选中的代码)
  • ⌘/ 注释/取消注释与行注释
  • ⌘⌥/ 注释/取消注释与块注释
  • ⌥↑ 连续选中代码块
  • ⌥↓ 减少当前选中的代码块
  • ⌃⇧Q 显示上下文信息
  • ⌥↩ 显示意向动作和快速修复代码
  • ⌘⌥L 格式化代码
  • ⌃⌥O 优化import
  • ⌃⌥I 自动缩进线
  • ⇥ / ⇧⇥ 缩进代码 / 反缩进代码
  • ⌘X 剪切当前行或选定的块到剪贴板
  • ⌘C 复制当前行或选定的块到剪贴板
  • ⌘V 从剪贴板粘贴
  • ⌘⇧V 从最近的缓冲区粘贴
  • ⌘D 复制当前行或选定的块
  • ⌘⌫ 删除当前行或选定的块的行
  • ⌃⇧J 智能的将代码拼接成一行
  • ⌘↩ 智能的拆分拼接的行
  • ⇧↩ 开始新的一行
  • ⌘⇧U 大小写切换
  • ⌘⇧] / ⌘⇧[ 选择直到代码块结束/开始
  • ⌥⌦ 删除到单词的末尾(⌦键为Fn+Delete)
  • ⌥⌫ 删除到单词的开头
  • ⌘+ / ⌘- 展开 / 折叠代码块
  • ⌘⇧+ 展开所以代码块
  • ⌘⇧- 折叠所有代码块
  • ⌘W 关闭活动的编辑器选项卡

Search/Replace(查询/替换)

  • Double ⇧ 查询任何东西
  • ⌘F 文件内查找
  • ⌘G 查找模式下,向下查找
  • ⌘⇧G 查找模式下,向上查找
  • ⌘R 文件内替换
  • ⌘⇧F 全局查找(根据路径)
  • ⌘⇧R 全局替换(根据路径)
  • ⌘⇧S 查询结构(Ultimate Edition 版专用,需要在Keymap中设置)
  • ⌘⇧M 替换结构(Ultimate Edition 版专用,需要在Keymap中设置)

Usage Search(使用查询)

  • ⌥F7 / ⌘F7 在文件中查找用法 / 在类中查找用法
  • ⌘⇧F7 在文件中突出显示的用法
  • ⌘⌥F7 显示用法

Compile and Run(编译和运行)

  • ⌘F9 编译Project
  • ⌘⇧F9 编译选择的文件、包或模块
  • ⌃⌥R 弹出 Run 的可选择菜单
  • ⌃⌥D 弹出 Debug 的可选择菜单
  • ⌃R 运行
  • ⌃D 调试
  • ⌃⇧R, ⌃⇧D 从编辑器运行上下文环境配置

Debugging(调试)

  • F8 进入下一步,如果当前行断点是一个方法,则不进入当前方法体内
  • F7 进入下一步,如果当前行断点是一个方法,则进入当前方法体内,如果该方法体还有方法,则不会进入该内嵌的方法中
  • ⇧F7 智能步入,断点所在行上有多个方法调用,会弹出进入哪个方法
  • ⇧F8 跳出
  • ⌥F9 运行到光标处,如果光标前有其他断点会进入到该断点
  • ⌥F8 计算表达式(可以更改变量值使其生效)
  • ⌘⌥R 恢复程序运行,如果该断点下面代码还有断点则停在下一个断点上
  • ⌘F8 切换断点(若光标当前行有断点则取消断点,没有则加上断点)
  • ⌘⇧F8 查看断点信息

Navigation(导航)

  • ⌘O 查找类文件
  • ⌘⇧O 查找所有类型文件、打开文件、打开目录,打开目录需要在输入的内容前面或后面加一个反斜杠/
  • ⌘⌥O 前往指定的变量 / 方法
  • ⌃← / ⌃→ 左右切换打开的编辑tab页
  • F12 返回到前一个工具窗口
  •  从工具窗口进入代码文件窗口
  • ⇧⎋ 隐藏当前或最后一个活动的窗口,且光标进入代码文件窗口
  • ⌘⇧F4 关闭活动run/messages/find/… tab
  • ⌘L 在当前文件跳转到某一行的指定处
  • ⌘E 显示最近打开的文件记录列表
  • ⌘⌥← / ⌘⌥→ 退回 / 前进到上一个操作的地方
  • ⌘⇧⌫ 跳转到最后一个编辑的地方
  • ⌥F1 显示当前文件选择目标弹出层,弹出层中有很多目标可以进行选择(如在代码编辑窗口可以选择显示该文件的Finder)
  • ⌘B / ⌘ 鼠标点击 进入光标所在的方法/变量的接口或是定义处
  • ⌘⌥B 跳转到实现处,在某个调用的方法名上使用会跳到具体的实现处,可以跳过接口
  • ⌥ Space, ⌘Y 快速打开光标所在方法、类的定义
  • ⌃⇧B 跳转到类型声明处
  • ⌘U 前往当前光标所在方法的父类的方法 / 接口定义
  • ⌃↓ / ⌃↑ 当前光标跳转到当前文件的前一个/后一个方法名位置
  • ⌘] / ⌘[ 移动光标到当前所在代码的花括号开始/结束位置
  • ⌘F12 弹出当前文件结构层,可以在弹出的层上直接输入进行筛选(可用于搜索类中的方法)
  • ⌃H 显示当前类的层次结构
  • ⌘⇧H 显示方法层次结构
  • ⌃⌥H 显示调用层次结构
  • F2 / ⇧F2 跳转到下一个/上一个突出错误或警告的位置
  • F4 / ⌘↓ 编辑/查看代码源
  • ⌥ Home 显示到当前文件的导航条
  • F3选中文件/文件夹/代码行,添加/取消书签
  • ⌥F3 选中文件/文件夹/代码行,使用助记符添加/取消书签
  • ⌃0...⌃9 定位到对应数值的书签位置
  • ⌘F3 显示所有书签

Refactoring(重构)

  • F5 复制文件到指定目录
  • F6 移动文件到指定目录
  • ⌘⌫ 在文件上为安全删除文件,弹出确认框
  • ⇧F6 重命名文件
  • ⌘F6 更改签名
  • ⌘⌥N 一致性
  • ⌘⌥M 将选中的代码提取为方法
  • ⌘⌥V 提取变量
  • ⌘⌥F 提取字段
  • ⌘⌥C 提取常量
  • ⌘⌥P 提取参数

VCS/Local History(版本控制/本地历史记录)

  • ⌘K 提交代码到版本控制器
  • ⌘T 从版本控制器更新代码
  • ⌥⇧C 查看最近的变更记录
  • ⌃C 快速弹出版本控制器操作面板

Live Templates(动态代码模板)

  • ⌘⌥J 弹出模板选择窗口,将选定的代码使用动态模板包住
  • ⌘J 插入自定义动态代码模板

General(通用)

  • ⌘1...⌘9 打开相应编号的工具窗口
  • ⌘S 保存所有
  • ⌘⌥Y 同步、刷新
  • ⌃⌘F 切换全屏模式
  • ⌘⇧F12 切换最大化编辑器
  • ⌥⇧F 添加到收藏夹
  • ⌥⇧I 检查当前文件与当前的配置文件
  • `§⌃, ⌃`` 快速切换当前的scheme(切换主题、代码样式等)
  • ⌘, 打开IDEA系统设置
  • ⌘; 打开项目结构对话框
  • ⇧⌘A 查找动作(可设置相关选项)
  • ⌃⇥ 编辑窗口标签和工具窗口之间切换(如果在切换的过程加按上delete,则是关闭对应选中的窗口)

Other(一些官方文档上没有体现的快捷键)

  • ⌘⇧8 竖编辑模式

导航

  • ⌘O 查找类文件 Ctrl + N

  • ⌘⌥O 前往指定的变量 / 方法 Ctrl + Shift + Alt + N

  • ⌃← / ⌃→ 左右切换打开的编辑tab页Alt←/Alt→

  • 从工具窗口进入代码文件窗口 ESC

  • ⌘L 在当前文件跳转到某一行的指定处 Ctrl + G

  • ⌘E 显示最近打开的文件记录列表 Ctrl + E

  • ⌘⌥←/ ⌘⌥→退回 / 前进到上一个操作的地方 Ctrl + Alt + ←/Ctrl + Alt + →

  • ⌘⇧⌫ 跳转到最后一个编辑的地方

  • ⌃H 显示当前类的层次结构Ctrl + H

  • ⌘⇧H 显示方法层次结构

  • ⌃⌥H 显示调用层次结构

  • F4 /⌘↓ 编辑/查看代码源

  • ⌘⌥U 显示类UML图

  • ⌃J 查看注释

编辑

  • ⌥⌦ 删除到单词的末尾(键为Fn+Delete
  • ⌥⌫ 删除到单词的开头
  • ⌘+ /⌘- 展开 / 折叠代码块
  • ⌘F1 在错误或警告处显示具体描述信息
  • ⌘⌥L 格式化代码
  • ⌃⌥O 优化import
  • ⇧↩ 开始新的一行
  • ⌘⇧↩ 自动结束代码,行末自动添加分号
  • ⌃I 实现方法(实现接口中的方法)
  • ⇧F6 重命名文件或者变量
  • ⌘N,⌃↩,⌃N 生成代码(getter、setter、构造函数、hashCode/equals,toString)
  • ⌘P 显示方法的参数信息

查找

  • Double⇧ 查找任何东西
  • ⌘⇧F 全局查找(根据路径)
  • ⌘F 文件内查找
  • ⌘G 查找模式下,向下查找
  • ⌘⇧G 查找模式下,向上查找

导航

  • ⌘⌥B 跳转到接口的实现
  • ⌘U 查看接口定义
  • ⌘⌥← /⌘⌥→ 退回 / 前进到上一个操作的地方
  • ⌘B /⌘ 鼠标点击 进入光标所在的方法/变量的接口或是定义处
  • ⌃⇧B 跳转到类型声明处
  • ⌥ Space,⌘Y 快速打开光标所在方法、类的定义
  • ⌘O 查找类文件
  • ⌘⇧O 查找所有类型文件、打开文件、打开目录,打开目录需要在输入的内容前面或后面加一个反斜杠/
  • F12 返回到前一个工具窗口
  • 从工具窗口进入代码文件窗口
  • ⇧⎋ 隐藏当前或最后一个活动的窗口,且光标进入代码文件窗口
  • F3选中文件/文件夹/代码行,添加/取消书签
  • ⌥F3 选中文件/文件夹/代码行,使用助记符添加/取消书签
  • ⌃0…⌃9 定位到对应数值的书签位置
  • ⌘F3 显示所有书签
  • ⌥F1 显示当前文件选择目标弹出层,弹出层中有很多目标可以进行选择(如在代码编辑窗口可以选择显示该文件的Finder)
  • ⌘F12 弹出当前文件结构层,可以在弹出的层上直接输入进行筛选(可用于搜索类中的方法)

通用

  • ⌃⌘F 切换全屏模式

自动代码

+J可以调出所有提供的代码补全即可,下面仅列举常用的几个

  • foreach+tab

    for (:
    ) {

    }

  • fori+tab

    for (int i = 0; i <_; i++) 
    {

    }
  • ifn+tab

    if (args == null) {

    }
  • inn+tab

    if (args != null) {

    }
  • itar+tab

    for (int i = 0; i < args.length; i++) {
    String arg = args[i];

    }
  • iten+tab

    while (enumeration.hasMoreElements()) {
    Object nextElement = enumeration.nextElement();

    }
  • psvm+tab

    public static void main(String[] args) 
    {

    }

  • serr+tab

    System.err.println("");
  • souf+tab

    System.out.printf("");
  • sout+tab

    System.out.println();
  • soutp+tab

    System.out.println("args = [" + args + "]");
  • soutv+tab

    System.out.println("args = " + args);

探索ing

  • 要输入for(User user : users)只需输入user.for+Tab
  • 要输入Date birthday = user.getBirthday();只需输入user.getBirthday().var+Tab
  • 快捷键不会用, 装个插件吧Key promoter
  • 其实还有许多,Practice makes perfect
  • 图文教程百度云链接密码: idit
  • 关于Eclipse,自己移步菜鸟教程吧传送门