neovim

Neovim text editor
git clone https://git.dasho.dev/neovim.git
Log | Files | Refs | README

glsl.vim (32803B)


      1 " Language: OpenGL Shading Language
      2 " Maintainer: Gregory Anders <greg@gpanders.com>
      3 " Last Modified: 2024 Jul 21
      4 " Upstream: https://github.com/tikhomirov/vim-glsl
      5 
      6 if exists('b:current_syntax')
      7  finish
      8 endif
      9 
     10 " Statements
     11 syn keyword glslConditional if else switch case default
     12 syn keyword glslRepeat      for while do
     13 syn keyword glslStatement   discard return break continue
     14 
     15 " Comments
     16 syn keyword glslTodo     contained TODO FIXME XXX NOTE
     17 syn region  glslCommentL start="//" skip="\\$" end="$" keepend contains=glslTodo,@Spell
     18 syn region  glslComment  matchgroup=glslCommentStart start="/\*" end="\*/" extend contains=glslTodo,@Spell
     19 
     20 " Preprocessor
     21 syn region  glslPreCondit       start="^\s*#\s*\(if\|ifdef\|ifndef\|else\|elif\|endif\)" skip="\\$" end="$" keepend
     22 syn region  glslDefine          start="^\s*#\s*\(define\|undef\)" skip="\\$" end="$" keepend
     23 syn keyword glslTokenConcat     ##
     24 syn keyword glslPredefinedMacro __LINE__ __FILE__ __VERSION__ GL_ES
     25 syn region  glslPreProc         start="^\s*#\s*\(error\|pragma\|extension\|version\|line\)" skip="\\$" end="$" keepend
     26 syn region  glslInclude         start="^\s*#\s*include" skip="\\$" end="$" keepend
     27 
     28 " Folding Blocks
     29 syn region glslCurlyBlock start="{" end="}" transparent fold
     30 syn region glslParenBlock start="(" end=")" transparent fold
     31 
     32 " Boolean Constants
     33 syn keyword glslBoolean true false
     34 
     35 " Integer Numbers
     36 syn match glslDecimalInt display "\<\(0\|[1-9]\d*\)[uU]\?"
     37 syn match glslOctalInt   display "\<0\o\+[uU]\?"
     38 syn match glslHexInt     display "\<0[xX]\x\+[uU]\?"
     39 
     40 " Float Numbers
     41 syn match glslFloat display "\<\d\+\.\([eE][+-]\=\d\+\)\=\(lf\|LF\|f\|F\)\="
     42 syn match glslFloat display "\<\.\d\+\([eE][+-]\=\d\+\)\=\(lf\|LF\|f\|F\)\="
     43 syn match glslFloat display "\<\d\+[eE][+-]\=\d\+\(lf\|LF\|f\|F\)\="
     44 syn match glslFloat display "\<\d\+\.\d\+\([eE][+-]\=\d\+\)\=\(lf\|LF\|f\|F\)\="
     45 
     46 " Swizzles
     47 syn match glslSwizzle display /\.[xyzw]\{1,4\}\>/
     48 syn match glslSwizzle display /\.[rgba]\{1,4\}\>/
     49 syn match glslSwizzle display /\.[stpq]\{1,4\}\>/
     50 
     51 " Structure
     52 syn keyword glslStructure struct nextgroup=glslIdentifier skipwhite skipempty
     53 
     54 syn match glslIdentifier contains=glslIdentifierPrime "\%([a-zA-Z_]\)\%([a-zA-Z0-9_]\)*" display contained
     55 
     56 " Types
     57 syn keyword glslType accelerationStructureEXT
     58 syn keyword glslType atomic_uint
     59 syn keyword glslType bool
     60 syn keyword glslType bvec2
     61 syn keyword glslType bvec3
     62 syn keyword glslType bvec4
     63 syn keyword glslType dmat2
     64 syn keyword glslType dmat2x2
     65 syn keyword glslType dmat2x3
     66 syn keyword glslType dmat2x4
     67 syn keyword glslType dmat3
     68 syn keyword glslType dmat3x2
     69 syn keyword glslType dmat3x3
     70 syn keyword glslType dmat3x4
     71 syn keyword glslType dmat4
     72 syn keyword glslType dmat4x2
     73 syn keyword glslType dmat4x3
     74 syn keyword glslType dmat4x4
     75 syn keyword glslType double
     76 syn keyword glslType dvec2
     77 syn keyword glslType dvec3
     78 syn keyword glslType dvec4
     79 syn keyword glslType float
     80 syn keyword glslType iimage1D
     81 syn keyword glslType iimage1DArray
     82 syn keyword glslType iimage2D
     83 syn keyword glslType iimage2DArray
     84 syn keyword glslType iimage2DMS
     85 syn keyword glslType iimage2DMSArray
     86 syn keyword glslType iimage2DRect
     87 syn keyword glslType iimage3D
     88 syn keyword glslType iimageBuffer
     89 syn keyword glslType iimageCube
     90 syn keyword glslType iimageCubeArray
     91 syn keyword glslType image1D
     92 syn keyword glslType image1DArray
     93 syn keyword glslType image2D
     94 syn keyword glslType image2DArray
     95 syn keyword glslType image2DMS
     96 syn keyword glslType image2DMSArray
     97 syn keyword glslType image2DRect
     98 syn keyword glslType image3D
     99 syn keyword glslType imageBuffer
    100 syn keyword glslType imageCube
    101 syn keyword glslType imageCubeArray
    102 syn keyword glslType int
    103 syn keyword glslType isampler1D
    104 syn keyword glslType isampler1DArray
    105 syn keyword glslType isampler2D
    106 syn keyword glslType isampler2DArray
    107 syn keyword glslType isampler2DMS
    108 syn keyword glslType isampler2DMSArray
    109 syn keyword glslType isampler2DRect
    110 syn keyword glslType isampler3D
    111 syn keyword glslType isamplerBuffer
    112 syn keyword glslType isamplerCube
    113 syn keyword glslType isamplerCubeArray
    114 syn keyword glslType ivec2
    115 syn keyword glslType ivec3
    116 syn keyword glslType ivec4
    117 syn keyword glslType mat2
    118 syn keyword glslType mat2x2
    119 syn keyword glslType mat2x3
    120 syn keyword glslType mat2x4
    121 syn keyword glslType mat3
    122 syn keyword glslType mat3x2
    123 syn keyword glslType mat3x3
    124 syn keyword glslType mat3x4
    125 syn keyword glslType mat4
    126 syn keyword glslType mat4x2
    127 syn keyword glslType mat4x3
    128 syn keyword glslType mat4x4
    129 syn keyword glslType rayQueryEXT
    130 syn keyword glslType sampler1D
    131 syn keyword glslType sampler1DArray
    132 syn keyword glslType sampler1DArrayShadow
    133 syn keyword glslType sampler1DShadow
    134 syn keyword glslType sampler2D
    135 syn keyword glslType sampler2DArray
    136 syn keyword glslType sampler2DArrayShadow
    137 syn keyword glslType sampler2DMS
    138 syn keyword glslType sampler2DMSArray
    139 syn keyword glslType sampler2DRect
    140 syn keyword glslType sampler2DRectShadow
    141 syn keyword glslType sampler2DShadow
    142 syn keyword glslType sampler3D
    143 syn keyword glslType samplerBuffer
    144 syn keyword glslType samplerCube
    145 syn keyword glslType samplerCubeArray
    146 syn keyword glslType samplerCubeArrayShadow
    147 syn keyword glslType samplerCubeShadow
    148 syn keyword glslType uimage1D
    149 syn keyword glslType uimage1DArray
    150 syn keyword glslType uimage2D
    151 syn keyword glslType uimage2DArray
    152 syn keyword glslType uimage2DMS
    153 syn keyword glslType uimage2DMSArray
    154 syn keyword glslType uimage2DRect
    155 syn keyword glslType uimage3D
    156 syn keyword glslType uimageBuffer
    157 syn keyword glslType uimageCube
    158 syn keyword glslType uimageCubeArray
    159 syn keyword glslType uint
    160 syn keyword glslType usampler1D
    161 syn keyword glslType usampler1DArray
    162 syn keyword glslType usampler2D
    163 syn keyword glslType usampler2DArray
    164 syn keyword glslType usampler2DMS
    165 syn keyword glslType usampler2DMSArray
    166 syn keyword glslType usampler2DRect
    167 syn keyword glslType usampler3D
    168 syn keyword glslType usamplerBuffer
    169 syn keyword glslType usamplerCube
    170 syn keyword glslType usamplerCubeArray
    171 syn keyword glslType uvec2
    172 syn keyword glslType uvec3
    173 syn keyword glslType uvec4
    174 syn keyword glslType vec2
    175 syn keyword glslType vec3
    176 syn keyword glslType vec4
    177 syn keyword glslType void
    178 
    179 " Qualifiers
    180 syn keyword glslQualifier align
    181 syn keyword glslQualifier attribute
    182 syn keyword glslQualifier binding
    183 syn keyword glslQualifier buffer
    184 syn keyword glslQualifier callableDataEXT
    185 syn keyword glslQualifier callableDataInEXT
    186 syn keyword glslQualifier ccw
    187 syn keyword glslQualifier centroid
    188 syn keyword glslQualifier centroid varying
    189 syn keyword glslQualifier coherent
    190 syn keyword glslQualifier column_major
    191 syn keyword glslQualifier const
    192 syn keyword glslQualifier cw
    193 syn keyword glslQualifier depth_any
    194 syn keyword glslQualifier depth_greater
    195 syn keyword glslQualifier depth_less
    196 syn keyword glslQualifier depth_unchanged
    197 syn keyword glslQualifier early_fragment_tests
    198 syn keyword glslQualifier equal_spacing
    199 syn keyword glslQualifier flat
    200 syn keyword glslQualifier fractional_even_spacing
    201 syn keyword glslQualifier fractional_odd_spacing
    202 syn keyword glslQualifier highp
    203 syn keyword glslQualifier hitAttributeEXT
    204 syn keyword glslQualifier in
    205 syn keyword glslQualifier index
    206 syn keyword glslQualifier inout
    207 syn keyword glslQualifier invariant
    208 syn keyword glslQualifier invocations
    209 syn keyword glslQualifier isolines
    210 syn keyword glslQualifier layout
    211 syn keyword glslQualifier line_strip
    212 syn keyword glslQualifier lines
    213 syn keyword glslQualifier lines_adjacency
    214 syn keyword glslQualifier local_size_x
    215 syn keyword glslQualifier local_size_y
    216 syn keyword glslQualifier local_size_z
    217 syn keyword glslQualifier location
    218 syn keyword glslQualifier lowp
    219 syn keyword glslQualifier max_vertices
    220 syn keyword glslQualifier mediump
    221 syn keyword glslQualifier nonuniformEXT
    222 syn keyword glslQualifier noperspective
    223 syn keyword glslQualifier offset
    224 syn keyword glslQualifier origin_upper_left
    225 syn keyword glslQualifier out
    226 syn keyword glslQualifier packed
    227 syn keyword glslQualifier patch
    228 syn keyword glslQualifier pixel_center_integer
    229 syn keyword glslQualifier point_mode
    230 syn keyword glslQualifier points
    231 syn keyword glslQualifier precise
    232 syn keyword glslQualifier precision
    233 syn keyword glslQualifier quads
    234 syn keyword glslQualifier r11f_g11f_b10f
    235 syn keyword glslQualifier r16
    236 syn keyword glslQualifier r16_snorm
    237 syn keyword glslQualifier r16f
    238 syn keyword glslQualifier r16i
    239 syn keyword glslQualifier r16ui
    240 syn keyword glslQualifier r32f
    241 syn keyword glslQualifier r32i
    242 syn keyword glslQualifier r32ui
    243 syn keyword glslQualifier r8
    244 syn keyword glslQualifier r8_snorm
    245 syn keyword glslQualifier r8i
    246 syn keyword glslQualifier r8ui
    247 syn keyword glslQualifier rayPayloadEXT
    248 syn keyword glslQualifier rayPayloadInEXT
    249 syn keyword glslQualifier readonly
    250 syn keyword glslQualifier restrict
    251 syn keyword glslQualifier rg16
    252 syn keyword glslQualifier rg16_snorm
    253 syn keyword glslQualifier rg16f
    254 syn keyword glslQualifier rg16i
    255 syn keyword glslQualifier rg16ui
    256 syn keyword glslQualifier rg32f
    257 syn keyword glslQualifier rg32i
    258 syn keyword glslQualifier rg32ui
    259 syn keyword glslQualifier rg8
    260 syn keyword glslQualifier rg8_snorm
    261 syn keyword glslQualifier rg8i
    262 syn keyword glslQualifier rg8ui
    263 syn keyword glslQualifier rgb10_a2
    264 syn keyword glslQualifier rgb10_a2ui
    265 syn keyword glslQualifier rgba16
    266 syn keyword glslQualifier rgba16_snorm
    267 syn keyword glslQualifier rgba16f
    268 syn keyword glslQualifier rgba16i
    269 syn keyword glslQualifier rgba16ui
    270 syn keyword glslQualifier rgba32f
    271 syn keyword glslQualifier rgba32i
    272 syn keyword glslQualifier rgba32ui
    273 syn keyword glslQualifier rgba8
    274 syn keyword glslQualifier rgba8_snorm
    275 syn keyword glslQualifier rgba8i
    276 syn keyword glslQualifier rgba8ui
    277 syn keyword glslQualifier row_major
    278 syn keyword glslQualifier sample
    279 syn keyword glslQualifier shaderRecordEXT
    280 syn keyword glslQualifier shared
    281 syn keyword glslQualifier smooth
    282 syn keyword glslQualifier std140
    283 syn keyword glslQualifier std430
    284 syn keyword glslQualifier stream
    285 syn keyword glslQualifier triangle_strip
    286 syn keyword glslQualifier triangles
    287 syn keyword glslQualifier triangles_adjacency
    288 syn keyword glslQualifier uniform
    289 syn keyword glslQualifier varying
    290 syn keyword glslQualifier vertices
    291 syn keyword glslQualifier volatile
    292 syn keyword glslQualifier writeonly
    293 syn keyword glslQualifier xfb_buffer
    294 syn keyword glslQualifier xfb_offset
    295 syn keyword glslQualifier xfb_stride
    296 
    297 " Built-in Constants
    298 syn keyword glslBuiltinConstant gl_CullDistance
    299 syn keyword glslBuiltinConstant gl_HitKindBackFacingTriangleEXT
    300 syn keyword glslBuiltinConstant gl_HitKindFrontFacingTriangleEXT
    301 syn keyword glslBuiltinConstant gl_MaxAtomicCounterBindings
    302 syn keyword glslBuiltinConstant gl_MaxAtomicCounterBufferSize
    303 syn keyword glslBuiltinConstant gl_MaxClipDistances
    304 syn keyword glslBuiltinConstant gl_MaxClipPlanes
    305 syn keyword glslBuiltinConstant gl_MaxCombinedAtomicCounterBuffers
    306 syn keyword glslBuiltinConstant gl_MaxCombinedAtomicCounters
    307 syn keyword glslBuiltinConstant gl_MaxCombinedClipAndCullDistances
    308 syn keyword glslBuiltinConstant gl_MaxCombinedImageUniforms
    309 syn keyword glslBuiltinConstant gl_MaxCombinedImageUnitsAndFragmentOutputs
    310 syn keyword glslBuiltinConstant gl_MaxCombinedShaderOutputResources
    311 syn keyword glslBuiltinConstant gl_MaxCombinedTextureImageUnits
    312 syn keyword glslBuiltinConstant gl_MaxComputeAtomicCounterBuffers
    313 syn keyword glslBuiltinConstant gl_MaxComputeAtomicCounters
    314 syn keyword glslBuiltinConstant gl_MaxComputeImageUniforms
    315 syn keyword glslBuiltinConstant gl_MaxComputeTextureImageUnits
    316 syn keyword glslBuiltinConstant gl_MaxComputeUniformComponents
    317 syn keyword glslBuiltinConstant gl_MaxComputeWorkGroupCount
    318 syn keyword glslBuiltinConstant gl_MaxComputeWorkGroupSize
    319 syn keyword glslBuiltinConstant gl_MaxCullDistances
    320 syn keyword glslBuiltinConstant gl_MaxDrawBuffers
    321 syn keyword glslBuiltinConstant gl_MaxFragmentAtomicCounterBuffers
    322 syn keyword glslBuiltinConstant gl_MaxFragmentAtomicCounters
    323 syn keyword glslBuiltinConstant gl_MaxFragmentImageUniforms
    324 syn keyword glslBuiltinConstant gl_MaxFragmentInputComponents
    325 syn keyword glslBuiltinConstant gl_MaxFragmentInputVectors
    326 syn keyword glslBuiltinConstant gl_MaxFragmentUniformComponents
    327 syn keyword glslBuiltinConstant gl_MaxFragmentUniformVectors
    328 syn keyword glslBuiltinConstant gl_MaxGeometryAtomicCounterBuffers
    329 syn keyword glslBuiltinConstant gl_MaxGeometryAtomicCounters
    330 syn keyword glslBuiltinConstant gl_MaxGeometryImageUniforms
    331 syn keyword glslBuiltinConstant gl_MaxGeometryInputComponents
    332 syn keyword glslBuiltinConstant gl_MaxGeometryOutputComponents
    333 syn keyword glslBuiltinConstant gl_MaxGeometryOutputVertices
    334 syn keyword glslBuiltinConstant gl_MaxGeometryTextureImageUnits
    335 syn keyword glslBuiltinConstant gl_MaxGeometryTotalOutputComponents
    336 syn keyword glslBuiltinConstant gl_MaxGeometryUniformComponents
    337 syn keyword glslBuiltinConstant gl_MaxGeometryVaryingComponents
    338 syn keyword glslBuiltinConstant gl_MaxImageSamples
    339 syn keyword glslBuiltinConstant gl_MaxImageUnits
    340 syn keyword glslBuiltinConstant gl_MaxLights
    341 syn keyword glslBuiltinConstant gl_MaxPatchVertices
    342 syn keyword glslBuiltinConstant gl_MaxProgramTexelOffset
    343 syn keyword glslBuiltinConstant gl_MaxSamples
    344 syn keyword glslBuiltinConstant gl_MaxTessControlAtomicCounterBuffers
    345 syn keyword glslBuiltinConstant gl_MaxTessControlAtomicCounters
    346 syn keyword glslBuiltinConstant gl_MaxTessControlImageUniforms
    347 syn keyword glslBuiltinConstant gl_MaxTessControlInputComponents
    348 syn keyword glslBuiltinConstant gl_MaxTessControlOutputComponents
    349 syn keyword glslBuiltinConstant gl_MaxTessControlTextureImageUnits
    350 syn keyword glslBuiltinConstant gl_MaxTessControlTotalOutputComponents
    351 syn keyword glslBuiltinConstant gl_MaxTessControlUniformComponents
    352 syn keyword glslBuiltinConstant gl_MaxTessEvaluationAtomicCounterBuffers
    353 syn keyword glslBuiltinConstant gl_MaxTessEvaluationAtomicCounters
    354 syn keyword glslBuiltinConstant gl_MaxTessEvaluationImageUniforms
    355 syn keyword glslBuiltinConstant gl_MaxTessEvaluationInputComponents
    356 syn keyword glslBuiltinConstant gl_MaxTessEvaluationOutputComponents
    357 syn keyword glslBuiltinConstant gl_MaxTessEvaluationTextureImageUnits
    358 syn keyword glslBuiltinConstant gl_MaxTessEvaluationUniformComponents
    359 syn keyword glslBuiltinConstant gl_MaxTessGenLevel
    360 syn keyword glslBuiltinConstant gl_MaxTessPatchComponents
    361 syn keyword glslBuiltinConstant gl_MaxTextureCoords
    362 syn keyword glslBuiltinConstant gl_MaxTextureImageUnits
    363 syn keyword glslBuiltinConstant gl_MaxTextureUnits
    364 syn keyword glslBuiltinConstant gl_MaxTransformFeedbackBuffers
    365 syn keyword glslBuiltinConstant gl_MaxTransformFeedbackInterleavedComponents
    366 syn keyword glslBuiltinConstant gl_MaxVaryingComponents
    367 syn keyword glslBuiltinConstant gl_MaxVaryingFloats
    368 syn keyword glslBuiltinConstant gl_MaxVaryingVectors
    369 syn keyword glslBuiltinConstant gl_MaxVertexAtomicCounterBuffers
    370 syn keyword glslBuiltinConstant gl_MaxVertexAtomicCounters
    371 syn keyword glslBuiltinConstant gl_MaxVertexAttribs
    372 syn keyword glslBuiltinConstant gl_MaxVertexImageUniforms
    373 syn keyword glslBuiltinConstant gl_MaxVertexOutputComponents
    374 syn keyword glslBuiltinConstant gl_MaxVertexOutputVectors
    375 syn keyword glslBuiltinConstant gl_MaxVertexTextureImageUnits
    376 syn keyword glslBuiltinConstant gl_MaxVertexUniformComponents
    377 syn keyword glslBuiltinConstant gl_MaxVertexUniformVectors
    378 syn keyword glslBuiltinConstant gl_MaxViewports
    379 syn keyword glslBuiltinConstant gl_MinProgramTexelOffset
    380 syn keyword glslBuiltinConstant gl_RayFlagsCullBackFacingTrianglesEXT
    381 syn keyword glslBuiltinConstant gl_RayFlagsCullFrontFacingTrianglesEXT
    382 syn keyword glslBuiltinConstant gl_RayFlagsCullNoOpaqueEXT
    383 syn keyword glslBuiltinConstant gl_RayFlagsCullOpaqueEXT
    384 syn keyword glslBuiltinConstant gl_RayFlagsNoOpaqueEXT
    385 syn keyword glslBuiltinConstant gl_RayFlagsNoneEXT
    386 syn keyword glslBuiltinConstant gl_RayFlagsOpaqueEXT
    387 syn keyword glslBuiltinConstant gl_RayFlagsSkipClosestHitShaderEXT
    388 syn keyword glslBuiltinConstant gl_RayFlagsTerminateOnFirstHitEXT
    389 syn keyword glslBuiltinConstant gl_RayQueryCandidateIntersectionAABBEXT
    390 syn keyword glslBuiltinConstant gl_RayQueryCandidateIntersectionTriangleEXT
    391 syn keyword glslBuiltinConstant gl_RayQueryCommittedIntersectionGeneratedEXT
    392 syn keyword glslBuiltinConstant gl_RayQueryCommittedIntersectionNoneEXT
    393 syn keyword glslBuiltinConstant gl_RayQueryCommittedIntersectionTriangleEXT
    394 
    395 " Built-in Variables
    396 syn keyword glslBuiltinVariable gl_BackColor
    397 syn keyword glslBuiltinVariable gl_BackLightModelProduct
    398 syn keyword glslBuiltinVariable gl_BackLightProduct
    399 syn keyword glslBuiltinVariable gl_BackLightProduct
    400 syn keyword glslBuiltinVariable gl_BackMaterial
    401 syn keyword glslBuiltinVariable gl_BackSecondaryColor
    402 syn keyword glslBuiltinVariable gl_ClipDistance
    403 syn keyword glslBuiltinVariable gl_ClipPlane
    404 syn keyword glslBuiltinVariable gl_ClipVertex
    405 syn keyword glslBuiltinVariable gl_Color
    406 syn keyword glslBuiltinVariable gl_DepthRange
    407 syn keyword glslBuiltinVariable gl_EyePlaneQ
    408 syn keyword glslBuiltinVariable gl_EyePlaneR
    409 syn keyword glslBuiltinVariable gl_EyePlaneS
    410 syn keyword glslBuiltinVariable gl_EyePlaneT
    411 syn keyword glslBuiltinVariable gl_Fog
    412 syn keyword glslBuiltinVariable gl_FogCoord
    413 syn keyword glslBuiltinVariable gl_FogFragCoord
    414 syn keyword glslBuiltinVariable gl_FragColor
    415 syn keyword glslBuiltinVariable gl_FragCoord
    416 syn keyword glslBuiltinVariable gl_FragData
    417 syn keyword glslBuiltinVariable gl_FragDepth
    418 syn keyword glslBuiltinVariable gl_FrontColor
    419 syn keyword glslBuiltinVariable gl_FrontFacing
    420 syn keyword glslBuiltinVariable gl_FrontLightModelProduct
    421 syn keyword glslBuiltinVariable gl_FrontLightProduct
    422 syn keyword glslBuiltinVariable gl_FrontMaterial
    423 syn keyword glslBuiltinVariable gl_FrontSecondaryColor
    424 syn keyword glslBuiltinVariable gl_GeometryIndexEXT
    425 syn keyword glslBuiltinVariable gl_GlobalInvocationID
    426 syn keyword glslBuiltinVariable gl_HelperInvocation
    427 syn keyword glslBuiltinVariable gl_HitKindEXT
    428 syn keyword glslBuiltinVariable gl_HitTEXT
    429 syn keyword glslBuiltinVariable gl_IncomingRayFlagsEXT
    430 syn keyword glslBuiltinVariable gl_InstanceCustomIndexEXT
    431 syn keyword glslBuiltinVariable gl_InstanceID
    432 syn keyword glslBuiltinVariable gl_InstanceID
    433 syn keyword glslBuiltinVariable gl_InvocationID
    434 syn keyword glslBuiltinVariable gl_LaunchIDEXT
    435 syn keyword glslBuiltinVariable gl_LaunchSizeEXT
    436 syn keyword glslBuiltinVariable gl_Layer
    437 syn keyword glslBuiltinVariable gl_LightModel
    438 syn keyword glslBuiltinVariable gl_LightSource
    439 syn keyword glslBuiltinVariable gl_LocalInvocationID
    440 syn keyword glslBuiltinVariable gl_LocalInvocationIndex
    441 syn keyword glslBuiltinVariable gl_ModelViewMatrix
    442 syn keyword glslBuiltinVariable gl_ModelViewMatrixInverse
    443 syn keyword glslBuiltinVariable gl_ModelViewMatrixInverseTranspose
    444 syn keyword glslBuiltinVariable gl_ModelViewMatrixTranspose
    445 syn keyword glslBuiltinVariable gl_ModelViewProjectionMatrix
    446 syn keyword glslBuiltinVariable gl_ModelViewProjectionMatrixInverse
    447 syn keyword glslBuiltinVariable gl_ModelViewProjectionMatrixInverseTranspose
    448 syn keyword glslBuiltinVariable gl_ModelViewProjectionMatrixTranspose
    449 syn keyword glslBuiltinVariable gl_MultiTexCoord0
    450 syn keyword glslBuiltinVariable gl_MultiTexCoord1
    451 syn keyword glslBuiltinVariable gl_MultiTexCoord2
    452 syn keyword glslBuiltinVariable gl_MultiTexCoord3
    453 syn keyword glslBuiltinVariable gl_MultiTexCoord4
    454 syn keyword glslBuiltinVariable gl_MultiTexCoord5
    455 syn keyword glslBuiltinVariable gl_MultiTexCoord6
    456 syn keyword glslBuiltinVariable gl_MultiTexCoord7
    457 syn keyword glslBuiltinVariable gl_Normal
    458 syn keyword glslBuiltinVariable gl_NormalMatrix
    459 syn keyword glslBuiltinVariable gl_NormalScale
    460 syn keyword glslBuiltinVariable gl_NumSamples
    461 syn keyword glslBuiltinVariable gl_NumWorkGroups
    462 syn keyword glslBuiltinVariable gl_ObjectPlaneQ
    463 syn keyword glslBuiltinVariable gl_ObjectPlaneR
    464 syn keyword glslBuiltinVariable gl_ObjectPlaneS
    465 syn keyword glslBuiltinVariable gl_ObjectPlaneT
    466 syn keyword glslBuiltinVariable gl_ObjectRayDirectionEXT
    467 syn keyword glslBuiltinVariable gl_ObjectRayOriginEXT
    468 syn keyword glslBuiltinVariable gl_ObjectToWorld3x4EXT
    469 syn keyword glslBuiltinVariable gl_ObjectToWorldEXT
    470 syn keyword glslBuiltinVariable gl_PatchVerticesIn
    471 syn keyword glslBuiltinVariable gl_Point
    472 syn keyword glslBuiltinVariable gl_PointCoord
    473 syn keyword glslBuiltinVariable gl_PointSize
    474 syn keyword glslBuiltinVariable gl_Position
    475 syn keyword glslBuiltinVariable gl_PrimitiveID
    476 syn keyword glslBuiltinVariable gl_PrimitiveID
    477 syn keyword glslBuiltinVariable gl_PrimitiveIDIn
    478 syn keyword glslBuiltinVariable gl_ProjectionMatrix
    479 syn keyword glslBuiltinVariable gl_ProjectionMatrixInverse
    480 syn keyword glslBuiltinVariable gl_ProjectionMatrixInverseTranspose
    481 syn keyword glslBuiltinVariable gl_ProjectionMatrixTranspose
    482 syn keyword glslBuiltinVariable gl_RayTmaxEXT
    483 syn keyword glslBuiltinVariable gl_RayTminEXT
    484 syn keyword glslBuiltinVariable gl_SampleID
    485 syn keyword glslBuiltinVariable gl_SampleMask
    486 syn keyword glslBuiltinVariable gl_SampleMaskIn
    487 syn keyword glslBuiltinVariable gl_SamplePosition
    488 syn keyword glslBuiltinVariable gl_SecondaryColor
    489 syn keyword glslBuiltinVariable gl_TessCoord
    490 syn keyword glslBuiltinVariable gl_TessLevelInner
    491 syn keyword glslBuiltinVariable gl_TessLevelOuter
    492 syn keyword glslBuiltinVariable gl_TexCoord
    493 syn keyword glslBuiltinVariable gl_TextureEnvColor
    494 syn keyword glslBuiltinVariable gl_TextureMatrix
    495 syn keyword glslBuiltinVariable gl_TextureMatrixInverse
    496 syn keyword glslBuiltinVariable gl_TextureMatrixInverseTranspose
    497 syn keyword glslBuiltinVariable gl_TextureMatrixTranspose
    498 syn keyword glslBuiltinVariable gl_Vertex
    499 syn keyword glslBuiltinVariable gl_VertexID
    500 syn keyword glslBuiltinVariable gl_VertexIndex
    501 syn keyword glslBuiltinVariable gl_ViewportIndex
    502 syn keyword glslBuiltinVariable gl_WorkGroupID
    503 syn keyword glslBuiltinVariable gl_WorkGroupSize
    504 syn keyword glslBuiltinVariable gl_WorldRayDirectionEXT
    505 syn keyword glslBuiltinVariable gl_WorldRayOriginEXT
    506 syn keyword glslBuiltinVariable gl_WorldToObject3x4EXT
    507 syn keyword glslBuiltinVariable gl_WorldToObjectEXT
    508 syn keyword glslBuiltinVariable gl_in
    509 syn keyword glslBuiltinVariable gl_out
    510 
    511 " Built-in Functions
    512 syn keyword glslBuiltinFunction EmitStreamVertex
    513 syn keyword glslBuiltinFunction EmitVertex
    514 syn keyword glslBuiltinFunction EndPrimitive
    515 syn keyword glslBuiltinFunction EndStreamPrimitive
    516 syn keyword glslBuiltinFunction abs
    517 syn keyword glslBuiltinFunction acos
    518 syn keyword glslBuiltinFunction acosh
    519 syn keyword glslBuiltinFunction all
    520 syn keyword glslBuiltinFunction any
    521 syn keyword glslBuiltinFunction asin
    522 syn keyword glslBuiltinFunction asinh
    523 syn keyword glslBuiltinFunction atan
    524 syn keyword glslBuiltinFunction atanh
    525 syn keyword glslBuiltinFunction atomicAdd
    526 syn keyword glslBuiltinFunction atomicAnd
    527 syn keyword glslBuiltinFunction atomicCompSwap
    528 syn keyword glslBuiltinFunction atomicCounter
    529 syn keyword glslBuiltinFunction atomicCounterDecrement
    530 syn keyword glslBuiltinFunction atomicCounterIncrement
    531 syn keyword glslBuiltinFunction atomicExchange
    532 syn keyword glslBuiltinFunction atomicMax
    533 syn keyword glslBuiltinFunction atomicMin
    534 syn keyword glslBuiltinFunction atomicOr
    535 syn keyword glslBuiltinFunction atomicXor
    536 syn keyword glslBuiltinFunction barrier
    537 syn keyword glslBuiltinFunction bitCount
    538 syn keyword glslBuiltinFunction bitfieldExtract
    539 syn keyword glslBuiltinFunction bitfieldInsert
    540 syn keyword glslBuiltinFunction bitfieldReverse
    541 syn keyword glslBuiltinFunction ceil
    542 syn keyword glslBuiltinFunction clamp
    543 syn keyword glslBuiltinFunction cos
    544 syn keyword glslBuiltinFunction cosh
    545 syn keyword glslBuiltinFunction cross
    546 syn keyword glslBuiltinFunction dFdx
    547 syn keyword glslBuiltinFunction dFdxCoarse
    548 syn keyword glslBuiltinFunction dFdxFine
    549 syn keyword glslBuiltinFunction dFdy
    550 syn keyword glslBuiltinFunction dFdyCoarse
    551 syn keyword glslBuiltinFunction dFdyFine
    552 syn keyword glslBuiltinFunction degrees
    553 syn keyword glslBuiltinFunction determinant
    554 syn keyword glslBuiltinFunction distance
    555 syn keyword glslBuiltinFunction dot
    556 syn keyword glslBuiltinFunction equal
    557 syn keyword glslBuiltinFunction executeCallableEXT
    558 syn keyword glslBuiltinFunction exp
    559 syn keyword glslBuiltinFunction exp2
    560 syn keyword glslBuiltinFunction faceforward
    561 syn keyword glslBuiltinFunction findLSB
    562 syn keyword glslBuiltinFunction findMSB
    563 syn keyword glslBuiltinFunction floatBitsToInt
    564 syn keyword glslBuiltinFunction floatBitsToUint
    565 syn keyword glslBuiltinFunction floor
    566 syn keyword glslBuiltinFunction fma
    567 syn keyword glslBuiltinFunction fract
    568 syn keyword glslBuiltinFunction frexp
    569 syn keyword glslBuiltinFunction ftransform
    570 syn keyword glslBuiltinFunction fwidth
    571 syn keyword glslBuiltinFunction fwidthCoarse
    572 syn keyword glslBuiltinFunction fwidthFine
    573 syn keyword glslBuiltinFunction greaterThan
    574 syn keyword glslBuiltinFunction greaterThanEqual
    575 syn keyword glslBuiltinFunction groupMemoryBarrier
    576 syn keyword glslBuiltinFunction ignoreIntersectionEXT
    577 syn keyword glslBuiltinFunction imageAtomicAdd
    578 syn keyword glslBuiltinFunction imageAtomicAnd
    579 syn keyword glslBuiltinFunction imageAtomicCompSwap
    580 syn keyword glslBuiltinFunction imageAtomicExchange
    581 syn keyword glslBuiltinFunction imageAtomicMax
    582 syn keyword glslBuiltinFunction imageAtomicMin
    583 syn keyword glslBuiltinFunction imageAtomicOr
    584 syn keyword glslBuiltinFunction imageAtomicXor
    585 syn keyword glslBuiltinFunction imageLoad
    586 syn keyword glslBuiltinFunction imageSize
    587 syn keyword glslBuiltinFunction imageStore
    588 syn keyword glslBuiltinFunction imulExtended
    589 syn keyword glslBuiltinFunction intBitsToFloat
    590 syn keyword glslBuiltinFunction interpolateAtCentroid
    591 syn keyword glslBuiltinFunction interpolateAtOffset
    592 syn keyword glslBuiltinFunction interpolateAtSample
    593 syn keyword glslBuiltinFunction inverse
    594 syn keyword glslBuiltinFunction inversesqrt
    595 syn keyword glslBuiltinFunction isinf
    596 syn keyword glslBuiltinFunction isnan
    597 syn keyword glslBuiltinFunction ldexp
    598 syn keyword glslBuiltinFunction length
    599 syn keyword glslBuiltinFunction lessThan
    600 syn keyword glslBuiltinFunction lessThanEqual
    601 syn keyword glslBuiltinFunction log
    602 syn keyword glslBuiltinFunction log2
    603 syn keyword glslBuiltinFunction matrixCompMult
    604 syn keyword glslBuiltinFunction max
    605 syn keyword glslBuiltinFunction memoryBarrier
    606 syn keyword glslBuiltinFunction memoryBarrierAtomicCounter
    607 syn keyword glslBuiltinFunction memoryBarrierBuffer
    608 syn keyword glslBuiltinFunction memoryBarrierImage
    609 syn keyword glslBuiltinFunction memoryBarrierShared
    610 syn keyword glslBuiltinFunction min
    611 syn keyword glslBuiltinFunction mix
    612 syn keyword glslBuiltinFunction mod
    613 syn keyword glslBuiltinFunction modf
    614 syn keyword glslBuiltinFunction noise1
    615 syn keyword glslBuiltinFunction noise2
    616 syn keyword glslBuiltinFunction noise3
    617 syn keyword glslBuiltinFunction noise4
    618 syn keyword glslBuiltinFunction normalize
    619 syn keyword glslBuiltinFunction not
    620 syn keyword glslBuiltinFunction notEqual
    621 syn keyword glslBuiltinFunction outerProduct
    622 syn keyword glslBuiltinFunction packDouble2x32
    623 syn keyword glslBuiltinFunction packHalf2x16
    624 syn keyword glslBuiltinFunction packSnorm2x16
    625 syn keyword glslBuiltinFunction packSnorm4x8
    626 syn keyword glslBuiltinFunction packUnorm2x16
    627 syn keyword glslBuiltinFunction packUnorm4x8
    628 syn keyword glslBuiltinFunction pow
    629 syn keyword glslBuiltinFunction radians
    630 syn keyword glslBuiltinFunction rayQueryConfirmIntersectionEXT
    631 syn keyword glslBuiltinFunction rayQueryGenerateIntersectionEXT
    632 syn keyword glslBuiltinFunction rayQueryGetIntersectionBarycentricsEXT
    633 syn keyword glslBuiltinFunction rayQueryGetIntersectionCandidateAABBOpaqueEXT
    634 syn keyword glslBuiltinFunction rayQueryGetIntersectionFrontFaceEXT
    635 syn keyword glslBuiltinFunction rayQueryGetIntersectionGeometryIndexEXT
    636 syn keyword glslBuiltinFunction rayQueryGetIntersectionInstanceCustomIndexEXT
    637 syn keyword glslBuiltinFunction rayQueryGetIntersectionInstanceIdEXT
    638 syn keyword glslBuiltinFunction rayQueryGetIntersectionInstanceShaderBindingTableRecordOffsetEXT
    639 syn keyword glslBuiltinFunction rayQueryGetIntersectionObjectRayDirectionEXT
    640 syn keyword glslBuiltinFunction rayQueryGetIntersectionObjectRayOriginEXT
    641 syn keyword glslBuiltinFunction rayQueryGetIntersectionObjectToWorldEXT
    642 syn keyword glslBuiltinFunction rayQueryGetIntersectionPrimitiveIndexEXT
    643 syn keyword glslBuiltinFunction rayQueryGetIntersectionTEXT
    644 syn keyword glslBuiltinFunction rayQueryGetIntersectionTypeEXT
    645 syn keyword glslBuiltinFunction rayQueryGetIntersectionWorldToObjectEXT
    646 syn keyword glslBuiltinFunction rayQueryGetRayFlagsEXT
    647 syn keyword glslBuiltinFunction rayQueryGetRayTMinEXT
    648 syn keyword glslBuiltinFunction rayQueryGetWorldRayDirectionEXT
    649 syn keyword glslBuiltinFunction rayQueryGetWorldRayOriginEXT
    650 syn keyword glslBuiltinFunction rayQueryInitializeEXT
    651 syn keyword glslBuiltinFunction rayQueryProceedEXT
    652 syn keyword glslBuiltinFunction rayQueryTerminateEXT
    653 syn keyword glslBuiltinFunction reflect
    654 syn keyword glslBuiltinFunction refract
    655 syn keyword glslBuiltinFunction reportIntersectionEXT
    656 syn keyword glslBuiltinFunction round
    657 syn keyword glslBuiltinFunction roundEven
    658 syn keyword glslBuiltinFunction shadow1D
    659 syn keyword glslBuiltinFunction shadow1DLod
    660 syn keyword glslBuiltinFunction shadow1DProj
    661 syn keyword glslBuiltinFunction shadow1DProjLod
    662 syn keyword glslBuiltinFunction shadow2D
    663 syn keyword glslBuiltinFunction shadow2DLod
    664 syn keyword glslBuiltinFunction shadow2DProj
    665 syn keyword glslBuiltinFunction shadow2DProjLod
    666 syn keyword glslBuiltinFunction sign
    667 syn keyword glslBuiltinFunction sin
    668 syn keyword glslBuiltinFunction sinh
    669 syn keyword glslBuiltinFunction smoothstep
    670 syn keyword glslBuiltinFunction sqrt
    671 syn keyword glslBuiltinFunction step
    672 syn keyword glslBuiltinFunction tan
    673 syn keyword glslBuiltinFunction tanh
    674 syn keyword glslBuiltinFunction terminateRayEXT
    675 syn keyword glslBuiltinFunction texelFetch
    676 syn keyword glslBuiltinFunction texelFetchOffset
    677 syn keyword glslBuiltinFunction texture
    678 syn keyword glslBuiltinFunction texture1D
    679 syn keyword glslBuiltinFunction texture1DLod
    680 syn keyword glslBuiltinFunction texture1DProj
    681 syn keyword glslBuiltinFunction texture1DProjLod
    682 syn keyword glslBuiltinFunction texture2D
    683 syn keyword glslBuiltinFunction texture2DLod
    684 syn keyword glslBuiltinFunction texture2DProj
    685 syn keyword glslBuiltinFunction texture2DProjLod
    686 syn keyword glslBuiltinFunction texture3D
    687 syn keyword glslBuiltinFunction texture3DLod
    688 syn keyword glslBuiltinFunction texture3DProj
    689 syn keyword glslBuiltinFunction texture3DProjLod
    690 syn keyword glslBuiltinFunction textureCube
    691 syn keyword glslBuiltinFunction textureCubeLod
    692 syn keyword glslBuiltinFunction textureGather
    693 syn keyword glslBuiltinFunction textureGatherOffset
    694 syn keyword glslBuiltinFunction textureGatherOffsets
    695 syn keyword glslBuiltinFunction textureGrad
    696 syn keyword glslBuiltinFunction textureGradOffset
    697 syn keyword glslBuiltinFunction textureLod
    698 syn keyword glslBuiltinFunction textureLodOffset
    699 syn keyword glslBuiltinFunction textureOffset
    700 syn keyword glslBuiltinFunction textureProj
    701 syn keyword glslBuiltinFunction textureProjGrad
    702 syn keyword glslBuiltinFunction textureProjGradOffset
    703 syn keyword glslBuiltinFunction textureProjLod
    704 syn keyword glslBuiltinFunction textureProjLodOffset
    705 syn keyword glslBuiltinFunction textureProjOffset
    706 syn keyword glslBuiltinFunction textureQueryLevels
    707 syn keyword glslBuiltinFunction textureQueryLod
    708 syn keyword glslBuiltinFunction textureSize
    709 syn keyword glslBuiltinFunction traceRayEXT
    710 syn keyword glslBuiltinFunction transpose
    711 syn keyword glslBuiltinFunction trunc
    712 syn keyword glslBuiltinFunction uaddCarry
    713 syn keyword glslBuiltinFunction uintBitsToFloat
    714 syn keyword glslBuiltinFunction umulExtended
    715 syn keyword glslBuiltinFunction unpackDouble2x32
    716 syn keyword glslBuiltinFunction unpackHalf2x16
    717 syn keyword glslBuiltinFunction unpackSnorm2x16
    718 syn keyword glslBuiltinFunction unpackSnorm4x8
    719 syn keyword glslBuiltinFunction unpackUnorm2x16
    720 syn keyword glslBuiltinFunction unpackUnorm4x8
    721 syn keyword glslBuiltinFunction usubBorrow
    722 
    723 hi def link glslConditional     Conditional
    724 hi def link glslRepeat          Repeat
    725 hi def link glslStatement       Statement
    726 hi def link glslTodo            Todo
    727 hi def link glslCommentL        glslComment
    728 hi def link glslCommentStart    glslComment
    729 hi def link glslComment         Comment
    730 hi def link glslPreCondit       PreCondit
    731 hi def link glslDefine          Define
    732 hi def link glslTokenConcat     glslPreProc
    733 hi def link glslPredefinedMacro Macro
    734 hi def link glslPreProc         PreProc
    735 hi def link glslInclude         Include
    736 hi def link glslBoolean         Boolean
    737 hi def link glslDecimalInt      glslInteger
    738 hi def link glslOctalInt        glslInteger
    739 hi def link glslHexInt          glslInteger
    740 hi def link glslInteger         Number
    741 hi def link glslFloat           Float
    742 hi def link glslIdentifierPrime glslIdentifier
    743 hi def link glslIdentifier      Identifier
    744 hi def link glslStructure       Structure
    745 hi def link glslType            Type
    746 hi def link glslQualifier       StorageClass
    747 hi def link glslBuiltinConstant Constant
    748 hi def link glslBuiltinFunction Function
    749 hi def link glslBuiltinVariable Identifier
    750 hi def link glslSwizzle         Identifier
    751 
    752 let b:current_syntax = 'glsl'