【转】常用IDEA快捷键

阿烈的博客
2013-06-29
72 阅读
 

最近已经从eclipse转到IntelliJ IDEA,IDEA用起来太顺手了,许多功能正合我意。


看到时光印记写的一篇《常用IDEA快捷键》真的不错,特转一下!

说明一下:类似eclipse outline (Ctrl+o)快捷键在idea里是 Ctrl+F12


------以下便是全文------------

原文地址:
http://www.colorfuldays.org/program/idea_keymap/

先说明一下这篇文章的由来。前天 @旅途无疆 强烈要求我整理一下IDEA的快捷键,于是我答应了。但是昨天实在太忙,没时间整。于是哥被他羞辱了一番,为了不继续丢人下去,哥今天花了将近2小时,整理了下面这些东西,希望对各位看官有用。下面列举的是我在日常开发工作中经常用到的快捷键。

声明一下,以下快捷键都是在Mac下的,Windows下的话,会有些不同,请参照Windows版IDEA的keymap文档。

一些技巧:


在任何时候,按下alt键,界面上的菜单字符中有些会有下划线,这时用alt+下划线即是执行这个菜单功能的快捷键。


可自定义一些快捷键,避免使用鼠标。IDEA支持宏,不过我用得不多,只用过那么一两次,使用起来也很简单。

一、视图切换快捷键

1、各视图区域的切换 cmd + 视图区域对应的数字


2、切换到maven的视图 alt + m


3、装了switchTab插件后,按下ctrl+tab后会得到可切换的区域列表


4、cmd+e 列出最近查看的文件列表


5、shift + cmd + e 最近修改文件列表


上面两个键在开发过程中非常有用。

二、搜索快捷键

IDEA的搜索非常强大,可秒杀eclipse.在project,maven等视图及出现列表的场景下,直接输入字符即开始搜索,可以说搜索无处不在。


1、在编辑文档中,cmd+f 开始搜索 cmd + r 搜索替换


2、在project中,按下ctrl + shift + f(r) 即是在当前目前下递归查找或替换
搜索出来后,要全部替换,按下alt + a


3、alt + F7 搜索对象被引用的地方


4、cmd + F7 搜索对象在当前文件被引用的地方


5、cmd + n 查找类


6、shift + cmd + n 查找文件


上面两个查找都支持简单的正则表达式,还支持直接按大写字母的缩略查找如JsonTranscoder,只需要输入JT

三、编辑代码的快捷键

cmd + j                 调出IDEA的神器live template,你懂的
ctrl + n 各种自动生成代码,创建文件,生成set get override…
alt + enter 调出IDEA对出错点的提示处理方法,熟练使用可使你写代码的速度提升5倍
cmd + D 复制粘贴当前行到下一行
cmd + c|v|x 这些你都懂的
shift + cmd + v 调出IDEA寄存器中保存的最近复制的N份内容,可选择性粘贴
cmd + / 注释/取消注释
cmd + w 选中当前光标所在的字
shift + cmd + enter 神器,补全当前行,最常用的场景时补全当前行后的;号,并将光标定位到下一行
cmd + O overide 方法
cmd + I implement 方法
其实上面两个快捷键很少用,因为有alt + enter 可完全替换掉这两个快捷键的功能
shift + cmd + L 格式化代码
shift + cmd + O static import
shift + cmd + up/down 将当前代码段上/下移
shift + alt + up/down 将当前行上/下移
重构的快捷键
F6 移动文件到其它地方
F5 拷贝文件到其它地方
IDEA的移动文件功能非常强大,会将所有的使用该文件的类和XML配置中的类路径全部更新为新的路径。
shift + F6 改名
cmd + F6 修改方法签名
shift + cmd + F6 修改参数的类型
shift + cmd + v 引入一个局部变量
shift + cmd + p 引入一个参数
shift + cmd + f 引入一个类变量
shift + cmd + m 引入一个方法
shift + cmd + c 引入一个常量
以上都重构最常用的方法了

四、查看代码快捷键

cmd + p                  查询某方法的参数信息
cmd + b 跳到调用方法的定义处
shift + cmd + b 跳到方法的实现处
cmd + u 跳到方法在父类或接口的定义处
ctrl + up/down 跳到上/下一方法
alt + cmd + left/right 跳到上/下一次光标查看处
cmd + g 跳到指定行
cmd + shift + h 显示方法的层级结构
alt + cmd + h 调用层级结构

五、运行程序与Debug

shift + alt + F9             debug模式运行程序
shift + alt + F10 运行程序
F7 单步进入
F8 单步跳过
F9 跳过本次debug
alt + F8 debug时执行选中的语句

六、其它常用快捷键

cmd + ,                  调出setting界面
cmd + ; 调出项目setting界面
cmd + f4 关闭当前界面
另外我自己还定制了几个svn相关的快捷键
cmd + alt + ctrl + a svn add
cmd + alt + ctrl + u svn update
cmd + alt + ctrl + m svn commit
cmd + alt + ctrl + h svn history
cmd + alt + ctrl + c svn compare
cmd + alt + ctrl + p 将当前编辑界面的内容垂直分屏,在比对文件时非常好用

(完)

 
作者:阿烈的博客

原文地址:【转】常用IDEA快捷键, 感谢原作者分享。

