xref: /vim-8.2.3635/runtime/syntax/scdoc.vim (revision 6aa57295)
1" Syntax file for scdoc files
2" Maintainer: Gregory Anders <[email protected]>
3" Last Updated: 2021-08-04
4
5if exists('b:current_syntax')
6    finish
7endif
8let b:current_syntax = 'scdoc'
9
10syntax match scdocFirstLineError "\%^.*$"
11syntax match scdocFirstLineValid "\%^\S\+(\d[0-9A-Za-z]*)\%(\s\+\"[^"]*\"\%(\s\+\"[^"]*\"\)\=\)\=$"
12
13syntax region scdocCommentError start="^;\S" end="$" keepend
14syntax region scdocComment start="^; " end="$" keepend
15
16syntax region scdocHeaderError start="^#\{3,}" end="$" keepend
17syntax region scdocHeader start="^#\{1,2}" end="$" keepend
18
19syntax match scdocIndentError "^[ ]\+"
20
21syntax match scdocLineBreak "++$"
22
23syntax match scdocOrderedListMarker "^\s*\.\%(\s\+\S\)\@="
24syntax match scdocListMarker "^\s*-\%(\s\+\S\)\@="
25
26syntax match scdocTableStartMarker "^[\[|\]][\[\-\]]"
27syntax match scdocTableMarker "^[|:][\[\-\] ]"
28
29syntax region scdocBold concealends matchgroup=scdocBoldDelimiter start="\\\@<!\*" end="\\\@<!\*"
30syntax region scdocUnderline concealends matchgroup=scdocUnderlineDelimiter start="\<\\\@<!_" end="\\\@<!_\>"
31syntax region scdocPre matchgroup=scdocPreDelimiter start="^\t*```" end="^\t*```"
32
33hi link scdocFirstLineValid     Comment
34hi link scdocComment            Comment
35hi link scdocHeader             Title
36hi link scdocOrderedListMarker  Statement
37hi link scdocListMarker         scdocOrderedListMarker
38hi link scdocLineBreak          Special
39hi link scdocTableMarker        Statement
40hi link scdocTableStartMarker   scdocTableMarker
41
42hi link scdocFirstLineError     Error
43hi link scdocCommentError       Error
44hi link scdocHeaderError        Error
45hi link scdocIndentError        Error
46
47hi link scdocPreDelimiter       Delimiter
48
49hi scdocBold term=bold cterm=bold gui=bold
50hi scdocUnderline term=underline cterm=underline gui=underline
51hi link scdocBoldDelimiter scdocBold
52hi link scdocUnderlineDelimiter scdocUnderline
53