【发布时间】:2013-01-27 10:35:24
【问题描述】:
当我在 Microsoft Visual Studio 2010 中编辑 .cu 文件时,编辑器将其视为常规文本文件(int、float 等关键字上没有颜色。右括号未突出显示) .
如何在 Visual Studio 中启用 .cu 文件的语法突出显示,以便编辑 .cu 文件就像编辑常规 C/C++ 文件一样?
【问题讨论】:
标签: visual-studio cuda editor
当我在 Microsoft Visual Studio 2010 中编辑 .cu 文件时,编辑器将其视为常规文本文件(int、float 等关键字上没有颜色。右括号未突出显示) .
如何在 Visual Studio 中启用 .cu 文件的语法突出显示,以便编辑 .cu 文件就像编辑常规 C/C++ 文件一样?
【问题讨论】:
标签: visual-studio cuda editor
右键单击您的项目,选择构建自定义,然后选择一个 CUDA 构建自定义文件。如果没有可用的 CUDA 构建自定义文件,您必须先安装 Nsight Visual Studio Edition 或捆绑它的 CUDA 发行版。
【讨论】:
在 Visual Studio 设置中的 c++ 扩展名下添加“.cu”将仅启用 c++ 关键字的语法突出显示。编辑:它在Tools -> Options -> Text Editor -> File Extension 中输入 cu 并选择 Microsoft Visual C++ 作为编辑器,然后单击添加
要添加 CUDA 关键字语法突出显示,您可以在 CUDA 安装文件夹中搜索 usertype.dat(确保在 Program Files 文件夹中找不到它以在您的 home folder -> AppData-> Local -> NVIDIA Corporation 中搜索它(对不起,我不是提供详细信息,因为我现在没有 Windows),然后将其复制到 Program Files\Microsoft Visual Studio 10.0\Common7\IDE 并重新启动 Visual Studio
但是,但是!仍然可能无法正常工作,所以你最终得到的结果是 AFAIK,你可以使用 Visual Assistant x,然后你必须按如下方式更改它的设置:
对于 VS2010、VS2008、VS2005 和 VS.NET:
将您的扩展添加到:
Tools | Options | Projects | VC++ Build | C/C++ File Extensions (VS.NET)
Tools | Options | Projects and Solutions | VC++ Project Settings | C/C++ File Extensions (VS2005, VS2008)
Tools | Options | Projects and Solutions | VC++ Project Settings | Extensions To Include (VS2010)
退出 IDE 并使用 regedit 将以下条目克隆为以您的扩展名结尾的类似条目:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\8.0\Languages\File Extensions\.cpp
如果您使用的是 64 位操作系统,请克隆注册表项:
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\VisualStudio\8.0\Languages\File Extensions\.cpp
如果您的扩展名表示标头,请使用regedit 将扩展名添加到以下位置的ExtHeader。请记住包含点和终止分号:
HKEY_CURRENT_USER\Software\Whole Tomato\Visual Assist X\VANet8
如果您的扩展名表示不是标题的源文件,请将扩展名添加到以下位置的ExtSource。
HKEY_CURRENT_USER\Software\Whole Tomato\Visual Assist X\VANet8
在 Visual Assist X 选项对话框的性能选项卡上按重建并重新启动您的 IDE。
如果您使用 VS 2010,请将 8.0 替换为 10.0。
如果您使用 VS 2008,请将 8.0 替换为 9.0。
如果您使用 VS.NET 2003,请将 8.0 替换为 7.1。
如果您使用 VS.NET 2002,请将 8.0 替换为 7.0。
对于 Visual Studio 2010,将 VANet8 替换为 VANet10。
如果您使用 VS2008,请将 VANet8 替换为 VSNet9。
如果您使用 VS.NET 2003,请将 VANet8 替换为 VSNet。
如果您使用 VS.NET 2002,请将 VANet8 替换为 VANet7.0。
对于 VC++ 6.0:
退出您的 IDE 并使用 regedit 将扩展添加到:
HKEY_CURRENT_USER\Software\Microsoft\DevStudio\6.0\Text Editor\Tabs/Language Settings\C/C++\FileExtensions.
如果您的扩展名表示标头,请使用regedit 将扩展名添加到以下位置的ExtHeader。请记住包含点和终止分号:
HKEY_CURRENT_USER\Software\Whole Tomato\Visual Assist X\VA6
如果您的扩展名表示的源文件不是标题,请将扩展名添加到以下位置的ExtSource。请记住包含点和终止分号:
HKEY_CURRENT_USER\Software\Whole Tomato\Visual Assist X\VA6
在 Visual Assist X 选项对话框的性能选项卡上按重建并重新启动您的 IDE。
【讨论】:
除了别人已经说过的(在工具->选项->文本编辑器->文件扩展名和Microsoft Visual C++作为编辑器中添加cu扩展名),我也推荐你,以避免CUDA的高亮关键字(如 threadIdx.x 等),包括:
#include<device_launch_parameters.h>
【讨论】:
#include "cuda_runtime.h"
#include "device_launch_parameters.h"
在我的 VS 中,我添加了这两行,之后所有的语法高亮显示。
【讨论】: