加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

用于CORBA IDL的vim-ctags生成器?

发布时间:2020-12-16 01:45:08 所属栏目:安全 来源:网络整理
导读:我在多语言环境中工作,并使用Vim ctags来导航代码.但是我们也使用CORBA和旺盛的ctags不解析IDL文件. 有没有人知道IDL的ctags兼容标签生成器? 解决方法 如果你使用一个简单的正则表达式解析器,那么扩展Exuberant Ctags以支持另一种语言是一项相当简单的练习.
我在多语言环境中工作,并使用Vim ctags来导航代码.但是我们也使用CORBA和旺盛的ctags不解析IDL文件.

有没有人知道IDL的ctags兼容标签生成器?

解决方法

如果你使用一个简单的正则表达式解析器,那么扩展Exuberant Ctags以支持另一种语言是一项相当简单的练习.

例如,下面是从Exuberant Ctags解析器页面获取的正则表达式解析器的示例:

/***************************************************************************
 * make.c
 * Regex-based parser for makefile macros
 **************************************************************************/
/* INCLUDE FILES */
#include "general.h"    /* always include first */
#include "parse.h"      /* always include */

/* FUNCTION DEFINITIONS */

static void installMakefileRegex (const langType language)
{
    addTagRegex (language,"(^|[ t])([A-Z0-9_]+)[ t]*:?=","2","m,macro","i");
}

/* Create parser definition stucture */
extern parserDefinition* MakefileParser (void)
{
    static const char *const patterns [] = { "[Mm]akefile",NULL };
    static const char *const extensions [] = { "mak",NULL };
    parserDefinition* const def = parserNew ("Makefile");
    def->patterns   = patterns;
    def->extensions = extensions;
    def->initialize = installMakefileRegex;
    def->regex      = TRUE;
    return def;
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读