`

Eclipse自动补全增强

 
阅读更多

#这种方法只适用于Eclipse Classic版本(这个版本带有插件的源码)

在使用Eclispe的过程,感觉自动补全做的不好,没有VS的强大。下面说两个增强自动补全的方法:

 

1.增加Eclipse的提示功能

在Eclipse中,从Window -> preferences -> Java -> Editor -> Content assist -> Auto-Activation下,我们可以在"."号后面加入我们需要自动提示的首字幕,比如"abc",可以把26个字母的大小写全部加上(.abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_)

2. 修改自动补全的快捷键

首先,打开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键的作用:在自动补全中,打开提示列表的当前行的解释。

分享到:
评论

相关推荐

    eclipse自动补全变量名关键字等.txt

    ### Eclipse自动补全功能详解与优化 在软件开发过程中,集成开发环境(IDE)的高效使用对于提升编码效率至关重要。Eclipse,作为一款广受欢迎的开源IDE,为开发者提供了丰富的功能,其中自动补全功能尤为突出,极大...

    解决Eclipse3.6中Android代码自动补全卡死

    "解决Eclipse3.6中Android代码自动补全卡死"这个问题主要涉及到Eclipse的Java开发工具(JDT)组件。JDT负责处理代码补全、语法高亮、错误检测等功能。在Android开发环境中,Eclipse会结合ADT(Android Development ...

    eclipse 变量自动补全 优化插件

    "eclipse 变量自动补全 优化插件"主要针对Eclipse的代码补全功能进行增强,以提供更智能、更快速的补全建议。这些插件通常会增加对代码上下文的理解,提供更精准的补全选项,并且可能会包含更多的代码模板,使得...

    eclipse c_c++自动补全auto activation 自动激活 最新插件

    在Eclipse中,C++自动补全功能可以通过安装特定插件来增强。"eclipse c_c++自动补全auto activation 自动激活 最新插件"很可能指的是一个更新的、专门为Eclipse C/C++开发者设计的插件,旨在优化自动补全体验,提高...

    设置eclipse和html和js自动补全.zip

    总结来说,要在Eclipse中实现HTML和JavaScript的自动补全,你需要安装Web开发插件,配置自动补全触发字符,以及启用相关编辑器的自动补全功能。通过这些步骤,你可以享受到Eclipse带来的智能编码体验,大大提高编程...

    eclipse自动补全

    标题“Eclipse自动补全”指的是在使用Eclipse这款强大的集成开发环境(IDE)时,其内置的代码自动补全功能。这个功能极大地提高了程序员的编码效率,通过预测和建议可能的代码片段,使得开发者可以快速输入代码而...

    Eclipse luna (4.4.2) 自动补全增强 (取消空格Popup)

    标题中的"Eclipse Luna (4.4.2) 自动补全增强 (取消空格Popup)"指的是在Eclipse集成开发环境中,对代码自动补全功能的一种优化。Eclipse的自动补全功能,通常称为Content Assist,它能帮助程序员快速输入代码,提高...

    Eclipse自动补全

    标题中的“Eclipse自动补全”指的是Eclipse IDE内置的代码补全功能。这个特性能够根据上下文提供智能建议,帮助开发者编写更准确、更高效的代码。它不仅适用于Java,也支持其他多种语言,如C++、Python等,但在这里...

    eclipse补全插件

    "eclipse补全插件"这个标题所指的是Eclipse中用于增强自动补全功能的一种特定插件或者设置调整。 在描述中提到,“需要将eclipse中的=.自动补全变量进行修改,让其不自动补全”,这通常涉及到Eclipse的代码补全设置...

    Eclipse增强代码补全功能后变量申明自动补全的问题

    当打开eclipse 打开增强代码补全功能后(26个字母触发代码提示功能),当申明变量时,会出现代码提示框,第一行补全内容为,当前你输入的变量名再加上变量类型名,不管你按回车,还是空格,这一行都会上屏。...

    stm32cubeide自动补全插件.zip

    在给定的“stm32cubeide自动补全插件.zip”文件中,包含了一个名为“org.eclipse.cdt.ui_6.7.1.202005220422.jar”的组件,这很可能是用于增强STM32CubeIDE代码编辑器的自动补全功能的插件。 自动补全(Auto-...

    STM32CubeIDE代码自动补全插件(纯绿色)

    标题提到的“STM32CubeIDE代码自动补全插件”是一种增强STM32CubeIDE原有功能的工具,旨在进一步优化编程体验。这个插件是纯绿色的,意味着它不需要复杂的安装过程,用户可以直接解压使用,非常便捷。插件的特点在于...

    tomcat5+eclipes 好的自动补全

    对于“完美版自动补全”这个压缩包文件,可能包含了一些增强Eclipse自动补全功能的插件或定制设置。在Eclipse中导入这些资源,通常需要: 1. 解压文件到合适的位置。 2. 如果是Eclipse插件,可以通过“Help” -> ...

    STM32CubeIDE 1.15.0自动补全插件

    总之,STM32CubeIDE 1.15.0的自动补全插件是一个非常实用的工具,能够提升STM32开发的效率和准确性,无论对于新手还是经验丰富的开发者,都是一个值得拥有的增强功能。通过简单的安装步骤,即可轻松享受到这一便利。

    ChipON STMcubeIDE代码自动补全插件

    标题中的"ChipON STMcubeIDE代码自动补全插件"指的是一个增强STMcubeIDE原生代码补全功能的第三方插件。这个插件可能由ChipON公司或社区开发者创建,旨在进一步优化开发体验,提供更智能、更快速的代码补全建议。 ...

    stm32cubeide1.10.0 代码自动补全插件

    标题提到的"stm32cubeide1.10.0 代码自动补全插件"是专门为STM32CubeIDE增强功能的一个工具。代码自动补全是许多开发者在编写代码时依赖的一项重要功能,它能够根据上下文提示可能的函数、变量或类,帮助快速输入...

    STM32cubeIDE 1.8.0代码自动补全插件.zip

    总之,STM32CubeIDE 1.8.0版通过"org.eclipse.cdt.ui_7.1.100.202101112014.jar"插件增强了代码自动补全功能,为STM32开发者提供了更强大的编程支持。这个功能丰富的IDE简化了STM32应用的开发过程,提高了代码质量和...

    eclipse自动补齐

    ### Eclipse自动补齐功能详解 在开发过程中,代码编辑器的智能辅助功能极大提升了编码效率,其中,自动补齐(代码提示)是最为常用的功能之一。Eclipse作为一款强大的开源集成开发环境(IDE),提供了丰富的功能来...

    MyBatis和IBatis配置文件中的自动补全功能

    2. **配置插件**:对于MyBatis,可以安装如`MyBatis Code Support`这样的插件,它可以增强IDE对MyBatis的支持,包括自动补全、语法高亮和错误检测。 3. **正确配置项目**:确保MyBatis的jar包已经被引入到项目的类...

    STM32CUBE IDE1.61代码自动补全.zip

    其中,代码自动补全功能是一项重要的增强,它能极大地提高开发效率,减少编程错误,并帮助开发者快速熟悉STM32相关的API和库函数。 在描述中提到,为了启用STM32CubeIDE的代码自动补全功能,用户需要将提供的压缩包...

Global site tag (gtag.js) - Google Analytics