0
0
mirror of https://github.com/vim/vim.git synced 2025-09-23 03:43:49 -04:00

runtime(vim): Update base-syntax, improve :echo and :execute highlighting (#14199)

Improve :echo and :execute highlighting.

- Add better line-continuation support for both commands.
- Improve the :execute command's expression argument matching.
- Remove the fix for issue #9987 as this is now handled by correctly
  matching the parens in :echo (...) as operator parens.


Signed-off-by: Doug Kearns <dougkearns@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
This commit is contained in:
dkearns
2024-03-15 23:45:48 +11:00
committed by GitHub
parent c35fc03dbd
commit 61887b3d6f
16 changed files with 293 additions and 80 deletions

View File

@@ -15,6 +15,24 @@ echo "Answer = "
"\ comment
\ 42
echo
\ "Answer = "
"\ comment
\ 42
" :echo without {expr}
echo| echo "Foo"
" trailing comment needs |
echo "foo" | " comment
" Issue #9987 (parenthesised argument - not a function call)
let foo = {'end': 123}
if 123
echo (foo.end)
else
echo 'bar'
endif

View File

@@ -0,0 +1,41 @@
" Vim :execute command
" :help :execute
execute "buffer" nextbuf
execute "normal" count .. "w"
execute '!ls' | echo "theend"
execute "normal ixxx\<Esc>"
execute "e " .. fnameescape(filename)
execute "!ls " .. shellescape(filename, 1)
if 0
execute 'while i > 5'
echo "test"
endwhile
endif
execute 'while i < 5 | echo i | let i = i + 1 | endwhile'
" following command is :|"
execute "call Foo()" | |
execute "call"
"\ comment
\ "Foo()"
execute
\ "call"
"\ comment
\ "Foo()"
" :execute without {expr}
execute| echo "Foo"
" trailing comment needs |
execute "foo" | " comment
" Issue #9987 (parenthesised argument - not a function call)
" FIXME: execute is ex command not builtin function
let foo = {'arg': "call Foo()"}
execute (foo.arg)