Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/vim/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/lua/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vim ctags的行为异常_Vim_Lua_Ctags - Fatal编程技术网

Vim ctags的行为异常

Vim ctags的行为异常,vim,lua,ctags,Vim,Lua,Ctags,我正在开始Lua开发,所以我在一个简单的初学者项目上运行了CTAG,并尝试使用Ctrl+]跳过源代码。尝试此操作后,我得到了E426:tagnotfound:cache\u objects,其中cache\u objects是另一个文件中的函数。我检查了标签文件,找到了缓存的\u对象的正确条目。我还检查了我的标签路径,它是正确的 然后我尝试显式执行tags命令::ta cache\u objects。这返回了相同的错误。现在事情就要变得奇怪了。我执行了::ta/cache\u objects,它

我正在开始Lua开发,所以我在一个简单的初学者项目上运行了CTAG,并尝试使用Ctrl+]跳过源代码。尝试此操作后,我得到了
E426:tagnotfound:cache\u objects
,其中
cache\u objects
是另一个文件中的函数。我检查了标签文件,找到了
缓存的\u对象的正确条目。我还检查了我的标签路径,它是正确的

然后我尝试显式执行tags命令:
:ta cache\u objects
。这返回了相同的错误。现在事情就要变得奇怪了。我执行了:
:ta/cache\u objects
,它成功了!这让我想到了定义为:

function cache_objects (basedir)
    ...
我仔细检查了拼写,以确保它是正确的。这是怎么发生的?

这是CTAG中的一个错误

如果您在标记文件中注意到字段是以制表符分隔的。但是,当ctags生成cache_objects标记时,它包含后面的空格。vim仅在使用
时查找完整的单词,这就是为什么它没有找到标记,但在使用正则表达式搜索时确实找到了它。如果你把线路改成

function cache_objects(basedir)

它可以工作。

就是这样。Ctags开发停滞了吗?上一个版本是在2009年,svn存储库已经有一段时间没有提交了,而且队列中还有一长串错误修复。@cmtm svn存储库从2014年5月开始提交。除此之外,我认为自己修补可能是最好的。我不知道这个项目的进展情况。