1

我正在尝试添加 cuda (.cu) 文件。基本目标是首先使所有 c,cpp 片段可用于 cu 文件,然后添加额外的支持。我测试的第一件事是在 vim 中设置文件类型

set ft:cpp.c

这有效。然后我尝试转到vim-snippets/snippetsvim-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有两个带有片段的文件夹。snippets/*对于基于 snipmate 的和基于UltiSnips/*ultisnips 的。但是,该inc片段仅在片段目录中的 c.snippets 上提供(不在 ultisnips 中)。但奇怪inc的是为我处理c文件。我很肯定我没有使用 snipmate。这怎么可能发生?我是不是错过了什么。还是ultisnips 可以理解这两种格式?

4

1 回答 1

0

Ultisnips 使用 Vim 的文件类型检测系统。因此,要查看 Vim 认为您拥有的文件类型,请使用该:set filetype?命令。

如果不正确,您可以尝试

autocmd BufRead,BufNewFile *.cu setfiletype cuda

另外,我使用了 Vundle,也使用了call vundle#rc(),但我需要将其更改为call vundle#begin()andcall vundle#end()

于 2016-10-09T02:16:41.973 回答