runtime(vim): Update base syntax, match :wincmd
Match the full :wincmd command syntax. Allow for oneline assignment to Vim9 variables named winc[md]. Fixes #18368. Signed-off-by: Doug Kearns <dougkearns@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
This commit is contained in:
committed by
Christian Brabandt
parent
8b9e687ea1
commit
b1446dfd23
@ -4,7 +4,7 @@
|
||||
@75
|
||||
|i+0#af5f00255&|f| +0#0000000&|!+0#af5f00255&|e+0#00e0e07&|x|i|s|t|s|(+0#e000e06&|"+0#e000002&|:|D|i|f@1|O|r|i|g|"|)+0#e000e06&| +0#0000000&@51
|
||||
@2>c+0#af5f00255&|o|m@1|a|n|d| +0#0000000&|D|i|f@1|O|r|i|g| |v+0#af5f00255&|e|r|t| +0#0000000&|n+0#af5f00255&|e|w| +0#0000000&||| |s+0#af5f00255&|e|t| +0#0000000&|b+0#e000e06&|t|=+0#af5f00255&|n+0#0000000&|o|f|i|l|e| ||| |r+0#af5f00255&| +0#0000000&|++0#af5f00255&@1|e+0#00e0e07&|d|i|t| +0#0000000&|%+0#af5f00255&@1| +0#0000000&||| |0+0#e000002&|d+0#0000000&|_| ||| |d+0#af5f00255&|i|f@1|t|h|i|s| +0#0000000&
|
||||
@18|\+0#e000e06&| +0#0000000&||| |w+0#af5f00255&|i|n|c|m|d| +0#0000000&|p+0#af5f00255&| +0#0000000&||| |d+0#af5f00255&|i|f@1|t|h|i|s| +0#0000000&@33
|
||||
@18|\+0#e000e06&| +0#0000000&||| |w+0#af5f00255&|i|n|c|m|d| +0#0000000&|p| ||| |d+0#af5f00255&|i|f@1|t|h|i|s| +0#0000000&@33
|
||||
|e+0#af5f00255&|n|d|i|f| +0#0000000&@69
|
||||
@75
|
||||
@75
|
||||
|
||||
@ -8,7 +8,7 @@
|
||||
@75
|
||||
|i+0#af5f00255&|f| +0#0000000&|!+0#af5f00255&|e+0#00e0e07&|x|i|s|t|s|(+0#e000e06&|"+0#e000002&|:|D|i|f@1|O|r|i|g|"|)+0#e000e06&| +0#0000000&@51
|
||||
@2|c+0#af5f00255&|o|m@1|a|n|d| +0#0000000&|D|i|f@1|O|r|i|g| |v+0#af5f00255&|e|r|t| +0#0000000&|n+0#af5f00255&|e|w| +0#0000000&||| |s+0#af5f00255&|e|t| +0#0000000&|b+0#e000e06&|t|=+0#af5f00255&|n+0#0000000&|o|f|i|l|e| ||| |r+0#af5f00255&| +0#0000000&|++0#af5f00255&@1|e+0#00e0e07&|d|i|t| +0#0000000&|#| ||| |0+0#e000002&|d+0#0000000&|_| ||| |d+0#af5f00255&|i|f@1|t|h|i|s| +0#0000000&@1
|
||||
@18|\+0#e000e06&| +0#0000000&||| |w+0#af5f00255&|i|n|c|m|d| +0#0000000&|p+0#af5f00255&| +0#0000000&||| |d+0#af5f00255&|i|f@1|t|h|i|s| +0#0000000&@33
|
||||
@18|\+0#e000e06&| +0#0000000&||| |w+0#af5f00255&|i|n|c|m|d| +0#0000000&|p| ||| |d+0#af5f00255&|i|f@1|t|h|i|s| +0#0000000&@33
|
||||
|e+0#af5f00255&|n|d|i|f| +0#0000000&@69
|
||||
@75
|
||||
@75
|
||||
|
||||
20
runtime/syntax/testdir/dumps/vim_ex_wincmd_00.dump
Normal file
20
runtime/syntax/testdir/dumps/vim_ex_wincmd_00.dump
Normal file
@ -0,0 +1,20 @@
|
||||
>"+0#0000e05#ffffff0| |V|i|m| |:|w|i|n|c|m|d| |c|o|m@1|a|n|d| +0#0000000&@53
|
||||
|"+0#0000e05&| |V|I|M|_|T|E|S|T|_|S|E|T|U|P| |h|i| |l|i|n|k| |v|i|m|W|i|n|c|m|d|A|r|g| |T|o|d|o| +0#0000000&@32
|
||||
|"+0#0000e05&| |V|I|M|_|T|E|S|T|_|S|E|T|U|P| |h|i| |l|i|n|k| |v|i|m|C|m|d|S|e|p| |S|p|e|c|i|a|l| +0#0000000&@32
|
||||
@75
|
||||
@75
|
||||
|w+0#af5f00255&|i|n|c|m|d| +0#0000000&|s+0#0000001#ffff4012| +0#0000000#ffffff0@66
|
||||
|w+0#af5f00255&|i|n|c|m|d| +0#0000000&|S+0#0000001#ffff4012| +0#0000000#ffffff0@66
|
||||
|w+0#af5f00255&|i|n|c|m|d| +0#0000000&|v+0#0000001#ffff4012| +0#0000000#ffffff0@66
|
||||
|w+0#af5f00255&|i|n|c|m|d| +0#0000000&|n+0#0000001#ffff4012| +0#0000000#ffffff0@66
|
||||
|w+0#af5f00255&|i|n|c|m|d| +0#0000000&|^+0#0000001#ffff4012| +0#0000000#ffffff0@66
|
||||
|w+0#af5f00255&|i|n|c|m|d| +0#0000000&|:+0#0000001#ffff4012| +0#0000000#ffffff0@66
|
||||
|w+0#af5f00255&|i|n|c|m|d| +0#0000000&|q+0#0000001#ffff4012| +0#0000000#ffffff0@66
|
||||
|w+0#af5f00255&|i|n|c|m|d| +0#0000000&|o+0#0000001#ffff4012| +0#0000000#ffffff0@66
|
||||
|w+0#af5f00255&|i|n|c|m|d| +0#0000000&|j+0#0000001#ffff4012| +0#0000000#ffffff0@66
|
||||
|w+0#af5f00255&|i|n|c|m|d| +0#0000000&|k+0#0000001#ffff4012| +0#0000000#ffffff0@66
|
||||
|w+0#af5f00255&|i|n|c|m|d| +0#0000000&|h+0#0000001#ffff4012| +0#0000000#ffffff0@66
|
||||
|w+0#af5f00255&|i|n|c|m|d| +0#0000000&|l+0#0000001#ffff4012| +0#0000000#ffffff0@66
|
||||
|w+0#af5f00255&|i|n|c|m|d| +0#0000000&|w+0#0000001#ffff4012| +0#0000000#ffffff0@66
|
||||
|w+0#af5f00255&|i|n|c|m|d| +0#0000000&|W+0#0000001#ffff4012| +0#0000000#ffffff0@66
|
||||
@57|1|,|1| @10|T|o|p|
|
||||
20
runtime/syntax/testdir/dumps/vim_ex_wincmd_01.dump
Normal file
20
runtime/syntax/testdir/dumps/vim_ex_wincmd_01.dump
Normal file
@ -0,0 +1,20 @@
|
||||
|w+0#af5f00255#ffffff0|i|n|c|m|d| +0#0000000&|j+0#0000001#ffff4012| +0#0000000#ffffff0@66
|
||||
|w+0#af5f00255&|i|n|c|m|d| +0#0000000&|k+0#0000001#ffff4012| +0#0000000#ffffff0@66
|
||||
|w+0#af5f00255&|i|n|c|m|d| +0#0000000&|h+0#0000001#ffff4012| +0#0000000#ffffff0@66
|
||||
|w+0#af5f00255&|i|n|c|m|d| +0#0000000&|l+0#0000001#ffff4012| +0#0000000#ffffff0@66
|
||||
|w+0#af5f00255&|i|n|c|m|d| +0#0000000&|w+0#0000001#ffff4012| +0#0000000#ffffff0@66
|
||||
>w+0#af5f00255&|i|n|c|m|d| +0#0000000&|W+0#0000001#ffff4012| +0#0000000#ffffff0@66
|
||||
|w+0#af5f00255&|i|n|c|m|d| +0#0000000&|t+0#0000001#ffff4012| +0#0000000#ffffff0@66
|
||||
|w+0#af5f00255&|i|n|c|m|d| +0#0000000&|b+0#0000001#ffff4012| +0#0000000#ffffff0@66
|
||||
|w+0#af5f00255&|i|n|c|m|d| +0#0000000&|p+0#0000001#ffff4012| +0#0000000#ffffff0@66
|
||||
|w+0#af5f00255&|i|n|c|m|d| +0#0000000&|P+0#0000001#ffff4012| +0#0000000#ffffff0@66
|
||||
|w+0#af5f00255&|i|n|c|m|d| +0#0000000&|r+0#0000001#ffff4012| +0#0000000#ffffff0@66
|
||||
|w+0#af5f00255&|i|n|c|m|d| +0#0000000&|R+0#0000001#ffff4012| +0#0000000#ffffff0@66
|
||||
|w+0#af5f00255&|i|n|c|m|d| +0#0000000&|x+0#0000001#ffff4012| +0#0000000#ffffff0@66
|
||||
|w+0#af5f00255&|i|n|c|m|d| +0#0000000&|K+0#0000001#ffff4012| +0#0000000#ffffff0@66
|
||||
|w+0#af5f00255&|i|n|c|m|d| +0#0000000&|J+0#0000001#ffff4012| +0#0000000#ffffff0@66
|
||||
|w+0#af5f00255&|i|n|c|m|d| +0#0000000&|H+0#0000001#ffff4012| +0#0000000#ffffff0@66
|
||||
|w+0#af5f00255&|i|n|c|m|d| +0#0000000&|L+0#0000001#ffff4012| +0#0000000#ffffff0@66
|
||||
|w+0#af5f00255&|i|n|c|m|d| +0#0000000&|T+0#0000001#ffff4012| +0#0000000#ffffff0@66
|
||||
|w+0#af5f00255&|i|n|c|m|d| +0#0000000&|=+0#0000001#ffff4012| +0#0000000#ffffff0@66
|
||||
@57|1|9|,|1| @9|2|7|%|
|
||||
20
runtime/syntax/testdir/dumps/vim_ex_wincmd_02.dump
Normal file
20
runtime/syntax/testdir/dumps/vim_ex_wincmd_02.dump
Normal file
@ -0,0 +1,20 @@
|
||||
|w+0#af5f00255#ffffff0|i|n|c|m|d| +0#0000000&|=+0#0000001#ffff4012| +0#0000000#ffffff0@66
|
||||
|w+0#af5f00255&|i|n|c|m|d| +0#0000000&|-+0#0000001#ffff4012| +0#0000000#ffffff0@66
|
||||
|w+0#af5f00255&|i|n|c|m|d| +0#0000000&|++0#0000001#ffff4012| +0#0000000#ffffff0@66
|
||||
|w+0#af5f00255&|i|n|c|m|d| +0#0000000&|_+0#0000001#ffff4012| +0#0000000#ffffff0@66
|
||||
|w+0#af5f00255&|i|n|c|m|d| +0#0000000&|<+0#0000001#ffff4012| +0#0000000#ffffff0@66
|
||||
>w+0#af5f00255&|i|n|c|m|d| +0#0000000&|>+0#0000001#ffff4012| +0#0000000#ffffff0@66
|
||||
|w+0#af5f00255&|i|n|c|m|d| +0#0000000&||+0#0000001#ffff4012| +0#0000000#ffffff0@66
|
||||
|w+0#af5f00255&|i|n|c|m|d| +0#0000000&|]+0#0000001#ffff4012| +0#0000000#ffffff0@66
|
||||
|w+0#af5f00255&|i|n|c|m|d| +0#0000000&|g+0#0000001#ffff4012| |]| +0#0000000#ffffff0@64
|
||||
|w+0#af5f00255&|i|n|c|m|d| +0#0000000&|f+0#0000001#ffff4012| +0#0000000#ffffff0@66
|
||||
|w+0#af5f00255&|i|n|c|m|d| +0#0000000&|F+0#0000001#ffff4012| +0#0000000#ffffff0@66
|
||||
|w+0#af5f00255&|i|n|c|m|d| +0#0000000&|g+0#0000001#ffff4012|f| +0#0000000#ffffff0@65
|
||||
|w+0#af5f00255&|i|n|c|m|d| +0#0000000&|g+0#0000001#ffff4012|F| +0#0000000#ffffff0@65
|
||||
|w+0#af5f00255&|i|n|c|m|d| +0#0000000&|g+0#0000001#ffff4012|t| +0#0000000#ffffff0@65
|
||||
|w+0#af5f00255&|i|n|c|m|d| +0#0000000&|g+0#0000001#ffff4012|T| +0#0000000#ffffff0@65
|
||||
|w+0#af5f00255&|i|n|c|m|d| +0#0000000&|z+0#0000001#ffff4012| +0#0000000#ffffff0@66
|
||||
|w+0#af5f00255&|i|n|c|m|d| +0#0000000&|}+0#0000001#ffff4012| +0#0000000#ffffff0@66
|
||||
|w+0#af5f00255&|i|n|c|m|d| +0#0000000&|g+0#0000001#ffff4012| |}| +0#0000000#ffffff0@64
|
||||
@75
|
||||
@57|3|7|,|1| @9|6|4|%|
|
||||
20
runtime/syntax/testdir/dumps/vim_ex_wincmd_03.dump
Normal file
20
runtime/syntax/testdir/dumps/vim_ex_wincmd_03.dump
Normal file
@ -0,0 +1,20 @@
|
||||
| +0&#ffffff0@74
|
||||
@75
|
||||
|w+0#af5f00255&|i|n|c|m|d| +0#0000000&||+0#0000001#ffff4012| +0#0000000#ffffff0||+0#e000e06&| +0#0000000&|e+0#af5f00255&|c|h|o| +0#0000000&|"+0#e000002&|F|o@1|"| +0#0000000&@53
|
||||
|w+0#af5f00255&|i|n|c|m|d| +0#0000000&||+0#0000001#ffff4012| +0#0000000#ffffff0|"+0#0000e05&| |c|o|m@1|e|n|t| +0#0000000&@56
|
||||
|w+0#af5f00255&|i|n|c|m|d| +0#0000000&|s+0#0000001#ffff4012| +0#0000000#ffffff0||+0#e000e06&| +0#0000000&|e+0#af5f00255&|c|h|o| +0#0000000&|"+0#e000002&|F|o@1|"| +0#0000000&@53
|
||||
>w+0#af5f00255&|i|n|c|m|d| +0#0000000&|s+0#0000001#ffff4012| +0#0000000#ffffff0|"+0#0000e05&| |c|o|m@1|e|n|t| +0#0000000&@56
|
||||
@75
|
||||
@75
|
||||
|d+0#af5f00255&|e|f| +0#0000000&|V|i|m|9|C|o|n|t|e|x|t|(+0#e000e06&|)| +0#0000000&@57
|
||||
@2|v+0#af5f00255&|a|r| +0#0000000&|w|i|n|c|m|d| |=+0#af5f00255&| +0#0000000&|4+0#e000002&|2| +0#0000000&@57
|
||||
@2|w|i|n|c|m|d| |=+0#af5f00255&| +0#0000000&|4+0#e000002&|2| +0#0000000&@61
|
||||
@2|:+0#e000e06&|w+0#af5f00255&|i|n|c|m|d| +0#0000000&|=+0#0000001#ffff4012| +0#0000000#ffffff0@63
|
||||
@1| +0#af5f00255&|w|i|n|c|m|d| +0#0000000&|=+0#0000001#ffff4012| +0#0000000#ffffff0|#+0#0000e05&| |c|o|m@1|e|n|t| +0#0000000&@54
|
||||
@1| +0#af5f00255&|w|i|n|c|m|d| +0#0000000&|=+0#0000001#ffff4012| +0#0000000#ffffff0||+0#e000e06&| +0#0000000&|e+0#af5f00255&|c|h|o| +0#0000000&|"+0#e000002&|F|o@1|"| +0#0000000&@51
|
||||
@2|#+0#0000e05&| +0#0000000&|K+0#e000e06&|N|O|W|N|:| +0#0000e05&|i|n|c|o|r@1|e|c|t|l|y| |m|a|t|c|h|e|s| |a|s| |t|h|e| |E|x| |c|o|m@1|a|n|d| |r|a|t|h|e|r| |t|h|a|n| |a| |v|a|r|i|a|b|l|e| +0#0000000&@3
|
||||
@1| +0#af5f00255&|w|i|n|c|m|d| +0#0000000&|=+0#0000001#ffff4012| +0#0000000#ffffff0@64
|
||||
|e+0#af5f00255&|n|d@1|e|f| +0#0000000&@68
|
||||
@75
|
||||
|~+0#4040ff13&| @73
|
||||
| +0#0000000&@56|5@1|,|1| @9|B|o|t|
|
||||
67
runtime/syntax/testdir/input/vim_ex_wincmd.vim
Normal file
67
runtime/syntax/testdir/input/vim_ex_wincmd.vim
Normal file
@ -0,0 +1,67 @@
|
||||
" Vim :wincmd command
|
||||
" VIM_TEST_SETUP hi link vimWincmdArg Todo
|
||||
" VIM_TEST_SETUP hi link vimCmdSep Special
|
||||
|
||||
|
||||
wincmd s
|
||||
wincmd S
|
||||
wincmd v
|
||||
wincmd n
|
||||
wincmd ^
|
||||
wincmd :
|
||||
wincmd q
|
||||
wincmd o
|
||||
wincmd j
|
||||
wincmd k
|
||||
wincmd h
|
||||
wincmd l
|
||||
wincmd w
|
||||
wincmd W
|
||||
wincmd t
|
||||
wincmd b
|
||||
wincmd p
|
||||
wincmd P
|
||||
wincmd r
|
||||
wincmd R
|
||||
wincmd x
|
||||
wincmd K
|
||||
wincmd J
|
||||
wincmd H
|
||||
wincmd L
|
||||
wincmd T
|
||||
wincmd =
|
||||
wincmd -
|
||||
wincmd +
|
||||
wincmd _
|
||||
wincmd <
|
||||
wincmd >
|
||||
wincmd |
|
||||
wincmd ]
|
||||
wincmd g ]
|
||||
wincmd f
|
||||
wincmd F
|
||||
wincmd gf
|
||||
wincmd gF
|
||||
wincmd gt
|
||||
wincmd gT
|
||||
wincmd z
|
||||
wincmd }
|
||||
wincmd g }
|
||||
|
||||
|
||||
wincmd | | echo "Foo"
|
||||
wincmd | " comment
|
||||
wincmd s | echo "Foo"
|
||||
wincmd s " comment
|
||||
|
||||
|
||||
def Vim9Context()
|
||||
var wincmd = 42
|
||||
wincmd = 42
|
||||
:wincmd =
|
||||
wincmd = # comment
|
||||
wincmd = | echo "Foo"
|
||||
# KNOWN: incorrectly matches as the Ex command rather than a variable
|
||||
wincmd =
|
||||
enddef
|
||||
|
||||
Reference in New Issue
Block a user