Problem: Vim Syntax Script can be improved
Solution: Rework syntax script, update syntax tests and unit tests
(Doug Kearns).
- Contain Ex commands to valid syntactic contexts.
- Add full address (:range) matching.
- Match :Next, :Print, :X, :global, :&, :~, :>, :<, :# and := commands.
- Match text input commands with folding.
Use :syn-keyword to match all commands except when immediately following
\w range characters where :syn-match is employed.
fixes: #20250 (variables with s_ prefix are wrongly highlighted)
fixes: #17543 (do not highlight vim commands within :runtime)
fixes: #16937 (do not highlight vim commands after packadd)
fixes: #14895 (incorrect highlighting of Vim syntax)
fixes: #14020 (insert commands)
closes: #19331
Signed-off-by: Doug Kearns <dougkearns@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
21 lines
262 B
VimL
21 lines
262 B
VimL
" Vim :eval command
|
|
|
|
|
|
eval "Foo"->append(0)
|
|
|
|
eval "Foo"
|
|
\ ->append(
|
|
\ 0
|
|
\ )
|
|
|
|
eval "Foo"->append(0) | echo "Foo"
|
|
|
|
echo "Foo" | eval "Foo"->append(0)
|
|
|
|
eval "Foo"->append(0) | " comment
|
|
|
|
def Vim9Context()
|
|
eval "Foo"->append(0) # comment
|
|
enddef
|
|
|