【问题标题】:creating tags for a script language for easy browsing in vim为脚本语言创建标签以便于在 vim 中浏览
【发布时间】:2013-05-18 14:23:29
【问题描述】:

我在很多项目中都使用 ctags+Vim,我非常喜欢能够轻松快速地浏览大量代码。

我也在使用Stata,一个统计包,它有一个脚本语言。尽管您可以在代码中包含例程,但其代码往往是执行数据和统计操作的一系列命令。并且代码文件可能很长。所以我总是发现自己需要一种有效浏览它的方法。

因为我使用 Vim,所以我可以使用标记。但我想知道我是否可以使用 ctags 来做到这一点。也就是说,我想创建一个标签标记,它 (1) 在我运行脚本 (2) 时不会引起问题,易于引入 ctags。

因为它应该不会破坏脚本,所以它需要是注释。在Stata中,注释行以*开头,流cmets可以通过/* ..... */进行。

如果代码中有部分,用 cmets 标记,那就太好了:

* Section: Data

并且 ctags 选择“数据操作”作为标签。因此,我可以查看部分列表并轻松跳转到它们,而无需创建标记。

有没有办法做到这一点?我会很感激任何 cmets。

【问题讨论】:

    标签: vim ctags stata


    【解决方案1】:

    您需要一种方法来为您的 Stata 文件生成标签数据库。格式很简单,见:help tags-file-format。默认的标签程序,Exuberant Ctags可以是extended with regular expressions--langmap--regex);这可能只会产生对复杂语言的近似解析,但对于自定义节标记就足够了;也许您甚至可以直接提取有趣的语言关键字。

    【讨论】:

    • 我需要弄清楚如何以可操作的方式执行此操作。我从来没有学习过正则表达式。如果我这样做,我会在这里写下解决方案。
    • 无论如何,如果没有正则表达式的基本知识,您将无法获得 Vim 的全部优势!这是一个经过验证的通用概念,每个 IT 专业人员都应该了解它们。请注意,Vim 与 ctags 或 Perl 等其他工具之间存在细微差别。
    • 感谢您的建议。我想问题是我不是真正的 IT 专业人士,而是一名从事大量数字运算的经济学研究生。但正如你所说,一点点正则表达式的知识似乎还有很长的路要走。
    猜你喜欢
    • 2011-01-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-10-06
    • 2012-08-25
    • 1970-01-01
    • 2011-05-02
    • 1970-01-01
    相关资源
    最近更新 更多