syntax "GLSL" "\.(frag|vert|fp|vp|glsl)$" color brightblue "[A-Za-z_][A-Za-z0-9_]*[[:space:]]*[()]" color green "\<(void|bool|bvec2|bvec3|bvec4|int|ivec2|ivec3|ivec4|float|vec2|vec3|vec4|mat2|mat3|mat4|struct|sampler1D|sampler2D|sampler3D|samplerCUBE|sampler1DShadow|sampler2DShadow)\>" color green "\" color cyan "\<(const|attribute|varying|uniform|in|out|inout|if|else|return|discard|while|for|do)\>" color brightred "\<(break|continue)\>" color brightcyan "\<(true|false)\>" color red "[-+/*=<>?:!~%&|^]" color blue "\<([0-9]+|0x[0-9a-fA-F]*)\>" color brightblack "(^|[[:space:]])//.*" color brightblack start="^\s*/\*" end="\*/" color brightwhite,cyan "TODO:?" color ,green "[[:space:]]+$" color ,red " + +| + +"