runtime(pandoc): sync syntax script with upstream

Commit: 
https://github.com/vim/vim/commit/03125277e9ea2e263ea970436efdd433d7475e2a
Author: Jake Zimmerman <zimmerman.j...@gmail.com>
Date:   Fri Jun 27 18:38:34 2025 +0200

    runtime(pandoc): sync syntax script with upstream
    
    closes: https://github.com/vim/vim/issues/17598
    
    Signed-off-by: Jake Zimmerman <zimmerman.j...@gmail.com>
    Signed-off-by: Christian Brabandt <c...@256bit.org>

diff --git a/runtime/syntax/pandoc.vim b/runtime/syntax/pandoc.vim
index 7928cc665..fdbdde096 100644
--- a/runtime/syntax/pandoc.vim
+++ b/runtime/syntax/pandoc.vim
@@ -1,18 +1,23 @@
 scriptencoding utf-8
-"
+" Vim syntax file
 " Language:    Pandoc (superset of Markdown)
 " Maintainer:  Felipe Morales <hel.sh...@gmail.com>
 " Maintainer:  Caleb Maclennan <ca...@alerque.com>
-" Upstream:    https://github.com/vim-pandoc/vim-pandoc-syntax
-"
+" Upstream:    
https://github.com/vim-pandoc/vim-pandoc-syntax/tree/ea3fc415784bdcbae7f0093b80070ca4ff9e44c8
 " Contributor: David Sanson <dsan...@gmail.com>
 "              Jorge Israel Pe帽a <jorge.israe...@gmail.com>
+"              Christian Brabandt @chrisbra
 " Original Author:     Jeremy Schultz <taoz...@gmail.com>
 " Version: 5.0
 " Last Change: 2024 Apr 08
+" 2025 Jun 27 by Vim project: sync with upstream (#17598)
+
+if exists('b:current_syntax')
+  finish
+endif
 
-let s:cpo_save = &cpo
-set cpo&vim
+let s:cpo_save = &cpoptions
+set cpoptions&vim
 
 " Configuration: {{{1
 "
@@ -155,10 +160,10 @@ endif
 " Functions: {{{1
 " EnableEmbedsforCodeblocksWithLang {{{2
 function! EnableEmbedsforCodeblocksWithLang(entry)
-    " prevent embedded language syntaxes from changing 'foldmethod' 
+    " prevent embedded language syntaxes from changing 'foldmethod'
     if has('folding')
         let s:foldmethod = &l:foldmethod
-        let s:foldtext = &l:foldtext     
+        let s:foldtext = &l:foldtext
     endif
 
     try
@@ -169,7 +174,7 @@ function! EnableEmbedsforCodeblocksWithLang(entry)
         " We might have just turned off spellchecking by including the file,
         " so we turn it back on here.
         exe 'syntax spell toplevel'
