Mercurial > vim
view runtime/syntax/gdshader.vim @ 34625:ad1b0609b2f8 v9.1.0201
patch 9.1.0201: gM not working correctly with virt text
Commit: https://github.com/vim/vim/commit/366c81a2005370ac738618d889ec0337397a9f96
Author: Dylan Thacker-Smith <dylan.ah.smith@gmail.com>
Date: Sun Mar 24 09:46:56 2024 +0100
patch 9.1.0201: gM not working correctly with virt text
Problem: `gM` would include outer virtual text and its padding when
getting the line length used to calculate the middle of the
line, putting the cursor much closer to virtual text lines.
Solution: Exclude outer virtual text in getting the line length for
`gM`, so that virtual text doesn't influence where the cursor
is moved to (Dylan Thacker-Smith).
closes: #14262
Signed-off-by: Dylan Thacker-Smith <dylan.ah.smith@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Sun, 24 Mar 2024 10:00:07 +0100 |
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"