我读过很多关于Vim的博客,它被认为是伟大的全能,然而无论我做什么,我都不能让它令人满意地工作。我花了很长时间才发现我的系统上预装的ctag版本是emacs版本,并且没有--recurse选项,但是现在我已经在我的OpenJDK源代码副本上运行了ctags exuberant来尝试执行某种代码完成,每当我尝试使用C-n或C-p调用它时,Vim都会挂起。
我真正想要的是能像Eclipse中的代码完成一样工作的东西;我喜欢将Vim作为编辑器,但Eclipse只是具有那些开箱即用的额外功能,而Vim似乎无法做到这一点。带有vi-mode插件的Eclipse对我来说并不是特别有用,它占用了太多的内存和CPU,没有任何用处;eclim也不太喜欢我。
有没有人能建议一种更简单的方法,让Vim中的某种代码完成真正起作用?
发布于 2009-10-23 15:57:36
以下是VIM的"JDE“特性:http://www.vim.org/scripts/script.php?script_id=1213列出的特性之一是”代码完成(适用于java和jsp、taglib、html、xml、xsl、xsd) (需要VIM 7.0 )“
下面是一个Java自动补全脚本:http://vim.sourceforge.net/scripts/script.php?script_id=1785
这篇文章不是Java,但我发现它非常清晰易懂;也许值得一读。以下是为Drupal设置自动完成的方法。定制的AWK脚本为vim构建了一个自动补全字典。http://www.thingy-ma-jig.co.uk/blog/18-08-2009/drupal-autocomplete-vim
祝好运。
发布于 2009-10-29 19:15:07
我尝试了一下eclim:
http://eclim.sourceforge.net/
不久前,它基本上是在后台运行eclipse,然后提供一个vim插件,让您在vim中获得eclipse的所有功能。所以你可以做重构,完成等。如果你不介意在你的系统后台运行一个巨大的eclipse进程,它看起来工作得很好。
我已经在C++中完成了相当好的工作(无论如何比Vis stud更好),但是在java中从来没有太好的运气。现在,我倾向于在大多数时间使用eclipse,但我在eclipse中将gvim --remote设置为外部命令,这样我就可以随时将当前缓冲区擦除到vim中。
发布于 2009-10-25 22:25:36
也有同样的愿望,通过使用eclim来实现它。效果真的很好。
https://stackoverflow.com/questions/1601220
复制相似问题