updated for version 7.1a
diff --git a/runtime/autoload/htmlcomplete.vim b/runtime/autoload/htmlcomplete.vim
index 8adc2bd..5420321 100644
--- a/runtime/autoload/htmlcomplete.vim
+++ b/runtime/autoload/htmlcomplete.vim
@@ -1,7 +1,7 @@
 " Vim completion script
 " Language:	HTML and XHTML
 " Maintainer:	Mikolaj Machowski ( mikmach AT wp DOT pl )
-" Last Change:	2006 Apr 30
+" Last Change:	2006 Oct 19
 
 function! htmlcomplete#CompleteTags(findstart, base)
   if a:findstart
@@ -84,7 +84,7 @@
 				let context_line = getline(curline-i)
 				if context_line =~ '<[^>]*$'
 					" Yep, this is this line
-					let context_lines = getline(curline-i, curline)
+					let context_lines = getline(curline-i, curline-1) + [b:compl_context]
 					let b:compl_context = join(context_lines, ' ')
 					break
 				elseif context_line =~ '>[^<]*$' || i == curline
@@ -448,6 +448,15 @@
 			let attrname = matchstr(attr, '.*\ze\s*=')
 			let entered_value = matchstr(attr, ".*=\\s*[\"']\\?\\zs.*")
 			let values = []
+			" Load data {{{
+			if !exists("b:html_doctype")
+				call htmlcomplete#CheckDoctype()
+			endif
+			if !exists("b:html_omni")
+				"runtime! autoload/xml/xhtml10s.vim
+				call htmlcomplete#LoadData()
+			endif
+			" }}}
 			if attrname == 'href'
 				" Now we are looking for local anchors defined by name or id
 				if entered_value =~ '^#'
@@ -604,21 +613,20 @@
 	if exists("uppercase_tag") && uppercase_tag == 1
 		let context = tolower(context)
 	endif
-	" Handle XML keywords: DOCTYPE and CDATA.
+	" Handle XML keywords: DOCTYPE
 	if opentag == ''
 		let tags += [
-				\ '!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">',
-				\ '!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">',
-				\ '!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">',
-				\ '!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Frameset//EN" "http://www.w3.org/TR/REC-html40/frameset.dtd">',
-				\ '!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">',
-				\ '!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">',
-				\ '!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">',
-				\ '!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">',
-				\ '!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">',
-				\ '!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">',
-				\ '!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/1999/xhtml">',
-				\ '!CDATA'
+				\ '!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">',
+				\ '!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">',
+				\ '!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">',
+				\ '!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Frameset//EN" "http://www.w3.org/TR/REC-html40/frameset.dtd">',
+				\ '!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">',
+				\ '!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">',
+				\ '!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">',
+				\ '!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">',
+				\ '!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">',
+				\ '!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">',
+				\ '!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/1999/xhtml">'
 				\ ]
 	endif
 
diff --git a/runtime/doc/Makefile b/runtime/doc/Makefile
index a337cb6..83eb9e4 100644
--- a/runtime/doc/Makefile
+++ b/runtime/doc/Makefile
@@ -14,6 +14,7 @@
 include ../../src/auto/config.mk
 
 DOCS = \
+	ada.txt \
 	arabic.txt \
 	autocmd.txt \
 	change.txt \
@@ -28,7 +29,6 @@
 	farsi.txt \
 	filetype.txt \
 	fold.txt \
-	getscript.txt \
 	gui.txt \
 	gui_w16.txt \
 	gui_w32.txt \
@@ -70,6 +70,7 @@
 	os_vms.txt \
 	os_win32.txt \
 	pattern.txt \
+	pi_getscript.txt \
 	pi_gzip.txt \
 	pi_netrw.txt \
 	pi_paren.txt \
@@ -144,6 +145,7 @@
 	workshop.txt
 
 HTMLS = \
+	ada.html \
 	arabic.html \
 	autocmd.html \
 	change.html \
@@ -158,7 +160,6 @@
 	farsi.html \
 	filetype.html \
 	fold.html \
-	getscript.html \
 	gui.html \
 	gui_w16.html \
 	gui_w32.html \
@@ -200,6 +201,7 @@
 	os_vms.html \
 	os_win32.html \
 	pattern.html \
+	pi_getscript.html \
 	pi_gzip.html \
 	pi_netrw.html \
 	pi_paren.html \
@@ -224,8 +226,8 @@
 	sql.html \
 	syntax.html \
 	tabpage.html \
