[問題] 取消空白鍵自動完成程式碼的功能

看板Eclipse作者 (達)時間10年前 (2014/07/29 08:09), 編輯推噓1(101)
留言2則, 2人參與, 最新討論串1/1
Eclipse寫Java的程式碼自動完成很方便 但有時自己按空白鍵只是要空個格 自動完成功能也會把列出的第一個待選項目填入 請問如何取消空白鍵自動完成啊? 網路上看到的方法有點複雜(在下面) 新版本的Eclipse還是得這樣做嘛? thank 修改空格和等號自動上屏的問題 http://www.cnblogs.com/decarl/archive/2012/05/15/2502084.html 以前只知道alt+/調出assist,後來發現可以所有字母都激活content assist(8.1裡有寫) 。用起來果然很爽,但是eclipse還是有些默認的設置不是很好,比如空格鍵和=號會把第 一行的內容自動上屏,其實很多時候我就是想輸一個空格或=號而已。這個在設置裡面沒 辦法設置,幸好eclipse是有插件機制的,可以通過修改插件的源碼,然後導出成插件,再 替換掉原來的插件來處理。 1.先找到相關的插件 打開Plug-ins View找到插件org.eclipse.jface.text,右鍵點擊,選擇import as Source Project,導入完成後,在你的workspace就可以看到這個project了 2.修改代碼 在src/org/eclipse/jface/text/contentassist/CompletionProposalPopup.java文件中 ,找到這樣一行代碼 char[] triggers = t.getTriggerCharacter(); if(contains(triggers,key)) 在那行if判斷裡面,eclipse會判斷key(就是你按下的鍵)是否在triggers中,如果是那就 觸發下面的第一行提示上屏的代碼,所以我們要做的就是把空格和=號排除就可以了: if(key!='='&&key!=0x20&&contains(triggers,key)) 3.把修改好的org.eclipse.jface.text導出 右鍵點擊你的workspace裡的org.eclipse.jface.text,選擇export-->Deployable plugins and fragments, next,destination 選擇archive file,然後finish.你就可以在 zip文件裡看到生成好的jar ,用它替換掉eclipse/plugins裡面的同名jar包,就可以了 if(key!=0x20 && key!='=' && key!=';' && contains(triggers,key)) 最後就是導出修改後的插件,右鍵點擊你的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),這樣就大功告成了! -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 118.163.106.192 ※ 文章網址: http://www.ptt.cc/bbs/Eclipse/M.1406592599.A.0BC.html

08/07 21:08, , 1F
看不太懂這個問題耶,可以舉個例子說明嗎?
08/07 21:08, 1F

08/17 00:00, , 2F
謝謝, 其實也不會很複雜 目前應該也只有這個方法
08/17 00:00, 2F
文章代碼(AID): #1JrkPN2y (Eclipse)
文章代碼(AID): #1JrkPN2y (Eclipse)