1e5c31af7Sopenharmony_ci" Vim syntax file
2e5c31af7Sopenharmony_ci" Language: Amber Script
3e5c31af7Sopenharmony_ci
4e5c31af7Sopenharmony_ciif exists("b:current_syntax")
5e5c31af7Sopenharmony_ci  finish
6e5c31af7Sopenharmony_ciendif
7e5c31af7Sopenharmony_ci
8e5c31af7Sopenharmony_ci" Regular int like number with - + or nothing in front
9e5c31af7Sopenharmony_cisyn match amberNumber '\d\+' contained display
10e5c31af7Sopenharmony_cisyn match amberNumber '[-+]\d\+' contained display
11e5c31af7Sopenharmony_ci
12e5c31af7Sopenharmony_ci" Floating point number with decimal no E or e (+,-)
13e5c31af7Sopenharmony_cisyn match amberNumber '\d\+\.\d*' contained display
14e5c31af7Sopenharmony_cisyn match amberNumber '[-+]\d\+\.\d*' contained display
15e5c31af7Sopenharmony_ci
16e5c31af7Sopenharmony_ci" Floating point like number with E and no decimal point (+,-)
17e5c31af7Sopenharmony_cisyn match amberNumber '[-+]\=\d[[:digit:]]*[eE][\-+]\=\d\+' contained display
18e5c31af7Sopenharmony_cisyn match amberNumber '\d[[:digit:]]*[eE][\-+]\=\d\+' contained display
19e5c31af7Sopenharmony_ci
20e5c31af7Sopenharmony_ci" Floating point like number with E and decimal point (+,-)
21e5c31af7Sopenharmony_cisyn match amberNumber '[-+]\=\d[[:digit:]]*\.\d*[eE][\-+]\=\d\+' contained display
22e5c31af7Sopenharmony_cisyn match amberNumber '\d[[:digit:]]*\.\d*[eE][\-+]\=\d\+' contained display
23e5c31af7Sopenharmony_ci
24e5c31af7Sopenharmony_cisyn region amberString start='"' end='"' contained
25e5c31af7Sopenharmony_cisyn region amberDesc start='"' end='"'
26e5c31af7Sopenharmony_ci
27e5c31af7Sopenharmony_cisyn keyword amberTodo contained TODO FIXME
28e5c31af7Sopenharmony_cisyn match amberBang "\v#!.*$"
29e5c31af7Sopenharmony_cisyn match amberComment "#.*$" contains=amberTodo
30e5c31af7Sopenharmony_ci
31e5c31af7Sopenharmony_cisyn keyword amberBlockCmd SHADER BUFFER PIPELINE ATTACH END RUN TYPE SIZE FILL
32e5c31af7Sopenharmony_cisyn keyword amberBlockCmd DESCRIPTOR_SET BINDING IDX TO EXPECT PASSTHROUGH
33e5c31af7Sopenharmony_cisyn keyword amberBlockCmd DATA_TYPE DATA SERIES_FROM DRAW_ARRAY IN START_IDX
34e5c31af7Sopenharmony_cisyn keyword amberBlockCmd COUNT CLEAR CLEAR_COLOR AS POS DRAW_RECT INC_BY
35e5c31af7Sopenharmony_cisyn keyword amberBlockCmd FRAMEBUFFER ENTRY_POINT SHADER_OPTIMIZATION
36e5c31af7Sopenharmony_cisyn keyword amberBlockCmd FORMAT FRAMEBUFFER_SIZE LOCATION BIND SAMPLER
37e5c31af7Sopenharmony_cisyn keyword amberBlockCmd VERTEX_DATA INDEX_DATA INDEXED IMAGE_ATTACHMENT
38e5c31af7Sopenharmony_cisyn keyword amberBlockCmd DEPTH_STENCIL_ATTACHMENT DEVICE_FEATURE TOLERANCE
39e5c31af7Sopenharmony_cisyn keyword amberBlockCmd REPEAT COPY DERIVE_PIPELINE FROM STD140 STD430
40e5c31af7Sopenharmony_cisyn keyword amberBlockCmd DEVICE_EXTENSION IMAGE INSTANCE_EXTENSION SET
41e5c31af7Sopenharmony_cisyn keyword amberBlockCmd STRUCT VIRTUAL_FILE CLEAR_DEPTH CLEAR_STENCIL
42e5c31af7Sopenharmony_cisyn keyword amberBlockCmd DEBUG TARGET_ENV SHADER_OPTIMIZATION COMPILE_OPTIONS
43e5c31af7Sopenharmony_cisyn keyword amberBlockCmd POLYGON_MODE DEPTH STENCIL SUBGROUP SPECIALIZE
44e5c31af7Sopenharmony_cisyn keyword amberBlockCmd FULLY_POPULATED VARYING_SIZE REQUIRED_SIZE
45e5c31af7Sopenharmony_cisyn keyword amberBlockCmd MIN MAX BUFFER_ARRAY SAMPLER_ARRAY KERNEL OFFSET
46e5c31af7Sopenharmony_cisyn keyword amberBlockCmd BASE_MIP_LEVEL ARG_NUMBER RATE TEST CLAMP
47e5c31af7Sopenharmony_cisyn keyword amberBlockCmd WRITE COMPARE_OP BOUNDS BIAS FAIL_OP PASS_OP
48e5c31af7Sopenharmony_cisyn keyword amberBlockCmd DEPTH_FAIL_OP COMPARE_MASK WRITE_MASK REFERENCE
49e5c31af7Sopenharmony_cisyn keyword amberBlockCmd STRIDE ARRAY_STRIDE MATRIX_STRIDE MIP_LEVELS
50e5c31af7Sopenharmony_cisyn keyword amberBlockCmd FILE DIM_1D DIM_2D DIM_3D WIDTH HEIGHT SAMPLES
51e5c31af7Sopenharmony_cisyn keyword amberBlockCmd TEXT BINARY PNG DRAW_GRID CELLS INSTANCE_COUNT
52e5c31af7Sopenharmony_cisyn keyword amberBlockCmd START_INSTANCE THREAD GLOBAL_INVOCATION_ID
53e5c31af7Sopenharmony_cisyn keyword amberBlockCmd VERTEX_INDEX FRAGMENT_WINDOW_SPACE_POSITION
54e5c31af7Sopenharmony_cisyn keyword amberBlockCmd CALLSTACK STEP_IN STEP_OUT STEP_OVER CONTINUE TO
55e5c31af7Sopenharmony_cisyn keyword amberBlockCmd ENGINE_DATA MAG_FILTER MIN_FILTER ADDRESS_MODE_U
56e5c31af7Sopenharmony_cisyn keyword amberBlockCmd ADDRESS_MODE_V ADDRESS_MODE_W BORDER_COLOR
57e5c31af7Sopenharmony_cisyn keyword amberBlockCmd MIN_LOD MAX_LOD NORMALIZED_COORDS UNNORMALIZED_COORDS
58e5c31af7Sopenharmony_cisyn keyword amberBlockCmd ARG_NAME
59e5c31af7Sopenharmony_ci
60e5c31af7Sopenharmony_cisyn keyword amberComparator EQ NE LT LE GT GE EQ_RGB EQ_RGBA EQ_BUFFER RMSE_BUFFER
61e5c31af7Sopenharmony_cisyn keyword amberComparator EQ_HISTOGRAM_EMD_BUFFER
62e5c31af7Sopenharmony_ci
63e5c31af7Sopenharmony_cisyn keyword amberKeyword compute vertex geometry fragment graphics
64e5c31af7Sopenharmony_cisyn keyword amberKeyword tessellation_evaulation tessellation_control multi
65e5c31af7Sopenharmony_ci
66e5c31af7Sopenharmony_cisyn keyword amberFormat GLSL HLSL SPIRV-ASM SPIRV-HEX OPENCL-C
67e5c31af7Sopenharmony_ci
68e5c31af7Sopenharmony_cisyn keyword amberTopology point_list line_list line_list_with_adjacency
69e5c31af7Sopenharmony_cisyn keyword amberTopology line_strip line_strip_with_adjacency triangle_list
70e5c31af7Sopenharmony_cisyn keyword amberTopology triangle_list_with_adjacench triangle_strip
71e5c31af7Sopenharmony_cisyn keyword amberTopology triangle_strip_with_adjacency triangle_fan patch_list
72e5c31af7Sopenharmony_ci
73e5c31af7Sopenharmony_cisyn keyword amberBufferType uniform storage push_constant color depth_stencil
74e5c31af7Sopenharmony_cisyn keyword amberBufferType uniform_dynamic storage_dynamic combined_image_sampler
75e5c31af7Sopenharmony_cisyn keyword amberBufferType storage_image sampled_image uniform_texel_buffer
76e5c31af7Sopenharmony_cisyn keyword amberBufferType storage_texel_buffer
77e5c31af7Sopenharmony_ci
78e5c31af7Sopenharmony_cisyn keyword amberAddressMode repeat mirrored_repeat clamp_to_edge clamp_to_border
79e5c31af7Sopenharmony_cisyn keyword amberAddressMode mirror_clamp_to_edge
80e5c31af7Sopenharmony_ci
81e5c31af7Sopenharmony_cisyn keyword amberCompareOp never less equal less_or_equal greater not_equal
82e5c31af7Sopenharmony_cisyn keyword amberCompareOp greater_or_equal always
83e5c31af7Sopenharmony_ci
84e5c31af7Sopenharmony_cisyn keyword amberStencilOp keep zero replace increment_and_clamp decrement_and_clamp
85e5c31af7Sopenharmony_cisyn keyword amberStencilOp invert increment_and_wrap decrement_and_wrap
86e5c31af7Sopenharmony_ci
87e5c31af7Sopenharmony_cisyn keyword amberBorderColor float_transparent_black int_transparent_black
88e5c31af7Sopenharmony_cisyn keyword amberBorderColor float_opaque_black int_opaque_black float_opaque_white
89e5c31af7Sopenharmony_cisyn keyword amberBorderColor int_opaque_white
90e5c31af7Sopenharmony_ci
91e5c31af7Sopenharmony_cisyn keyword amberFace front back front_and_back
92e5c31af7Sopenharmony_ci
93e5c31af7Sopenharmony_cisyn keyword amberFilter nearest linear
94e5c31af7Sopenharmony_ci
95e5c31af7Sopenharmony_cisyn keyword amberPolygonMode fill line point
96e5c31af7Sopenharmony_ci
97e5c31af7Sopenharmony_cilet b:current_syntax = "amber"
98e5c31af7Sopenharmony_cihi def link amberTodo Todo
99e5c31af7Sopenharmony_cihi def link amberBang Comment
100e5c31af7Sopenharmony_cihi def link amberComment Comment
101e5c31af7Sopenharmony_cihi def link amberBlockCmd Keyword
102e5c31af7Sopenharmony_cihi def link amberString String
103e5c31af7Sopenharmony_cihi def link amberNumber Number
104e5c31af7Sopenharmony_cihi def link amberDesc PreProc
105e5c31af7Sopenharmony_cihi def link amberKeyword String
106e5c31af7Sopenharmony_cihi def link amberFormat Type
107e5c31af7Sopenharmony_cihi def link amberComparator Keyword
108e5c31af7Sopenharmony_cihi def link amberTopology Type
109e5c31af7Sopenharmony_cihi def link amberBufferType Type
110e5c31af7Sopenharmony_cihi def link amberAddressMode Type
111e5c31af7Sopenharmony_cihi def link amberCompareOp Type
112e5c31af7Sopenharmony_cihi def link amberStencilOp Type
113e5c31af7Sopenharmony_cihi def link amberBorderColor Type
114e5c31af7Sopenharmony_cihi def link amberFace Type
115e5c31af7Sopenharmony_cihi def link amberFilter Type
116e5c31af7Sopenharmony_cihi def link amberPolygonMode Type
117