我之前一直使用的是IDEA,现在因为各种原因要使用eclipse了。但是,eclipse的代码补全真的很难受,没有IDEA的代码补全人性化。不过还好,通过一些设置和修改,还是能让eclipse的代码补全稍微人性化一点的。
本文主要改进的是eclipse的以下方面:
- eclipse的代码补全是输入
.
之后才会触发,设置之后可以做到正常输入就能触发。 - 在代码补全之后输入
=
和空格都会起到和回车一样的效果:使选中的补全候选项上屏。修改插件后,可以做到在代码补全时可以正常输入=
和空格,并且取消代码补全。
代码补全的设置
- 打开eclipse的菜单栏中的Window->Preferences。
- 找到Java->Editor->Content assist。
- 找到Auto activation triggers for Java一栏,这一栏控制的是触发自动补全的字符,默认只有
.
。如果我们想正常输入都能触发自动补全的话,就要把平时使用的字符添加进去,一般我们都是添加大写和小写的26个英文字母。修改后这一栏中的内容为.abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ
- 找到Auto activation delay(ms)一栏(就是上面的那一栏),这是控制从输入字符到触发自动补全的时间,机器性能差的话,可以把它调高点。电脑没问题的话,调成0也可以。
附上我的配置:
代码补全中等于号(=)与回车功能的修改
eclipse是一个开源的软件,它的源码在eclipse里就可以得到,所以这次修改的思路为:获取eclipse代码补全部分的源码->修改成自己需要的样子->导出jar包->替换掉eclipse原来的jar包。
-
打开菜单栏的Window->Show View->Other,或者
Shift+Alt+Q
->Q
。之后进入如下窗口,在里面找到Plug-ins这一项,Open。
之后可以在eclipse主窗口看到名为plug-ins的标签窗口。在这个标签窗口中找到
org.eclipse.jface.text
这一项,右键Import As->Source Project。
- 接下来在eclipse的工程管理标签里就可以看到刚导入的工程了。如果导入的工程下没有src目录,那你需要跟随3.1的步骤加载一下源码。如果有src目录的话,直接进入4。
3.1 查看eclipse版本号。打开工具栏的Help->About Eclipse。在下图位置找到Eclipse的版本号。
然后打开工具栏的Help->Install New Software,在Work with中填入The Eclipse Project Updates - http://download.eclipse.org/eclipse/updates/x.x
,最后的x.x
是版本号的前两位,比如我就是4.7。然后勾选Eclipse Platform SDK这一项,一路Next。
这一步完成后,重新加载源码,就可以看到src目录了。
-
打开src中的
org.eclipse.jface.text.contentassist.CompletionProposalPopup.java
。
找到public boolean verifyKey(VerifyEvent e)
方法,找到如下片段:if (contains(triggers, key)) { e.doit= false; hide(); insertProposal(p, key, e.stateMask, fContentAssistSubjectControlAdapter.getSelectedRange().x); }
修改if
中的条件为if (key != '=' && key != ' ' && contains(triggers, key))
并保存。
-
导出jar包。
打开File->Export找到Plug-in Development->Deployable plug-in and fragments,Next。勾选项目,选择路径,Finish。
然后在指定路径下就可以看到一个名为plugins的文件夹,里面就有导出的jar包。 替换jar包。
将导出的jar包复制到C:\Users\你的用户名\.p2\pool\plugins
替换原来的jar包。记得覆盖前做好备份。
打开Eclipse,试验一下,大功告成。