-	tagsrch.html \
 	tags.html \
+	tagsrch.html \
 	term.html \
 	tips.html \
 	todo.html \
diff --git a/runtime/doc/gui.txt b/runtime/doc/gui.txt
index ba62fc5..1d413c3 100644
--- a/runtime/doc/gui.txt
+++ b/runtime/doc/gui.txt
@@ -1,4 +1,4 @@
-*gui.txt*       For Vim version 7.0.  Last change: 2006 May 04
+*gui.txt*       For Vim version 7.1a.  Last change: 2006 Aug 08
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -510,7 +510,7 @@
 				*:ime* *:imenu* *:inoreme* *:inoremenu*
 				*:cme* *:cmenu* *:cnoreme* *:cnoremenu*
 				*E330* *E327* *E331* *E336* *E333*
-				*E328* *E329* *E337*
+				*E328* *E329* *E337* *E792*
 To create a new menu item, use the ":menu" commands.  They are mostly like
 the ":map" set of commands but the first argument is a menu item name, given
 as a path of menus and submenus with a '.' between them, e.g.: >
diff --git a/runtime/doc/os_qnx.txt b/runtime/doc/os_qnx.txt
index bc965f1..5faad51 100644
--- a/runtime/doc/os_qnx.txt
+++ b/runtime/doc/os_qnx.txt
@@ -1,4 +1,4 @@
-*os_qnx.txt*    For Vim version 7.0.  Last change: 2005 Mar 29
+*os_qnx.txt*    For Vim version 7.1a.  Last change: 2005 Mar 29
 
 
 		  VIM REFERENCE MANUAL    by Julian Kinraid
diff --git a/runtime/doc/os_vms.txt b/runtime/doc/os_vms.txt
index 9d80d70..d585965 100644
--- a/runtime/doc/os_vms.txt
+++ b/runtime/doc/os_vms.txt
@@ -1,4 +1,4 @@
-*os_vms.txt*    For Vim version 7.0.  Last change: 2006 Apr 30
+*os_vms.txt*    For Vim version 7.1a.  Last change: 2006 Nov 18
 
 
 		  VIM REFERENCE MANUAL
@@ -243,7 +243,7 @@
 It will set up a normal Vim work environment for every user on the system.
 
 IMPORTANT: Vim on OpenVMS (and on other case insensitive system) command line
-parameters are assumed to be lowecase. In order to indicate that a command
+parameters are assumed to be lowercase. In order to indicate that a command
 line parameter is uppercase "/" sign must be used.
 
 Examples:
diff --git a/runtime/doc/usr_43.txt b/runtime/doc/usr_43.txt
index 4e2070e..064f17c 100644
--- a/runtime/doc/usr_43.txt
+++ b/runtime/doc/usr_43.txt
@@ -1,4 +1,4 @@
-*usr_43.txt*	For Vim version 7.0.  Last change: 2006 Apr 24
+*usr_43.txt*	For Vim version 7.1a.  Last change: 2006 Apr 24
 
 		     VIM USER MANUAL - by Bram Moolenaar
 
diff --git a/runtime/doc/xxd-pl.1 b/runtime/doc/xxd-pl.1
index 222151d..00cbbff 100644
--- a/runtime/doc/xxd-pl.1
+++ b/runtime/doc/xxd-pl.1
@@ -216,7 +216,7 @@
 \fI% xxd \-s \-0x30 plik
 .PP
 .br
-Wypisz 120 bajtów jako ci±g³y zrzut heksowy z 40 oktetami na liniê.
+Wypisz 120 bajtów jako ci±g³y zrzut heksowy z 20 oktetami na liniê.
 .br
 \fI% xxd \-l 120 \-ps \-c 20 xxd.1\fR
 .br
diff --git a/runtime/indent/php.vim b/runtime/indent/php.vim
index 0f79fd9..8ba3b2e 100644
--- a/runtime/indent/php.vim
+++ b/runtime/indent/php.vim
@@ -2,9 +2,9 @@
 " Language:	PHP
 " Author:	John Wellesz <John.wellesz (AT) teaser (DOT) fr>
 " URL:		http://www.2072productions.com/vim/indent/php.vim
-" Last Change:  2006 Apr 30
+" Last Change:  2007 February 25th
 " Newsletter:   http://www.2072productions.com/?to=php-indent-for-vim-newsletter.php
-" Version:	1.23
+" Version:	1.24
 "
 "  The change log and all the comments have been removed from this file.
 "
