#這種方法只適用於Eclipse Classic版本(這個版本帶有插件的源碼)
在使用Eclispe的過程,感覺自動補全做的不好,沒有VS的強大。下面說兩個增強自動補全的方法:
1.增加Eclipse的提示功能
在Eclipse中,從Window -> preferences -> Java -> Editor -> Content assist -> Auto-Activation下,我們可以在"."號后面加入我們需要自動提示的首字幕,比如"abc",可以把26個字母的大小寫全部加上(.abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_)。
2. 修改自動補全的快捷鍵
(在 Eclipse Luna 即 4.4 中,已經不需要修改了。空格不會自動選中補全列表的第一項了)
首先,打開Eclipse,打開window->show view,選擇Plug-ins,再找到org.eclipse.jface.text,右鍵單擊,選擇import as-> Source Project,導入完成后,在你的workspace就可以看到這個project了。
在導入工程下的“org.eclipse.jface.text.contentassist.CompletionProposalPopup#verifyKey()”函數中有一段代碼:
// key != 0 switch (key) { case 0x1B: // Esc e.doit= false; hide(); break; case '\n': // Ctrl-Enter on w2k case '\r': // Enter e.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); } } }
把這段代碼修改為:
// key != 0 switch (key) { case 0x1B: // Esc e.doit= false; hide(); break; case '\n': // Ctrl-Enter on w2k case '\r': // Enter e.doit= false; insertSelectedProposalWithMask(e.stateMask); break; case '\t': e.doit= false; insertSelectedProposalWithMask(e.stateMask); break; default: ICompletionProposal p= getSelectedProposal(); if (p instanceof ICompletionProposalExtension) { ICompletionProposalExtension t= (ICompletionProposalExtension) p; char[] triggers= t.getTriggerCharacters(); if (key!='='&&key!=0x20&&key!='.'&&key!=';'&&contains(triggers, key)) { e.doit= false; hide(); insertProposal(p, key, e.stateMask, fContentAssistSubjectControlAdapter.getSelectedRange().x); } } }
這樣會取消“=”,空格,“.”和“;”的自動補全,加入TAB的自動補全。
最后就是導出修改后的插件,右鍵點擊你的workspace里的工程,選擇Export->Deployable plugins and fragments,點擊Next,選擇Destination選項卡,選擇Directory,選擇一個要保存插件的目錄,然后Finish,這樣會得到一個zip包,打開,plugins里會有一個jar包,替換Eclipse的目錄下的plugins里的同名文件(最好先把原plugins目錄下的org.eclipse.jface.text_3.7.2.v20111213-1208.jar(因為Eclipse版本的不同這個文件的名字可能不同)備份)。
修改后使用Eclipse會很順手!
2012-10-01 20:49:38
默認的TAB鍵的作用:在自動補全中,打開提示列表的當前行的解釋。