我想知道是否有可能在Vim中提供Ruby或JavaScript等内容辅助脚本语言。
如果可能的话,我该怎么做?
我必须编译vim源代码来打开'rubyinterp'选项吗?
你所说的"content assist" (Eclipse后台?)在Vim中叫做"Omni completion"。它是一个更大的补全系列的一部分,简单地称为"插入模式补全",您可以在:h ins-completion
中阅读有关它的所有内容。
Vim的内置补全机制不能是自动的:你需要按特定的快捷键来显示补全菜单。如果你想要自动补全,你需要一个插件:NeoComplCache, SuperTab, AutoComplPop或年轻的YouCompleteMe。
Vim不像ide那样"理解"你的语言。Vim是一个面向编程的通用文本编辑器,但它不能解析代码,不能真正理解您的意思,也不能遵循您的作用域或依赖树。正因为如此,完成可能有点模糊。所以不要期望太高。
你不需要任何特殊的东西来完成JavaScript,但是,AFAIK, Vim必须使用Ruby支持来编译以提供Ruby完成。如何得到一个合适的Vim构建取决于你的平台,我们不知道。
在两种语言中,在method_name.
之后点击<C-x><C-o>
(在插入模式下)应该会打开一个完成菜单,其工作原理与其他编辑器/ide中的菜单或多或少相似。
是的,至少在某种程度上是这样。
启用rubyinterp需要重新编译,除非你能找到一个有它的二进制文件。你可以在这里找到更多关于这个主题的信息。
代码辅助可以通过使用插件和vim的本地功能(omni-)补全来实现。这项工作有很多插件,但我最喜欢的一个是neocachcomplete。或者尝试使用一个vim"发行版",就像Steve的Francia所做的那样。
还可以添加自定义语法文件,扩展对所选语言的支持。您还可以找到检查语法的插件。syntastic .