updated for version 7.0097
diff --git a/runtime/syntax/yaml.vim b/runtime/syntax/yaml.vim
index 56e578b..1be00ee 100644
--- a/runtime/syntax/yaml.vim
+++ b/runtime/syntax/yaml.vim
@@ -1,105 +1,83 @@
 " Vim syntax file
-" Language:	    YAML (YAML Ain't Markup Language)
-" Maintainer:	    Nikolai Weibull <source@pcppopper.org>
-" URL:		    http://www.pcppopper.org/vim/syntax/pcp/yaml/
-" Latest Revision:  2004-05-22
-" arch-tag:	    01bf8ef1-335f-4692-a228-4846cb64cd16
+" Language:         YAML (YAML Ain't Markup Language)
+" Maintainer:       Nikolai Weibull <nikolai+work.vim@bitwi.se>
+" Latest Revision:  2005-06-27
 
-if version < 600
-  syntax clear
-elseif exists("b:current_syntax")
+if exists("b:current_syntax")
   finish
 endif
 
-" Todo
-syn keyword yamlTodo	contained TODO FIXME XXX NOTE
+let s:cpo_save = &cpo
+set cpo&vim
 
-" Comments (4.2.2)
-syn region  yamlComment	matchgroup=yamlComment start='\%(^\|\s\)#' end='$' contains=yamlTodo
+syn keyword yamlTodo            contained TODO FIXME XXX NOTE
 
-" Node Properties (4.3.4)
-syn match   yamlNodeProperty	'!\%(![^\\^%	 ]\+\|[^!][^:/	 ]*\)'
+syn region  yamlComment         matchgroup=yamlComment start='\%(^\|\s\)#'
+                                \ end='$' contains=yamlTodo,@Spell
 
-" Anchors (4.3.6)
-syn match   yamlAnchor	'&.\+'
+syn match   yamlNodeProperty    '!\%(![^\\^%     ]\+\|[^!][^:/   ]*\)'
 
-" Aliases (4.3.7)
-syn match   yamlAlias	'\*.\+'
+syn match   yamlAnchor          '&.\+'
 
-" Operators, Blocks, Keys, and Delimiters
-syn match   yamlDelimiter   '[-,:]'
-syn match   yamlBlock	    '[\[\]{}>|]'
-syn match   yamlOperator    '[?+-]'
-syn match   yamlKey	    '\w\+\(\s\+\w\+\)*\ze\s*:'
+syn match   yamlAlias           '\*.\+'
 