发表评论

发表评论

常用IDEA快捷键的更多相关文章

  1. oracle常用的快捷键

    最近在开发过程中,遇到一些麻烦,就是开发效率问题,有时候其他同事使用PLSQL 编程效率明显高于自己,观察了好久,才发现他使用PLSQL 已经很长时间了而且,他自己也在其中添加了好多快捷方式, 1.登 ...

  2. 关于codeblock中一些常用的快捷键(搬运)

    关于codeblock中一些常用的快捷键(搬运) codeblock作为一个常用的C/C++编译器,是我最常用的一款编译器,但也因为常用,所以有时为了更加快速的操作难免会用到一些快捷键,但是因为我本身 ...

  3. Xcode自定义Eclipse中常用的快捷键

    转载自http://joeyio.com/2013/07/22/xcode_key_binding_like_eclipse/ Xcode自定义Eclipse中常用的快捷键 22 July 2013 ...

  4. Fiddler (六) 最常用的快捷键

    使用QuickExec Fiddler2成了网页调试必备的工具,抓包看数据.Fiddler2自带命令行控制,并提供以下用法. Fiddler的快捷命令框让你快速的输入脚本命令. 键盘快捷键 按ALT+ ...

  5. MyEclipse中常用的快捷键大全,快来.....

    在这里分享点常用的快捷键,希望对你有帮助! Eclipse的编辑功能非常强大,掌握了Eclipse快捷键功能,能够大大提高开发效率.Eclipse中有如下一些和编辑相关的快捷键. 1. [ALT+/] ...

  6. MonoDevelop几个常用的快捷键

    MonoDevelop几个常用的快捷键 CTRL+K  删除光标所在行的该行后面的代码 CTRL + ALT +C  注释/不注释该行 CTRL+ DOWN  像鼠标滚轮一样向下拖 CTRL + UP ...

  7. Ubuntu终端常用的快捷键

    Ubuntu终端常用的快捷键 Ubuntu中的许多操作在终端(Terminal)中十分的快捷,记住一些快捷键的操作更得心应手.在Ubuntu中打开终端的快捷键是Ctrl+Alt+T.其他的一些常用的快 ...

  8. xcode 自定义Eclipse里边常用的快捷键

    之前在用Eclipse写Java的 时候,有几个常用的快捷键,比如删除当前行,在当前行下面插入空行,向上/下移动当前行等等,到了Xcode里怎么也找不到这些快捷键,一直觉得 Xcode自带的快捷键不够 ...

  9. [Tex学习]WinEdit 常用软件快捷键

    WinEdit 常用软件快捷键 编辑: Alt+C:在剪贴板原有复制文本后增加新的被选择的文本. Ctrl+Shift+Alt+Right/Left:对选中文本增加或者删除Comment标记. Ctr ...

随机推荐

  1. ApiAuthValue鉴权机制总结

    一.背景介绍 1.自动化的配置工具autoconfig介绍 项目开发过程中,有些配置会随着运行环境的变化而各不相同.如jdbc驱动的配置,在开发环境可能链接到开发本地的数据库,测试环境则有一套测试专用 ...

  2. UDS(ISO14229-2006) 汉译(No.4 术语和缩写)

    A_PCI                    Application layer Protocol Control Information应用层协议控制消息. A_PDU              ...

  3. kafkaspot在ack机制下如何保证内存不溢

    新浪微博:intsmaze刘洋洋哥.   storm框架中的kafkaspout类实现的是BaseRichSpout,它里面已经重写了fail和ack方法,所以我们的bolt必须实现ack机制,就可以 ...

  4. JAVAScript柯里化、部分应用参数终极理解

    一.柯里化 在定义柯里化.部分应用参数的概念前,首先必须对闭包有深入的了解和定义,闭包一句话说清楚:函数返回值为函数. 柯里化的定义:将多参函数分解为按步骤接受单个参数的函数,如下代码: var mo ...

  5. [JS]笔记15之客户端存储cookie

    -->本地存储发展情况 -->什么是cookie -->cookie优缺点 -->cookie的设置.读取.删除 -->cookie应用 本地存储发展情况 一.什么是co ...

  6. Semaphore(计数信号量)

    //对象池public class Pool<T> { private int size; private List<T> items = new ArrayList<T ...

  7. 12种不适宜使用的javascript语法

    1. == (o゜▽゜)o☆[BINGO!] Javascript有两组相等运算符,一组是==和!=,另一组是===和!==.前者只比较值的相等,后者除了值以外,还比较类型是否相同. 请尽量不要使用前 ...

  8. Android—初识AsyncTask

    AsyncTask是用来处理一些后台的比较耗时的任务,给用户带来良好的体验.AsyncTask扩展Thread,增强了与主线程的交互能力. 首先介绍AsyncTask中定义的以下几个方法: onPre ...

  9. 转载 Android 多线程处理之多线程用法大集合

    handler.post(r)其实这样并不会新起线程,只是执行的runnable里的run()方法,却没有执行start()方法,所以runnable走的还是UI线程. 1.如果像这样,是可以操作ui ...

  10. iOS中的交换空间(swap space)

    看来是没有交换空间,原因是闪存和SSD硬盘相比,速度很慢,也有电源管理的原因. the NAND flash is not designed to be used as swap. It is dam ...