-        exe 'syn region pandocDelimitedCodeBlock_' . s:langname . ' 
start=/\(\_^\( \+\|        \)\=\(`\{3,}`*\|\~\{3,}\~*\)\s*\%({[^.]*\.\)\=' . 
s:langname . '\>.*
\)\@<=\_^/' .
+        exe 'syn region pandocDelimitedCodeBlock_' . s:langname . ' 
start=/\(\_^\( \+\|        \)\=\(`\{3,}`*\|\~\{3,}\~*\)\s*\%({[^.]*[.=]\)\=' . 
s:langname . '\>.*
\)\@<=\_^/' .
                     \' end=/\_$
\(\( \+\|       \)\=\(`\{3,}`*\|\~\{3,}\~*\)\_$
\_$\)\@=/ contained containedin=pandocDelimitedCodeBlock' .
                     \' contains=@' . toupper(s:langname)
         exe 'syn region pandocDelimitedCodeBlockinBlockQuote_' . s:langname . 
' start=/>\s\(`\{3,}`*\|\~\{3,}\~*\)\s*\%({[^.]*\.\)\=' . s:langname . '\>/' .
@@ -228,7 +233,7 @@ syntax spell toplevel
 
 " Embeds: {{{2
 
-" prevent embedded language syntaxes from changing 'foldmethod' 
+" prevent embedded language syntaxes from changing 'foldmethod'
 if has('folding')
     let s:foldmethod = &l:foldmethod
 endif
@@ -295,7 +300,7 @@ syn region pandocCodeBlockInsideIndent   start=/\(\(\d\| 
\|*\).*
\)\@<!\(^\(\s
 " Links: {{{2
 
 " Base: {{{3
-syn region pandocReferenceLabel matchgroup=pandocOperator 
start=/!\{,1}\\@<!\^\@<!\[/ skip=/\(\\@<!\]\]\@=\|`.*\\@<!].*`\)/ end=/\\@<!\]/ 
keepend display
+syn region pandocReferenceLabel matchgroup=pandocOperator 
start=/!\{,1}\\@<!\^\@<!\[/ skip=/\(\\@<!\]\]\@=\|`[^`]*`\)/ end=/\\@<!\]/ 
keepend display
 if g:pandoc#syntax#conceal#urls == 1
     syn region pandocReferenceURL matchgroup=pandocOperator start=/\]\@1<=(/ 
end=/)/ keepend conceal
 else
@@ -334,8 +339,8 @@ syn match pandocCiteLocator /[\[\]]/ contained 
containedin=pandocPCite,pandocICi
 " Text Styles: {{{2
 
 " Emphasis: {{{3
-call s:WithConceal('block', 'syn region pandocEmphasis 
matchgroup=pandocOperator start=/\\@1<!\(\_^\|\s\|[[:punct:]]\)\@<=\*\S\@=/ 
skip=/\(\*\*\|__\)/ end=/\*\([[:punct:]]\|\s\|\_$\)\@=/ 
contains=@Spell,pandocNoFormattedInEmphasis,pandocLatexInlineMath,pandocAmpersandEscape',
 'concealends')
-call s:WithConceal('block', 'syn region pandocEmphasis 
matchgroup=pandocOperator start=/\\@1<!\(\_^\|\s\|[[:punct:]]\)\@<=_\S\@=/ 
skip=/\(\*\*\|__\)/ end=/\S\@1<=_\([[:punct:]]\|\s\|\_$\)\@=/ 
contains=@Spell,pandocNoFormattedInEmphasis,pandocLatexInlineMath,pandocAmpersandEscape',
 'concealends')
+call s:WithConceal('block', 'syn region pandocEmphasis 
matchgroup=pandocOperator start=/\\@1<!\(\_^\|\s\|[[:punct:]]\)\@<=\*\S\@=/ 
skip=/\(\*\*\|__\)/ end=/\*\([[:punct:]]\| \|\s\|\_$\)\@=/ 
contains=@Spell,pandocNoFormattedInEmphasis,pandocLatexInlineMath,pandocAmpersandEscape',
 'concealends')
+call s:WithConceal('block', 'syn region pandocEmphasis 
matchgroup=pandocOperator start=/\\@1<!\(\_^\|\s\|[[:punct:]]\)\@<=_\S\@=/ 
skip=/\(\*\*\|__\)/ end=/\S\@1<=_\([[:punct:]]\| \|\s\|\_$\)\@=/ 
contains=@Spell,pandocNoFormattedInEmphasis,pandocLatexInlineMath,pandocAmpersandEscape',
 'concealends')
 " }}}3
 
 " Strong: {{{3
@@ -487,7 +492,7 @@ syn match pandocUListItem /^>\=\s*[*+-]\s\+-\@!.*$/ 
nextgroup=pandocUListItem,pa
 call s:WithConceal('list', 'syn match pandocUListItemBullet /^>\=\s*\zs[*+-]/ 
contained containedin=pandocUListItem', 'conceal cchar='.s:cchars['li'])
 
 " Ordered lists
-syn match pandocListItem /^\s*(\?\(\d\+\|\l\|\#\|@\)[.)].*$/ 
nextgroup=pandocListItem,pandocLaTeXMathBlock,pandocLaTeXInlineMath,pandocEscapedDollar,pandocDelimitedCodeBlock,pandocListItemContinuation
 
contains=@Spell,pandocEmphasis,pandocStrong,pandocNoFormatted,pandocStrikeout,pandocSubscript,pandocSuperscript,pandocStrongEmphasis,pandocStrongEmphasis,pandocPCite,pandocICite,pandocCiteKey,pandocReferenceLabel,pandocLaTeXCommand,pandocLaTeXMathBlock,pandocLaTeXInlineMath,pandocEscapedDollar,pandocAutomaticLink,pandocFootnoteDef,pandocFootnoteBlock,pandocFootnoteID,pandocAmpersandEscape
 skipempty display
+syn match pandocListItem /^\s*(\?\(\d\+\|\l\|\#\|@\)[.)].*$/ 
nextgroup=pandocListItem,pandocLaTeXMathBlock,pandocLaTeXInlineMath,pandocEscapedDollar,pandocDelimitedCodeBlock,pandocListItemContinuation
 
contains=@Spell,pandocEmphasis,pandocStrong,pandocReferenceURL,pandocNoFormatted,pandocStrikeout,pandocSubscript,pandocSuperscript,pandocStrongEmphasis,pandocStrongEmphasis,pandocPCite,pandocICite,pandocCiteKey,pandocReferenceLabel,pandocLaTeXCommand,pandocLaTeXMathBlock,pandocLaTeXInlineMath,pandocEscapedDollar,pandocAutomaticLink,pandocFootnoteDef,pandocFootnoteBlock,pandocFootnoteID,pandocAmpersandEscape
 skipempty display
 
 " support for roman numerals up to 'c'
 if g:pandoc#syntax#roman_lists != 0
@@ -501,8 +506,8 @@ syn match pandocListItemContinuation 
/^\s\+\([-+*]\s\+\|(\?.\+[).]\)\@<!\([[:upp
 
 " Definitions: {{{2
 if g:pandoc#syntax#use_definition_lists == 1
-    syn region pandocDefinitionBlock start=/^\%(\_^\s*\([`~]\) \{2,}\)\@!.*
\(^\s*
\)\=\s\{0,2}\([:~]\)\( \{2,} *\)\@!/ skip=/

