我使用vim编辑器(在Ubuntu上)。最近,我一直在与大型 cuda 项目合作,因此想利用 ctags 实用程序进行代码浏览。旺盛的ctags支持的语言列表[这里](http://ctags.sourceforge.net/languages.html)目前还没有包含CUDA。如果有人知道做同样的事情,我将非常感谢您的帮助。
谢谢
编辑1:我找到了以下临时修复程序。
要为 CUDA 文件创建标记文件,请使用带有以下选项的 ctags(假设您当前的目录包含所有 cuda 文件);
$ctags --langmap=c++:+.cu *
由于 CUDA C/C++ 基于C++您可以使用C++模式。您可以使用 --langmap=c++:+.cu
添加语言映射。
标签列表,但是如果您使用的是标签栏插件(标签列表的重做),则可以将以下行添加到.vim/autoload/tagbar.vim:
let s:known_types.cuda = type_cpp
把它放在行后面:
let s:known_types.cpp = type_cpp
对于标签列表拆分窗口,您可以添加以下行
" 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'
在标签列表中.vim
universal-ctags(https://ctags.io) 内置了 cuda 解析器。
$ ./ctags --list-maps=CUDA
CUDA *.cu *.cuh