From 46d86979a9208e0842e1d8cfc0341737efc95e75 Mon Sep 17 00:00:00 2001 From: Marshall Ward Date: Mon, 13 Oct 2025 18:33:56 +0000 Subject: [PATCH] runtime(rst): Style update Minor style and whitespace changes to the reST syntax file, to sync with the development branch. related: #18566 Signed-off-by: Marshall Ward Signed-off-by: Christian Brabandt --- runtime/syntax/rst.vim | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/runtime/syntax/rst.vim b/runtime/syntax/rst.vim index bb9a0b3a46..9584947df5 100644 --- a/runtime/syntax/rst.vim +++ b/runtime/syntax/rst.vim @@ -2,8 +2,9 @@ " Language: reStructuredText documentation format " Maintainer: Marshall Ward " Previous Maintainer: Nikolai Weibull +" Reference: https://docutils.sourceforge.io/docs/ref/rst/restructuredtext.html " Website: https://github.com/marshallward/vim-restructuredtext -" Latest Revision: 2020-03-31 +" Latest Revision: 2025-10-13 if exists("b:current_syntax") finish @@ -12,7 +13,8 @@ endif let s:cpo_save = &cpo set cpo&vim -syn case ignore +" reStructuredText is case-insensitive +syntax case ignore syn match rstTransition /^[=`:.'"~^_*+#-]\{4,}\s*$/ @@ -97,6 +99,9 @@ execute 'syn region rstExDirective contained matchgroup=rstDirective' . execute 'syn match rstSubstitutionDefinition contained' . \ ' /|.*|\_s\+/ nextgroup=@rstDirectives' + +"" Inline Markup "" + function! s:DefineOneInlineMarkup(name, start, middle, end, char_left, char_right) " Only escape the first char of a multichar delimiter (e.g. \* inside **) if a:start[0] == '\' @@ -190,6 +195,8 @@ execute 'syn match rstHyperlinkReference' . syn match rstStandaloneHyperlink contains=@NoSpell \ "\<\%(\%(\%(https\=\|file\|ftp\|gopher\)://\|\%(mailto\|news\):\)[^[:space:]'\"<>]\+\|www[[:alnum:]_-]*\.[[:alnum:]_-]\+\.[^[:space:]'\"<>]\+\)[[:alnum:]/]" +" `code` is the standard reST directive for source code. +" `code-block` and `sourcecode` are nearly identical directives in Sphinx. syn region rstCodeBlock contained matchgroup=rstDirective \ start=+\%(sourcecode\|code\%(-block\)\=\)::\s*\(\S*\)\?\s*\n\%(\s*:.*:\s*.*\s*\n\)*\n\ze\z(\s\+\)+ \ skip=+^$+