mirror of
https://github.com/vim/vim.git
synced 2026-10-22 07:15:42 +02:00
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>
33 lines
323 B
VimL
33 lines
323 B
VimL
" Vim := command
|
|
|
|
|
|
=
|
|
= l
|
|
> p
|
|
> #
|
|
|
|
= lp#
|
|
|
|
= | echo "..."
|
|
= " comment
|
|
= l | echo "..."
|
|
= l " comment
|
|
|
|
|
|
def Vim9Context()
|
|
# FIXME: differentiate operator and command when operators are contained
|
|
# =
|
|
:=
|
|
:= l
|
|
:= p
|
|
:= #
|
|
|
|
:= lp#
|
|
|
|
:= | echo "..."
|
|
:= # comment
|
|
:= l | echo "..."
|
|
:= l # comment
|
|
enddef
|
|
|