@@ -68,12 +68,6 @@
 "			NOTE: The script will be a bit slower if you use this option because
 "			some optimizations won't be available.
 
-
-
-
-
-
-
 if exists("b:did_indent")
     finish
 endif
@@ -137,7 +131,7 @@
 
 let s:endline= '\s*\%(//.*\|#.*\|/\*.*\*/\s*\)\=$'
 let s:PHP_startindenttag = '<?\%(.*?>\)\@!\|<script[^>]*>\%(.*<\/script>\)\@!'
-" setlocal debug=msg " XXX
+"setlocal debug=msg " XXX
 
 
 function! GetLastRealCodeLNum(startline) " {{{
@@ -205,6 +199,9 @@
     if b:InPHPcode_and_script && !b:InPHPcode
 	let b:InPHPcode_and_script = 0
     endif
+
+
+
     return lnum
 endfunction " }}}
 
@@ -221,7 +218,7 @@
 
 function! Skippmatch()  " {{{
     let synname = synIDattr(synID(line("."), col("."), 0), "name")
-    if synname == "Delimiter" || synname == "phpParent" || synname == "javaScriptBraces" || synname == "phpComment" && b:UserIsTypingComment
+    if synname == "Delimiter" || synname == "phpRegionDelimiter" || synname =~# "^phpParent" || synname == "phpArrayParens" || synname =~# '^php\%(Block\|Brace\)' || synname == "javaScriptBraces" || synname == "phpComment" && b:UserIsTypingComment
 	return 0
     else
 	return 1
@@ -380,7 +377,7 @@
 	endif
 
 	if synname!=""
-	    if synname != "phpHereDoc"
+	    if synname != "phpHereDoc" && synname != "phpHereDocDelimiter"
 		let b:InPHPcode = 1
 		let b:InPHPcode_tofind = ""
 
@@ -448,7 +445,7 @@
 
     if b:InPHPcode
 
-	if !b:InPHPcode_and_script && last_line =~ '\%(<?.*\)\@<!?>\%(.*<?\)\@!' && IslinePHP(lnum, '?>')=="Delimiter"
+	if !b:InPHPcode_and_script && last_line =~ '\%(<?.*\)\@<!?>\%(.*<?\)\@!' && IslinePHP(lnum, '?>')=~"Delimiter"
 	    if cline !~? s:PHP_startindenttag
 		let b:InPHPcode = 0
 		let b:InPHPcode_tofind = s:PHP_startindenttag
@@ -717,5 +714,3 @@
     let b:PHP_CurrentIndentLevel = ind
     return ind
 endfunction
-
-" vim: set ts=8 sw=4 sts=4:
diff --git a/runtime/keymap/sinhala-phonetic_utf-8.vim b/runtime/keymap/sinhala-phonetic_utf-8.vim
index 801cc82..cd8b2e8 100644
--- a/runtime/keymap/sinhala-phonetic_utf-8.vim
+++ b/runtime/keymap/sinhala-phonetic_utf-8.vim
@@ -1,6 +1,6 @@
 " Vim Keymap file for Sinhala (Sri Lanka) (2003-11-02)
-" Maintainer  : Harshula Jayasuriya <hash@jayasolutions.cjb.net>
-" Last Updated: 2004-12-22
+" Maintainer  : Harshula Jayasuriya <harshula@gmail.com>
+" Last Updated: 2006-06-08
 " This is a static phonetic mapping for a standard US-English keyboard
 " (qwerty)
 " http://www.nongnu.org/sinhala/doc/keymaps/sinhala-keyboard_3.html
@@ -15,8 +15,8 @@
 let b:keymap_name = "sinhala"
 
 loadkeymap
-V	<char-0x0d82>	"  ං - anusvaraya (anusvara)
-<A-v>	<char-0x0d83>	"  ඃ - visargaya (visarga)
+<A-n>	<char-0x0d82>	"  ං - anusvaraya (anusvara)
+H	<char-0x0d83>	"  ඃ - visargaya (visarga)
 a	<char-0x0d85>	" අ - ayanna (a)
 A	<char-0x0d86>	" ආ - aayanna (aa)
 w	<char-0x0d87>	" ඇ - aeyanna (ae)
@@ -31,15 +31,15 @@
 <A-K>	<char-0x0d90>	" ඐ - iluuyanna (iluu)
 e	<char-0x0d91>	" එ - eyanna (e)
 E	<char-0x0d92>	" ඒ - eeyanna (ee)
