runtime(vim): Improve :let-heredoc syntax highlighting (#12923)
Commit:
https://github.com/vim/vim/commit/9358b8d99349818666718f513655c2bf53d43754
Author: dkearns <
dougk...@gmail.com>
Date: Sun Nov 12 05:06:01 2023 +1100
runtime(vim): Improve :let-heredoc syntax highlighting (
https://github.com/vim/vim/issues/12923)
"trim" and "eval" are allowed in any order and whitespace is not
required after "=<<".
Signed-off-by: Christian Brabandt <
c...@256bit.org>
diff --git a/runtime/syntax/vim.vim b/runtime/syntax/vim.vim
index 9975572f2..e97321cec 100644
--- a/runtime/syntax/vim.vim
+++ b/runtime/syntax/vim.vim
@@ -3,6 +3,7 @@
" Maintainer: Charles E. Campbell <Ncamp...@SdrPchip.AorgM-NOSPAM>
" Last Change: May 09, 2023
" 2023 Sep 14 by Vim Project (all :loadkeymap variants)
+" 2023 Nov 12 by Vim Project (:let-heredoc improvements)
" Version: 9.0-25
" URL:
http://www.drchip.org/astronaut/vim/index.html#SYNTAX_VIM
" Automatically generated keyword lists: {{{1
@@ -407,7 +408,7 @@ syn match vimSetMod contained "&vim\=\|[!&?<]\|all&"
" Let And Var: {{{2
" ===========
syn keyword vimLet let unl[et] skipwhite nextgroup=vimVar,vimFuncVar,vimLetHereDoc
-VimFoldh syn region vimLetHereDoc matchgroup=vimLetHereDocStart start='=<<\s\+\%(trim\s\+\)\=\%(eval\s\+\)\=\s*\z(\L\S*\)' matchgroup=vimLetHereDocStop end='^\s*\z1\s*$'
+VimFoldh syn region vimLetHereDoc matchgroup=vimLetHereDocStart start='=<<\s*\%(trim\s\+\%(eval\s\+\)\=\|eval\s\+\%(trim\s\+\)\=\)\=\z(\L\S*\)' matchgroup=vimLetHereDocStop end='^\s*\z1\s*$'
syn keyword vimLet var skipwhite nextgroup=vimVar,vimFuncVar,vimLetHereDoc
" Abbreviations: {{{2