closes: #14406 Signed-off-by: jiangyinzuo <jiangyinzuo@foxmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
		
			
				
	
	
		
			54 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			VimL
		
	
	
	
	
	
			
		
		
	
	
			54 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			VimL
		
	
	
	
	
	
| " Vim syntax file
 | |
| " Language:	CUDA (NVIDIA Compute Unified Device Architecture)
 | |
| " Maintainer:	Timothy B. Terriberry <tterribe@users.sourceforge.net>
 | |
| " Last Change:	2024 Apr 04
 | |
| " Contributor:  jiangyinzuo
 | |
| 
 | |
| " quit when a syntax file was already loaded
 | |
| if exists("b:current_syntax")
 | |
|   finish
 | |
| endif
 | |
| 
 | |
| " Read the C++ syntax to start with
 | |
| runtime! syntax/cpp.vim
 | |
| 
 | |
| " CUDA extentions.
 | |
| " Reference: https://docs.nvidia.com/cuda/cuda-c-programming-guide/index.html#c-language-extensions
 | |
| syn keyword cudaStorageClass	__device__ __global__ __host__ __managed__
 | |
| syn keyword cudaStorageClass	__constant__ __grid_constant__ __shared__
 | |
| syn keyword cudaStorageClass	__inline__ __noinline__ __forceinline__ __inline_hint__
 | |
| syn keyword cudaStorageClass	__align__ __thread__ __restrict__
 | |
| "syn keyword cudaStorageClass	__import__ __export__ __location__
 | |
| syn keyword cudaType		char1 char2 char3 char4
 | |
| syn keyword cudaType		uchar1 uchar2 uchar3 uchar4
 | |
| syn keyword cudaType		short1 short2 short3 short4
 | |
| syn keyword cudaType		ushort1 ushort2 ushort3 ushort4
 | |
| syn keyword cudaType		int1 int2 int3 int4
 | |
| syn keyword cudaType		uint1 uint2 uint3 uint4
 | |
| syn keyword cudaType		long1 long2 long3 long4
 | |
| syn keyword cudaType		ulong1 ulong2 ulong3 ulong4
 | |
| syn keyword cudaType		longlong1 longlong2 longlong3 longlong4
 | |
| syn keyword cudaType		ulonglong1 ulonglong2 ulonglong3 ulonglong4
 | |
| syn keyword cudaType		float1 float2 float3 float4
 | |
| syn keyword cudaType		double1 double2 double3 double4
 | |
| syn keyword cudaType		dim3 texture textureReference
 | |
| syn keyword cudaType		cudaError_t cudaDeviceProp cudaMemcpyKind
 | |
| syn keyword cudaType		cudaArray cudaChannelFormatKind
 | |
| syn keyword cudaType		cudaChannelFormatDesc cudaTextureAddressMode
 | |
| syn keyword cudaType		cudaTextureFilterMode cudaTextureReadMode
 | |
| syn keyword cudaVariable	gridDim blockIdx blockDim threadIdx warpSize
 | |
| syn keyword cudaConstant	__CUDA_ARCH__
 | |
| syn keyword cudaConstant	__DEVICE_EMULATION__
 | |
| " There are too many CUDA enumeration constants. We only define a subset of commonly used constants.
 | |
| " Reference: https://docs.nvidia.com/cuda/cuda-runtime-api/group__CUDART__TYPES.html
 | |
| syn keyword cudaConstant	cudaSuccess
 | |
| 
 | |
| hi def link cudaStorageClass	StorageClass
 | |
| hi def link cudaType		Type
 | |
| hi def link cudaVariable	Identifier
 | |
| hi def link cudaConstant	Constant
 | |
| 
 | |
| let b:current_syntax = "cuda"
 | |
| 
 | |
| " vim: ts=8
 |