.cu(CUDA)文件的ctags + taglist

时间:2012-04-23 09:25:31

标签: vim cuda ctags exuberant-ctags

我使用vim编辑器(在Ubuntu上)。最近,我一直在处理大型cuda项目,因此希望利用ctags实用程序进行代码浏览。 exuberant-ctags [here](http://ctags.sourceforge.net/languages.html)支持的语言列表尚未包含CUDA。如果有人知道做同样的调整,我真的很感激帮助。

由于

编辑1:我发现了以下临时修复。

要为CUDA文件创建标记文件,请使用带有以下选项的ctags(假设您当前的目录包含所有cuda文件);

$ ctags --langmap = c ++:+。cu *

4 个答案:

答案 0 :(得分:6)

由于CUDA C / C ++基于C ++,您可以使用C ++模式。您可以使用--langmap=c++:+.cu添加语言地图。

答案 1 :(得分:4)

我不知道taglist,但是如果你使用Tagbar插件(标记列表的重做),你可以将以下行添加到.vim / autoload / tagbar.vim:

let s:known_types.cuda = type_cpp

在行之后立即:

let s:known_types.cpp = type_cpp

答案 2 :(得分:2)

对于taglist分割窗口,您可以添加以下行

" cu language
let s:tlist_def_cu_settings = 'c++;n:namespace;v:variable;d:macro;t:typedef;' .
                         \ 'c:class;g:enum;s:struct;u:union;f:function'

以下

" c++ language
let s:tlist_def_cpp_settings = 'c++;n:namespace;v:variable;d:macro;t:typedef;' .
                             \ 'c:class;g:enum;s:struct;u:union;f:function'
taglist.vim中的

答案 3 :(得分:0)

universal-ctags(https://ctags.io)为cuda提供内置解析器。

$ ./ctags --list-maps=CUDA
CUDA     *.cu *.cuh