-F	<char-0x0d93>	" ඓ - aiyanna (ai)
+<A-F>	<char-0x0d93>	" ඓ - aiyanna (ai)
 o	<char-0x0d94>	" ඔ - oyanna (o)
 O	<char-0x0d95>	" ඕ - ooyanna (oo)
-H	<char-0x0d96>	" ඖ - auyanna (au)
+<A-H>	<char-0x0d96>	" ඖ - auyanna (au)
 k	<char-0x0d9a>	" ක - alpapraana kayanna (ka)
 K	<char-0x0d9b>	" ඛ - mahaapraana kayanna (kha)
 g	<char-0x0d9c>	" ග - alpapraana gayanna (ga)
 G	<char-0x0d9d>	" ඝ - mahaapraana gayanna (gha)
-<A-n>	<char-0x0d9e>	" ඞ - kantaja naasikyaya (nga)
+<A-N>	<char-0x0d9e>	" ඞ - kantaja naasikyaya (nga)
 <A-g>	<char-0x0d9f>	" ඟ - sanyaka gayanna (nnga)
 c	<char-0x0da0>	" ච - alpapraana cayanna (ca)
 C	<char-0x0da1>	" ඡ - mahaapraana cayanna (cha)
diff --git a/runtime/keymap/thaana-phonetic_utf-8.vim b/runtime/keymap/thaana-phonetic_utf-8.vim
new file mode 100644
index 0000000..ec235ac
--- /dev/null
+++ b/runtime/keymap/thaana-phonetic_utf-8.vim
@@ -0,0 +1,86 @@
+" thaana keymap 
+" Maintainer: Ibrahim fayaz <p h a y a x at gmail dot com>
+" please set enc to utf-8
+" thaana phonetic keyboard is used as a reference
+" http://www.mcst.gov.mv/News_and_Events/xpfonts.htm
+" changelog: 18th Feb 2006 - came up the initial idea of writing the keymap..
+"            13th May 2006 - made some few corrections regarding < and >..
+
+let b:keymap_name= "thaana"
+
+" THAANA NORMAL LETTERS
+loadkeymap
+h	<char-0x0780> "letter haa
+S	<char-0x0781> "shaviani
+n	<char-0x0782> "noonu
+r	<char-0x0783> "raa
+b	<char-0x0784> "baa
+L	<char-0x0785> "lhaviani
+k	<char-0x0786> "kaafu
+w	<char-0x0787> "alifu  
+v	<char-0x0788> "vaavu
+m	<char-0x0789> "meemu
+f	<char-0x078A> "faafu
+d	<char-0x078B> "dhaalu
+t	<char-0x078C> "thaa
+l	<char-0x078D> "laamu
+g	<char-0x078E> "gaafu
+N	<char-0x078F> "gnaviani
+s	<char-0x0790> "seenu
+D	<char-0x0791> "daviani
+z	<char-0x0792> "zaviani
+T	<char-0x0793> "taviani
+y	<char-0x0794> "yaa
+p	<char-0x0795> "paviani
+j	<char-0x0796> "javiani
+c	<char-0x0797> "chaviani
+
+"THAANA DOTTED LETTERS
+X	<char-0x0798> "TTAA   (thaa mathee thin thiki)
+H	<char-0x0799> "HHAA   (haa thiree ehthiki)
+K	<char-0x079A> "KHAA   (haa mathee ehthiki)
+J	<char-0x079B> "THAALU (dhaa mathee ehthiki)
+R	<char-0x079C> "ZAA    (raa mathee ehthiki)
+C	<char-0x079D> "SHEENU (seenu mathee thinthiki)
+M	<char-0x079E> "SAADHU (seenu thiree ehthiki)
+B	<char-0x079F> "DHAADHU(seenu mathee ehthiki)
+Y	<char-0x07A0> "TO     (thaa thiree ehthiki)
+Z	<char-0x07A1> "ZO     (thaa mathee ehthiki)
+W 	<char-0x07A2> "AINU   (alifu thiree ehthiki)
+G	<char-0x07A3> "GHAINU (alifu mathee ehthiki)
+Q	<char-0x07A4> "QAAFU  (gaafu mathee dhethkiki)
+V	<char-0x07A5> "VAAVU  (vaavu mathee ehthiki)
+
+"THAANA FILI (combining characters)
+a	<char-0x07A6> "abafili
+A	<char-0x07A7> "aabaafili
+i	<char-0x07A8> "ibifili
+I	<char-0x07A9> "eebeefili
+u	<char-0x07AA> "ubufili
+U	<char-0x07AB> "ooboofili
+e	<char-0x07AC> "ebefili
+E	<char-0x07AD> "ebeyfili
+o	<char-0x07AE> "obofili
+O	<char-0x07AF> "oaboafili
+q	<char-0x07B0> "sukun
+
+"OTHER THAANA RELATED
+F	<char-0xFDF2> "arabic ligature allah isolated form
+?	<char-0x061F> "arabic question mark 
+"~	<char-0xFDFD> "arabic -bismillah ahrahman araheem- not in phonetic keyboard, thats why commented 
+[	<char-0x005D> "english open bracket is thaana closing bracket 
+]	<char-0x005B> "english close bracket = thaana open bracket
+{	<char-0x007B> "braces reversed
+}	<char-0x007D>
+x	<char-0x00D7> " x for multiplication sign.. 
+P	<char-0x00F7> " division symbol mapped to 'p'
+>	<char-0x003C>
+<	<char-0x003E>
+<M-v>	<char-0x200D> "zwj - ZERO WIDTH JOINER      i dont know how to use these yet..
+<M-b>	<char-0x200C> "zwnj - ZERO WIDTH NON JOINER
+<M-n>	<char-0x200E> "lrm - LEFT TO RIGHT MARK
+<M-m> 	<char-0x200F> "rlm - RIGHT TO LEFT MARK
+;	<char-0x061B> "arabic semicolon
+,	<char-0x060C> "arabic coma
+<M-;>	;
+<M-,>	,
diff --git a/runtime/optwin.vim b/runtime/optwin.vim
index da979d1..c0cbf2b 100644
--- a/runtime/optwin.vim
+++ b/runtime/optwin.vim
@@ -1,7 +1,7 @@
 " These commands create the option window.
 "
 " Maintainer:	Bram Moolenaar <Bram@vim.org>
