mirror of
https://github.com/MidnightCommander/mc
synced 2024-12-23 12:56:51 +03:00
834c09a283
This is an initial support of GLSL syntax highlight for mcedit. Keyword and and built-in function lists are based on glsl-mode.el from emacs (which is originally written by Xavier Decoret and Jim Hourihan). Supports GLSL 4.5. Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
453 lines
15 KiB
YAML
453 lines
15 KiB
YAML
# GLSL syntax file
|
|
|
|
# Authors:
|
|
# Sergey Sharybin <sergey.vfx@gmail.com>
|
|
#
|
|
# Based on glsl-mode.el from
|
|
# Xavier.Decoret@imag.fr
|
|
# Jim Hourihan <jimhourihan ~at~ gmail.com>
|
|
|
|
context default
|
|
|
|
# Types
|
|
|
|
keyword whole float yellow
|
|
keyword whole double yellow
|
|
keyword whole int yellow
|
|
keyword whole void yellow
|
|
keyword whole bool yellow
|
|
keyword whole true yellow
|
|
keyword whole false yellow
|
|
keyword whole mat2 yellow
|
|
keyword whole mat3 yellow
|
|
keyword whole mat4 yellow
|
|
keyword whole dmat2 yellow
|
|
keyword whole dmat3 yellow
|
|
keyword whole dmat4 yellow
|
|
keyword whole mat2x2 yellow
|
|
keyword whole mat2x3 yellow
|
|
keyword whole mat2x4 yellow
|
|
keyword whole dmat2x2 yellow
|
|
keyword whole dmat2x3 yellow
|
|
keyword whole dmat2x4 yellow
|
|
keyword whole mat3x2 yellow
|
|
keyword whole mat3x3 yellow
|
|
keyword whole mat3x4 yellow
|
|
keyword whole dmat3x2 yellow
|
|
keyword whole dmat3x3 yellow
|
|
keyword whole dmat3x4 yellow
|
|
keyword whole mat4x2 yellow
|
|
keyword whole mat4x3 yellow
|
|
keyword whole mat4x4 yellow
|
|
keyword whole dmat4x2 yellow
|
|
keyword whole dmat4x3 yellow
|
|
keyword whole dmat4x4 yellow
|
|
keyword whole vec2 yellow
|
|
keyword whole vec3 yellow
|
|
keyword whole vec4 yellow
|
|
keyword whole ivec2 yellow
|
|
keyword whole ivec3 yellow
|
|
keyword whole ivec4 yellow
|
|
keyword whole bvec2 yellow
|
|
keyword whole bvec3 yellow
|
|
keyword whole bvec4 yellow
|
|
keyword whole dvec2 yellow
|
|
keyword whole dvec3 yellow
|
|
keyword whole dvec4 yellow
|
|
keyword whole uint yellow
|
|
keyword whole uvec2 yellow
|
|
keyword whole uvec3 yellow
|
|
keyword whole uvec4 yellow
|
|
keyword whole sampler1D yellow
|
|
keyword whole sampler2D yellow
|
|
keyword whole sampler3D yellow
|
|
keyword whole samplerCube yellow
|
|
keyword whole sampler1DShadow yellow
|
|
keyword whole sampler2DShadow yellow
|
|
keyword whole samplerCubeShadow yellow
|
|
keyword whole sampler1DArray yellow
|
|
keyword whole sampler2DArray yellow
|
|
keyword whole sampler1DArrayShadow yellow
|
|
keyword whole sampler2DArrayShadow yellow
|
|
keyword whole isampler1D yellow
|
|
keyword whole isampler2D yellow
|
|
keyword whole isampler3D yellow
|
|
keyword whole isamplerCube yellow
|
|
keyword whole isampler1DArray yellow
|
|
keyword whole isampler2DArray yellow
|
|
keyword whole usampler1D yellow
|
|
keyword whole usampler2D yellow
|
|
keyword whole usampler3D yellow
|
|
keyword whole usamplerCube yellow
|
|
keyword whole usampler1DArray yellow
|
|
keyword whole usampler2DArray yellow
|
|
keyword whole sampler2DRect yellow
|
|
keyword whole sampler2DRectShadow yellow
|
|
keyword whole isampler2DRect yellow
|
|
keyword whole usampler2DRect yellow
|
|
keyword whole samplerBuffer yellow
|
|
keyword whole isamplerBuffer yellow
|
|
keyword whole usamplerBuffer yellow
|
|
keyword whole sampler2DMS yellow
|
|
keyword whole isampler2DMS yellow
|
|
keyword whole usampler2DMS yellow
|
|
keyword whole sampler2DMSArray yellow
|
|
keyword whole isampler2DMSArray yellow
|
|
keyword whole usampler2DMSArray yellow
|
|
keyword whole samplerCubeArray yellow
|
|
keyword whole samplerCubeArrayShadow yellow
|
|
keyword whole isamplerCubeArray yellow
|
|
keyword whole usamplerCubeArray yellow
|
|
keyword whole image1D yellow
|
|
keyword whole iimage1D yellow
|
|
keyword whole uimage1D yellow
|
|
keyword whole image2D yellow
|
|
keyword whole iimage2D yellow
|
|
keyword whole uimage2D yellow
|
|
keyword whole image3D yellow
|
|
keyword whole iimage3D yellow
|
|
keyword whole uimage3D yellow
|
|
keyword whole image2DRect yellow
|
|
keyword whole iimage2DRect yellow
|
|
keyword whole uimage2DRect yellow
|
|
keyword whole imageCube yellow
|
|
keyword whole iimageCube yellow
|
|
keyword whole uimageCube yellow
|
|
keyword whole imageBuffer yellow
|
|
keyword whole iimageBuffer yellow
|
|
keyword whole uimageBuffer yellow
|
|
keyword whole image1DArray yellow
|
|
keyword whole iimage1DArray yellow
|
|
keyword whole uimage1DArray yellow
|
|
keyword whole image2DArray yellow
|
|
keyword whole iimage2DArray yellow
|
|
keyword whole uimage2DArray yellow
|
|
keyword whole imageCubeArray yellow
|
|
keyword whole iimageCubeArray yellow
|
|
keyword whole uimageCubeArray yellow
|
|
keyword whole image2DMS yellow
|
|
keyword whole iimage2DMS yellow
|
|
keyword whole uimage2DMS yellow
|
|
keyword whole image2DMSArray yellow
|
|
keyword whole iimage2DMSArray yellow
|
|
keyword whole uimage2DMSArray yellow
|
|
keyword whole long yellow
|
|
keyword whole short yellow
|
|
keyword whole half yellow
|
|
keyword whole fixed yellow
|
|
keyword whole unsigned yellow
|
|
keyword whole hvec2 yellow
|
|
keyword whole hvec3 yellow
|
|
keyword whole hvec4 yellow
|
|
keyword whole fvec2 yellow
|
|
keyword whole fvec3 yellow
|
|
keyword whole fvec4 yellow
|
|
keyword whole sampler3DRect yellow
|
|
|
|
# Modifiers
|
|
|
|
keyword whole attribute yellow
|
|
keyword whole const yellow
|
|
keyword whole uniform yellow
|
|
keyword whole varying yellow
|
|
keyword whole buffer yellow
|
|
keyword whole shared yellow
|
|
keyword whole coherent yellow
|
|
keyword whole volatile yellow
|
|
keyword whole restrict yellow
|
|
keyword whole readonly yellow
|
|
keyword whole writeonly yellow
|
|
keyword whole atomic_uint yellow
|
|
keyword whole layout yellow
|
|
keyword whole centroid yellow
|
|
keyword whole flat yellow
|
|
keyword whole smooth yellow
|
|
keyword whole noperspective yellow
|
|
keyword whole patch yellow
|
|
keyword whole sample yellow
|
|
keyword whole break yellow
|
|
keyword whole continue yellow
|
|
keyword whole do yellow
|
|
keyword whole for yellow
|
|
keyword whole while yellow
|
|
keyword whole switch yellow
|
|
keyword whole case yellow
|
|
keyword whole default yellow
|
|
keyword whole if yellow
|
|
keyword whole else yellow
|
|
keyword whole subroutine yellow
|
|
keyword whole in yellow
|
|
keyword whole out yellow
|
|
keyword whole inout yellow
|
|
keyword whole invariant yellow
|
|
keyword whole discard yellow
|
|
keyword whole return yellow
|
|
keyword whole lowp yellow
|
|
keyword whole mediump yellow
|
|
keyword whole highp yellow
|
|
keyword whole precision yellow
|
|
keyword whole struct yellow
|
|
keyword whole common yellow
|
|
keyword whole partition yellow
|
|
keyword whole active yellow
|
|
keyword whole asm yellow
|
|
keyword whole class yellow
|
|
keyword whole union yellow
|
|
keyword whole enum yellow
|
|
keyword whole typedef yellow
|
|
keyword whole template yellow
|
|
keyword whole this yellow
|
|
keyword whole packed yellow
|
|
keyword whole resource yellow
|
|
keyword whole goto yellow
|
|
keyword whole inline yellow
|
|
keyword whole noinline yellow
|
|
keyword whole public yellow
|
|
keyword whole static yellow
|
|
keyword whole extern yellow
|
|
keyword whole external yellow
|
|
keyword whole interface yellow
|
|
keyword whole superp yellow
|
|
keyword whole input yellow
|
|
keyword whole output yellow
|
|
keyword whole filter yellow
|
|
keyword whole sizeof yellow
|
|
keyword whole cast yellow
|
|
keyword whole namespace yellow
|
|
keyword whole using yellow
|
|
keyword whole row major yellow
|
|
keyword whole early_fragment_tests yellow
|
|
|
|
# Deprecated
|
|
keyword whole varying brightred
|
|
keyword whole attribute brightred
|
|
|
|
# Built-in
|
|
keyword whole abs brightmagenta
|
|
keyword whole acos brightmagenta
|
|
keyword whole acosh brightmagenta
|
|
keyword whole all brightmagenta
|
|
keyword whole any brightmagenta
|
|
keyword whole asin brightmagenta
|
|
keyword whole asinh brightmagenta
|
|
keyword whole atan brightmagenta
|
|
keyword whole atanh brightmagenta
|
|
keyword whole atomicCounter brightmagenta
|
|
keyword whole atomicCounterDecrement brightmagenta
|
|
keyword whole atomicCounterIncrement brightmagenta
|
|
keyword whole barrier brightmagenta
|
|
keyword whole bitCount brightmagenta
|
|
keyword whole bitfieldExtract brightmagenta
|
|
keyword whole bitfieldInsert brightmagenta
|
|
keyword whole bitfieldReverse brightmagenta
|
|
keyword whole ceil brightmagenta
|
|
keyword whole clamp brightmagenta
|
|
keyword whole cos brightmagenta
|
|
keyword whole cosh brightmagenta
|
|
keyword whole cross brightmagenta
|
|
keyword whole degrees brightmagenta
|
|
keyword whole determinant brightmagenta
|
|
keyword whole dFdx brightmagenta
|
|
keyword whole dFdy brightmagenta
|
|
keyword whole dFdyFine brightmagenta
|
|
keyword whole dFdxFine brightmagenta
|
|
keyword whole dFdyCoarse brightmagenta
|
|
keyword whole dFdxCourse brightmagenta
|
|
keyword whole fwidthFine brightmagenta
|
|
keyword whole fwidthCoarse brightmagenta
|
|
keyword whole distance brightmagenta
|
|
keyword whole dot brightmagenta
|
|
keyword whole EmitStreamVertex brightmagenta
|
|
keyword whole EmitVertex brightmagenta
|
|
keyword whole EndPrimitive brightmagenta
|
|
keyword whole EndStreamPrimitive brightmagenta
|
|
keyword whole equal brightmagenta
|
|
keyword whole exp brightmagenta
|
|
keyword whole exp2 brightmagenta
|
|
keyword whole faceforward brightmagenta
|
|
keyword whole findLSB brightmagenta
|
|
keyword whole findMSB brightmagenta
|
|
keyword whole floatBitsToInt brightmagenta
|
|
keyword whole floatBitsToUint brightmagenta
|
|
keyword whole floor brightmagenta
|
|
keyword whole fma brightmagenta
|
|
keyword whole fract brightmagenta
|
|
keyword whole frexp brightmagenta
|
|
keyword whole fwidth brightmagenta
|
|
keyword whole greaterThan brightmagenta
|
|
keyword whole greaterThanEqual brightmagenta
|
|
keyword whole imageAtomicAdd brightmagenta
|
|
keyword whole imageAtomicAnd brightmagenta
|
|
keyword whole imageAtomicCompSwap brightmagenta
|
|
keyword whole imageAtomicExchange brightmagenta
|
|
keyword whole imageAtomicMax brightmagenta
|
|
keyword whole imageAtomicMin brightmagenta
|
|
keyword whole imageAtomicOr brightmagenta
|
|
keyword whole imageAtomicXor brightmagenta
|
|
keyword whole imageLoad brightmagenta
|
|
keyword whole imageSize brightmagenta
|
|
keyword whole imageStore brightmagenta
|
|
keyword whole imulExtended brightmagenta
|
|
keyword whole intBitsToFloat brightmagenta
|
|
keyword whole imageSamples brightmagenta
|
|
keyword whole interpolateAtCentroid brightmagenta
|
|
keyword whole interpolateAtOffset brightmagenta
|
|
keyword whole interpolateAtSample brightmagenta
|
|
keyword whole inverse brightmagenta
|
|
keyword whole inversesqrt brightmagenta
|
|
keyword whole isinf brightmagenta
|
|
keyword whole isnan brightmagenta
|
|
keyword whole ldexp brightmagenta
|
|
keyword whole length brightmagenta
|
|
keyword whole lessThan brightmagenta
|
|
keyword whole lessThanEqual brightmagenta
|
|
keyword whole log brightmagenta
|
|
keyword whole log2 brightmagenta
|
|
keyword whole matrixCompMult brightmagenta
|
|
keyword whole max brightmagenta
|
|
keyword whole memoryBarrier brightmagenta
|
|
keyword whole min brightmagenta
|
|
keyword whole mix brightmagenta
|
|
keyword whole mod brightmagenta
|
|
keyword whole modf brightmagenta
|
|
keyword whole noise brightmagenta
|
|
keyword whole normalize brightmagenta
|
|
keyword whole not brightmagenta
|
|
keyword whole notEqual brightmagenta
|
|
keyword whole outerProduct brightmagenta
|
|
keyword whole packDouble2x32 brightmagenta
|
|
keyword whole packHalf2x16 brightmagenta
|
|
keyword whole packSnorm2x16 brightmagenta
|
|
keyword whole packSnorm4x8 brightmagenta
|
|
keyword whole packUnorm2x16 brightmagenta
|
|
keyword whole packUnorm4x8 brightmagenta
|
|
keyword whole pow brightmagenta
|
|
keyword whole radians brightmagenta
|
|
keyword whole reflect brightmagenta
|
|
keyword whole refract brightmagenta
|
|
keyword whole round brightmagenta
|
|
keyword whole roundEven brightmagenta
|
|
keyword whole sign brightmagenta
|
|
keyword whole sin brightmagenta
|
|
keyword whole sinh brightmagenta
|
|
keyword whole smoothstep brightmagenta
|
|
keyword whole sqrt brightmagenta
|
|
keyword whole step brightmagenta
|
|
keyword whole tan brightmagenta
|
|
keyword whole tanh brightmagenta
|
|
keyword whole texelFetch brightmagenta
|
|
keyword whole texelFetchOffset brightmagenta
|
|
keyword whole texture brightmagenta
|
|
keyword whole textureGather brightmagenta
|
|
keyword whole textureGatherOffset brightmagenta
|
|
keyword whole textureGatherOffsets brightmagenta
|
|
keyword whole textureGrad brightmagenta
|
|
keyword whole textureGradOffset brightmagenta
|
|
keyword whole textureLod brightmagenta
|
|
keyword whole textureLodOffset brightmagenta
|
|
keyword whole textureOffset brightmagenta
|
|
keyword whole textureProj brightmagenta
|
|
keyword whole textureProjGrad brightmagenta
|
|
keyword whole textureProjGradOffset brightmagenta
|
|
keyword whole textureProjLod brightmagenta
|
|
keyword whole textureProjLodOffset brightmagenta
|
|
keyword whole textureProjOffset brightmagenta
|
|
keyword whole textureQueryLevels brightmagenta
|
|
keyword whole textureQueryLod brightmagenta
|
|
keyword whole textureSize brightmagenta
|
|
keyword whole transpose brightmagenta
|
|
keyword whole trunc brightmagenta
|
|
keyword whole uaddCarry brightmagenta
|
|
keyword whole uintBitsToFloat brightmagenta
|
|
keyword whole umulExtended brightmagenta
|
|
keyword whole unpackDouble2x32 brightmagenta
|
|
keyword whole unpackHalf2x16 brightmagenta
|
|
keyword whole unpackSnorm2x16 brightmagenta
|
|
keyword whole unpackSnorm4x8 brightmagenta
|
|
keyword whole unpackUnorm2x16 brightmagenta
|
|
keyword whole unpackUnorm4x8 brightmagenta
|
|
keyword whole usubBorrow brightmagenta
|
|
|
|
# Deprecated built-in
|
|
keyword whole texture1D magenta
|
|
keyword whole texture1DProj magenta
|
|
keyword whole texture1DLod magenta
|
|
keyword whole texture1DProjLod magenta
|
|
keyword whole texture2D magenta
|
|
keyword whole texture2DProj magenta
|
|
keyword whole texture2DLod magenta
|
|
keyword whole texture2DProjLod magenta
|
|
keyword whole texture2DRect magenta
|
|
keyword whole texture2DRectProj magenta
|
|
keyword whole texture3D magenta
|
|
keyword whole texture3DProj magenta
|
|
keyword whole texture3DLod magenta
|
|
keyword whole texture3DProjLod magenta
|
|
keyword whole shadow1D magenta
|
|
keyword whole shadow1DProj magenta
|
|
keyword whole shadow1DLod magenta
|
|
keyword whole shadow1DProjLod magenta
|
|
keyword whole shadow2D magenta
|
|
keyword whole shadow2DProj magenta
|
|
keyword whole shadow2DLod magenta
|
|
keyword whole shadow2DProjLod magenta
|
|
keyword whole textureCube magenta
|
|
keyword whole textureCubeLod magenta
|
|
|
|
# Deprecated variables
|
|
|
|
keyword whole gl_FragColor red
|
|
keyword whole gl_FragData red
|
|
keyword whole gl_MaxVarying red
|
|
keyword whole gl_MaxVaryingFloats red
|
|
keyword whole gl_MaxVaryingComponents red
|
|
|
|
# Comments
|
|
keyword /\* brown
|
|
keyword \*/ brown
|
|
keyword // brown
|
|
|
|
# Preprocessor
|
|
keyword # brightred
|
|
|
|
# Punctuation
|
|
keyword > white
|
|
keyword < white
|
|
keyword \+ white
|
|
keyword - white
|
|
keyword \* white
|
|
keyword / white
|
|
keyword % white
|
|
keyword = white
|
|
keyword != white
|
|
keyword == white
|
|
keyword & white
|
|
keyword | white
|
|
keyword :: white
|
|
keyword -> white
|
|
keyword { brightcyan
|
|
keyword } brightcyan
|
|
keyword ( brightcyan
|
|
keyword ) brightcyan
|
|
keyword [ brightcyan
|
|
keyword ] brightcyan
|
|
keyword , brightcyan
|
|
keyword : brightcyan
|
|
keyword ; brightmagenta
|
|
|
|
context exclusive # \n brightred
|
|
keyword \\\n yellow
|
|
keyword /\**\*/ brown
|
|
keyword //*\n brown
|
|
keyword "+" red
|
|
keyword <+> red
|
|
context exclusive /\* \*/ brown
|
|
spellcheck
|
|
context exclusive // \n brown
|
|
spellcheck
|
|
|
|
context " " green
|
|
spellcheck
|
|
context ' ' brightgreen
|
|
spellcheck
|