| " Language: OpenGL Shading Language |
| " Maintainer: Gregory Anders <greg@gpanders.com> |
| " Last Modified: 2024 Jul 21 |
| " Upstream: https://github.com/tikhomirov/vim-glsl |
| |
| if exists('b:current_syntax') |
| finish |
| endif |
| |
| " Statements |
| syn keyword glslConditional if else switch case default |
| syn keyword glslRepeat for while do |
| syn keyword glslStatement discard return break continue |
| |
| " Comments |
| syn keyword glslTodo contained TODO FIXME XXX NOTE |
| syn region glslCommentL start="//" skip="\\$" end="$" keepend contains=glslTodo,@Spell |
| syn region glslComment matchgroup=glslCommentStart start="/\*" end="\*/" extend contains=glslTodo,@Spell |
| |
| " Preprocessor |
| syn region glslPreCondit start="^\s*#\s*\(if\|ifdef\|ifndef\|else\|elif\|endif\)" skip="\\$" end="$" keepend |
| syn region glslDefine start="^\s*#\s*\(define\|undef\)" skip="\\$" end="$" keepend |
| syn keyword glslTokenConcat ## |
| syn keyword glslPredefinedMacro __LINE__ __FILE__ __VERSION__ GL_ES |
| syn region glslPreProc start="^\s*#\s*\(error\|pragma\|extension\|version\|line\)" skip="\\$" end="$" keepend |
| syn region glslInclude start="^\s*#\s*include" skip="\\$" end="$" keepend |
| |
| " Folding Blocks |
| syn region glslCurlyBlock start="{" end="}" transparent fold |
| syn region glslParenBlock start="(" end=")" transparent fold |
| |
| " Boolean Constants |
| syn keyword glslBoolean true false |
| |
| " Integer Numbers |
| syn match glslDecimalInt display "\<\(0\|[1-9]\d*\)[uU]\?" |
| syn match glslOctalInt display "\<0\o\+[uU]\?" |
| syn match glslHexInt display "\<0[xX]\x\+[uU]\?" |
| |
| " Float Numbers |
| syn match glslFloat display "\<\d\+\.\([eE][+-]\=\d\+\)\=\(lf\|LF\|f\|F\)\=" |
| syn match glslFloat display "\<\.\d\+\([eE][+-]\=\d\+\)\=\(lf\|LF\|f\|F\)\=" |
| syn match glslFloat display "\<\d\+[eE][+-]\=\d\+\(lf\|LF\|f\|F\)\=" |
| syn match glslFloat display "\<\d\+\.\d\+\([eE][+-]\=\d\+\)\=\(lf\|LF\|f\|F\)\=" |
| |
| " Swizzles |
| syn match glslSwizzle display /\.[xyzw]\{1,4\}\>/ |
| syn match glslSwizzle display /\.[rgba]\{1,4\}\>/ |
| syn match glslSwizzle display /\.[stpq]\{1,4\}\>/ |
| |
| " Structure |
| syn keyword glslStructure struct nextgroup=glslIdentifier skipwhite skipempty |
| |
| syn match glslIdentifier contains=glslIdentifierPrime "\%([a-zA-Z_]\)\%([a-zA-Z0-9_]\)*" display contained |
| |
| " Types |
| syn keyword glslType accelerationStructureEXT |
| syn keyword glslType atomic_uint |
| syn keyword glslType bool |
| syn keyword glslType bvec2 |
| syn keyword glslType bvec3 |
| syn keyword glslType bvec4 |
| syn keyword glslType dmat2 |
| syn keyword glslType dmat2x2 |
| syn keyword glslType dmat2x3 |
| syn keyword glslType dmat2x4 |
| syn keyword glslType dmat3 |
| syn keyword glslType dmat3x2 |
| syn keyword glslType dmat3x3 |
| syn keyword glslType dmat3x4 |
| syn keyword glslType dmat4 |
| syn keyword glslType dmat4x2 |
| syn keyword glslType dmat4x3 |
| syn keyword glslType dmat4x4 |
| syn keyword glslType double |
| syn keyword glslType dvec2 |
| syn keyword glslType dvec3 |
| syn keyword glslType dvec4 |
| syn keyword glslType float |
| syn keyword glslType iimage1D |
| syn keyword glslType iimage1DArray |
| syn keyword glslType iimage2D |
| syn keyword glslType iimage2DArray |
| syn keyword glslType iimage2DMS |
| syn keyword glslType iimage2DMSArray |
| syn keyword glslType iimage2DRect |
| syn keyword glslType iimage3D |
| syn keyword glslType iimageBuffer |
| syn keyword glslType iimageCube |
| syn keyword glslType iimageCubeArray |
| syn keyword glslType image1D |
| syn keyword glslType image1DArray |
| syn keyword glslType image2D |
| syn keyword glslType image2DArray |
| syn keyword glslType image2DMS |
| syn keyword glslType image2DMSArray |
| syn keyword glslType image2DRect |
| syn keyword glslType image3D |
| syn keyword glslType imageBuffer |
| syn keyword glslType imageCube |
| syn keyword glslType imageCubeArray |
| syn keyword glslType int |
| syn keyword glslType isampler1D |
| syn keyword glslType isampler1DArray |
| syn keyword glslType isampler2D |
| syn keyword glslType isampler2DArray |
| syn keyword glslType isampler2DMS |
| syn keyword glslType isampler2DMSArray |
| syn keyword glslType isampler2DRect |
| syn keyword glslType isampler3D |
| syn keyword glslType isamplerBuffer |
| syn keyword glslType isamplerCube |
| syn keyword glslType isamplerCubeArray |
| syn keyword glslType ivec2 |
| syn keyword glslType ivec3 |
| syn keyword glslType ivec4 |
| syn keyword glslType mat2 |
| syn keyword glslType mat2x2 |
| syn keyword glslType mat2x3 |
| syn keyword glslType mat2x4 |
| syn keyword glslType mat3 |
| syn keyword glslType mat3x2 |
| syn keyword glslType mat3x3 |
| syn keyword glslType mat3x4 |
| syn keyword glslType mat4 |
| syn keyword glslType mat4x2 |
| syn keyword glslType mat4x3 |
| syn keyword glslType mat4x4 |
| syn keyword glslType rayQueryEXT |
| syn keyword glslType sampler1D |
| syn keyword glslType sampler1DArray |
| syn keyword glslType sampler1DArrayShadow |
| syn keyword glslType sampler1DShadow |
| syn keyword glslType sampler2D |
| syn keyword glslType sampler2DArray |
| syn keyword glslType sampler2DArrayShadow |
| syn keyword glslType sampler2DMS |
| syn keyword glslType sampler2DMSArray |
| syn keyword glslType sampler2DRect |
| syn keyword glslType sampler2DRectShadow |
| syn keyword glslType sampler2DShadow |
| syn keyword glslType sampler3D |
| syn keyword glslType samplerBuffer |
| syn keyword glslType samplerCube |
| syn keyword glslType samplerCubeArray |
| syn keyword glslType samplerCubeArrayShadow |
| syn keyword glslType samplerCubeShadow |
| syn keyword glslType uimage1D |
| syn keyword glslType uimage1DArray |
| syn keyword glslType uimage2D |
| syn keyword glslType uimage2DArray |
| syn keyword glslType uimage2DMS |
| syn keyword glslType uimage2DMSArray |
| syn keyword glslType uimage2DRect |
| syn keyword glslType uimage3D |
| syn keyword glslType uimageBuffer |
| syn keyword glslType uimageCube |
| syn keyword glslType uimageCubeArray |
| syn keyword glslType uint |
| syn keyword glslType usampler1D |
| syn keyword glslType usampler1DArray |
| syn keyword glslType usampler2D |
| syn keyword glslType usampler2DArray |
| syn keyword glslType usampler2DMS |
| syn keyword glslType usampler2DMSArray |
| syn keyword glslType usampler2DRect |
| syn keyword glslType usampler3D |
| syn keyword glslType usamplerBuffer |
| syn keyword glslType usamplerCube |
| syn keyword glslType usamplerCubeArray |
| syn keyword glslType uvec2 |
| syn keyword glslType uvec3 |
| syn keyword glslType uvec4 |
| syn keyword glslType vec2 |
| syn keyword glslType vec3 |
| syn keyword glslType vec4 |
| syn keyword glslType void |
| |
| " Qualifiers |
| syn keyword glslQualifier align |
| syn keyword glslQualifier attribute |
| syn keyword glslQualifier binding |
| syn keyword glslQualifier buffer |
| syn keyword glslQualifier callableDataEXT |
| syn keyword glslQualifier callableDataInEXT |
| syn keyword glslQualifier ccw |
| syn keyword glslQualifier centroid |
| syn keyword glslQualifier centroid varying |
| syn keyword glslQualifier coherent |
| syn keyword glslQualifier column_major |
| syn keyword glslQualifier const |
| syn keyword glslQualifier cw |
| syn keyword glslQualifier depth_any |
| syn keyword glslQualifier depth_greater |
| syn keyword glslQualifier depth_less |
| syn keyword glslQualifier depth_unchanged |
| syn keyword glslQualifier early_fragment_tests |
| syn keyword glslQualifier equal_spacing |
| syn keyword glslQualifier flat |
| syn keyword glslQualifier fractional_even_spacing |
| syn keyword glslQualifier fractional_odd_spacing |
| syn keyword glslQualifier highp |
| syn keyword glslQualifier hitAttributeEXT |
| syn keyword glslQualifier in |
| syn keyword glslQualifier index |
| syn keyword glslQualifier inout |
| syn keyword glslQualifier invariant |
| syn keyword glslQualifier invocations |
| syn keyword glslQualifier isolines |
| syn keyword glslQualifier layout |
| syn keyword glslQualifier line_strip |
| syn keyword glslQualifier lines |
| syn keyword glslQualifier lines_adjacency |
| syn keyword glslQualifier local_size_x |
| syn keyword glslQualifier local_size_y |
| syn keyword glslQualifier local_size_z |
| syn keyword glslQualifier location |
| syn keyword glslQualifier lowp |
| syn keyword glslQualifier max_vertices |
| syn keyword glslQualifier mediump |
| syn keyword glslQualifier nonuniformEXT |
| syn keyword glslQualifier noperspective |
| syn keyword glslQualifier offset |
| syn keyword glslQualifier origin_upper_left |
| syn keyword glslQualifier out |
| syn keyword glslQualifier packed |
| syn keyword glslQualifier patch |
| syn keyword glslQualifier pixel_center_integer |
| syn keyword glslQualifier point_mode |
| syn keyword glslQualifier points |
| syn keyword glslQualifier precise |
| syn keyword glslQualifier precision |
| syn keyword glslQualifier quads |
| syn keyword glslQualifier r11f_g11f_b10f |
| syn keyword glslQualifier r16 |
| syn keyword glslQualifier r16_snorm |
| syn keyword glslQualifier r16f |
| syn keyword glslQualifier r16i |
| syn keyword glslQualifier r16ui |
| syn keyword glslQualifier r32f |
| syn keyword glslQualifier r32i |
| syn keyword glslQualifier r32ui |
| syn keyword glslQualifier r8 |
| syn keyword glslQualifier r8_snorm |
| syn keyword glslQualifier r8i |
| syn keyword glslQualifier r8ui |
| syn keyword glslQualifier rayPayloadEXT |
| syn keyword glslQualifier rayPayloadInEXT |
| syn keyword glslQualifier readonly |
| syn keyword glslQualifier restrict |
| syn keyword glslQualifier rg16 |
| syn keyword glslQualifier rg16_snorm |
| syn keyword glslQualifier rg16f |
| syn keyword glslQualifier rg16i |
| syn keyword glslQualifier rg16ui |
| syn keyword glslQualifier rg32f |
| syn keyword glslQualifier rg32i |
| syn keyword glslQualifier rg32ui |
| syn keyword glslQualifier rg8 |
| syn keyword glslQualifier rg8_snorm |
| syn keyword glslQualifier rg8i |
| syn keyword glslQualifier rg8ui |
| syn keyword glslQualifier rgb10_a2 |
| syn keyword glslQualifier rgb10_a2ui |
| syn keyword glslQualifier rgba16 |
| syn keyword glslQualifier rgba16_snorm |
| syn keyword glslQualifier rgba16f |
| syn keyword glslQualifier rgba16i |
| syn keyword glslQualifier rgba16ui |
| syn keyword glslQualifier rgba32f |
| syn keyword glslQualifier rgba32i |
| syn keyword glslQualifier rgba32ui |
| syn keyword glslQualifier rgba8 |
| syn keyword glslQualifier rgba8_snorm |
| syn keyword glslQualifier rgba8i |
| syn keyword glslQualifier rgba8ui |
| syn keyword glslQualifier row_major |
| syn keyword glslQualifier sample |
| syn keyword glslQualifier shaderRecordEXT |
| syn keyword glslQualifier shared |
| syn keyword glslQualifier smooth |
| syn keyword glslQualifier std140 |
| syn keyword glslQualifier std430 |
| syn keyword glslQualifier stream |
| syn keyword glslQualifier triangle_strip |
| syn keyword glslQualifier triangles |
| syn keyword glslQualifier triangles_adjacency |
| syn keyword glslQualifier uniform |
| syn keyword glslQualifier varying |
| syn keyword glslQualifier vertices |
| syn keyword glslQualifier volatile |
| syn keyword glslQualifier writeonly |
| syn keyword glslQualifier xfb_buffer |
| syn keyword glslQualifier xfb_offset |
| syn keyword glslQualifier xfb_stride |
| |
| " Built-in Constants |
| syn keyword glslBuiltinConstant gl_CullDistance |
| syn keyword glslBuiltinConstant gl_HitKindBackFacingTriangleEXT |
| syn keyword glslBuiltinConstant gl_HitKindFrontFacingTriangleEXT |
| syn keyword glslBuiltinConstant gl_MaxAtomicCounterBindings |
| syn keyword glslBuiltinConstant gl_MaxAtomicCounterBufferSize |
| syn keyword glslBuiltinConstant gl_MaxClipDistances |
| syn keyword glslBuiltinConstant gl_MaxClipPlanes |
| syn keyword glslBuiltinConstant gl_MaxCombinedAtomicCounterBuffers |
| syn keyword glslBuiltinConstant gl_MaxCombinedAtomicCounters |
| syn keyword glslBuiltinConstant gl_MaxCombinedClipAndCullDistances |
| syn keyword glslBuiltinConstant gl_MaxCombinedImageUniforms |
| syn keyword glslBuiltinConstant gl_MaxCombinedImageUnitsAndFragmentOutputs |
| syn keyword glslBuiltinConstant gl_MaxCombinedShaderOutputResources |
| syn keyword glslBuiltinConstant gl_MaxCombinedTextureImageUnits |
| syn keyword glslBuiltinConstant gl_MaxComputeAtomicCounterBuffers |
| syn keyword glslBuiltinConstant gl_MaxComputeAtomicCounters |
| syn keyword glslBuiltinConstant gl_MaxComputeImageUniforms |
| syn keyword glslBuiltinConstant gl_MaxComputeTextureImageUnits |
| syn keyword glslBuiltinConstant gl_MaxComputeUniformComponents |
| syn keyword glslBuiltinConstant gl_MaxComputeWorkGroupCount |
| syn keyword glslBuiltinConstant gl_MaxComputeWorkGroupSize |
| syn keyword glslBuiltinConstant gl_MaxCullDistances |
| syn keyword glslBuiltinConstant gl_MaxDrawBuffers |
| syn keyword glslBuiltinConstant gl_MaxFragmentAtomicCounterBuffers |
| syn keyword glslBuiltinConstant gl_MaxFragmentAtomicCounters |
| syn keyword glslBuiltinConstant gl_MaxFragmentImageUniforms |
| syn keyword glslBuiltinConstant gl_MaxFragmentInputComponents |
| syn keyword glslBuiltinConstant gl_MaxFragmentInputVectors |
| syn keyword glslBuiltinConstant gl_MaxFragmentUniformComponents |
| syn keyword glslBuiltinConstant gl_MaxFragmentUniformVectors |
| syn keyword glslBuiltinConstant gl_MaxGeometryAtomicCounterBuffers |
| syn keyword glslBuiltinConstant gl_MaxGeometryAtomicCounters |
| syn keyword glslBuiltinConstant gl_MaxGeometryImageUniforms |
| syn keyword glslBuiltinConstant gl_MaxGeometryInputComponents |
| syn keyword glslBuiltinConstant gl_MaxGeometryOutputComponents |
| syn keyword glslBuiltinConstant gl_MaxGeometryOutputVertices |
| syn keyword glslBuiltinConstant gl_MaxGeometryTextureImageUnits |
| syn keyword glslBuiltinConstant gl_MaxGeometryTotalOutputComponents |
| syn keyword glslBuiltinConstant gl_MaxGeometryUniformComponents |
| syn keyword glslBuiltinConstant gl_MaxGeometryVaryingComponents |
| syn keyword glslBuiltinConstant gl_MaxImageSamples |
| syn keyword glslBuiltinConstant gl_MaxImageUnits |
| syn keyword glslBuiltinConstant gl_MaxLights |
| syn keyword glslBuiltinConstant gl_MaxPatchVertices |
| syn keyword glslBuiltinConstant gl_MaxProgramTexelOffset |
| syn keyword glslBuiltinConstant gl_MaxSamples |
| syn keyword glslBuiltinConstant gl_MaxTessControlAtomicCounterBuffers |
| syn keyword glslBuiltinConstant gl_MaxTessControlAtomicCounters |
| syn keyword glslBuiltinConstant gl_MaxTessControlImageUniforms |
| syn keyword glslBuiltinConstant gl_MaxTessControlInputComponents |
| syn keyword glslBuiltinConstant gl_MaxTessControlOutputComponents |
| syn keyword glslBuiltinConstant gl_MaxTessControlTextureImageUnits |
| syn keyword glslBuiltinConstant gl_MaxTessControlTotalOutputComponents |
| syn keyword glslBuiltinConstant gl_MaxTessControlUniformComponents |
| syn keyword glslBuiltinConstant gl_MaxTessEvaluationAtomicCounterBuffers |
| syn keyword glslBuiltinConstant gl_MaxTessEvaluationAtomicCounters |
| syn keyword glslBuiltinConstant gl_MaxTessEvaluationImageUniforms |
| syn keyword glslBuiltinConstant gl_MaxTessEvaluationInputComponents |
| syn keyword glslBuiltinConstant gl_MaxTessEvaluationOutputComponents |
| syn keyword glslBuiltinConstant gl_MaxTessEvaluationTextureImageUnits |
| syn keyword glslBuiltinConstant gl_MaxTessEvaluationUniformComponents |
| syn keyword glslBuiltinConstant gl_MaxTessGenLevel |
| syn keyword glslBuiltinConstant gl_MaxTessPatchComponents |
| syn keyword glslBuiltinConstant gl_MaxTextureCoords |
| syn keyword glslBuiltinConstant gl_MaxTextureImageUnits |
| syn keyword glslBuiltinConstant gl_MaxTextureUnits |
| syn keyword glslBuiltinConstant gl_MaxTransformFeedbackBuffers |
| syn keyword glslBuiltinConstant gl_MaxTransformFeedbackInterleavedComponents |
| syn keyword glslBuiltinConstant gl_MaxVaryingComponents |
| syn keyword glslBuiltinConstant gl_MaxVaryingFloats |
| syn keyword glslBuiltinConstant gl_MaxVaryingVectors |
| syn keyword glslBuiltinConstant gl_MaxVertexAtomicCounterBuffers |
| syn keyword glslBuiltinConstant gl_MaxVertexAtomicCounters |
| syn keyword glslBuiltinConstant gl_MaxVertexAttribs |
| syn keyword glslBuiltinConstant gl_MaxVertexImageUniforms |
| syn keyword glslBuiltinConstant gl_MaxVertexOutputComponents |
| syn keyword glslBuiltinConstant gl_MaxVertexOutputVectors |
| syn keyword glslBuiltinConstant gl_MaxVertexTextureImageUnits |
| syn keyword glslBuiltinConstant gl_MaxVertexUniformComponents |
| syn keyword glslBuiltinConstant gl_MaxVertexUniformVectors |
| syn keyword glslBuiltinConstant gl_MaxViewports |
| syn keyword glslBuiltinConstant gl_MinProgramTexelOffset |
| syn keyword glslBuiltinConstant gl_RayFlagsCullBackFacingTrianglesEXT |
| syn keyword glslBuiltinConstant gl_RayFlagsCullFrontFacingTrianglesEXT |
| syn keyword glslBuiltinConstant gl_RayFlagsCullNoOpaqueEXT |
| syn keyword glslBuiltinConstant gl_RayFlagsCullOpaqueEXT |
| syn keyword glslBuiltinConstant gl_RayFlagsNoOpaqueEXT |
| syn keyword glslBuiltinConstant gl_RayFlagsNoneEXT |
| syn keyword glslBuiltinConstant gl_RayFlagsOpaqueEXT |
| syn keyword glslBuiltinConstant gl_RayFlagsSkipClosestHitShaderEXT |
| syn keyword glslBuiltinConstant gl_RayFlagsTerminateOnFirstHitEXT |
| syn keyword glslBuiltinConstant gl_RayQueryCandidateIntersectionAABBEXT |
| syn keyword glslBuiltinConstant gl_RayQueryCandidateIntersectionTriangleEXT |
| syn keyword glslBuiltinConstant gl_RayQueryCommittedIntersectionGeneratedEXT |
| syn keyword glslBuiltinConstant gl_RayQueryCommittedIntersectionNoneEXT |
| syn keyword glslBuiltinConstant gl_RayQueryCommittedIntersectionTriangleEXT |
| |
| " Built-in Variables |
| syn keyword glslBuiltinVariable gl_BackColor |
| syn keyword glslBuiltinVariable gl_BackLightModelProduct |
| syn keyword glslBuiltinVariable gl_BackLightProduct |
| syn keyword glslBuiltinVariable gl_BackLightProduct |
| syn keyword glslBuiltinVariable gl_BackMaterial |
| syn keyword glslBuiltinVariable gl_BackSecondaryColor |
| syn keyword glslBuiltinVariable gl_ClipDistance |
| syn keyword glslBuiltinVariable gl_ClipPlane |
| syn keyword glslBuiltinVariable gl_ClipVertex |
| syn keyword glslBuiltinVariable gl_Color |
| syn keyword glslBuiltinVariable gl_DepthRange |
| syn keyword glslBuiltinVariable gl_EyePlaneQ |
| syn keyword glslBuiltinVariable gl_EyePlaneR |
| syn keyword glslBuiltinVariable gl_EyePlaneS |
| syn keyword glslBuiltinVariable gl_EyePlaneT |
| syn keyword glslBuiltinVariable gl_Fog |
| syn keyword glslBuiltinVariable gl_FogCoord |
| syn keyword glslBuiltinVariable gl_FogFragCoord |
| syn keyword glslBuiltinVariable gl_FragColor |
| syn keyword glslBuiltinVariable gl_FragCoord |
| syn keyword glslBuiltinVariable gl_FragData |
| syn keyword glslBuiltinVariable gl_FragDepth |
| syn keyword glslBuiltinVariable gl_FrontColor |
| syn keyword glslBuiltinVariable gl_FrontFacing |
| syn keyword glslBuiltinVariable gl_FrontLightModelProduct |
| syn keyword glslBuiltinVariable gl_FrontLightProduct |
| syn keyword glslBuiltinVariable gl_FrontMaterial |
| syn keyword glslBuiltinVariable gl_FrontSecondaryColor |
| syn keyword glslBuiltinVariable gl_GeometryIndexEXT |
| syn keyword glslBuiltinVariable gl_GlobalInvocationID |
| syn keyword glslBuiltinVariable gl_HelperInvocation |
| syn keyword glslBuiltinVariable gl_HitKindEXT |
| syn keyword glslBuiltinVariable gl_HitTEXT |
| syn keyword glslBuiltinVariable gl_IncomingRayFlagsEXT |
| syn keyword glslBuiltinVariable gl_InstanceCustomIndexEXT |
| syn keyword glslBuiltinVariable gl_InstanceID |
| syn keyword glslBuiltinVariable gl_InstanceID |
| syn keyword glslBuiltinVariable gl_InvocationID |
| syn keyword glslBuiltinVariable gl_LaunchIDEXT |
| syn keyword glslBuiltinVariable gl_LaunchSizeEXT |
| syn keyword glslBuiltinVariable gl_Layer |
| syn keyword glslBuiltinVariable gl_LightModel |
| syn keyword glslBuiltinVariable gl_LightSource |
| syn keyword glslBuiltinVariable gl_LocalInvocationID |
| syn keyword glslBuiltinVariable gl_LocalInvocationIndex |
| syn keyword glslBuiltinVariable gl_ModelViewMatrix |
| syn keyword glslBuiltinVariable gl_ModelViewMatrixInverse |
| syn keyword glslBuiltinVariable gl_ModelViewMatrixInverseTranspose |
| syn keyword glslBuiltinVariable gl_ModelViewMatrixTranspose |
| syn keyword glslBuiltinVariable gl_ModelViewProjectionMatrix |
| syn keyword glslBuiltinVariable gl_ModelViewProjectionMatrixInverse |
| syn keyword glslBuiltinVariable gl_ModelViewProjectionMatrixInverseTranspose |
| syn keyword glslBuiltinVariable gl_ModelViewProjectionMatrixTranspose |
| syn keyword glslBuiltinVariable gl_MultiTexCoord0 |
| syn keyword glslBuiltinVariable gl_MultiTexCoord1 |
| syn keyword glslBuiltinVariable gl_MultiTexCoord2 |
| syn keyword glslBuiltinVariable gl_MultiTexCoord3 |
| syn keyword glslBuiltinVariable gl_MultiTexCoord4 |
| syn keyword glslBuiltinVariable gl_MultiTexCoord5 |
| syn keyword glslBuiltinVariable gl_MultiTexCoord6 |
| syn keyword glslBuiltinVariable gl_MultiTexCoord7 |
| syn keyword glslBuiltinVariable gl_Normal |
| syn keyword glslBuiltinVariable gl_NormalMatrix |
| syn keyword glslBuiltinVariable gl_NormalScale |
| syn keyword glslBuiltinVariable gl_NumSamples |
| syn keyword glslBuiltinVariable gl_NumWorkGroups |
| syn keyword glslBuiltinVariable gl_ObjectPlaneQ |
| syn keyword glslBuiltinVariable gl_ObjectPlaneR |
| syn keyword glslBuiltinVariable gl_ObjectPlaneS |
| syn keyword glslBuiltinVariable gl_ObjectPlaneT |
| syn keyword glslBuiltinVariable gl_ObjectRayDirectionEXT |
| syn keyword glslBuiltinVariable gl_ObjectRayOriginEXT |
| syn keyword glslBuiltinVariable gl_ObjectToWorld3x4EXT |
| syn keyword glslBuiltinVariable gl_ObjectToWorldEXT |
| syn keyword glslBuiltinVariable gl_PatchVerticesIn |
| syn keyword glslBuiltinVariable gl_Point |
| syn keyword glslBuiltinVariable gl_PointCoord |
| syn keyword glslBuiltinVariable gl_PointSize |
| syn keyword glslBuiltinVariable gl_Position |
| syn keyword glslBuiltinVariable gl_PrimitiveID |
| syn keyword glslBuiltinVariable gl_PrimitiveID |
| syn keyword glslBuiltinVariable gl_PrimitiveIDIn |
| syn keyword glslBuiltinVariable gl_ProjectionMatrix |
| syn keyword glslBuiltinVariable gl_ProjectionMatrixInverse |
| syn keyword glslBuiltinVariable gl_ProjectionMatrixInverseTranspose |
| syn keyword glslBuiltinVariable gl_ProjectionMatrixTranspose |
| syn keyword glslBuiltinVariable gl_RayTmaxEXT |
| syn keyword glslBuiltinVariable gl_RayTminEXT |
| syn keyword glslBuiltinVariable gl_SampleID |
| syn keyword glslBuiltinVariable gl_SampleMask |
| syn keyword glslBuiltinVariable gl_SampleMaskIn |
| syn keyword glslBuiltinVariable gl_SamplePosition |
| syn keyword glslBuiltinVariable gl_SecondaryColor |
| syn keyword glslBuiltinVariable gl_TessCoord |
| syn keyword glslBuiltinVariable gl_TessLevelInner |
| syn keyword glslBuiltinVariable gl_TessLevelOuter |
| syn keyword glslBuiltinVariable gl_TexCoord |
| syn keyword glslBuiltinVariable gl_TextureEnvColor |
| syn keyword glslBuiltinVariable gl_TextureMatrix |
| syn keyword glslBuiltinVariable gl_TextureMatrixInverse |
| syn keyword glslBuiltinVariable gl_TextureMatrixInverseTranspose |
| syn keyword glslBuiltinVariable gl_TextureMatrixTranspose |
| syn keyword glslBuiltinVariable gl_Vertex |
| syn keyword glslBuiltinVariable gl_VertexID |
| syn keyword glslBuiltinVariable gl_VertexIndex |
| syn keyword glslBuiltinVariable gl_ViewportIndex |
| syn keyword glslBuiltinVariable gl_WorkGroupID |
| syn keyword glslBuiltinVariable gl_WorkGroupSize |
| syn keyword glslBuiltinVariable gl_WorldRayDirectionEXT |
| syn keyword glslBuiltinVariable gl_WorldRayOriginEXT |
| syn keyword glslBuiltinVariable gl_WorldToObject3x4EXT |
| syn keyword glslBuiltinVariable gl_WorldToObjectEXT |
| syn keyword glslBuiltinVariable gl_in |
| syn keyword glslBuiltinVariable gl_out |
| |
| " Built-in Functions |
| syn keyword glslBuiltinFunction EmitStreamVertex |
| syn keyword glslBuiltinFunction EmitVertex |
| syn keyword glslBuiltinFunction EndPrimitive |
| syn keyword glslBuiltinFunction EndStreamPrimitive |
| syn keyword glslBuiltinFunction abs |
| syn keyword glslBuiltinFunction acos |
| syn keyword glslBuiltinFunction acosh |
| syn keyword glslBuiltinFunction all |
| syn keyword glslBuiltinFunction any |
| syn keyword glslBuiltinFunction asin |
| syn keyword glslBuiltinFunction asinh |
| syn keyword glslBuiltinFunction atan |
| syn keyword glslBuiltinFunction atanh |
| syn keyword glslBuiltinFunction atomicAdd |
| syn keyword glslBuiltinFunction atomicAnd |
| syn keyword glslBuiltinFunction atomicCompSwap |
| syn keyword glslBuiltinFunction atomicCounter |
| syn keyword glslBuiltinFunction atomicCounterDecrement |
| syn keyword glslBuiltinFunction atomicCounterIncrement |
| syn keyword glslBuiltinFunction atomicExchange |
| syn keyword glslBuiltinFunction atomicMax |
| syn keyword glslBuiltinFunction atomicMin |
| syn keyword glslBuiltinFunction atomicOr |
| syn keyword glslBuiltinFunction atomicXor |
| syn keyword glslBuiltinFunction barrier |
| syn keyword glslBuiltinFunction bitCount |
| syn keyword glslBuiltinFunction bitfieldExtract |
| syn keyword glslBuiltinFunction bitfieldInsert |
| syn keyword glslBuiltinFunction bitfieldReverse |
| syn keyword glslBuiltinFunction ceil |
| syn keyword glslBuiltinFunction clamp |
| syn keyword glslBuiltinFunction cos |
| syn keyword glslBuiltinFunction cosh |
| syn keyword glslBuiltinFunction cross |
| syn keyword glslBuiltinFunction dFdx |
| syn keyword glslBuiltinFunction dFdxCoarse |
| syn keyword glslBuiltinFunction dFdxFine |
| syn keyword glslBuiltinFunction dFdy |
| syn keyword glslBuiltinFunction dFdyCoarse |
| syn keyword glslBuiltinFunction dFdyFine |
| syn keyword glslBuiltinFunction degrees |
| syn keyword glslBuiltinFunction determinant |
| syn keyword glslBuiltinFunction distance |
| syn keyword glslBuiltinFunction dot |
| syn keyword glslBuiltinFunction equal |
| syn keyword glslBuiltinFunction executeCallableEXT |
| syn keyword glslBuiltinFunction exp |
| syn keyword glslBuiltinFunction exp2 |
| syn keyword glslBuiltinFunction faceforward |
| syn keyword glslBuiltinFunction findLSB |
| syn keyword glslBuiltinFunction findMSB |
| syn keyword glslBuiltinFunction floatBitsToInt |
| syn keyword glslBuiltinFunction floatBitsToUint |
| syn keyword glslBuiltinFunction floor |
| syn keyword glslBuiltinFunction fma |
| syn keyword glslBuiltinFunction fract |
| syn keyword glslBuiltinFunction frexp |
| syn keyword glslBuiltinFunction ftransform |
| syn keyword glslBuiltinFunction fwidth |
| syn keyword glslBuiltinFunction fwidthCoarse |
| syn keyword glslBuiltinFunction fwidthFine |
| syn keyword glslBuiltinFunction greaterThan |
| syn keyword glslBuiltinFunction greaterThanEqual |
| syn keyword glslBuiltinFunction groupMemoryBarrier |
| syn keyword glslBuiltinFunction ignoreIntersectionEXT |
| syn keyword glslBuiltinFunction imageAtomicAdd |
| syn keyword glslBuiltinFunction imageAtomicAnd |
| syn keyword glslBuiltinFunction imageAtomicCompSwap |
| syn keyword glslBuiltinFunction imageAtomicExchange |
| syn keyword glslBuiltinFunction imageAtomicMax |
| syn keyword glslBuiltinFunction imageAtomicMin |
| syn keyword glslBuiltinFunction imageAtomicOr |
| syn keyword glslBuiltinFunction imageAtomicXor |
| syn keyword glslBuiltinFunction imageLoad |
| syn keyword glslBuiltinFunction imageSize |
| syn keyword glslBuiltinFunction imageStore |
| syn keyword glslBuiltinFunction imulExtended |
| syn keyword glslBuiltinFunction intBitsToFloat |
| syn keyword glslBuiltinFunction interpolateAtCentroid |
| syn keyword glslBuiltinFunction interpolateAtOffset |
| syn keyword glslBuiltinFunction interpolateAtSample |
| syn keyword glslBuiltinFunction inverse |
| syn keyword glslBuiltinFunction inversesqrt |
| syn keyword glslBuiltinFunction isinf |
| syn keyword glslBuiltinFunction isnan |
| syn keyword glslBuiltinFunction ldexp |
| syn keyword glslBuiltinFunction length |
| syn keyword glslBuiltinFunction lessThan |
| syn keyword glslBuiltinFunction lessThanEqual |
| syn keyword glslBuiltinFunction log |
| syn keyword glslBuiltinFunction log2 |
| syn keyword glslBuiltinFunction matrixCompMult |
| syn keyword glslBuiltinFunction max |
| syn keyword glslBuiltinFunction memoryBarrier |
| syn keyword glslBuiltinFunction memoryBarrierAtomicCounter |
| syn keyword glslBuiltinFunction memoryBarrierBuffer |
| syn keyword glslBuiltinFunction memoryBarrierImage |
| syn keyword glslBuiltinFunction memoryBarrierShared |
| syn keyword glslBuiltinFunction min |
| syn keyword glslBuiltinFunction mix |
| syn keyword glslBuiltinFunction mod |
| syn keyword glslBuiltinFunction modf |
| syn keyword glslBuiltinFunction noise1 |
| syn keyword glslBuiltinFunction noise2 |
| syn keyword glslBuiltinFunction noise3 |
| syn keyword glslBuiltinFunction noise4 |
| syn keyword glslBuiltinFunction normalize |
| syn keyword glslBuiltinFunction not |
| syn keyword glslBuiltinFunction notEqual |
| syn keyword glslBuiltinFunction outerProduct |
| syn keyword glslBuiltinFunction packDouble2x32 |
| syn keyword glslBuiltinFunction packHalf2x16 |
| syn keyword glslBuiltinFunction packSnorm2x16 |
| syn keyword glslBuiltinFunction packSnorm4x8 |
| syn keyword glslBuiltinFunction packUnorm2x16 |
| syn keyword glslBuiltinFunction packUnorm4x8 |
| syn keyword glslBuiltinFunction pow |
| syn keyword glslBuiltinFunction radians |
| syn keyword glslBuiltinFunction rayQueryConfirmIntersectionEXT |
| syn keyword glslBuiltinFunction rayQueryGenerateIntersectionEXT |
| syn keyword glslBuiltinFunction rayQueryGetIntersectionBarycentricsEXT |
| syn keyword glslBuiltinFunction rayQueryGetIntersectionCandidateAABBOpaqueEXT |
| syn keyword glslBuiltinFunction rayQueryGetIntersectionFrontFaceEXT |
| syn keyword glslBuiltinFunction rayQueryGetIntersectionGeometryIndexEXT |
| syn keyword glslBuiltinFunction rayQueryGetIntersectionInstanceCustomIndexEXT |
| syn keyword glslBuiltinFunction rayQueryGetIntersectionInstanceIdEXT |
| syn keyword glslBuiltinFunction rayQueryGetIntersectionInstanceShaderBindingTableRecordOffsetEXT |
| syn keyword glslBuiltinFunction rayQueryGetIntersectionObjectRayDirectionEXT |
| syn keyword glslBuiltinFunction rayQueryGetIntersectionObjectRayOriginEXT |
| syn keyword glslBuiltinFunction rayQueryGetIntersectionObjectToWorldEXT |
| syn keyword glslBuiltinFunction rayQueryGetIntersectionPrimitiveIndexEXT |
| syn keyword glslBuiltinFunction rayQueryGetIntersectionTEXT |
| syn keyword glslBuiltinFunction rayQueryGetIntersectionTypeEXT |
| syn keyword glslBuiltinFunction rayQueryGetIntersectionWorldToObjectEXT |
| syn keyword glslBuiltinFunction rayQueryGetRayFlagsEXT |
| syn keyword glslBuiltinFunction rayQueryGetRayTMinEXT |
| syn keyword glslBuiltinFunction rayQueryGetWorldRayDirectionEXT |
| syn keyword glslBuiltinFunction rayQueryGetWorldRayOriginEXT |
| syn keyword glslBuiltinFunction rayQueryInitializeEXT |
| syn keyword glslBuiltinFunction rayQueryProceedEXT |
| syn keyword glslBuiltinFunction rayQueryTerminateEXT |
| syn keyword glslBuiltinFunction reflect |
| syn keyword glslBuiltinFunction refract |
| syn keyword glslBuiltinFunction reportIntersectionEXT |
| syn keyword glslBuiltinFunction round |
| syn keyword glslBuiltinFunction roundEven |
| syn keyword glslBuiltinFunction shadow1D |
| syn keyword glslBuiltinFunction shadow1DLod |
| syn keyword glslBuiltinFunction shadow1DProj |
| syn keyword glslBuiltinFunction shadow1DProjLod |
| syn keyword glslBuiltinFunction shadow2D |
| syn keyword glslBuiltinFunction shadow2DLod |
| syn keyword glslBuiltinFunction shadow2DProj |
| syn keyword glslBuiltinFunction shadow2DProjLod |
| syn keyword glslBuiltinFunction sign |
| syn keyword glslBuiltinFunction sin |
| syn keyword glslBuiltinFunction sinh |
| syn keyword glslBuiltinFunction smoothstep |
| syn keyword glslBuiltinFunction sqrt |
| syn keyword glslBuiltinFunction step |
| syn keyword glslBuiltinFunction tan |
| syn keyword glslBuiltinFunction tanh |
| syn keyword glslBuiltinFunction terminateRayEXT |
| syn keyword glslBuiltinFunction texelFetch |
| syn keyword glslBuiltinFunction texelFetchOffset |
| syn keyword glslBuiltinFunction texture |
| syn keyword glslBuiltinFunction texture1D |
| syn keyword glslBuiltinFunction texture1DLod |
| syn keyword glslBuiltinFunction texture1DProj |
| syn keyword glslBuiltinFunction texture1DProjLod |
| syn keyword glslBuiltinFunction texture2D |
| syn keyword glslBuiltinFunction texture2DLod |
| syn keyword glslBuiltinFunction texture2DProj |
| syn keyword glslBuiltinFunction texture2DProjLod |
| syn keyword glslBuiltinFunction texture3D |
| syn keyword glslBuiltinFunction texture3DLod |
| syn keyword glslBuiltinFunction texture3DProj |
| syn keyword glslBuiltinFunction texture3DProjLod |
| syn keyword glslBuiltinFunction textureCube |
| syn keyword glslBuiltinFunction textureCubeLod |
| syn keyword glslBuiltinFunction textureGather |
| syn keyword glslBuiltinFunction textureGatherOffset |
| syn keyword glslBuiltinFunction textureGatherOffsets |
| syn keyword glslBuiltinFunction textureGrad |
| syn keyword glslBuiltinFunction textureGradOffset |
| syn keyword glslBuiltinFunction textureLod |
| syn keyword glslBuiltinFunction textureLodOffset |
| syn keyword glslBuiltinFunction textureOffset |
| syn keyword glslBuiltinFunction textureProj |
| syn keyword glslBuiltinFunction textureProjGrad |
| syn keyword glslBuiltinFunction textureProjGradOffset |
| syn keyword glslBuiltinFunction textureProjLod |
| syn keyword glslBuiltinFunction textureProjLodOffset |
| syn keyword glslBuiltinFunction textureProjOffset |
| syn keyword glslBuiltinFunction textureQueryLevels |
| syn keyword glslBuiltinFunction textureQueryLod |
| syn keyword glslBuiltinFunction textureSize |
| syn keyword glslBuiltinFunction traceRayEXT |
| syn keyword glslBuiltinFunction transpose |
| syn keyword glslBuiltinFunction trunc |
| syn keyword glslBuiltinFunction uaddCarry |
| syn keyword glslBuiltinFunction uintBitsToFloat |
| syn keyword glslBuiltinFunction umulExtended |
| syn keyword glslBuiltinFunction unpackDouble2x32 |
| syn keyword glslBuiltinFunction unpackHalf2x16 |
| syn keyword glslBuiltinFunction unpackSnorm2x16 |
| syn keyword glslBuiltinFunction unpackSnorm4x8 |
| syn keyword glslBuiltinFunction unpackUnorm2x16 |
| syn keyword glslBuiltinFunction unpackUnorm4x8 |
| syn keyword glslBuiltinFunction usubBorrow |
| |
| hi def link glslConditional Conditional |
| hi def link glslRepeat Repeat |
| hi def link glslStatement Statement |
| hi def link glslTodo Todo |
| hi def link glslCommentL glslComment |
| hi def link glslCommentStart glslComment |
| hi def link glslComment Comment |
| hi def link glslPreCondit PreCondit |
| hi def link glslDefine Define |
| hi def link glslTokenConcat glslPreProc |
| hi def link glslPredefinedMacro Macro |
| hi def link glslPreProc PreProc |
| hi def link glslInclude Include |
| hi def link glslBoolean Boolean |
| hi def link glslDecimalInt glslInteger |
| hi def link glslOctalInt glslInteger |
| hi def link glslHexInt glslInteger |
| hi def link glslInteger Number |
| hi def link glslFloat Float |
| hi def link glslIdentifierPrime glslIdentifier |
| hi def link glslIdentifier Identifier |
| hi def link glslStructure Structure |
| hi def link glslType Type |
| hi def link glslQualifier StorageClass |
| hi def link glslBuiltinConstant Constant |
| hi def link glslBuiltinFunction Function |
| hi def link glslBuiltinVariable Identifier |
| hi def link glslSwizzle Identifier |
| |
| let b:current_syntax = 'glsl' |