PluginProbe
Code Block Pro – Beautiful Syntax Highlighting / 1.6.0
Code Block Pro – Beautiful Syntax Highlighting v1.6.0
1.27.1 1.27.2 1.27.3 1.27.4 1.27.5 1.27.6 1.27.7 1.28.0 1.3.0 1.4.0 1.5.0 1.5.1 1.5.2 1.6.0 1.7.0 1.8.0 1.9.0 1.9.1 1.9.2 1.9.3 trunk 1.1.0 1.10.0 1.11.0 1.11.1 All 63 releases
code-block-pro / build / shiki / languages / shaderlab.tmLanguage.json

shaderlab.tmLanguage.json in Code Block Pro – Beautiful Syntax Highlighting 1.6.0, at build/shiki/languages/shaderlab.tmLanguage.json

205 lines 7.8 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 {
2 "information_for_contributors": [
3 "This file has been converted from https://github.com/tgjones/shaders-tmLanguage/blob/master/grammars/shaderlab.json",
4 "If you want to provide a fix or improvement, please create a pull request against the original repository.",
5 "Once accepted there, we are happy to receive an update request."
6 ],
7 "version": "https://github.com/tgjones/shaders-tmLanguage/commit/c72c8b39380ba5a86c58ceed053b5d965ebf38b3",
8 "name": "shaderlab",
9 "scopeName": "source.shaderlab",
10 "patterns": [
11 {
12 "name": "comment.line.double-slash.shaderlab",
13 "begin": "//",
14 "end": "$"
15 },
16 {
17 "name": "support.type.basic.shaderlab",
18 "match": "\\b(?i:Range|Float|Int|Color|Vector|2D|3D|Cube|Any)\\b"
19 },
20 {
21 "include": "#numbers"
22 },
23 {
24 "name": "storage.type.structure.shaderlab",
25 "match": "\\b(?i:Shader|Properties|SubShader|Pass|Category)\\b"
26 },
27 {
28 "name": "support.type.propertyname.shaderlab",
29 "match": "\\b(?i:Name|Tags|Fallback|CustomEditor|Cull|ZWrite|ZTest|Offset|Blend|BlendOp|ColorMask|AlphaToMask|LOD|Lighting|Stencil|Ref|ReadMask|WriteMask|Comp|CompBack|CompFront|Fail|ZFail|UsePass|GrabPass|Dependency|Material|Diffuse|Ambient|Shininess|Specular|Emission|Fog|Mode|Density|SeparateSpecular|SetTexture|Combine|ConstantColor|Matrix|AlphaTest|ColorMaterial|BindChannels|Bind)\\b"
30 },
31 {
32 "name": "support.constant.property-value.shaderlab",
33 "match": "\\b(?i:Back|Front|On|Off|[RGBA]{1,3}|AmbientAndDiffuse|Emission)\\b"
34 },
35 {
36 "name": "support.constant.property-value.comparisonfunction.shaderlab",
37 "match": "\\b(?i:Less|Greater|LEqual|GEqual|Equal|NotEqual|Always|Never)\\b"
38 },
39 {
40 "name": "support.constant.property-value.stenciloperation.shaderlab",
41 "match": "\\b(?i:Keep|Zero|Replace|IncrSat|DecrSat|Invert|IncrWrap|DecrWrap)\\b"
42 },
43 {
44 "name": "support.constant.property-value.texturecombiners.shaderlab",
45 "match": "\\b(?i:Previous|Primary|Texture|Constant|Lerp|Double|Quad|Alpha)\\b"
46 },
47 {
48 "name": "support.constant.property-value.fog.shaderlab",
49 "match": "\\b(?i:Global|Linear|Exp2|Exp)\\b"
50 },
51 {
52 "name": "support.constant.property-value.bindchannels.shaderlab",
53 "match": "\\b(?i:Vertex|Normal|Tangent|TexCoord0|TexCoord1)\\b"
54 },
55 {
56 "name": "support.constant.property-value.blendoperations.shaderlab",
57 "match": "\\b(?i:Add|Sub|RevSub|Min|Max|LogicalClear|LogicalSet|LogicalCopyInverted|LogicalCopy|LogicalNoop|LogicalInvert|LogicalAnd|LogicalNand|LogicalOr|LogicalNor|LogicalXor|LogicalEquiv|LogicalAndReverse|LogicalAndInverted|LogicalOrReverse|LogicalOrInverted)\\b"
58 },
59 {
60 "name": "support.constant.property-value.blendfactors.shaderlab",
61 "match": "\\b(?i:One|Zero|SrcColor|SrcAlpha|DstColor|DstAlpha|OneMinusSrcColor|OneMinusSrcAlpha|OneMinusDstColor|OneMinusDstAlpha)\\b"
62 },
63 {
64 "name": "support.variable.reference.shaderlab",
65 "match": "\\[([a-zA-Z_][a-zA-Z0-9_]*)\\](?!\\s*[a-zA-Z_][a-zA-Z0-9_]*\\s*\\(\")"
66 },
67 {
68 "name": "meta.attribute.shaderlab",
69 "begin": "(\\[)",
70 "end": "(\\])",
71 "patterns": [
72 {
73 "name": "support.type.attributename.shaderlab",
74 "match": "\\G([a-zA-Z]+)\\b"
75 },
76 {
77 "include": "#numbers"
78 }
79 ]
80 },
81 {
82 "name": "support.variable.declaration.shaderlab",
83 "match": "\\b([a-zA-Z_][a-zA-Z0-9_]*)\\s*\\("
84 },
85 {
86 "name": "meta.cgblock",
87 "begin": "\\b(CGPROGRAM|CGINCLUDE)\\b",
88 "beginCaptures": {
89 "1": {
90 "name": "keyword.other"
91 }
92 },
93 "end": "\\b(ENDCG)\\b",
94 "endCaptures": {
95 "1": {
96 "name": "keyword.other"
97 }
98 },
99 "patterns": [
100 {
101 "include": "#hlsl-embedded"
102 }
103 ]
104 },
105 {
106 "name": "meta.hlslblock",
107 "begin": "\\b(HLSLPROGRAM|HLSLINCLUDE)\\b",
108 "beginCaptures": {
109 "1": {
110 "name": "keyword.other"
111 }
112 },
113 "end": "\\b(ENDHLSL)\\b",
114 "endCaptures": {
115 "1": {
116 "name": "keyword.other"
117 }
118 },
119 "patterns": [
120 {
121 "include": "#hlsl-embedded"
122 }
123 ]
124 },
125 {
126 "name": "string.quoted.double.shaderlab",
127 "begin": "\"",
128 "end": "\""
129 }
130 ],
131 "repository": {
132 "numbers": {
133 "patterns": [
134 {
135 "name": "constant.numeric.shaderlab",
136 "match": "\\b([0-9]+\\.?[0-9]*)\\b"
137 }
138 ]
139 },
140 "hlsl-embedded": {
141 "patterns": [
142 {
143 "include": "source.hlsl"
144 },
145 {
146 "name": "storage.type.basic.shaderlab",
147 "match": "\\b(fixed([1-4](x[1-4])?)?)\\b"
148 },
149 {
150 "name": "support.variable.transformations.shaderlab",
151 "match": "\\b(UNITY_MATRIX_MVP|UNITY_MATRIX_MV|UNITY_MATRIX_M|UNITY_MATRIX_V|UNITY_MATRIX_P|UNITY_MATRIX_VP|UNITY_MATRIX_T_MV|UNITY_MATRIX_I_V|UNITY_MATRIX_IT_MV|_Object2World|_World2Object|unity_ObjectToWorld|unity_WorldToObject)\\b"
152 },
153 {
154 "name": "support.variable.camera.shaderlab",
155 "match": "\\b(_WorldSpaceCameraPos|_ProjectionParams|_ScreenParams|_ZBufferParams|unity_OrthoParams|unity_CameraProjection|unity_CameraInvProjection|unity_CameraWorldClipPlanes)\\b"
156 },
157 {
158 "name": "support.variable.time.shaderlab",
159 "match": "\\b(_Time|_SinTime|_CosTime|unity_DeltaTime)\\b"
160 },
161 {
162 "name": "support.variable.lighting.shaderlab",
163 "match": "\\b(_LightColor0|_WorldSpaceLightPos0|_LightMatrix0|unity_4LightPosX0|unity_4LightPosY0|unity_4LightPosZ0|unity_4LightAtten0|unity_LightColor|_LightColor|unity_LightPosition|unity_LightAtten|unity_SpotDirection)\\b"
164 },
165 {
166 "name": "support.variable.fog.shaderlab",
167 "match": "\\b(unity_AmbientSky|unity_AmbientEquator|unity_AmbientGround|UNITY_LIGHTMODEL_AMBIENT|unity_FogColor|unity_FogParams)\\b"
168 },
169 {
170 "name": "support.variable.various.shaderlab",
171 "match": "\\b(unity_LODFade)\\b"
172 },
173 {
174 "name": "support.variable.preprocessor.targetplatform.shaderlab",
175 "match": "\\b(SHADER_API_D3D9|SHADER_API_D3D11|SHADER_API_GLCORE|SHADER_API_OPENGL|SHADER_API_GLES|SHADER_API_GLES3|SHADER_API_METAL|SHADER_API_D3D11_9X|SHADER_API_PSSL|SHADER_API_XBOXONE|SHADER_API_PSP2|SHADER_API_WIIU|SHADER_API_MOBILE|SHADER_API_GLSL)\\b"
176 },
177 {
178 "name": "support.variable.preprocessor.targetmodel.shaderlab",
179 "match": "\\b(SHADER_TARGET)\\b"
180 },
181 {
182 "name": "support.variable.preprocessor.unityversion.shaderlab",
183 "match": "\\b(UNITY_VERSION)\\b"
184 },
185 {
186 "name": "support.variable.preprocessor.platformdifference.shaderlab",
187 "match": "\\b(UNITY_BRANCH|UNITY_FLATTEN|UNITY_NO_SCREENSPACE_SHADOWS|UNITY_NO_LINEAR_COLORSPACE|UNITY_NO_RGBM|UNITY_NO_DXT5nm|UNITY_FRAMEBUFFER_FETCH_AVAILABLE|UNITY_USE_RGBA_FOR_POINT_SHADOWS|UNITY_ATTEN_CHANNEL|UNITY_HALF_TEXEL_OFFSET|UNITY_UV_STARTS_AT_TOP|UNITY_MIGHT_NOT_HAVE_DEPTH_Texture|UNITY_NEAR_CLIP_VALUE|UNITY_VPOS_TYPE|UNITY_CAN_COMPILE_TESSELLATION|UNITY_COMPILER_HLSL|UNITY_COMPILER_HLSL2GLSL|UNITY_COMPILER_CG|UNITY_REVERSED_Z)\\b"
188 },
189 {
190 "name": "support.variable.preprocessor.texture2D.shaderlab",
191 "match": "\\b(UNITY_PASS_FORWARDBASE|UNITY_PASS_FORWARDADD|UNITY_PASS_DEFERRED|UNITY_PASS_SHADOWCASTER|UNITY_PASS_PREPASSBASE|UNITY_PASS_PREPASSFINAL)\\b"
192 },
193 {
194 "name": "support.class.structures.shaderlab",
195 "match": "\\b(appdata_base|appdata_tan|appdata_full|appdata_img)\\b"
196 },
197 {
198 "name": "support.class.surface.shaderlab",
199 "match": "\\b(SurfaceOutputStandardSpecular|SurfaceOutputStandard|SurfaceOutput|Input)\\b"
200 }
201 ]
202 }
203 }
204 }
205