etags的默认正则表达式

时间:2014-08-13 15:43:08

标签: emacs elisp etags

我想创建额外的正则表达式以用于etags,但我希望它们基于已经存在的东西(特别是,我想将[\ t] *添加到当前的一组etags使用的正则表达式)。 etags用于.lisp文件的默认正则表达式集是什么?

1 个答案:

答案 0 :(得分:3)

etags通常不使用正则表达式来实现内置语言。相反,它为每种内置语言都有自定义解析器代码。

那就是说,似乎Lisp只寻找一些可以用正则表达式处理的形式:

  • 它寻找"("在第一列
  • 它跳过defvar
  • 它忽略了" cl - "或" CL - "出现在"("
  • 之后
  • 然后," def"和" DEF"匹配
  • 它还检查"(package :: def"作为导入

我通过阅读Emacs源代码树中的lib-src / etags.c找到了这个。搜索" Lisp_functions"。