There has to be at least one character, so we should use + instead of *. This makes the following:
cat <<-\ EOF $foobar EOF Be matched by shRedir26 properly, instead of shRedir32, which doesn't work. Signed-off-by: Felipe Contreras <[email protected]> --- runtime/syntax/sh.vim | 52 +++++++++++++++++++++++++-------------------------- 1 file changed, 26 insertions(+), 26 deletions(-) diff --git a/runtime/syntax/sh.vim b/runtime/syntax/sh.vim index 5ca5bc6..c042c82 100644 --- a/runtime/syntax/sh.vim +++ b/runtime/syntax/sh.vim @@ -348,34 +348,34 @@ if version < 600 syn region shHereDoc matchgroup=shRedir06 start="<<-\s*\**\.\**" matchgroup=shRedir06 end="^\s*\.$" contains=@shDblQuoteList elseif s:sh_fold_heredoc - syn region shHereDoc matchgroup=shRedir07 fold start="<<\s*\z([^ \t|]*\)" matchgroup=shRedir07 end="^\z1\s*$" contains=@shDblQuoteList - syn region shHereDoc matchgroup=shRedir08 fold start="<<\s*\"\z([^ \t|]*\)\"" matchgroup=shRedir08 end="^\z1\s*$" - syn region shHereDoc matchgroup=shRedir09 fold start="<<\s*'\z([^ \t|]*\)'" matchgroup=shRedir09 end="^\z1\s*$" - syn region shHereDoc matchgroup=shRedir10 fold start="<<-\s*\z([^ \t|]*\)" matchgroup=shRedir10 end="^\s*\z1\s*$" contains=@shDblQuoteList - syn region shHereDoc matchgroup=shRedir11 fold start="<<-\s*\"\z([^ \t|]*\)\"" matchgroup=shRedir11 end="^\s*\z1\s*$" - syn region shHereDoc matchgroup=shRedir12 fold start="<<-\s*'\z([^ \t|]*\)'" matchgroup=shRedir12 end="^\s*\z1\s*$" - syn region shHereDoc matchgroup=shRedir13 fold start="<<\s*\\\_$\_s*\z([^ \t|]*\)" matchgroup=shRedir13 end="^\z1\s*$" - syn region shHereDoc matchgroup=shRedir14 fold start="<<\s*\\\_$\_s*\"\z([^ \t|]*\)\"" matchgroup=shRedir14 end="^\z1\s*$" - syn region shHereDoc matchgroup=shRedir15 fold start="<<-\s*\\\_$\_s*'\z([^ \t|]*\)'" matchgroup=shRedir15 end="^\s*\z1\s*$" - syn region shHereDoc matchgroup=shRedir16 fold start="<<-\s*\\\_$\_s*\z([^ \t|]*\)" matchgroup=shRedir16 end="^\s*\z1\s*$" - syn region shHereDoc matchgroup=shRedir17 fold start="<<-\s*\\\_$\_s*\"\z([^ \t|]*\)\"" matchgroup=shRedir17 end="^\s*\z1\s*$" - syn region shHereDoc matchgroup=shRedir18 fold start="<<\s*\\\_$\_s*'\z([^ \t|]*\)'" matchgroup=shRedir18 end="^\z1\s*$" - syn region shHereDoc matchgroup=shRedir19 fold start="<<\\\z([^ \t|]*\)" matchgroup=shRedir19 end="^\z1\s*$" + syn region shHereDoc matchgroup=shRedir07 fold start="<<\s*\z([^ \t|]\+\)" matchgroup=shRedir07 end="^\z1\s*$" contains=@shDblQuoteList + syn region shHereDoc matchgroup=shRedir08 fold start="<<\s*\"\z([^ \t|]\+\)\"" matchgroup=shRedir08 end="^\z1\s*$" + syn region shHereDoc matchgroup=shRedir09 fold start="<<\s*'\z([^ \t|]\+\)'" matchgroup=shRedir09 end="^\z1\s*$" + syn region shHereDoc matchgroup=shRedir10 fold start="<<-\s*\z([^ \t|]\+\)" matchgroup=shRedir10 end="^\s*\z1\s*$" contains=@shDblQuoteList + syn region shHereDoc matchgroup=shRedir11 fold start="<<-\s*\"\z([^ \t|]\+\)\"" matchgroup=shRedir11 end="^\s*\z1\s*$" + syn region shHereDoc matchgroup=shRedir12 fold start="<<-\s*'\z([^ \t|]\+\)'" matchgroup=shRedir12 end="^\s*\z1\s*$" + syn region shHereDoc matchgroup=shRedir13 fold start="<<\s*\\\_$\_s*\z([^ \t|]\+\)" matchgroup=shRedir13 end="^\z1\s*$" + syn region shHereDoc matchgroup=shRedir14 fold start="<<\s*\\\_$\_s*\"\z([^ \t|]\+\)\"" matchgroup=shRedir14 end="^\z1\s*$" + syn region shHereDoc matchgroup=shRedir15 fold start="<<-\s*\\\_$\_s*'\z([^ \t|]\+\)'" matchgroup=shRedir15 end="^\s*\z1\s*$" + syn region shHereDoc matchgroup=shRedir16 fold start="<<-\s*\\\_$\_s*\z([^ \t|]\+\)" matchgroup=shRedir16 end="^\s*\z1\s*$" + syn region shHereDoc matchgroup=shRedir17 fold start="<<-\s*\\\_$\_s*\"\z([^ \t|]\+\)\"" matchgroup=shRedir17 end="^\s*\z1\s*$" + syn region shHereDoc matchgroup=shRedir18 fold start="<<\s*\\\_$\_s*'\z([^ \t|]\+\)'" matchgroup=shRedir18 end="^\z1\s*$" + syn region shHereDoc matchgroup=shRedir19 fold start="<<\\\z([^ \t|]\+\)" matchgroup=shRedir19 end="^\z1\s*$" else - syn region shHereDoc matchgroup=shRedir20 start="<<\s*\\\=\z([^ \t|]*\)" matchgroup=shRedir20 end="^\z1\s*$" contains=@shDblQuoteList - syn region shHereDoc matchgroup=shRedir21 start="<<\s*\"\z([^ \t|]*\)\"" matchgroup=shRedir21 end="^\z1\s*$" - syn region shHereDoc matchgroup=shRedir22 start="<<-\s*\z([^ \t|]*\)" matchgroup=shRedir22 end="^\s*\z1\s*$" contains=@shDblQuoteList - syn region shHereDoc matchgroup=shRedir23 start="<<-\s*'\z([^ \t|]*\)'" matchgroup=shRedir23 end="^\s*\z1\s*$" - syn region shHereDoc matchgroup=shRedir24 start="<<\s*'\z([^ \t|]*\)'" matchgroup=shRedir24 end="^\z1\s*$" - syn region shHereDoc matchgroup=shRedir25 start="<<-\s*\"\z([^ \t|]*\)\"" matchgroup=shRedir25 end="^\s*\z1\s*$" - syn region shHereDoc matchgroup=shRedir26 start="<<\s*\\\_$\_s*\z([^ \t|]*\)" matchgroup=shRedir26 end="^\z1\s*$" - syn region shHereDoc matchgroup=shRedir27 start="<<-\s*\\\_$\_s*\z([^ \t|]*\)" matchgroup=shRedir27 end="^\s*\z1\s*$" - syn region shHereDoc matchgroup=shRedir28 start="<<-\s*\\\_$\_s*'\z([^ \t|]*\)'" matchgroup=shRedir28 end="^\s*\z1\s*$" - syn region shHereDoc matchgroup=shRedir29 start="<<\s*\\\_$\_s*'\z([^ \t|]*\)'" matchgroup=shRedir29 end="^\z1\s*$" - syn region shHereDoc matchgroup=shRedir30 start="<<\s*\\\_$\_s*\"\z([^ \t|]*\)\"" matchgroup=shRedir30 end="^\z1\s*$" - syn region shHereDoc matchgroup=shRedir31 start="<<-\s*\\\_$\_s*\"\z([^ \t|]*\)\"" matchgroup=shRedir31 end="^\s*\z1\s*$" - syn region shHereDoc matchgroup=shRedir32 start="<<\\\z([^ \t|]*\)" matchgroup=shRedir32 end="^\z1\s*$" + syn region shHereDoc matchgroup=shRedir20 start="<<\s*\\\=\z([^ \t|]\+\)" matchgroup=shRedir20 end="^\z1\s*$" contains=@shDblQuoteList + syn region shHereDoc matchgroup=shRedir21 start="<<\s*\"\z([^ \t|]\+\)\"" matchgroup=shRedir21 end="^\z1\s*$" + syn region shHereDoc matchgroup=shRedir22 start="<<-\s*\z([^ \t|]\+\)" matchgroup=shRedir22 end="^\s*\z1\s*$" contains=@shDblQuoteList + syn region shHereDoc matchgroup=shRedir23 start="<<-\s*'\z([^ \t|]\+\)'" matchgroup=shRedir23 end="^\s*\z1\s*$" + syn region shHereDoc matchgroup=shRedir24 start="<<\s*'\z([^ \t|]\+\)'" matchgroup=shRedir24 end="^\z1\s*$" + syn region shHereDoc matchgroup=shRedir25 start="<<-\s*\"\z([^ \t|]\+\)\"" matchgroup=shRedir25 end="^\s*\z1\s*$" + syn region shHereDoc matchgroup=shRedir26 start="<<\s*\\\_$\_s*\z([^ \t|]\+\)" matchgroup=shRedir26 end="^\z1\s*$" + syn region shHereDoc matchgroup=shRedir27 start="<<-\s*\\\_$\_s*\z([^ \t|]\+\)" matchgroup=shRedir27 end="^\s*\z1\s*$" + syn region shHereDoc matchgroup=shRedir28 start="<<-\s*\\\_$\_s*'\z([^ \t|]\+\)'" matchgroup=shRedir28 end="^\s*\z1\s*$" + syn region shHereDoc matchgroup=shRedir29 start="<<\s*\\\_$\_s*'\z([^ \t|]\+\)'" matchgroup=shRedir29 end="^\z1\s*$" + syn region shHereDoc matchgroup=shRedir30 start="<<\s*\\\_$\_s*\"\z([^ \t|]\+\)\"" matchgroup=shRedir30 end="^\z1\s*$" + syn region shHereDoc matchgroup=shRedir31 start="<<-\s*\\\_$\_s*\"\z([^ \t|]\+\)\"" matchgroup=shRedir31 end="^\s*\z1\s*$" + syn region shHereDoc matchgroup=shRedir32 start="<<\\\z([^ \t|]\+\)" matchgroup=shRedir32 end="^\z1\s*$" endif " Here Strings: {{{1 -- 1.9.3+fc1~5~gfaddd51 -- -- You received this message from the "vim_dev" maillist. Do not top-post! Type your reply below the text you are replying to. For more information, visit http://www.vim.org/maillist.php --- You received this message because you are subscribed to the Google Groups "vim_dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
