comparison runtime/syntax/generator/vim.vim.base @ 34531:0591aba1489d

runtime(vim): Update base-syntax, improve number matching (#14175) Commit: https://github.com/vim/vim/commit/5cd86c6cff94256ed2db872c46b57da259a648ac Author: dkearns <dougkearns@gmail.com> Date: Tue Mar 12 07:40:58 2024 +1100 runtime(vim): Update base-syntax, improve number matching (https://github.com/vim/vim/issues/14175) - Limit blob literals to an even number of hexadecimal digits and correctly located dots. - Match octal numbers. The current version unsuccessfully attempts to match a leading '-' as part of the float literal. It's actually parsed as part of the literal for all numbers but the syntax file hasn't matched it like that for a long time and highlights negative numbers as UNARY-MINUS NUMBER. This will be fixed when better expression matching is implemented. Signed-off-by: Doug Kearns <dougkearns@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
author Christian Brabandt <cb@256bit.org>
date Mon, 11 Mar 2024 21:45:06 +0100
parents 97fc56ee7ca7
children 98d8ef6b57c9
comparison
equal deleted inserted replaced
34530:ef8394eca183 34531:0591aba1489d
1 " Vim syntax file 1 " Vim syntax file
2 " Language: Vim script 2 " Language: Vim script
3 " Maintainer: Hirohito Higashi <h.east.727 ATMARK gmail.com> 3 " Maintainer: Hirohito Higashi <h.east.727 ATMARK gmail.com>
4 " Doug Kearns <dougkearns@gmail.com> 4 " Doug Kearns <dougkearns@gmail.com>
5 " URL: https://github.com/vim-jp/syntax-vim-ex 5 " URL: https://github.com/vim-jp/syntax-vim-ex
6 " Last Change: 2024 Mar 09 6 " Last Change: 2024 Mar 10
7 " Former Maintainer: Charles E. Campbell 7 " Former Maintainer: Charles E. Campbell
8 " Base File URL: http://www.drchip.org/astronaut/vim/index.html#SYNTAX_VIM 8 " Base File URL: http://www.drchip.org/astronaut/vim/index.html#SYNTAX_VIM
9 " Base File Version: 9.0-25 9 " Base File Version: 9.0-25
10 10
11 " DO NOT CHANGE DIRECTLY. 11 " DO NOT CHANGE DIRECTLY.
155 let s:vimsyn_maxlines= 60 155 let s:vimsyn_maxlines= 60
156 endif 156 endif
157 157
158 " Numbers {{{2 158 " Numbers {{{2
159 " ======= 159 " =======
160 syn match vimNumber '\<\d\+\%(\.\d\+\%([eE][+-]\=\d\+\)\=\)\=' skipwhite nextgroup=vimGlobal,vimSubst1,vimCommand,vimComment,vim9Comment 160 syn case ignore
161 syn match vimNumber '-\d\+\%(\.\d\+\%([eE][+-]\=\d\+\)\=\)\=' skipwhite nextgroup=vimGlobal,vimSubst1,vimCommand,vimComment,vim9Comment 161 syn match vimNumber '\<\d\+\%(\.\d\+\%(e[+-]\=\d\+\)\=\)\=' skipwhite nextgroup=vimGlobal,vimSubst1,vimCommand,vimComment,vim9Comment
162 syn match vimNumber '\<0[xX]\x\+' skipwhite nextgroup=vimGlobal,vimSubst1,vimCommand,vimComment,vim9Comment 162 syn match vimNumber '\<0b[01]\+' skipwhite nextgroup=vimGlobal,vimSubst1,vimCommand,vimComment,vim9Comment
163 syn match vimNumber '\%(^\|\A\)\zs#\x\{6}' skipwhite nextgroup=vimGlobal,vimSubst1,vimCommand,vimComment,vim9Comment 163 syn match vimNumber '\<0o\=\o\+' skipwhite nextgroup=vimGlobal,vimSubst1,vimCommand,vimComment,vim9Comment
164 syn match vimNumber '\<0[zZ][a-zA-Z0-9.]\+' skipwhite nextgroup=vimGlobal,vimSubst1,vimCommand,vimComment,vim9Comment 164 syn match vimNumber '\<0x\x\+' skipwhite nextgroup=vimGlobal,vimSubst1,vimCommand,vimComment,vim9Comment
165 syn match vimNumber '0[0-7]\+' skipwhite nextgroup=vimGlobal,vimSubst1,vimCommand,vimComment,vim9Comment 165 syn match vimNumber '\<0z\%(\x\x\)\+\%(\.\%(\x\x\)\+\)*' skipwhite nextgroup=vimGlobal,vimSubst1,vimCommand,vimComment,vim9Comment
166 syn match vimNumber '0[bB][01]\+' skipwhite nextgroup=vimGlobal,vimSubst1,vimCommand,vimComment,vim9Comment 166 syn match vimNumber '\%(^\|\A\)\zs#\x\{6}' skipwhite nextgroup=vimGlobal,vimSubst1,vimCommand,vimComment,vim9Comment
167 syn case match
167 168
168 " All vimCommands are contained by vimIsCommand. {{{2 169 " All vimCommands are contained by vimIsCommand. {{{2
169 syn cluster vimCmdList contains=vimAbb,vimAddress,vimAutoCmd,vimAugroup,vimBehave,vimEcho,vimEchoHL,vimExecute,vimIsCommand,vimExtCmd,vimFunction,vimGlobal,vimHighlight,vimLet,vimMap,vimMark,vimNotFunc,vimNorm,vimSet,vimSyntax,vimUnlet,vimUnmap,vimUserCmd,vimMenu,vimMenutranslate 170 syn cluster vimCmdList contains=vimAbb,vimAddress,vimAutoCmd,vimAugroup,vimBehave,vimEcho,vimEchoHL,vimExecute,vimIsCommand,vimExtCmd,vimFunction,vimGlobal,vimHighlight,vimLet,vimMap,vimMark,vimNotFunc,vimNorm,vimSet,vimSyntax,vimUnlet,vimUnmap,vimUserCmd,vimMenu,vimMenutranslate
170 syn match vimCmdSep "[:|]\+" skipwhite nextgroup=@vimCmdList,vimSubst1 171 syn match vimCmdSep "[:|]\+" skipwhite nextgroup=@vimCmdList,vimSubst1
171 syn match vimIsCommand "\<\%(\h\w*\|[23]mat\%[ch]\)\>" contains=vimCommand 172 syn match vimIsCommand "\<\%(\h\w*\|[23]mat\%[ch]\)\>" contains=vimCommand