-" Last Change:	2006 Apr 24
+" Last Change:	2006 Oct 10
 
 " If there already is an option window, jump to that one.
 if bufwinnr("option-window") > 0
@@ -608,7 +608,7 @@
       call append("$", " \tset bexpr=" . &bexpr)
     endif
   endif
-  if exists("&macatsui")
+  if exists("+macatsui")
     call append("$", "macatsui\tuse ATSUI text drawing; disable to avoid display problems")
     call <SID>OptionG("macatsui", &macatsui)
   endif
@@ -1212,8 +1212,14 @@
 call <SID>BinOptionG("gd", &gd)
 call append("$", "edcompatible\t'g' and 'c' flags of \":substitute\" toggle")
 call <SID>BinOptionG("ed", &ed)
+if exists("+opendevice")
+  call append("$", "opendevice\tallow reading/writing devices")
+  call <SID>BinOptionG("odev", &odev)
+endif
+if exists("+maxfuncdepth")
   call append("$", "maxfuncdepth\tmaximum depth of function calls")
   call append("$", " \tset mfd=" . &mfd)
+endif
 if has("mksession")
   call append("$", "sessionoptions\tlist of words that specifies what to put in a session file")
   call <SID>OptionG("ssop", &ssop)
diff --git a/runtime/syntax/sml.vim b/runtime/syntax/sml.vim
index a45b204..aa7d64a 100644
--- a/runtime/syntax/sml.vim
+++ b/runtime/syntax/sml.vim
@@ -4,9 +4,9 @@
 " Maintainers:  Markus Mottl            <markus.mottl@gmail.com>
 "               Fabrizio Zeno Cornelli  <zeno@filibusta.crema.unimi.it>
 " URL:          http://www.ocaml.info/vim/syntax/sml.vim
-" Last Change:  2006 Feb 05
+" Last Change:  2006 Oct 23 - Fixed character highlighting bug (MM)
+"               2002 Jun 02 - Fixed small typo  (MM)
 "               2001 Nov 20 - Fixed small highlighting bug with modules (MM)
-"               2001 Aug 29 - Fixed small highlighting bug  (MM)
 
 " For version 5.x: Clear all syntax items
 " For version 6.x: Quit when a syntax file was already loaded
@@ -137,7 +137,7 @@
 " Module prefix
 syn match    smlModPath      "\u\(\w\|'\)*\."he=e-1
 
-syn match    smlCharacter    +#"."\|#"\\\d\d\d"+
+syn match    smlCharacter    +#"\\""\|#"."\|#"\\\d\d\d"+
 syn match    smlCharErr      +#"\\\d\d"\|#"\\\d"+
 syn region   smlString       start=+"+ skip=+\\\\\|\\"+ end=+"+
 
