runtime(pandoc): update YAML metadata block parsing in compiler runtime

Previously the incorrect regexp forced title to be a single letter
because of using '+' instead of the '\+' regexp modifier.

closes: #17321

Signed-off-by: Alexander Abrosimov <alexander.n.abrosimov@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
This commit is contained in:
Alexander Abrosimov
2025-05-15 20:06:29 +02:00
committed by Christian Brabandt
parent 31be82e66d
commit 1aa68dffbf

View File

@ -2,6 +2,7 @@
" Compiler: Pandoc " Compiler: Pandoc
" Maintainer: Konfekt " Maintainer: Konfekt
" Last Change: 2024 Nov 19 " Last Change: 2024 Nov 19
" 2025 May 15 Update the title regex for CompilerSet #17321
" "
" Expects output file extension, say `:make html` or `:make pdf`. " Expects output file extension, say `:make html` or `:make pdf`.
" Passes additional arguments to pandoc, say `:make html --self-contained`. " Passes additional arguments to pandoc, say `:make html --self-contained`.
@ -51,7 +52,7 @@ endfunction
execute 'CompilerSet makeprg=pandoc'..escape( execute 'CompilerSet makeprg=pandoc'..escape(
\ ' --standalone'.. \ ' --standalone'..
\ (s:PandocFiletype(&filetype) ==# 'markdown' && (getline(1) =~# '^%\s\+\S\+' || (search('^title:\s+\S+', 'cnw') > 0)) ? \ (s:PandocFiletype(&filetype) ==# 'markdown' && (getline(1) =~# '^%\s\+\S\+' || (search('^title:\s\+\S\+', 'cnw') > 0)) ?
\ '' : ' --metadata title=%:t:r:S').. \ '' : ' --metadata title=%:t:r:S')..
\ ' '..s:PandocLang().. \ ' '..s:PandocLang()..
\ ' --from='..s:PandocFiletype(&filetype).. \ ' --from='..s:PandocFiletype(&filetype)..