diff --git a/runtime/doc/options.txt b/runtime/doc/options.txt
index f9fa9d1..535f518 100644
--- a/runtime/doc/options.txt
+++ b/runtime/doc/options.txt
@@ -1,4 +1,4 @@
-*options.txt*	For Vim version 7.3.  Last change: 2013 Jun 12
+*options.txt*	For Vim version 7.3.  Last change: 2013 Jun 26
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -480,41 +480,41 @@
 
 					*modeline* *vim:* *vi:* *ex:* *E520*
 There are two forms of modelines.  The first form:
-	[text]{white}{vi:|vim:|ex:}[white]{options}
+	[text]{white}{vi:|vim:|Vim:|ex:}[white]{options}
 
-[text]		any text or empty
-{white}		at least one blank character (<Space> or <Tab>)
-{vi:|vim:|ex:}	the string "vi:", "vim:" or "ex:"
-[white]		optional white space
-{options}	a list of option settings, separated with white space or ':',
-		where each part between ':' is the argument for a ":set"
-		command (can be empty)
+[text]			any text or empty
+{white}			at least one blank character (<Space> or <Tab>)
+{vi:|vim:|Vim:|ex:}	the string "vi:", "vim:", "Vim:" or "ex:"
+[white]			optional white space
+{options}		a list of option settings, separated with white space
+			or ':', where each part between ':' is the argument
+			for a ":set" command (can be empty)
 
 Example:
    vi:noai:sw=3 ts=6 ~
 
 The second form (this is compatible with some versions of Vi):
 
-	[text]{white}{vi:|vim:|ex:}[white]se[t] {options}:[text]
+	[text]{white}{vi:|vim:|Vim:|ex:}[white]se[t] {options}:[text]
 
-[text]		any text or empty
-{white}		at least one blank character (<Space> or <Tab>)
-{vi:|vim:|ex:}	the string "vi:", "vim:" or "ex:"
-[white]		optional white space
-se[t]		the string "set " or "se " (note the space)
-{options}	a list of options, separated with white space, which is the
-		argument for a ":set" command
-:		a colon
-[text]		any text or empty
+[text]			any text or empty
+{white}			at least one blank character (<Space> or <Tab>)
+{vi:|vim:|Vim:|ex:}	the string "vi:", "vim:", "Vim:" or "ex:"
+[white]			optional white space
+se[t]			the string "set " or "se " (note the space)
+{options}		a list of options, separated with white space, which
+			is the argument for a ":set" command
+:			a colon
+[text]			any text or empty
 
 Example:
    /* vim: set ai tw=75: */ ~
 
-The white space before {vi:|vim:|ex:} is required.  This minimizes the chance
-that a normal word like "lex:" is caught.  There is one exception: "vi:" and
-"vim:" can also be at the start of the line (for compatibility with version
-3.0).  Using "ex:" at the start of the line will be ignored (this could be
-short for "example:").
+The white space before {vi:|vim:|Vim:|ex:} is required.  This minimizes the
+chance that a normal word like "lex:" is caught.  There is one exception:
+"vi:" and "vim:" can also be at the start of the line (for compatibility with
+version 3.0).  Using "ex:" at the start of the line will be ignored (this
+could be short for "example:").
 
 							*modeline-local*
 The options are set like with ":setlocal": The new value only applies to the
@@ -530,7 +530,7 @@
 
 							*modeline-version*
 If the modeline is only to be used for some versions of Vim, the version
-number can be specified where "vim:" is used:
+number can be specified where "vim:" or "Vim:" is used:
 	vim{vers}:	version {vers} or later
 	vim<{vers}:	version before {vers}
 	vim={vers}:	version {vers}