diff --git a/runtime/syntax/verilog.vim b/runtime/syntax/verilog.vim
index aad918c..01f312f 100644
--- a/runtime/syntax/verilog.vim
+++ b/runtime/syntax/verilog.vim
@@ -1,7 +1,7 @@
 " Vim syntax file
 " Language:	Verilog
-" Maintainer:	Mun Johl <mun_johl@sierralogic.com>
-" Last Update:  Tue Jun  7 14:27:10 PDT 2005
+" Maintainer:	Mun Johl <Mun.Johl@emulex.com>
+" Last Update:  Fri Oct 13 11:44:32 PDT 2006
 
 " For version 5.x: Clear all syntax items
 " For version 6.x: Quit when a syntax file was already loaded
@@ -76,10 +76,10 @@
 
 syn match   verilogConstant "\<[A-Z][A-Z0-9_]\+\>"
 
-syn match   verilogNumber "\(\<\d\+\|\)'[bB]\s*[0-1_xXzZ?]\+\>"
-syn match   verilogNumber "\(\<\d\+\|\)'[oO]\s*[0-7_xXzZ?]\+\>"
-syn match   verilogNumber "\(\<\d\+\|\)'[dD]\s*[0-9_xXzZ?]\+\>"
-syn match   verilogNumber "\(\<\d\+\|\)'[hH]\s*[0-9a-fA-F_xXzZ?]\+\>"
+syn match   verilogNumber "\(\<\d\+\|\)'[sS]\?[bB]\s*[0-1_xXzZ?]\+\>"
+syn match   verilogNumber "\(\<\d\+\|\)'[sS]\?[oO]\s*[0-7_xXzZ?]\+\>"
+syn match   verilogNumber "\(\<\d\+\|\)'[sS]\?[dD]\s*[0-9_xXzZ?]\+\>"
+syn match   verilogNumber "\(\<\d\+\|\)'[sS]\?[hH]\s*[0-9a-fA-F_xXzZ?]\+\>"
 syn match   verilogNumber "\<[+-]\=[0-9_]\+\(\.[0-9_]*\|\)\(e[0-9_]*\|\)\>"
 
 syn region  verilogString start=+"+ skip=+\\"+ end=+"+ contains=verilogEscape,@Spell
diff --git a/runtime/syntax/xmath.vim b/runtime/syntax/xmath.vim
index e9c3762..83efb08 100644
--- a/runtime/syntax/xmath.vim
+++ b/runtime/syntax/xmath.vim
@@ -1,8 +1,8 @@
 " Vim syntax file
 " Language:	xmath (a simulation tool)
 " Maintainer:	Dr. Charles E. Campbell, Jr. <NdrOchipS@PcampbellAfamily.Mbiz>
-" Last Change:	Apr 12, 2006
-" Version:	5
+" Last Change:	Sep 11, 2006
+" Version:	6
 " URL:	http://mysite.verizon.net/astronaut/vim/index.html#vimlinks_syntax
 
 " For version 5.x: Clear all syntax items
@@ -175,7 +175,7 @@
 " String and Character constants
 " Highlight special characters (those which have a backslash) differently
 syn match   xmathSpecial	contained "\\\d\d\d\|\\."
-syn region  xmathString	start=+"+  skip=+\\\\\|\\"+  end=+"+ contains=xmathSpecial
+syn region  xmathString	start=+"+  skip=+\\\\\|\\"+  end=+"+ contains=xmathSpecial,@Spell
 syn match   xmathCharacter	"'[^\\]'"
 syn match   xmathSpecialChar	"'\\.'"
 
@@ -184,9 +184,10 @@
 " Comments:
 " xmath supports #...  (like Unix shells)
 "       and      #{ ... }# comment blocks
+syn cluster xmathCommentGroup	contains=xmathString,xmathTodo,@Spell
 syn keyword xmathTodo contained	COMBAK	DEBUG	FIXME	Todo	TODO	XXX
-syn match   xmathComment	"#.*$"		contains=xmathString,xmathTodo,@Spell
-syn region  xmathCommentBlock	start="#{" end="}#"	contains=xmathString,xmathTodo
+syn match   xmathComment	"#.*$"		contains=@xmathCommentGroup
+syn region  xmathCommentBlock	start="#{" end="}#"	contains=@xmathCommentGroup
 
 " synchronizing
 syn sync match xmathSyncComment	grouphere xmathCommentBlock "#{"