-" Strings (4.6.8, 4.6.9)
-syn region  yamlString	start=+"+ skip=+\\"+ end=+"+ contains=yamlEscape
-syn region  yamlString	start=+'+ skip=+''+ end=+'+ contains=yamlSingleEscape
-syn match   yamlEscape	contained +\\[\\"abefnrtv^0_ NLP]+
-syn match   yamlEscape	contained '\\x\x\{2}'
-syn match   yamlEscape	contained '\\u\x\{4}'
-syn match   yamlEscape	contained '\\U\x\{8}'
+syn match   yamlDelimiter       '[-,:]'
+syn match   yamlBlock           '[\[\]{}>|]'
+syn match   yamlOperator        '[?+-]'
+syn match   yamlKey             '\w\+\(\s\+\w\+\)*\ze\s*:'
+
+syn region  yamlString          start=+"+ skip=+\\"+ end=+"+
+                                \ contains=yamlEscape
+syn region  yamlString          start=+'+ skip=+''+ end=+'+
+                                \ contains=yamlSingleEscape
+syn match   yamlEscape          contained display +\\[\\"abefnrtv^0_ NLP]+
+syn match   yamlEscape          contained display '\\x\x\{2}'
+syn match   yamlEscape          contained display '\\u\x\{4}'
+syn match   yamlEscape          contained display '\\U\x\{8}'
 " TODO: how do we get 0x85, 0x2028, and 0x2029 into this?
-syn match   yamlEscape	'\\\%(\r\n\|[\r\n]\)'
-syn match   yamlSingleEscape contained +''+
+syn match   yamlEscape          display '\\\%(\r\n\|[\r\n]\)'
+syn match   yamlSingleEscape    contained display +''+
 
-" Numbers
 " TODO: sexagecimal and fixed (20:30.15 and 1,230.15)
-syn match   yamlNumber	'\<[+-]\=\d\+\%(\.\d\+\%([eE][+-]\=\d\+\)\=\)\='
-syn match   yamlNumber	'0\o\+'
-syn match   yamlNumber	'0x\x\+'
-syn match   yamlNumber	'([+-]\=[iI]nf)'
-syn match   yamlNumber	'(NaN)'
+syn match   yamlNumber          display
+                                \ '\<[+-]\=\d\+\%(\.\d\+\%([eE][+-]\=\d\+\)\=\)\='
+syn match   yamlNumber          display '0\o\+'
+syn match   yamlNumber          display '0x\x\+'
+syn match   yamlNumber          display '([+-]\=[iI]nf)'
+syn match   yamlNumber          display '(NaN)'
 
-" Constants
-syn match   yamlConstant    '\<[~yn]\>'
-syn keyword yamlConstant    true True TRUE false False FALSE
-syn keyword yamlConstant    yes Yes on ON no No off OFF
-syn keyword yamlConstant    null Null NULL nil Nil NIL
+syn match   yamlConstant        '\<[~yn]\>'
+syn keyword yamlConstant        true True TRUE false False FALSE
+syn keyword yamlConstant        yes Yes on ON no No off OFF
+syn keyword yamlConstant        null Null NULL nil Nil NIL
 
-" Timestamps
-syn match   yamlTimestamp   '\d\d\d\d-\%(1[0-2]\|\d\)-\%(3[0-2]\|2\d\|1\d\|\d\)\%( \%([01]\d\|2[0-3]\):[0-5]\d:[0-5]\d.\d\d [+-]\%([01]\d\|2[0-3]\):[0-5]\d\|t\%([01]\d\|2[0-3]\):[0-5]\d:[0-5]\d.\d\d[+-]\%([01]\d\|2[0-3]\):[0-5]\d\|T\%([01]\d\|2[0-3]\):[0-5]\d:[0-5]\d.\dZ\)\='
+syn match   yamlTimestamp       '\d\d\d\d-\%(1[0-2]\|\d\)-\%(3[0-2]\|2\d\|1\d\|\d\)\%( \%([01]\d\|2[0-3]\):[0-5]\d:[0-5]\d.\d\d [+-]\%([01]\d\|2[0-3]\):[0-5]\d\|t\%([01]\d\|2[0-3]\):[0-5]\d:[0-5]\d.\d\d[+-]\%([01]\d\|2[0-3]\):[0-5]\d\|T\%([01]\d\|2[0-3]\):[0-5]\d:[0-5]\d.\dZ\)\='
 
-" Documents (4.3.1)
-syn region  yamlDocumentHeader	start='---' end='$' contains=yamlDirective
-syn match   yamlDocumentEnd	'\.\.\.'
+syn region  yamlDocumentHeader  start='---' end='$' contains=yamlDirective
+syn match   yamlDocumentEnd     '\.\.\.'
 
-" Directives (4.3.2)
-syn match   yamlDirective   contained '%[^:]\+:.\+'
+syn match   yamlDirective       contained '%[^:]\+:.\+'
 
-" 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_yaml_syn_inits")
-  if version < 508
-    let did_yaml_syn_inits = 1
-    command -nargs=+ HiLink hi link <args>
-  else
-    command -nargs=+ HiLink hi def link <args>
-  endif
-
-  HiLink yamlTodo	    Todo
-  HiLink yamlComment	    Comment
-  HiLink yamlDocumentHeader PreProc
-  HiLink yamlDocumentEnd    PreProc
-  HiLink yamlDirective	    Keyword
-  HiLink yamlNodeProperty   Type
-  HiLink yamlAnchor	    Type
-  HiLink yamlAlias	    Type
-  HiLink yamlDelimiter	    Delimiter
-  HiLink yamlBlock	    Operator
-  HiLink yamlOperator	    Operator
-  HiLink yamlKey	    Identifier
-  HiLink yamlString	    String
-  HiLink yamlEscape	    SpecialChar
-  HiLink yamlSingleEscape   SpecialChar
-  HiLink yamlNumber	    Number
-  HiLink yamlConstant	    Constant
-  HiLink yamlTimestamp	    Number
-
-  delcommand HiLink
-endif
+hi def link yamlTodo            Todo
+hi def link yamlComment         Comment
+hi def link yamlDocumentHeader  PreProc
+hi def link yamlDocumentEnd     PreProc
+hi def link yamlDirective       Keyword
+hi def link yamlNodeProperty    Type
+hi def link yamlAnchor          Type
+hi def link yamlAlias           Type
+hi def link yamlDelimiter       Delimiter
+hi def link yamlBlock           Operator
+hi def link yamlOperator        Operator
+hi def link yamlKey             Identifier
+hi def link yamlString          String
+hi def link yamlEscape          SpecialChar
+hi def link yamlSingleEscape    SpecialChar
+hi def link yamlNumber          Number
+hi def link yamlConstant        Constant
+hi def link yamlTimestamp       Number
 
 let b:current_syntax = "yaml"
 
-" vim: set sts=2 sw=2:
+let &cpo = s:cpo_save
+unlet s:cpo_save