updated for version 7.0097
diff --git a/runtime/syntax/readline.vim b/runtime/syntax/readline.vim
index 8f72048..cc4d86d 100644
--- a/runtime/syntax/readline.vim
+++ b/runtime/syntax/readline.vim
@@ -1,152 +1,176 @@
 " Vim syntax file
-" Language:	    readline configuration file
-" Maintainer:	    Nikolai Weibull <source@pcppopper.org>
-" URL:		    http://www.pcppopper.org/vim/syntax/pcp/readline/
-" Latest Revision:  2004-05-22
-" arch-tag:	    6d8e7da4-b39c-4bf7-8e6a-d9135f993457
-" Variables:
+" Language:         readline(3) configuration file
+" Maintainer:       Nikolai Weibull <nikolai+work.vim@bitwi.se>
+" Latest Revision:  2005-06-29
 "   readline_has_bash - if defined add support for bash specific
-"			settings/functions
+"                       settings/functions
 
-if version < 600
-  syntax clear
-elseif exists("b:current_syntax")
+if exists("b:current_syntax")
   finish
 endif
 
-" Set iskeyword since we need `-' (and potentially others) in keywords.
-" For version 5.x: Set it globally
-" For version 6.x: Set it locally
-if version >= 600
-  command -nargs=1 SetIsk setlocal iskeyword=<args>
-else
-  command -nargs=1 SetIsk set iskeyword=<args>
-endif
-SetIsk 48-57,65-90,97-122,-
-delcommand SetIsk
+let s:cpo_save = &cpo
+set cpo&vim
 
-" comments
-syn region  readlineComment	display oneline matchgroup=readlineComment start="^\s*#" end="$" contains=readlineTodo
+setlocal iskeyword=@,48-57,-
 
-" todo
-syn keyword readlineTodo	contained TODO FIXME XXX NOTE
+syn keyword readlineTodo        contained TODO FIXME XXX NOTE
 
-" strings (argh...not the way i want it, but fine..."
-syn match   readlineString	"^\s*[A-Za-z-]\+:"me=e-1 contains=readlineKeys
-syn region  readlineString	display oneline start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=readlineKeysTwo
+syn region  readlineComment     display oneline matchgroup=readlineComment
+                                \ start='^\s*#' end='$'
+                                \ contains=readlineTodo,@Spell
 
-" special key
+syn match   readlineString      '^\s*[A-Za-z-]\+:'me=e-1 contains=readlineKeys
+syn region  readlineString      display oneline start=+"+ skip=+\\\\\|\\"+
+                                \ end=+"+ contains=readlineKeysTwo
+
 syn case ignore
-syn keyword readlineKeys	contained Control Meta Del Esc Escape LFD Newline Ret Return Rubout Space Spc Tab
+syn keyword readlineKeys        contained Control Meta Del Esc Escape LFD
+                                \ Newline Ret Return Rubout Space Spc Tab
 syn case match
 
