我发现我的
~/.vimrc
文件有syntax on
,但它在任何CUDA文件(.cu
)上都不起作用。
不确定该怎么做。~/.vimrc
文件有syntax on
,但它在任何CUDA文件(.cu
)上都不起作用。
不确定该怎么做。将以下两行代码添加到 ~/.vimrc 文件中:
au BufNewFile,BufRead *.cu set ft=cuda
au BufNewFile,BufRead *.cuh set ft=cuda
将 cuda.vim 放在 ~/.vim/syntax/ 中,看起来你可能缺少vim的语法高亮文件。你应该检查你的/usr/share/vim/vim70/syntax
目录下是否有cuda.vim
文件。这个目录会根据你的系统和vim版本而有所不同。
如果你的vim版本没有cuda.vim
,你可以下载这个cuda.vim文件并放在~/.vim/syntax/目录下。
更新:如@BenjiWiebe建议,在你的~/.vimrc
文件中添加以下行:
au BufNewFile,BufRead *.cu set filetype=cuda
au BufNewFile,BufRead *.cuh set filetype=cuda
cd /usr/share/vim/vim*/syntax
sudo cp cpp.vim cu.vim
echo "au BufNewFile,BufRead *.cu set ft=cu" >> ~/.vimrc
自从最初提出这个问题以来已经很长时间了,但我发现自己几乎遇到相同的问题,并且无法通过遵循之前的答案来解决。
在我的情况下,vim会自动突出显示.cu文件(我正在使用vim 80,在/usr/share/vim/vim80/syntax/中已经有cuda.vim),但忽略.cuh文件。为了解决这个问题,我编辑了/usr/share/vim/vim80/filetype.vim并添加了以下内容:
au BufNewFile,BufRead *.cuh setf cuda
就是这样了!
cuda.vim
文件。因此无需手动下载。 - Gerhard Burger