Eclipse空格等號等都可以上屏,這樣有時候輸入變量名再按空格就會自動補全,非常討厭。那么怎么辦呢?
1.首先你的Eclipse需要裝有?Eclipse plug-in development environment 和? Eclipse JDT Plug-in Developer Resources 或者直接去下載一個和你Eclipse版本相同的 Eclipse SDK,下載地址:http://archive.eclipse.org/eclipse/downloads/
2.打開Eclipse(或者你新下載的Eclipse SDK),點擊 window -show view-other,選擇 Plug-ins,找到org.eclipse.jface.text,右鍵單擊,選擇 import as-> Source Project,導入完成后,在你的 workspace 就可以看到這個 project 了。
3.在導入工程下的 “org.eclipse.jface.text.contentassist.CompletionProposalPopup” 其中的?verifyKey() 函數有一段代碼:
// key != 0switch (key) {case 0x1B: // Esce.doit= false;hide();break;case '\n': // Ctrl-Enter on w2kcase '\r': // Entere.doit= false;insertSelectedProposalWithMask(e.stateMask);break;case '\t':e.doit= false;fProposalShell.setFocus();return false;default:ICompletionProposal p= getSelectedProposal();if (p instanceof ICompletionProposalExtension) {ICompletionProposalExtension t= (ICompletionProposalExtension) p;char[] triggers= t.getTriggerCharacters();if (contains(triggers, key)) {e.doit= false;hide();insertProposal(p, key, e.stateMask, fContentAssistSubjectControlAdapter.getSelectedRange().x);}}}return true;
將其改成:
// key != 0switch (key) {case 0x1B: // Esce.doit= false;case ' ': // 空格、分號、等于號直接上屏不彈出代碼提示case ';':case '=':hide();break;case '\n': // Ctrl-Enter on w2kcase '\r': // Entercase '\t': // TAB鍵上屏e.doit= false;insertSelectedProposalWithMask(e.stateMask);break;default:ICompletionProposal p= getSelectedProposal();if (p instanceof ICompletionProposalExtension) {ICompletionProposalExtension t= (ICompletionProposalExtension) p;char[] triggers= t.getTriggerCharacters();if (contains(triggers, key)) {e.doit= false;hide();insertProposal(p, key, e.stateMask, fContentAssistSubjectControlAdapter.getSelectedRange().x);}}}return true; }
?
4.
導出修改后的插件,右鍵點擊org.eclipse.jface.text,選擇 Export-> Deployable plugins and fragments,點擊 Next,在?Destination 中的 Directory,選擇一個要保存插件的目錄,然后 Finish。就會在你所選的目錄下產生一個新的 plugins 目錄,里面有一個jar文件,用它替換掉你使用的 Eclipse 目錄下的 plugins 里面對應的org.eclipse.jface.text_*.jar,各個版本的版本號不太一樣,替換之后重啟 Eclipse,最好 “-clean” 一下。