有没有办法让emacs像Eclipse和NetBeans那样拉取ruby方法的自动完成?也就是说,如果我键入File。然后在Eclipse中按CTRL-space,我将获得File方法的列表。变量也是如此。我已经安装了自动完成插件、ruby-mode、rinari和cedet,但到目前为止,它将完成局部变量和方法名称,但不会完成本地变量和方法名称。
发布于 2010-04-17 15:56:05
我认为你需要像RSense这样的东西。您可能还喜欢更通用的auto complete mode。
发布于 2010-04-17 11:30:12
我不熟悉ruby,但是如果你所说的“本机方法”指的是某个系统库中的东西,那么有几个扩展CEDET来完成这项工作的选择。
如果某处有包含所有代码ruby文件,且ruby支持某种" include“或"import”语句,则需要将该位置添加到ruby的include路径中。这可能需要更改ruby源代码以添加新的system include路径。您可以在semantic-c.el中查看示例。您可能还需要覆盖函数semantic-tag- include -filename,以将include转换为可查找的文件名。
如果没有包含,只有一些ruby解释器知道所有这些东西,那么您将需要编写一个完整的ruby“全知”数据库,类似于semanticdb el.el。它需要一种方法来查询ruby中的各种东西,并将它们作为答案返回。
任何这样的增强都将在CEDET的contrib区域的ruby支持中受到欢迎。
发布于 2010-04-18 01:28:53
Ruby是一种解释型语言,这使得它很难做某些事情,比如自动完成。如果没有定义对象类型,你怎么知道它是什么呢?因此,预先制定的解决方案是有限的或不存在的。即使是Netbean/Eclipse中的自动补全功能也只能在类方法上工作(如果我没记错的话)。
https://stackoverflow.com/questions/2657001
复制相似问题