-syn match   readlineKeysTwo	contained +\\\([CM]-\|[e\\"'abdfnrtv]\|\o\{3}\|x\x\{3}\)+
+syn match   readlineKeysTwo     contained display
+                                \ +\\\([CM]-\|[e\\"'abdfnrtv]\|\o\{3}\|x\x\{3}\)+
 
-" keymaps
-syn match   readlineKeymaps	contained "emacs\(-standard\|-meta\|-ctlx\)\="
-syn match   readlineKeymaps	contained "vi\(-move\|-command\|-insert\)\="
+syn match   readlineKeymaps     contained display
+                                \ 'emacs\(-standard\|-meta\|-ctlx\)\='
+syn match   readlineKeymaps     contained display
+                                \ 'vi\(-move\|-command\|-insert\)\='
 
-" bell styles
-syn keyword readlineBellStyles	contained audible visible none
+syn keyword readlineBellStyles  contained audible visible none
 
-" numbers
-syn match   readlineNumber	contained "\<\d\+\>"
+syn match   readlineNumber      contained display '\<\d\+\>'
 
-" booleans
 syn case ignore
-syn keyword readlineBoolean	contained on off
+syn keyword readlineBoolean     contained on off
 syn case match
 
-" conditionals
-syn keyword readlineIfOps	contained mode term
+syn keyword readlineIfOps       contained mode term
 
-syn region  readlineConditional display oneline transparent matchgroup=readlineConditional start="^\s*$if" end="$" contains=readlineIfOps,readlineKeymaps
-syn match   readlineConditional	"^\s*$\(else\|endif\)\>"
+syn region  readlineConditional display oneline transparent
+                                \ matchgroup=readlineConditional
+                                \ start='^\s*$if' end="$"
+                                \ contains=readlineIfOps,readlineKeymaps
+syn match   readlineConditional display '^\s*$\(else\|endif\)\>'
 
-" include
-syn match   readlineInclude	"^\s*$include\>"
+syn match   readlineInclude     display '^\s*$include\>'
 
-" settings
+syn region  readlineSet         display oneline transparent
+                                \ matchgroup=readlineKeyword start='^\s*set\>'
+                                \ end="$"me=e-1 contains=readlineNumber,
+                                \ readlineBoolean,readlineKeymaps,
+                                \ readlineBellStyles,readlineSettings
 
-syn region  readlineSet		display oneline transparent matchgroup=readlineKeyword start="^\s*set\>" end="$"me=e-1 contains=readlineNumber,readlineBoolean,readlineKeymaps,readlineBellStyles,readlineSettings
+syn keyword readlineSettings    contained bell-style comment-begin
+                                \ completion-ignore-case completion-query-items
+                                \ convert-meta disable-completion editing-mode
+                                \ enable-keypad expand-tilde
+                                \ horizontal-scroll-mode mark-directories
+                                \ keymap mark-modified-lines meta-flag
+                                \ input-meta output-meta
+                                \ print-completions-horizontally
+                                \ show-all-if-ambiguous visible-stats
+                                \ prefer-visible-bell blink-matching-paren
+                                \ match-hidden-files history-preserve-point
+                                \ isearch-terminators
 
-syn keyword readlineSettings	contained bell-style comment-begin completion-ignore-case
-syn keyword readlineSettings	contained completion-query-items convert-meta disable-completion editing-mode enable-keypad
-syn keyword readlineSettings	contained expand-tilde horizontal-scroll-mode mark-directories keymap mark-modified-lines meta-flag
-syn keyword readlineSettings	contained input-meta output-meta print-completions-horizontally show-all-if-ambiguous visible-stats
-syn keyword readlineSettings	contained prefer-visible-bell blink-matching-paren
-syn keyword readlineSettings	contained match-hidden-files history-preserve-point isearch-terminators
+syn region  readlineBinding     display oneline transparent
+                                \ matchgroup=readlineKeyword start=':' end='$'
+                                \ contains=readlineKeys,readlineFunctions
 
-" bash extensions
+syn keyword readlineFunctions   contained display
+                                \ beginning-of-line end-of-line forward-char
+                                \ backward-char forward-word backward-word
+                                \ clear-screen redraw-current-line
+                                \ accept-line previous-history
+                                \ next-history beginning-of-history
+                                \ end-of-history reverse-search-history
+                                \ forward-search-history
+                                \ non-incremental-reverse-search-history
+                                \ non-incremental-forward-search-history
+                                \ history-search-forward
+                                \ history-search-backward
+                                \ yank-nth-arg yank-last-arg
+                                \ delete-char backward-delete-char
+                                \ forward-backward-delete-char quoted-insert
+                                \ tab-insert self-insert transpose-chars
+                                \ transpose-words upcase-word downcase-word
+                                \ capitalize-word overwrite-mode kill-line
+                                \ backward-kill-line unix-line-discard
+                                \ kill-whole-line kill-word backward-kill-word
+                                \ unix-word-rubout unix-filename-rubout
+                                \ delete-horizontal-space kill-region
+                                \ copy-region-as-kill copy-backward-word
+                                \ copy-forward-word yank yank-pop
+                                \ digit-argument universal-argument complete
+                                \ possible-completions insert-completions
+                                \ menu-complete delete-char-or-list
+                                \ start-kbd-macro end-kbd-macro
+                                \ call-last-kbd-macro re-read-init-file
+                                \ abort do-uppercase-version prefix-meta
+                                \ undo revert-line tilde-expand set-mark
+                                \ exchange-point-and-mark character-search
+                                \ character-search-backward insert-comment
+                                \ dump-functions dump-variables dump-macros
+                                \ emacs-editing-mode vi-editing-mode
+                                \ vi-complete vi-char-search vi-redo
+                                \ vi-search vi-arg-digit vi-append-eol
+                                \ vi-prev-word vi-change-to vi-delete-to
+                                \ vi-end-word vi-fetch-history vi-insert-beg
+                                \ vi-search-again vi-put vi-replace
+                                \ vi-subst vi-yank-to vi-first-print
+                                \ vi-yank-arg vi-goto-mark vi-append-mode
+                                \ vi-insertion-mode prev-history vi-set-mark
+                                \ vi-search-again vi-put vi-change-char
+                                \ vi-subst vi-delete vi-yank-to
+                                \ vi-column vi-change-case vi-overstrike
+                                \ vi-overstrike-delete do-lowercase-version
+                                \ delete-char-or-list tty-status
+                                \ arrow-key-prefix vi-back-to-indent vi-bword
+                                \ vi-bWord vi-eword vi-eWord vi-fword vi-fWord
+                                \ vi-next-word
+
 if exists("readline_has_bash")
-  "syn keyword readlineSettings	contained
+  syn keyword readlineFunctions contained
+                                \ shell-expand-line history-expand-line
+                                \ magic-space alias-expand-line
+                                \ history-and-alias-expand-line
+                                \ insert-last-argument operate-and-get-next
+                                \ forward-backward-delete-char
+                                \ delete-char-or-list complete-filename
+                                \ possible-filename-completions
+                                \ complete-username
+                                \ possible-username-completions
+                                \ complete-variable
+                                \ possible-variable-completions
+                                \ complete-hostname
+                                \ possible-hostname-completions
+                                \ complete-command
+                                \ possible-command-completions
+                                \ dynamic-complete-history
+                                \ complete-into-braces
+                                \ glob-expand-word glob-list-expansions
+                                \ display-shell-version glob-complete-word
+                                \ edit-and-execute-command
 endif
 
-" key bindings
-syn region  readlineBinding	display oneline transparent matchgroup=readlineKeyword start=":" end="$" contains=readlineKeys,readlineFunctions
-
-syn match   readlineFunctions	contained "\<\(beginning\|end\)-of-line\>"
-syn match   readlineFunctions	contained "\<\(backward\|forward\)-\(char\|word\)\>"
-syn match   readlineFunctions	contained "\<\(previous\|next\|\(beginning\|end\)-of\|\(non-incremental-\)\=\(reverse\|forward\)-search\)-history\>"
-syn match   readlineFunctions	contained "\<history-search-\(forward\|backward\)\>"
-syn match   readlineFunctions	contained "\<yank-\(nth\|last\)-arg\>"
-syn match   readlineFunctions	contained "\<\(backward-\)\=kill-\(\(whole-\)\=line\|word\)\>"
-syn match   readlineFunctions	contained "\<\(start\|end\|call-last\)-kbd-macro\>"
-syn match   readlineFunctions	contained "\<dump-\(functions\|variables\|macros\)\>"
-syn match   readlineFunctions	contained "\<non-incremental-\(reverse\|forward\)-search-history-again\>"
-syn keyword readlineFunctions	contained clear-screen redraw-current-line accept-line delete-char backward-delete-char quoted-insert tab-insert
-syn keyword readlineFunctions	contained self-insert transpose-chars transpose-words downcase-word capitalize-word unix-word-rubout
-syn keyword readlineFunctions	contained delete-horizontal-space kill-region copy-region-as-kill copy-backward-word copy-forward-word yank yank-pop
-syn keyword readlineFunctions	contained digit-argument universal-argument complete possible-completions insert-completions menu-complete
-syn keyword readlineFunctions	contained re-read-init-file abort do-uppercase-version prefix-meta undo revert-line tilde-expand set-mark
-syn keyword readlineFunctions	contained exchange-point-and-mark character-search character-search-backward insert-comment emacs-editing-mode vi-editing-mode
-syn keyword readlineFunctions	contained unix-line-discard upcase-word backward-delete-word vi-eof-maybe vi-movement-mode vi-match vi-tilde-expand
-syn keyword readlineFunctions	contained vi-complete vi-char-search vi-redo vi-search vi-arg-digit vi-append-eol vi-prev-word vi-change-to vi-delete-to
-syn keyword readlineFunctions	contained vi-end-word vi-fetch-history vi-insert-beg vi-search-again vi-put vi-replace vi-subst vi-yank-to vi-first-print
-syn keyword readlineFunctions	contained vi-yank-arg vi-goto-mark vi-append-mode vi-insertion-mode prev-history vi-set-mark vi-search-again vi-put vi-change-char
-syn keyword readlineFunctions	contained vi-subst vi-delete vi-yank-to vi-column vi-change-case vi-overstrike vi-overstrike-delete
-syn keyword readlineFunctions	contained do-lowercase-version delete-char-or-list tty-status arrow-key-prefix
-syn keyword readlineFunctions	contained vi-back-to-indent vi-bword vi-bWord vi-eword vi-eWord vi-fword vi-fWord vi-next-word
-
-" bash extensions
-if exists("readline_has_bash")
-  syn keyword readlineFunctions	contained shell-expand-line history-expand-line magic-space alias-expand-line history-and-alias-expand-line insert-last-argument
-  syn keyword readlineFunctions	contained operate-and-get-next forward-backward-delete-char delete-char-or-list complete-filename possible-filename-completions
-  syn keyword readlineFunctions	contained complete-username possible-username-completions complete-variable possible-variable-completions complete-hostname
-  syn keyword readlineFunctions	contained possible-hostname-completions complete-command possible-command-completions dynamic-complete-history complete-into-braces
-  syn keyword readlineFunctions	contained glob-expand-word glob-list-expansions display-shell-version
-  syn keyword readlineFunctions	contained glob-complete-word edit-and-execute-command
-endif
-
-" 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_readline_syn_inits")
-  if version < 508
-    let did_readline_syn_inits = 1
-    command -nargs=+ HiLink hi link <args>
-  else
-    command -nargs=+ HiLink hi def link <args>
-  endif
-
-  HiLink readlineComment	Comment
-  HiLink readlineTodo		Todo
-  HiLink readlineString		String
-  HiLink readlineKeys		SpecialChar
-  HiLink readlineKeysTwo	SpecialChar
-  HiLink readlineKeymaps	Constant
-  HiLink readlineBellStyles	Constant
-  HiLink readlineNumber		Number
-  HiLink readlineBoolean	Boolean
-  HiLink readlineIfOps		Type
-  HiLink readlineConditional	Conditional
-  HiLink readlineInclude	Include
-  HiLink readlineKeyword	Keyword
-  HiLink readlineSettings	Type
-  HiLink readlineFunctions	Type
-  delcommand HiLink
-endif
+hi def link readlineComment     Comment
+hi def link readlineTodo        Todo
+hi def link readlineString      String
+hi def link readlineKeys        SpecialChar
+hi def link readlineKeysTwo     SpecialChar
+hi def link readlineKeymaps     Constant
+hi def link readlineBellStyles  Constant
+hi def link readlineNumber      Number
+hi def link readlineBoolean     Boolean
+hi def link readlineIfOps       Type
+hi def link readlineConditional Conditional
+hi def link readlineInclude     Include
+hi def link readlineKeyword     Keyword
+hi def link readlineSettings    Type
+hi def link readlineFunctions   Type
 
 let b:current_syntax = "readline"
 
-" vim: set sts=2 sw=2:
+let &cpo = s:cpo_save
+unlet s:cpo_save