updated for version 7.0097
diff --git a/runtime/syntax/rst.vim b/runtime/syntax/rst.vim
index 02d43c6..a1b4429 100644
--- a/runtime/syntax/rst.vim
+++ b/runtime/syntax/rst.vim
@@ -1,107 +1,102 @@
" Vim syntax file
-" Language: reStructuredText Documentation Format
-" Maintainer: Nikolai Weibull <source@pcppopper.org>
-" URL: http://www.pcppopper.org/vim/syntax/pcp/rst/
-" Latest Revision: 2004-05-13
-" arch-tag: 6fae09da-d5d4-49d8-aec1-e49008ea21e6
+" Language: reStructuredText documentation format
+" Maintainer: Nikolai Weibull <nikolai+work.vim@bitwi.se>
+" Latest Revision: 2005-06-29
-if version < 600
- syntax clear
-elseif exists("b:current_syntax")
+if exists("b:current_syntax")
finish
endif
-" todo
-syn keyword rstTodo contained FIXME TODO XXX NOTE
+let s:cpo_save = &cpo
+set cpo&vim
+
+syn keyword rstTodo contained FIXME TODO XXX NOTE
syn case ignore
-" comments
-syn region rstComment matchgroup=rstComment start="^\.\.\%( \%([a-z0-9_.-]\+::\)\@!\|$\)" end="^\s\@!" contains=rstTodo
+syn region rstComment matchgroup=rstComment
+ \ start='^\.\.\%( \%([a-z0-9_.-]\+::\)\@!\|$\)'
+ \ end='^\s\@!' contains=rstTodo
-syn cluster rstCruft contains=rstFootnoteLabel,rstCitationLabel,rstSubstitutionLabel,rstInline,rstHyperlinks,rstInternalTarget
+syn cluster rstCruft contains=rstFootnoteLabel,rstCitationLabel,
+ \ rstSubstitutionLabel,rstInline,
+ \ rstHyperlinks,rstInternalTarget
-" blocks
-" syn region rstBlock matchgroup=rstDelimiter start=":\@<!:$" skip="^$" end="^\s\@!" contains=@rstCruft
-syn region rstBlock matchgroup=rstDelimiter start="::$" skip="^$" end="^\s\@!"
-syn region rstDoctestBlock matchgroup=rstDelimiter start="^>>>\s" end="^$"
+syn region rstBlock matchgroup=rstDelimiter
+ \ start='::$' skip='^$' end='^\s\@!'
+syn region rstDoctestBlock matchgroup=rstDelimiter
+ \ start='^>>>\s' end='^$'
-" tables
" TODO: these may actually be a bit too complicated to match correctly and
-" should perhaps be removed. Whon really needs it anyway?
-syn region rstTable transparent start="^\n\s*+[-=+]\+" end="^$" contains=rstTableLines,@rstCruft
-syn match rstTableLines contained "^\s*[|+=-]\+$"
-syn region rstSimpleTable transparent start="^\n\s*\%(=\+\s\+\)\%(=\+\s*\)\+$" end="^$" contains=rstSimpleTableLines,@rstCruft
-syn match rstSimpleTableLines contained "^\s*\%(=\+\s\+\)\%(=\+\s*\)\+$"
+" should perhaps be removed. We won't really needs it anyway?
+syn region rstTable transparent start='^\n\s*+[-=+]\+' end='^$'
+ \ contains=rstTableLines,@rstCruft
+syn match rstTableLines contained '^\s*[|+=-]\+$'
+syn region rstSimpleTable transparent
+ \ start='^\n\s*\%(=\+\s\+\)\%(=\+\s*\)\+$'
+ \ end='^$'
+ \ contains=rstSimpleTableLines,@rstCruft
+syn match rstSimpleTableLines contained display
+ \ '^\s*\%(=\+\s\+\)\%(=\+\s*\)\+$'
-" footnotes
-syn region rstFootnote matchgroup=rstDirective start="^\.\. \[\%([#*]\|[0-9]\+\|#[a-z0-9_.-]\+\)\]\s" end="^\s\@!" contains=@rstCruft
-syn match rstFootnoteLabel "\[\%([#*]\|[0-9]\+\|#[a-z0-9_.-]\+\)\]_"
+syn region rstFootnote matchgroup=rstDirective
+ \ start='^\.\. \[\%([#*]\|[0-9]\+\|#[a-z0-9_.-]\+\)\]\s'
+ \ end='^\s\@!' contains=@rstCruft
+syn match rstFootnoteLabel '\[\%([#*]\|[0-9]\+\|#[a-z0-9_.-]\+\)\]_'
-" citations
-syn region rstCitation matchgroup=rstDirective start="^\.\. \[[a-z0-9_.-]\+\]\s" end="^\s\@!" contains=@rstCruft
-syn match rstCitationLabel "\[[a-z0-9_.-]\+\]_"
+syn region rstCitation matchgroup=rstDirective
+ \ start='^\.\. \[[a-z0-9_.-]\+\]\s'
+ \ end='^\s\@!' contains=@rstCruft
+syn match rstCitationLabel '\[[a-z0-9_.-]\+\]_'
-" directives
-syn region rstDirectiveBody matchgroup=rstDirective start="^\.\. [a-z0-9_.-]\+::" end="^\s\@!"
+syn region rstDirectiveBody matchgroup=rstDirective
+ \ start='^\.\. [a-z0-9_.-]\+::'
+ \ end='^\s\@!'
-" substitutions
-syn region rstSubstitution matchgroup=rstDirective start="^\.\. |[a-z0-9_.-]|\s[a-z0-9_.-]\+::\s" end="^\s\@!" contains=@rstCruft
-syn match rstSubstitutionLabel "|[a-z0-9_.-]|"
+syn region rstSubstitution matchgroup=rstDirective
+ \ start='^\.\. |[a-z0-9_.-]|\s[a-z0-9_.-]\+::\s'
+ \ end='^\s\@!' contains=@rstCruft
+syn match rstSubstitutionLbl '|[a-z0-9_.-]|'
-" inline markup
-syn match rstInline "\*\{1,2}\S\%([^*]*\S\)\=\*\{1,2}"
-syn match rstInline "`\{1,2}\S\%([^`]*\S\)\=`\{1,2}"
+syn match rstInline '\*\{1,2}\S\%([^*]*\S\)\=\*\{1,2}'
+syn match rstInline '`\{1,2}\S\%([^`]*\S\)\=`\{1,2}'
-" hyperlinks
-syn region rstHyperlinks matchgroup=RstDirective start="^\.\. _[a-z0-9_. -]\+:\s" end="^\s\@!" contains=@rstCruft
+syn region rstHyperlinks matchgroup=RstDirective
+ \ start='^\.\. _[a-z0-9_. -]\+:\s'
+ \ end='^\s\@!' contains=@rstCruft
-syn match rstHyperlinksLabel "`\S\%([^`]*\S\)\=`__\=\>"
-syn match rstHyperlinksLabel "\w\+__\=\>"
+syn match rstHyperlinksLabel '`\S\%([^`]*\S\)\=`__\=\>'
+syn match rstHyperlinksLabel '\w\+__\=\>'
-" internal targets
-syn match rstInternalTarget "_`\S\%([^`]*\S\)\=`"
+syn match rstInternalTarget '_`\S\%([^`]*\S\)\=`'
-" lists
-syn match rstListItem "^:\%(\w\+\s*\)\+:"
-syn match rstListItem "^\s*[-*+]\s\+"
+syn match rstListItem '^:\%(\w\+\s*\)\+:'
+syn match rstListItem '^\s*[-*+]\s\+'
syn sync minlines=50
-" Define the default highlighting.
-" For version 5.7 and earlier: only when not done already
-" For version 5.8 and later: only when an item doesn't have highlighting yet
-if version >= 508 || !exists("did_rst_syn_inits")
- if version < 508
- let did_rst_syn_inits = 1
- command -nargs=+ HiLink hi link <args>
- else
- command -nargs=+ HiLink hi def link <args>
- endif
-
- HiLink rstTodo Todo
- HiLink rstComment Comment
- HiLink rstDelimiter Delimiter
- HiLink rstBlock String
- HiLink rstDoctestBlock PreProc
- HiLink rstTableLines Delimiter
- HiLink rstSimpleTableLines rstTableLines
- HiLink rstFootnote String
- HiLink rstFootnoteLabel Identifier
- HiLink rstCitation String
- HiLink rstCitationLabel Identifier
- HiLink rstDirective Keyword
- HiLink rstDirectiveBody Type
- HiLink rstSubstitution String
- HiLink rstSubstitutionLabel Identifier
- HiLink rstHyperlinks String
- HiLink rstHyperlinksLabel Identifier
- HiLink rstListItem Identifier
- hi def rstInline term=italic cterm=italic gui=italic
- hi def rstInternalTarget term=italic cterm=italic gui=italic
- delcommand HiLink
-endif
+hi def link rstTodo Todo
+hi def link rstComment Comment
+hi def link rstDelimiter Delimiter
+hi def link rstBlock String
+hi def link rstDoctestBlock PreProc
+hi def link rstTableLines Delimiter
+hi def link rstSimpleTableLines rstTableLines
+hi def link rstFootnote String
+hi def link rstFootnoteLabel Identifier
+hi def link rstCitation String
+hi def link rstCitationLabel Identifier
+hi def link rstDirective Keyword
+hi def link rstDirectiveBody Type
+hi def link rstSubstitution String
+hi def link rstSubstitutionLbl Identifier
+hi def link rstHyperlinks String
+hi def link rstHyperlinksLabel Identifier
+hi def link rstListItem Identifier
+hi def rstInline term=italic cterm=italic gui=italic
+hi def rstInternalTarget term=italic cterm=italic gui=italic
let b:current_syntax = "rst"
-" vim: set sts=2 sw=2:
+let &cpo = s:cpo_save
+unlet s:cpo_save