我正在尝试添加cuda(.cu)文件。基本目标是首先使所有c,cpp片段可用于cu文件,然后添加其他支持。我测试的第一件事是在vim中设置文件类型
set ft:cpp.c
这是有效的。然后我尝试转到vim-snippets/snippets
和vim-snippets/UltiSnips
并尝试将cpp.snippets文件复制到cu.snippets。但是这不起作用(不起作用 - 未检测到片段 - )。我还添加了
au BufNewFile,BufRead *.cu set ft=cuda
au BufNewFile,BufRead *.cuh set ft=cuda
在我的.vimrc中。即使在此之后它也无法正常工作。
我还检查了UltiSnipsSnippetDirectories
。它指向Ultisnips
。
我还尝试创建一个cu.snippets,它只是尝试扩展cpp(没有别的)。这也行不通。
作为一个附带问题:据我所知,https://github.com/honza/vim-snippets有两个带有片段的文件夹。基于snipmate的snippets/*
和基于ultisnips的UltiSnips/*
inc
。但是,inc
代码段仅在代码段目录中的c.snippets上提供(不在ultisnips中)。但奇怪的是c
适用于root/build.gradle
文件。我很肯定我没有使用snipmate。怎么会发生这种情况?我错过了什么。还是ultisnips可以理解这两种格式?
答案 0 :(得分:0)
Ultisnips使用Vim的文件类型检测系统。因此,要查看Vim认为您使用:set filetype?
命令的文件类型。
如果这不正确,您可以尝试
autocmd BufRead,BufNewFile *.cu setfiletype cuda
另外,我使用了Vundle,我使用了call vundle#rc()
,但我需要将其更改为call vundle#begin()
和call vundle#end()