eclipse是一个很强大的IDE,他的自动补全功能与VS有的一拼,但是在某些情况下,它的自动补全也太自作多情了,比如以下情况:
要新建一个String类型的变量value,则当输入到value的时候,eclipse会在候选列表中列出valueString,如果此时再输入空格的话,就会选中候选列表中的valueString,则新建的变量将会变成valueString,这将会是一件很蛋疼的事情。
对于长期编程的人来说绝对无法忍受这样的折磨。于是乎, 解决办法 出来了:
首先,打开Eclipse,打开window->show view,选择Plug-ins,再找到org.eclipse.jface.text,右键单击,选择import as-> Source Project,导入完成后,在你的workspace就可以看到这个project了。
然后,在导入工程下的“org.eclipse.jface.text.contentassist包下CompletionProposalPopup这个类 (CTRL+F搜索下面if中的关键字)
要新建一个String类型的变量value,则当输入到value的时候,eclipse会在候选列表中列出valueString,如果此时再输入空格的话,就会选中候选列表中的valueString,则新建的变量将会变成valueString,这将会是一件很蛋疼的事情。
对于长期编程的人来说绝对无法忍受这样的折磨。于是乎, 解决办法 出来了:
首先,打开Eclipse,打开window->show view,选择Plug-ins,再找到org.eclipse.jface.text,右键单击,选择import as-> Source Project,导入完成后,在你的workspace就可以看到这个project了。
然后,在导入工程下的“org.eclipse.jface.text.contentassist包下CompletionProposalPopup这个类 (CTRL+F搜索下面if中的关键字)
if (contains(triggers, key)) {
...
}
if (key!=0x20 && key!='=' && key!=';' && contains(triggers, key)) {
...
}
case '\t':
e.doit= false;
fProposalShell.setFocus();
return false;
case '\t':
e.doit= false;
insertSelectedProposalWithMask(e.stateMask);
break;