" Vim syntax file " Language: Amber Script if exists("b:current_syntax") finish endif " Regular int like number with - + or nothing in front syn match amberNumber '\d\+' contained display syn match amberNumber '[-+]\d\+' contained display " Floating point number with decimal no E or e (+,-) syn match amberNumber '\d\+\.\d*' contained display syn match amberNumber '[-+]\d\+\.\d*' contained display " Floating point like number with E and no decimal point (+,-) syn match amberNumber '[-+]\=\d[[:digit:]]*[eE][\-+]\=\d\+' contained display syn match amberNumber '\d[[:digit:]]*[eE][\-+]\=\d\+' contained display " Floating point like number with E and decimal point (+,-) syn match amberNumber '[-+]\=\d[[:digit:]]*\.\d*[eE][\-+]\=\d\+' contained display syn match amberNumber '\d[[:digit:]]*\.\d*[eE][\-+]\=\d\+' contained display syn region amberString start='"' end='"' contained syn region amberDesc start='"' end='"' syn keyword amberTodo contained TODO FIXME syn match amberBang "\v#!.*$" syn match amberComment "#.*$" contains=amberTodo syn keyword amberBlockCmd SHADER BUFFER PIPELINE ATTACH END RUN TYPE SIZE FILL syn keyword amberBlockCmd DESCRIPTOR_SET BINDING IDX TO EXPECT PASSTHROUGH syn keyword amberBlockCmd DATA_TYPE DATA SERIES_FROM DRAW_ARRAY IN START_IDX syn keyword amberBlockCmd COUNT CLEAR CLEAR_COLOR AS POS DRAW_RECT INC_BY syn keyword amberBlockCmd FRAMEBUFFER ENTRY_POINT SHADER_OPTIMIZATION syn keyword amberBlockCmd FORMAT FRAMEBUFFER_SIZE BIND SAMPLER VERTEX_DATA INDEX_DATA syn keyword amberBlockCmd INDEXED IMAGE_ATTACHMENT DEPTH_STENCIL_ATTACHMENT syn keyword amberComparator EQ NE LT LE GT GE EQ_RGB EQ_RGBA syn keyword amberKeyword compute vertex geometry fragment graphics syn keyword amberKeyword tessellation_evaulation tessellation_control syn keyword amberFormat GLSL HLSL SPIRV-ASM SPIRV-HEX OPENCL-C syn keyword amberTopology point_list line_list line_list_with_adjacency syn keyword amberTopology line_strip line_strip_with_adjacency triangle_list syn keyword amberTopology triangle_list_with_adjacench triangle_strip syn keyword amberTopology triangle_strip_with_adjacency triangle_fan patch_list syn keyword amberBufferType uniform storage vertex index sampled storage color syn keyword amberBufferType framebuffer depth image depth_stencil let b:current_syntax = "amber" hi def link amberTodo Todo hi def link amberBang Comment hi def link amberComment Comment hi def link amberBlockCmd Keyword hi def link amberString String hi def link amberNumber Number hi def link amberDesc PreProc hi def link amberKeyword String hi def link amberFormat Type hi def link amberComparator Keyword hi def link amberTopology Type hi def link amberBufferType Type