如何让vim、jsctags或ctags将.js文件视为.html文件



我正在尝试为一个以.js结尾的文件生成标记。

Didn't find a name for constructor^@^@node.js:201^@        throw e; // process.nextTick error, or 'error' event on first tick^@              ^^@Error: Didn't find a name for cons
tructor^@    at errorWithCode (/usr/local/lib/cfa2/jscfa.js:157:11)^@    at Array.toType (/usr/local/lib/cfa2/jscfa.js:1574:11)^@    at /usr/local/lib/cfa2/jscfa.js:1994:18^@
at Aval.forEachObj (/usr/local/lib/cfa2/jscfa.js:2020:5)^@    at Aval.toType (/usr/local/lib/cfa2/jscfa.js:1993:8)^@    at funToType (/usr/local/lib/cfa2/jscfa.js:3736:31)^@    a
t getTags (/usr/local/lib/cfa2/jscfa.js:3786:24)^@    at Object.interpret (/usr/local/lib/jsctags/ctags/interp.js:54:21)^@    at Object.scan (/usr/local/lib/jsctags/ctags/index.j
s:104:16)^@    at processPath (/usr/local/bin/jsctags:189:18)^@    

但是,如果我只是通过将.js更改为.html来重命名文件,那么它就可以正常工作。

因此,在生成标记时,一些东西(vim、ctags或jsctags)正在根据文件扩展名做出某种决定。

这是怎么回事?为什么将文件扩展名更改为.html会起作用?

我真的不知道是谁生成了这个错误消息,但是,只要问题标题中说明您需要制作ctags来将.js文件视为.html文件,我建议您查看ctags选项--langmap

因此,您需要将以下选项传递给ctags:--langmap=HTML:.js

但是,当然,传递给ctags的所有.js文件都将被视为HTML文件。

关于ctags选项的更多详细信息可以在这里找到。

最新更新