六月雨

这次要解决的问题是eclipse的驼峰提示。

比如想输入一个public String test = "test";

在输入test的过程中,eclipse会不停提示问你是不是想要tString、teString、tesString和testString。

尤其是如果没有提前做过我前面那篇五月蝇里的工作,你敲的等号前的那个空格的时候这个testString就直接上屏了,特别恶心。

谁这么起变量名的你告诉我。

 

于是这次要改的是org.eclipse.jdt.core这个插件。

在源码里找到org.eclipse.jdt.internal.codeassist包里的CompletionEngine,在11530行有这么一段:

final char[] t = token;
final char[] q = qualifiedPackageName;
INamingRequestor namingRequestor = new INamingRequestor() {
    void accept(char[] name, int prefixAndSuffixRelevance, int reusedCharacters){
        int l = forbiddenNames == null ? 0 : forbiddenNames.length;
        for (int i = 0; i < l; i++) {
            if (CharOperation.equals(forbiddenNames[i], name, false)) return;
        }

可以的话还是尽量用搜索来找吧。

 

然后在accept方法刚开始的地方把name给清空:

final char[] t = token;
final char[] q = qualifiedPackageName;
INamingRequestor namingRequestor = new INamingRequestor() {
    void accept(char[] name, int prefixAndSuffixRelevance, int reusedCharacters){
        
        // 像这样。
        name = new char[] {};
        
        int l = forbiddenNames == null ? 0 : forbiddenNames.length;
        for (int i = 0; i < l; i++) {
            if (CharOperation.equals(forbiddenNames[i], name, false)) return;
        }

 

之后像之前一样导出解压覆盖就搞定了。

 

萨拉吧驼峰提示哟。

posted @ 2015-03-11 10:46  Chihane  阅读(169)  评论(0编辑  收藏  举报