如题,修改配置Eclipse,以便在编写代码时智能提示,提高效率;另外,取消空格、=号上屏,以使符合平常习惯。
1.设置自动提示代码的触发键
依次点击Window-->Preferences-->Java-->Editor-->Content Assist:
"Auto activation triggers for Java" 指定当按下什么键时,会弹出代码提示一般配置为".abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ([,",即为按下".abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ([,"中的任何一个键自动提示代码。
"Auto activation delay (ms):" 这个值指定当按下相应的触发键后,延迟多少毫秒弹出代码提示。建议设置为100以下,否则会有停顿感。
2. 取消空格上屏
使用Eclipse代码提示功能时,按下空格键后Eclipse会自动将代码提示中的第一项上屏。这一点有时会不符合平常习惯,只是想要输入一个空格而已。然而这一特性是无法通过配置改变的,但可以通过修改相应的源代码来改变这一点。
依次点击Window-->Show View-->Other...,在弹出的对话框中再选择Plug-in Development-->Plug-ins:(如果你的Eclipse版本没有外挂开发环境Plug-in Development Environment,需要额外安装插件,或者重新下载一个含有该环境的Eclipse版本,如版本Eclipse for RCP and RAP Developers)
在Plug-ins中找到org.eclipse.jface.text,右击,选择Import As-->Source Project:
注意:如果你的Eclipse并没有下载源码,这里右击选择Import As-->Project from a Repository:(从资源库下载源码)
这时eclipse就会把该项目导入到你的workspace中了。展开该项目,在src目录中选择org.eclipse.jface.text.contentassist.CompletionProposalPopup.java文件:
在该文件中找到如下的代码:
if (contains(triggers, key)) {
e.doit= false;
hide();
insertProposal(p, key, e.stateMask, fContentAssistSubjectControlAdapter.getSelectedRange().x);
}
将其第一行改为:
if (contains(triggers, key)) {
e.doit= false;
hide();
insertProposal(p, key, e.stateMask, fContentAssistSubjectControlAdapter.getSelectedRange().x);
}
将其第一行改为:
if (key != 0x20 && key != '=' && key != ';' && contains(triggers, key)) {
在该工程上单击右键,选择Export...:
在弹出的对话框中选择Plug-in Development-->Deployable plug-ins and fragments,点击Next:
指定一个保存即将导出的jar包的位置,点击Finish。
这时,在你刚才指定的路径下会生成一个plugins文件夹,里面就是导出的jar包,
最后把这个jar包拷贝到Eclipse目录下 plugins文件夹,使用这个jar包替换掉原来的org.eclipse.jface.text包,最好手动把原来的 org.eclipse.jface.text包删除,到此工作全部完成。
MyEclipse的修改方法与Eclipse完全一样,用修改好的jar包替换掉MyEclipse自带的jar包即可,MyEclipse中该jar包的位置是:MyEclipse安装目录\Common\plugins。
需要额外注意的是MyEclipse中使用的org.eclipse.jface.text包的版本。如MyEclipse 10.6的jface.text的版本是3.7.2,而Eclipse Juno使用的jface.text版本为3.8.1。用修改过的3.8.1版本的jar包替换掉MyEclipse自带的3.7.2的jar包,发现替换后的MyEclipse无法启动。只能从网上重新下载了3.7.2版本的Eclipse SDK,将里面的jface.text修改好之后替换到MyEclipse中。
附:
Eclipse
的
Plug-in Development Environment (PDE)
插件网址: