1. 程式人生 > >自動補全空格選中選項的解決辦法

自動補全空格選中選項的解決辦法

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#verifyKey()”函式中有一段程式碼
:  (CTRL+F搜尋)

if(contains(triggers, key)){

...

}

將這段程式碼改為

if(key!=0x20&& key!='='&& key!=';'&& contains(triggers, key)){

...

}

還有把這段程式碼之上的程式碼

case'\t': e.doit=false; fProposalShell.setFocus(); returnfalse;

修改為

case'\t':     e.doit=false;     insertSelectedProposalWithMask(e.stateMask

); break;

經過上述操作,這個輔助輸入外掛已經排除了空格與“=”的選中功能,增加了TAB鍵的選中功能。最後就是匯出修改後的外掛,右鍵點選你的workspace裡的工程,選擇Export->Deployable plugins and fragments,點選Next,選擇Destination選項卡,選擇Directory,選擇一個要儲存外掛的目錄,然後Finish。然後就會在你所選的目錄下產生一個新的plugins目錄,裡面有一個jar檔案,用它替換掉eclipse/plugins裡面的org.eclipse.jface.text_3.6.1.r361_v20100825-0800.jar(這個檔案不同版本的Eclipse,後面的版本號會不一樣,我用的Eclipse 3.6),這樣就大功告成了!