美文网首页
eclipse 插件开发相关

eclipse 插件开发相关

作者: 王强儿 | 来源:发表于2016-08-06 08:35 被阅读138次
    1378060-a5b41b0855ec0ce5.jpg

    话说呀,eclipse的文档很不够用呀,写的简直是一个不容易理解,可能作者觉得显而易见的东西,到我这里就完全看不懂。显然=>懵逼

    当然eclipse设计的非常好,优秀的面相对象设计和扩展性,为自己喜欢的开发工具写扩展真是兴奋的事情。

    摘录一些片段,供大家欣赏。或者日后参考....

    熟悉插件开发方法

    用向导工具生成相应的代码,熟悉环境,参考官网的文档,一些方面写对不错。完整的工程在代码会放在github/yfor

    开发基本用了一天的时间,当然看了两天的文档,用Google搜索,代码复制粘贴stackoverflow,抄各种博客。

    语法高亮

    extends RuleBasedScanner 增加rule

    
    

    自定义我们的rule(实现IRule)

    需要一些语法分析的基础。

    
    

    自定义我们的颜色

    
    

    智能提示

    extends SourceViewerConfiguration

    
        @Override
        public IContentAssistant getContentAssistant(ISourceViewer sourceViewer) {
            ContentAssistant assistant = new ContentAssistant();
            //可以增加shell控件,显示函数帮助信息。
    assistant.setContentAssistProcessor(new JavaCompletionProcessor(), IDocument.DEFAULT_CONTENT_TYPE);
            assistant.setContentAssistProcessor(new JavaDocCompletionProcessor(), XMLPartitionScanner.XML_TAG);
            assistant.enableAutoActivation(true);
            assistant.setAutoActivationDelay(500);
            return assistant;
        }
    

    implements IContentAssistProcessor

        @Override
        public ICompletionProposal[] computeCompletionProposals(ITextViewer arg0, int arg1) {
            ICompletionProposal[] result = new ICompletionProposal[3];
            IContextInformation info = new ContextInformation("http", "http request");
            result[0] = new CompletionProposal("http", arg1, 0, 4);
            info = new ContextInformation("ssh", "ssh con");
            result[1] = new CompletionProposal("ssh", arg1, 0, 3);
            info = new ContextInformation("sql", "sql test");
            result[2] = new CompletionProposal("sql", arg1, 0, 3);
            return result;
        }
    

    右键弹出菜单

    获取文件相关

    
    

    运行命令

    需要异步

    
    

    重定向到console

    增加console依赖

    
    

    如果完全看不懂,那么不要担心,就在写这篇文章的前几个小时,我也不理解这些代码的作用,甚至可以确定,直到很久以后我也很难理解这些组件的组合原理。看看我们的达到的效果,足以激动人心但是没多大用处的功能

    feature

    1. 语法高亮
    2. 右键执行命令
    3. 重定向输出到控制台组件
    4. 自动补全

    最主要的是使用Google,阅读文档,你也可以开发出来自己的插件。

    欢迎阅读我的其它文章

    相关文章

      网友评论

          本文标题:eclipse 插件开发相关

          本文链接:https://www.haomeiwen.com/subject/djjksttx.html