diff --git a/runtime/doc/spell.txt b/runtime/doc/spell.txt
index 5c76eb5..f6ba457 100644
--- a/runtime/doc/spell.txt
+++ b/runtime/doc/spell.txt
@@ -1,4 +1,4 @@
-*spell.txt*	For Vim version 7.3.  Last change: 2011 May 25
+*spell.txt*	For Vim version 7.3.  Last change: 2013 Jun 26
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -928,9 +928,13 @@
 Vim allows you to use spell checking for several languages in the same file.
 You can list them in the 'spelllang' option.  As a consequence all spell files
 for the same encoding must use the same word characters, otherwise they can't
-be combined without errors.  If you get a warning that the word tables differ
-you may need to generate the .spl file again with |:mkspell|.  Check the FOL,
-LOW and UPP lines in the used .aff file.
+be combined without errors.
+
+If you get an E763 warning that the word tables differ you need to update your
+".spl" spell files.  If you downloaded the files, get the latest version of
+all spell files you use.  Otherwise generate the .spl file again with
+|:mkspell|.  If you still get errors check the FOL, LOW and UPP lines in the
+used .aff files.
 
 The XX.ascii.spl spell file generated with the "-ascii" argument will not
 contain the table with characters, so that it can be combine with spell files
diff --git a/runtime/doc/syntax.txt b/runtime/doc/syntax.txt
index 049772b..e8a264d 100644
--- a/runtime/doc/syntax.txt
+++ b/runtime/doc/syntax.txt
@@ -1,4 +1,4 @@
-*syntax.txt*	For Vim version 7.3.  Last change: 2013 Jun 26
+*syntax.txt*	For Vim version 7.3.  Last change: 2013 Jun 28
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -2999,38 +2999,6 @@
 Another cause of slow highlighting is due to syntax-driven folding; see
 |tex-folding| for a way around this.
 
-								*g:tex_fast*
-
-Finally, if syntax highlighting is still too slow, you may set >
-
-	:let g:tex_fast= ""
-
-in your .vimrc.  Used this way, the g:tex_fast variable causes the syntax
-highlighting script to avoid defining any regions and associated
-synchronization.  The result will be much faster syntax highlighting; the
-price: you will no longer have as much highlighting or any syntax-based
-folding, and you will be missing syntax-based error checking.
-
-You may decide that some syntax is acceptable; you may use the following table
-selectively to enable just some syntax highlighting: >
-
-    b : allow bold and italic syntax
-    c : allow texComment syntax
-    m : allow texMatcher syntax (ie. {...} and [...])
-    M : allow texMath syntax
-    p : allow parts, chapter, section, etc syntax
-    r : allow texRefZone syntax (nocite, bibliography, label, pageref, eqref)
-    s : allow superscript/subscript regions
-    S : allow texStyle syntax
-    v : allow verbatim syntax
-    V : allow texNewEnv and texNewCmd syntax
-<
-As an example, let g:tex_fast= "M" will allow math-associated highlighting
-but suppress all the other region-based syntax highlighting.
-
-Another cause of slow highlighting is due to syntax-driven folding; see
-|tex-folding| for a way around this.
-
 					*g:tex_fast*
 
 Finally, if syntax highlighting is still too slow, you may set >
@@ -3141,28 +3109,6 @@
 By leaving one or more of these out, the associated conceal-character
 substitution will not be made.
 
-						*g:tex_isk*
- Tex: Controlling What's In A Keyword~
-
-(La)Tex keywords normally use the characters 0-9,a-z,A-Z,192-255 only
-but the "_" is the only one that causes problems.  So, by default,
-syntax/tex.vim overrides the usual |'iskeyword'| setting (using |:setlocal|)
-with one that works for LaTeX.
-
-However, one may override this iskeyword re-setting by setting the
-variable, g:tex_isk, in one's .vimrc to whatever one wishes and
-it will be used instead.
-
-
-TF						*tf.vim* *ft-tf-syntax*
-
-There is one option for the tf syntax highlighting.
-
-For syncing, minlines defaults to 100.	If you prefer another value, you can
-set "tf_minlines" to the value you desire.  Example: >
-
-	:let tf_minlines = your choice
-
 						*g:tex_isk* *g:tex_stylish*
  Tex: Controlling iskeyword~
 
