从Eclipse中提取代码辅助/完成部分并在其他编辑器中使用是否可行?

从Eclipse中提取代码辅助/完成部分并在其他编辑器中使用是否可行?,eclipse,ide,editor,code-completion,code-assist,Eclipse,Ide,Editor,Code Completion,Code Assist,我经常听说Eclipse的代码完成、编码辅助功能与其他编辑器相比有多好,这就提出了一个问题,即这些部分是否可以从Eclipse代码库中分离出来 如果该部分用API分开,通过API可以告诉它需要知道的事情(项目的文件在哪里,包含路径是什么,等等),那么它可以返回必要的信息(光标处符号的帮助,可能的完成等),任何编辑器(emacs、vim等)都可以使用它 为什么还没有完成?这些代码辅助部分是否与Eclipse内部联系得太紧密,无法轻松分离?了解Eclipe内部工作原理的人能对此有所了解吗 编辑:这里

我经常听说Eclipse的代码完成、编码辅助功能与其他编辑器相比有多好,这就提出了一个问题,即这些部分是否可以从Eclipse代码库中分离出来

如果该部分用API分开,通过API可以告诉它需要知道的事情(项目的文件在哪里,包含路径是什么,等等),那么它可以返回必要的信息(光标处符号的帮助,可能的完成等),任何编辑器(emacs、vim等)都可以使用它

为什么还没有完成?这些代码辅助部分是否与Eclipse内部联系得太紧密,无法轻松分离?了解Eclipe内部工作原理的人能对此有所了解吗


编辑:这里是SharpDevelop for C#的工作设置,emacs是UI,信息来自SharpDevelop模块。请看屏幕截图。Eclipse的完成支持可以类似地支持emacs和其他编辑器。

内容辅助使用Java项目的内部模型-没有这个模型,内容辅助就无法工作(这是有效的)

我不确定它与Eclipse内部集成的紧密程度,但我知道它使用Eclipse资源API(文件系统处理)和其他功能,如Eclipse扩展(可以添加新的完成提供程序,而无需修改代码)


总之,我相信将这个完成引擎移植到其他编辑器中,提到的编辑器将失去Eclipse的(在某些情况下相对)简单性,因此它可能不会提供所提到的编辑器更小的空间-所以我不认为,为其他编辑器有效地提供这样的引擎是可行的。

eclim项目试图通过直接与eclipse接口来解决这个问题。因此,至少需要一个无头运行的eclipse。虽然eclim的重点是vim集成,但也有其他编辑器(emacs、textmate等)的插件。eclim和编辑器之间的通信通过服务器接口进行

也许不完全是你在哪里照顾的,但我值得一看:


占用空间小不是问题,现在内存很便宜,提取的完成引擎当然不会编译到其他编辑器中。它可以是一个单独的进程,编辑器与之通信,并简单地显示代码辅助模块返回的信息。在这种情况下,我认为,这当然是可行的,尽管不是微不足道的。我想看看内容辅助的编程-它可能会给你一个提示。谢谢,我会查出来的。德基是蒙达纳姆,霍吉·科西,梅根泽姆这正是我想要的,同时也有人提出了建议,不过还是要谢谢你。寻找这一点的人可能会先问这个问题,因此,如果这里有关于eclim的参考,这会很有帮助。几天前,我无意中发现了以下几点:这是Komodo Edit移植到Sublime文本的智能代码完成。但是:我不知道它是否比eclim好,或者是否可以将它移植到其他编辑器,比如TextMate。。。但是你可能想看看。根据自述,它不支持java或C++,所以它不如Eclim好,但是如果有人发现Eclipse太重,它是一个不错的选择。