Vim缩进文件适用于Treetop(Ruby解析器)

6

有没有人看到过针对Ruby解析器/生成器treetop的vim缩进文件?我已经找到了一个vim语法高亮文件,但还没有找到缩进文件。

4个回答

2
似乎这很容易 - 我只需创建一个文件。
~/.vim/indent/treetop.vim

并使其唯一的内容
runtime! indent/ruby.vim

看起来它支持我需要的所有内容。我想它只是没有加载Ruby的缩进文件!


Treetop文件并不是Ruby文件。它们有很强的相似之处,但仅此而已。您确定使用Ruby的缩进文件不会引起任何问题吗? - Bob Aman
到目前为止,它似乎运行得相当不错。像 do / end 这样的部分似乎被正确地捕捉到了。 - Peter

0

-1

我曾经搜索过Vim或Emacs的相关内容,但没有找到任何东西,所以我开始为Emacs编写自己的模式。由于我几乎停止使用TT,所以它从未得到任何进展,但如果我的记忆没有出错,你只需要解析类似以下的内容:

grammar Name
  includes # something like "include Something"

  rule rule_name
    tokens_or_rules {
      inner_method {
      }
    }
    <MyModule>
  end
end

读完this后,这可能并不太难。

顺便提一下,记住这个语法与RSpec使用的语法非常相似,而RSpec是自然Ruby,所以你可以通过阅读它来获得一些帮助。


-3

我不确定是否有纯 Ruby 实现,但是vim rails plugin处理缩进非常出色。

你可以随时编辑它,以支持不在 Rails 项目中的 Ruby 文件。试试吧。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接