Mercurial > vim
view runtime/syntax/gdshader.vim @ 30333:fc0830246f49 v9.0.0502
patch 9.0.0502: a closure in a nested loop in a :def function does not work
Commit: https://github.com/vim/vim/commit/cc34181f9994d64f8c8fa2f5845eaf0cc963067f
Author: Bram Moolenaar <Bram@vim.org>
Date: Mon Sep 19 15:54:34 2022 +0100
patch 9.0.0502: a closure in a nested loop in a :def function does not work
Problem: A closure in a nested loop in a :def function does not work.
Solution: Use an array of loopvars, one per loop level.
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Mon, 19 Sep 2022 17:00:07 +0200 |
parents | e37754a13778 |
children |
line wrap: on
line source
" Vim syntax file for Godot shading language " Language: gdshader " Maintainer: Maxim Kim <habamax@gmail.com> " Filenames: *.gdshader if exists("b:current_syntax") finish endif syn keyword gdshaderConditional if else switch case default syn keyword gdshaderRepeat for while do syn keyword gdshaderStatement return discard syn keyword gdshaderBoolean true false syn keyword gdshaderKeyword shader_type render_mode syn keyword gdshaderKeyword in out inout syn keyword gdshaderKeyword lowp mediump highp syn keyword gdshaderKeyword uniform varying const syn keyword gdshaderKeyword flat smooth syn keyword gdshaderType float vec2 vec3 vec4 syn keyword gdshaderType uint uvec2 uvec3 uvec4 syn keyword gdshaderType int ivec2 ivec3 ivec4 syn keyword gdshaderType void bool syn keyword gdshaderType bvec2 bvec3 bvec4 syn keyword gdshaderType mat2 mat3 mat4 syn keyword gdshaderType sampler2D isampler2D usampler2D samplerCube syn match gdshaderMember "\v<(\.)@<=[a-z_]+\w*>" syn match gdshaderBuiltin "\v<[A-Z_]+[A-Z0-9_]*>" syn match gdshaderFunction "\v<\w*>(\()@=" syn match gdshaderNumber "\v<\d+(\.)@!>" syn match gdshaderFloat "\v<\d*\.\d+(\.)@!>" syn match gdshaderFloat "\v<\d*\.=\d+(e-=\d+)@=" syn match gdshaderExponent "\v(\d*\.=\d+)@<=e-=\d+>" syn match gdshaderComment "\v//.*$" contains=@Spell syn region gdshaderComment start="/\*" end="\*/" contains=@Spell syn keyword gdshaderTodo TODO FIXME XXX NOTE BUG HACK OPTIMIZE containedin=gdshaderComment hi def link gdshaderConditional Conditional hi def link gdshaderRepeat Repeat hi def link gdshaderStatement Statement hi def link gdshaderBoolean Boolean hi def link gdshaderKeyword Keyword hi def link gdshaderMember Identifier hi def link gdshaderBuiltin Identifier hi def link gdshaderFunction Function hi def link gdshaderType Type hi def link gdshaderNumber Number hi def link gdshaderFloat Float hi def link gdshaderExponent Special hi def link gdshaderComment Comment hi def link gdshaderTodo Todo let b:current_syntax = "gdshader"