@@ -3183,7 +3129,15 @@
 	* Else the local 'iskeyword' will be set to 48-57,a-z,A-Z,192-255
 
 
+TF						*tf.vim* *ft-tf-syntax*
 
+There is one option for the tf syntax highlighting.
+
+For syncing, minlines defaults to 100.	If you prefer another value, you can
+set "tf_minlines" to the value you desire.  Example: >
+
+	:let tf_minlines = your choice
+<
 VIM			*vim.vim*		*ft-vim-syntax*
 			*g:vimsyn_minlines*	*g:vimsyn_maxlines*
 There is a trade-off between more accurate syntax highlighting versus screen
diff --git a/runtime/doc/tags b/runtime/doc/tags
index 8001806..eafb331 100644
--- a/runtime/doc/tags
+++ b/runtime/doc/tags
@@ -341,7 +341,9 @@
 'iconstring'	options.txt	/*'iconstring'*
 'ignorecase'	options.txt	/*'ignorecase'*
 'im'	options.txt	/*'im'*
+'imactivatefunc'	options.txt	/*'imactivatefunc'*
 'imactivatekey'	options.txt	/*'imactivatekey'*
+'imaf'	options.txt	/*'imaf'*
 'imak'	options.txt	/*'imak'*
 'imc'	options.txt	/*'imc'*
 'imcmdline'	options.txt	/*'imcmdline'*
@@ -351,6 +353,8 @@
 'iminsert'	options.txt	/*'iminsert'*
 'ims'	options.txt	/*'ims'*
 'imsearch'	options.txt	/*'imsearch'*
+'imsf'	options.txt	/*'imsf'*
+'imstatusfunc'	options.txt	/*'imstatusfunc'*
 'inc'	options.txt	/*'inc'*
 'include'	options.txt	/*'include'*
 'includeexpr'	options.txt	/*'includeexpr'*
@@ -6004,11 +6008,9 @@
 g:tex_comment_nospell	syntax.txt	/*g:tex_comment_nospell*
 g:tex_conceal	syntax.txt	/*g:tex_conceal*
 g:tex_fast	syntax.txt	/*g:tex_fast*
-g:tex_fast	syntax.txt	/*g:tex_fast*
 g:tex_flavor	filetype.txt	/*g:tex_flavor*
 g:tex_fold_enabled	syntax.txt	/*g:tex_fold_enabled*
 g:tex_isk	syntax.txt	/*g:tex_isk*
-g:tex_isk	syntax.txt	/*g:tex_isk*
 g:tex_no_error	syntax.txt	/*g:tex_no_error*
 g:tex_nospell	syntax.txt	/*g:tex_nospell*
 g:tex_stylish	syntax.txt	/*g:tex_stylish*
diff --git a/runtime/doc/todo.txt b/runtime/doc/todo.txt
index 4ce4ab1..eb26716 100644
--- a/runtime/doc/todo.txt
+++ b/runtime/doc/todo.txt
@@ -1,4 +1,4 @@
-*todo.txt*      For Vim version 7.3.  Last change: 2013 Jun 26
+*todo.txt*      For Vim version 7.3.  Last change: 2013 Jun 27
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -34,11 +34,7 @@
 							*known-bugs*
 -------------------- Known bugs and current work -----------------------
 
---- Python interface
-
-Test 86 fails on MS-Windows, using backslashes instead of forward slashes.
-(Taro Muraoka, 2013 Jun 24)
-Can we fix this in code instead of in the test?
+--- Python interface ---
 
 Python: ":py raw_input('prompt')" doesn't work. (Manu Hack)
 
@@ -49,28 +45,7 @@
 Vim script.  Requires converting the arguments and return value, like with
 vim.bindeval().
 
-Python SystemExit exception is not handled properly.  Patch to catch the
-exception and give an error. (Yasuhiro Matsumoto)
-Does not work, tests fail.
-
---- bug fixes
-
-Problem with winfixheight and resizing. (Yukihiro Nakadaira, 2011 Sep 17)
-Patch Sep 18.
-
-Patch for IME problems. Remove hacking code for old IM. (Yukihiro Nakadaira,
-2012 Jul 20)
-
-Modeline is not triggered when using Vim: instead of vim:. It's very hard to
-see why it doesn't work.
-
-Patch to fix finding toolbar bitmaps.  Issue 129.
-
-Patch 7.3.1200 doesn't fix the problem in all cases. (Hirohito Higashi, 2013
-Jun 24)
-
-Patch to avoid clang warnings when building with Athena.
-(Dominique Pelle, 2013 Jun 22)
+--- bug fixes ---
 
 Suggestion to remove __QNXNTO__ in gui.c. (Sean Boudreau, 2013 Jun 7)
 
@@ -187,10 +162,6 @@
 
 Patch to make fold updates much faster. (Christian Brabandt, 2012 Dec)
 
-Patch for IME handling, adds 'imactivatefunc' and 'imstatusfunc' option.
-(Yukihiro Nakadaira, 2012 Aug 16)
-Patch to improve IME handling. (Yasuhiro Matsumoto, 2012 Jul 18)
-
 Issue 54: document behavior of -complete, also expands arg.
 
 -   Add regex for 'paragraphs' and 'sections': 'parare' and 'sectre'.  Combine
diff --git a/runtime/ftplugin/vim.vim b/runtime/ftplugin/vim.vim
index 5feb152..edba37b 100644
--- a/runtime/ftplugin/vim.vim
+++ b/runtime/ftplugin/vim.vim
@@ -1,7 +1,7 @@
 " Vim filetype plugin
 " Language:	Vim
 " Maintainer:	Bram Moolenaar <Bram@vim.org>
-" Last Change:	2012 Mar 21
+" Last Change:	2013 Jun 26
 
 " Only do this when not done yet for this buffer
 if exists("b:did_ftplugin")
@@ -21,10 +21,6 @@
 " and insert the comment leader when hitting <CR> or using "o".
 setlocal fo-=t fo+=croql
 
-" To make syntax highlighting of 'vimVar's work correctly we need the colon to
-" be part of keywords. This needs to be done prior to the 'isk+=#' below.
-setlocal isk+=:
-
 " To allow tag lookup via CTRL-] for autoload functions, '#' must be a
 " keyword character.  E.g., for netrw#Nread().
 setlocal isk+=#
diff --git a/runtime/plugin/tohtml.vim b/runtime/plugin/tohtml.vim
index a56b95b..c7fa8ca 100644
--- a/runtime/plugin/tohtml.vim
+++ b/runtime/plugin/tohtml.vim
@@ -1,6 +1,6 @@
 " Vim plugin for converting a syntax highlighted file to HTML.
 " Maintainer: Ben Fritz <fritzophrenic@gmail.com>
-" Last Change: 2013 Jun 12
+" Last Change: 2013 Jun 26
 "
 " The core of the code is in $VIMRUNTIME/autoload/tohtml.vim and
 " $VIMRUNTIME/syntax/2html.vim
@@ -72,12 +72,11 @@
 "
 " Changelog: {{{
 "
-"   7.3_v14 (this version): Allow suppressing empty <span> created for line
-"                           number anchors when line numbers are not included,
-"                           using g:html_empty_anchors=0. Allow customizing
-"                           important IDs (like line IDs and fold IDs) using
-"                           g:html_id_expr evalutated when the buffer conversion
-"                           is started.
+"   7.3_v14 (this version): Allow suppressing line number anchors using
+"			    g:html_line_ids=0. Allow customizing
+"			    important IDs (like line IDs and fold IDs) using
+"			    g:html_id_expr evalutated when the buffer conversion
+"			    is started.
 "   7.3_v13 (2eb30f341e8d): Keep foldmethod at manual in the generated file and
 "			    insert modeline to set it to manual.
 "			    Fix bug: diff mode with 2 unsaved buffers creates a