\zs\s/ end=/

/ 
contains=pandocDefinitionBlockMark,pandocDefinitionBlockTerm,pandocCodeBlockInsideIndent,pandocEmphasis,pandocStrong,pandocStrongEmphasis,pandocNoFormatted,pandocStrikeout,pandocSubscript,pandocSuperscript,pandocFootnoteID,pandocReferenceURL,pandocReferenceLabel,pandocLaTeXMathBlock,pandocLaTeXInlineMath,pandocEscapedDollar,pandocAutomaticLink,pandocEmDash,pandocEnDash,pandocFootnoteDef,pandocFootnoteBlock,pandocFootnoteID
-    syn match pandocDefinitionBlockTerm /^.*
\(^\s*
\)\=\(\s*[:~]\)\@=/ contained 
contains=pandocNoFormatted,pandocEmphasis,pandocStrong,pandocLaTeXInlineMath,pandocEscapedDollar,pandocFootnoteDef,pandocFootnoteBlock,pandocFootnoteID
 nextgroup=pandocDefinitionBlockMark
+    syn region pandocDefinitionBlock start=/^\%(\_^\s*\([`~]\) \{2,}\)\@!.*
\(^\s*
\)\=\s\{0,2}\([:~]\)\( \{2,} *\)\@!/ skip=/

\zs\s/ end=/

/ 
contains=@Spell,pandocDefinitionBlockMark,pandocDefinitionBlockTerm,pandocCodeBlockInsideIndent,pandocEmphasis,pandocStrong,pandocStrongEmphasis,pandocNoFormatted,pandocStrikeout,pandocSubscript,pandocSuperscript,pandocFootnoteID,pandocReferenceURL,pandocReferenceLabel,pandocLaTeXMathBlock,pandocLaTeXInlineMath,pandocEscapedDollar,pandocAutomaticLink,pandocEmDash,pandocEnDash,pandocFootnoteDef,pandocFootnoteBlock,pandocFootnoteID
+    syn match pandocDefinitionBlockTerm /^.*
\(^\s*
\)\=\(\s*[:~]\)\@=/ contained 
contains=@Spell,pandocNoFormatted,pandocEmphasis,pandocStrong,pandocLaTeXInlineMath,pandocEscapedDollar,pandocFootnoteDef,pandocFootnoteBlock,pandocFootnoteID
 nextgroup=pandocDefinitionBlockMark
     call s:WithConceal('definition', 'syn match pandocDefinitionBlockMark 
/^\s*[:~]/ contained', 'conceal cchar='.s:cchars['definition'])
 endif
 " }}}2
@@ -551,7 +556,7 @@ endif
 " }}}3
 
 " &-escaped Special Characters: {{{3
-syn match pandocAmpersandEscape / \&(#\d+|#x\x+|[[:alnum:]]+)\;/ 
contains=NoSpell
+syn match pandocAmpersandEscape / \&(#\d+|#x\x+|[[:alnum:]]+)\;/ 
contains=@NoSpell
 " }}}3
 
 " YAML: {{{2
@@ -703,7 +708,7 @@ let b:current_syntax = 'pandoc'
 syntax sync clear
 syntax sync minlines=1000
 
-let &cpo = s:cpo_save
+let &cpoptions = s:cpo_save
 unlet s:cpo_save
 
 " vim: set fdm=marker foldlevel=0:

-- 
-- 
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 vim_dev+unsubscr...@googlegroups.com.
To view this discussion visit 
https://groups.google.com/d/msgid/vim_dev/E1uVCCL-006kdp-Ee%40256bit.org.

Raspunde prin e-mail lui