diff runtime/syntax/scdoc.vim @ 28843:cd68a630f0d0

Update runtime files and translations Commit: https://github.com/vim/vim/commit/3f32a5f1601ab2b0eba0caad00d4c26fb86a02a2 Author: Bram Moolenaar <Bram@vim.org> Date: Thu May 12 20:34:15 2022 +0100 Update runtime files and translations
author Bram Moolenaar <Bram@vim.org>
date Thu, 12 May 2022 21:45:05 +0200
parents 29ec2c198c8d
children
line wrap: on
line diff
--- a/runtime/syntax/scdoc.vim
+++ b/runtime/syntax/scdoc.vim
@@ -1,6 +1,7 @@
 " Syntax file for scdoc files
-" Maintainer: Gregory Anders <greg@gpanders.com>
-" Last Updated: 2021-08-04
+" Maintainer: Gregory Anders <contact@gpanders.com>
+" Last Updated: 2022-05-09
+" Upstream: https://github.com/gpanders/vim-scdoc
 
 if exists('b:current_syntax')
     finish
@@ -20,33 +21,43 @@ syntax match scdocIndentError "^[ ]\+"
 
 syntax match scdocLineBreak "++$"
 
-syntax match scdocOrderedListMarker "^\s*\.\%(\s\+\S\)\@="
-syntax match scdocListMarker "^\s*-\%(\s\+\S\)\@="
+syntax region scdocOrderedListItem matchgroup=scdocOrderedListMarker start="^\z(\s*\)\." skip="^\z1  .*$" end="^" contains=scdocBold,scdocUnderline
+syntax region scdocListItem matchgroup=scdocListMarker start="^\z(\s*\)-" skip="^\z1  .*$" end="^" contains=scdocBold,scdocUnderline
+
+" Tables cannot start with a column
+syntax match scdocTableError "^:"
 
-syntax match scdocTableStartMarker "^[\[|\]][\[\-\]]"
-syntax match scdocTableMarker "^[|:][\[\-\] ]"
+syntax region scdocTable matchgroup=scdocTableEntry start="^[\[|\]][\[\-\]<=>]" end="^$" contains=scdocTableEntry,scdocTableError,scdocTableContinuation,scdocBold,scdocUnderline,scdocPre
+syntax match scdocTableError "^.*$" contained
+syntax match scdocTableContinuation "^   \+\S\+" contained
+syntax match scdocTableEntry "^[|:][\[\-\]<=> ]" contained
+syntax match scdocTableError "^[|:][\[\-\]<=> ]\S.*$" contained
 
 syntax region scdocBold concealends matchgroup=scdocBoldDelimiter start="\\\@<!\*" end="\\\@<!\*"
 syntax region scdocUnderline concealends matchgroup=scdocUnderlineDelimiter start="\<\\\@<!_" end="\\\@<!_\>"
 syntax region scdocPre matchgroup=scdocPreDelimiter start="^\t*```" end="^\t*```"
 
-hi link scdocFirstLineValid     Comment
-hi link scdocComment            Comment
-hi link scdocHeader             Title
-hi link scdocOrderedListMarker  Statement
-hi link scdocListMarker         scdocOrderedListMarker
-hi link scdocLineBreak          Special
-hi link scdocTableMarker        Statement
-hi link scdocTableStartMarker   scdocTableMarker
+syntax sync minlines=50
+
+hi default link scdocFirstLineValid     Comment
+hi default link scdocComment            Comment
+hi default link scdocHeader             Title
+hi default link scdocOrderedListMarker  Statement
+hi default link scdocListMarker         scdocOrderedListMarker
+hi default link scdocLineBreak          Special
+hi default link scdocTableSpecifier     Statement
+hi default link scdocTableEntry         Statement
 
-hi link scdocFirstLineError     Error
-hi link scdocCommentError       Error
-hi link scdocHeaderError        Error
-hi link scdocIndentError        Error
+hi default link scdocFirstLineError        Error
+hi default link scdocCommentError          Error
+hi default link scdocHeaderError           Error
+hi default link scdocIndentError           Error
+hi default link scdocTableError            Error
+hi default link scdocTableError Error
 
-hi link scdocPreDelimiter       Delimiter
+hi default link scdocPreDelimiter       Delimiter
 
-hi scdocBold term=bold cterm=bold gui=bold
-hi scdocUnderline term=underline cterm=underline gui=underline
-hi link scdocBoldDelimiter scdocBold
-hi link scdocUnderlineDelimiter scdocUnderline
+hi default scdocBold term=bold cterm=bold gui=bold
+hi default scdocUnderline term=underline cterm=underline gui=underline
+hi default link scdocBoldDelimiter scdocBold
+hi default link scdocUnderlineDelimiter scdocUnderline