0
0
mirror of https://github.com/vim/vim.git synced 2025-09-25 03:54:15 -04:00

runtime(vim): Update base-syntax, match OR operator in :echo and :execute

Don't match the OR operator in expressions as a trailing bar.

closes: #17533

Signed-off-by: Doug Kearns <dougkearns@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
This commit is contained in:
Doug Kearns
2025-06-23 21:51:44 +02:00
committed by Christian Brabandt
parent 74f0a77bb9
commit a931371694
12 changed files with 191 additions and 88 deletions

View File

@@ -1,5 +1,6 @@
" Vim :execute command
" :help :execute
execute "buffer" nextbuf
@@ -15,8 +16,22 @@ if 0
endif
execute 'while i < 5 | echo i | let i = i + 1 | endwhile'
" trailing bar vs OR operator
" OR operator
execute foo || bar ? "Foo" : "NotFoo"
execute foo ||
\ bar ? "Foo" : "NotFoo"
" following command is :|"
execute "call Foo()" | |
execute "Foo" | |
" invalid expression
execute "Foo" ||
" line continuations
execute "call"
"\ comment
@@ -27,11 +42,14 @@ execute
"\ comment
\ "Foo()"
" trailing bar and comments
" :execute without {expr}
execute| echo "Foo"
" trailing comment needs |
execute "foo" | " comment
execute "Foo" | " comment
" Issue #9987 (parenthesised argument - not a function call)
@@ -39,3 +57,4 @@ execute "foo" | " comment
" FIXME: execute is ex command not builtin function
let foo = {'arg': "call Foo()"}
execute (foo.arg)