diff --git a/runtime/doc/autocmd.txt b/runtime/doc/autocmd.txt
index a0d3b63..d9f40f4 100644
--- a/runtime/doc/autocmd.txt
+++ b/runtime/doc/autocmd.txt
@@ -1,4 +1,4 @@
-*autocmd.txt*   For Vim version 7.3.  Last change: 2013 Mar 13
+*autocmd.txt*   For Vim version 7.3.  Last change: 2013 Mar 19
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -519,8 +519,9 @@
 				Not triggered when there is typeahead or when
 				an operator is pending.
 				For an example see |match-parens|.
-				Careful: Don't do anything that the user does
-				not expect or that is slow.
+				Careful: This is triggered very often, don't
+				do anything that the user does not expect or
+				that is slow.
 							*CursorMovedI*
 CursorMovedI			After the cursor was moved in Insert mode.
 				Not triggered when the popup menu is visible.
@@ -831,12 +832,27 @@
 				triggered halfway executing another event,
 				especially if file I/O, a shell command or
 				anything else that takes time is involved.
+							*TextChanged*
+TextChanged			After a change was made to the text in the
+				current buffer in Normal mode.  That is when
+				|b:changedtick| has changed.
+				Not triggered when there is typeahead or when
+				an operator is pending.
+				Careful: This is triggered very often, don't
+				do anything that the user does not expect or
+				that is slow.
+							*TextChangedI*
+TextChangedI			After a change was made to the text in the
+				current buffer in Insert mode.
+				Not triggered when the popup menu is visible.
+				Otherwise the same as TextChanged.
 							*User*
 User				Never executed automatically.  To be used for
 				autocommands that are only executed with
 				":doautocmd".
 							*UserGettingBored*
-UserGettingBored		When the user hits CTRL-C.  Just kidding! :-)
+UserGettingBored		When the user presses the same key 42 times.
+				Just kidding! :-)
 							*VimEnter*
 VimEnter			After doing all the startup stuff, including
 				loading .vimrc files, executing the "-c cmd"
diff --git a/runtime/doc/change.txt b/runtime/doc/change.txt
index 18cc812..bc2c524 100644
--- a/runtime/doc/change.txt
+++ b/runtime/doc/change.txt
@@ -1,4 +1,4 @@
-*change.txt*    For Vim version 7.3.  Last change: 2012 Nov 02
+*change.txt*    For Vim version 7.3.  Last change: 2013 Mar 19
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -784,6 +784,11 @@
   :s/abcde/abc^Mde/		 modifies "abcde"    to "abc", "de" (two lines)
   :s/$/\^M/			 modifies "abcde"    to "abcde^M"
   :s/\w\+/\u\0/g		 modifies "bla bla"  to "Bla Bla"
+  :s/\w\+/\L\u/g		 modifies "BLA bla"  to "Bla Bla"
+
+Note: "\L\u" can be used to capitalize the first letter of a word.  This is
+not compatible with Vi and older versions of Vim, where the "\u" would cancel
+out the "\L". Same for "\U\l".
 
 Note: In previous versions CTRL-V was handled in a special way.  Since this is
 not Vi compatible, this was removed.  Use a backslash instead.
diff --git a/runtime/doc/eval.txt b/runtime/doc/eval.txt
index bc729d1..3c6d68b 100644
--- a/runtime/doc/eval.txt
+++ b/runtime/doc/eval.txt
@@ -1,4 +1,4 @@
-*eval.txt*	For Vim version 7.3.  Last change: 2013 Mar 10
+*eval.txt*	For Vim version 7.3.  Last change: 2013 Mar 19
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -1157,7 +1157,7 @@
 |:bdelete|.
 
 One local buffer variable is predefined:
-					*b:changedtick-variable* *changetick*
+					*b:changedtick* *changetick*
 b:changedtick	The total number of changes to the current buffer.  It is
 		incremented for each change.  An undo command is also a change
 		in this case.  This can be used to perform an action only when
diff --git a/runtime/doc/ft_sql.txt b/runtime/doc/ft_sql.txt
index 1360a03..b4ea5fd 100644
--- a/runtime/doc/ft_sql.txt
+++ b/runtime/doc/ft_sql.txt
@@ -1,4 +1,4 @@
-*ft_sql.txt*	For Vim version 7.3.  Last change: 2010 Jul 20
+*ft_sql.txt*	For Vim version 7.3.  Last change: 2013 Apr 05
 
 by David Fishburn
 
@@ -435,7 +435,7 @@
 			     of columns, you can press <Left>, this will
 			     replace the column list with the list of tables.
 			   - This allows you to quickly drill down into a
-			     table to view it's columns and back again.
+			     table to view its columns and back again.
 			   - <Right> and <Left> can be also be chosen via
 			     your |.vimrc| >
                                 let g:ftplugin_sql_omni_key_right = '<Right>'
@@ -645,7 +645,7 @@
 	- When completing tables, procedure or views and using dbext.vim 3.00
 	  or higher the list of objects will also include the owner name.
 	  When completing these objects and omni_sql_include_owner is enabled
-	  the owner name will be be replaced. >
+	  the owner name will be replaced. >
 
     omni_sql_precache_syntax_groups
 <	- Default:
diff --git a/runtime/doc/options.txt b/runtime/doc/options.txt
index fbfad69..c3e91ed 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 Mar 19
+*options.txt*	For Vim version 7.3.  Last change: 2013 Apr 05
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -701,7 +701,7 @@
 
 	Vim may set this option automatically at startup time when Vim is
 	compiled with the |+termresponse| feature and if |t_u7| is set to the
-	sescape sequense to request cursor position report.
+	escape sequence to request cursor position report.
 
 			*'antialias'* *'anti'* *'noantialias'* *'noanti'*
 'antialias' 'anti'	boolean (default: off)
@@ -2872,7 +2872,7 @@
 	See |file-formats| and |file-read|.
 	For the character encoding of the file see 'fileencoding'.
 	When 'binary' is set, the value of 'fileformat' is ignored, file I/O
-	works like it was set to "unix'.
+	works like it was set to "unix".
 	This option is set automatically when starting to edit a file and
 	'fileformats' is not empty and 'binary' is off.
 	When this option is set, after starting to edit a file, the 'modified'
@@ -2941,9 +2941,9 @@
 	NOTE: This option is set to the Vi default value when 'compatible' is
 	set and to the Vim default value when 'compatible' is reset.
 
-			*'fileignorecase'* *'wic'* *'nofileignorecase'* *'nowic'*
-'fileignorecase' 'wic'	boolean	(default on for systems where case in file
-				 names is normally ignored.
+		*'fileignorecase'* *'fic'* *'nofileignorecase'* *'nofic'*
+'fileignorecase' 'fic'	boolean	(default on for systems where case in file
+				 names is normally ignored)
 			global
 			{not in Vi}
 	When set case is ignored when using file names and directories.
diff --git a/runtime/doc/syntax.txt b/runtime/doc/syntax.txt
index a32a468..842141f 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 Mar 13
+*syntax.txt*	For Vim version 7.3.  Last change: 2013 Apr 05
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -2069,7 +2069,7 @@
 than you intend to have in your final document.  For this reason, the common
 practice is to insert a carriage return immediately after all punctuation
 marks.  If you want to have "even" text in your final processed output, you
-need to maintaining regular spacing in the input text.  To mark both trailing
+need to maintain regular spacing in the input text.  To mark both trailing
 spaces and two or more spaces after a punctuation as an error, use: >
 
   :let nroff_space_errors = 1
@@ -4928,7 +4928,7 @@
 
 Once a window has its own syntax, syntax commands executed from other windows
 on the same buffer (including :syntax clear) have no effect. Conversely, 
-syntax commands executed from that window do not effect other windows on the
+syntax commands executed from that window do not affect other windows on the
 same buffer.
 
 A window with its own syntax reverts to normal behavior when another buffer
diff --git a/runtime/doc/tags b/runtime/doc/tags
index cb2364a..4db1f5e 100644
--- a/runtime/doc/tags
+++ b/runtime/doc/tags
@@ -233,10 +233,12 @@
 'fex'	options.txt	/*'fex'*
 'ff'	options.txt	/*'ff'*
 'ffs'	options.txt	/*'ffs'*
+'fic'	options.txt	/*'fic'*
 'fileencoding'	options.txt	/*'fileencoding'*
 'fileencodings'	options.txt	/*'fileencodings'*
 'fileformat'	options.txt	/*'fileformat'*
 'fileformats'	options.txt	/*'fileformats'*
+'fileignorecase'	options.txt	/*'fileignorecase'*
 'filetype'	options.txt	/*'filetype'*
 'fillchars'	options.txt	/*'fillchars'*
 'fk'	options.txt	/*'fk'*
@@ -523,6 +525,8 @@
 'noexpandtab'	options.txt	/*'noexpandtab'*
 'noexrc'	options.txt	/*'noexrc'*
 'nofen'	options.txt	/*'nofen'*
+'nofic'	options.txt	/*'nofic'*
+'nofileignorecase'	options.txt	/*'nofileignorecase'*
 'nofk'	options.txt	/*'nofk'*
 'nofkmap'	options.txt	/*'nofkmap'*
 'nofoldenable'	options.txt	/*'nofoldenable'*
@@ -4480,6 +4484,8 @@
 Tcl	if_tcl.txt	/*Tcl*
 TermChanged	autocmd.txt	/*TermChanged*
 TermResponse	autocmd.txt	/*TermResponse*
+TextChanged	autocmd.txt	/*TextChanged*
+TextChangedI	autocmd.txt	/*TextChangedI*
 Transact-SQL	ft_sql.txt	/*Transact-SQL*
 U	undo.txt	/*U*
 UTF-8	mbyte.txt	/*UTF-8*
@@ -4770,7 +4776,7 @@
 a{	motion.txt	/*a{*
 a}	motion.txt	/*a}*
 b	motion.txt	/*b*
-b:changedtick-variable	eval.txt	/*b:changedtick-variable*
+b:changedtick	eval.txt	/*b:changedtick*
 b:changelog_name	filetype.txt	/*b:changelog_name*
 b:current_syntax-variable	syntax.txt	/*b:current_syntax-variable*
 b:netrw_lastfile	pi_netrw.txt	/*b:netrw_lastfile*
diff --git a/runtime/doc/todo.txt b/runtime/doc/todo.txt
index e8604d9..4797234 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 Mar 18
+*todo.txt*      For Vim version 7.3.  Last change: 2013 Apr 05
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -47,9 +47,6 @@
 
 Checking runtime scripts: Thilo Six, 2012 Jun 6.
 
-Patch to keep serving the selection while waiting for a child process.
-(Yukihiro Nakadaira, 2013 March 14)
-
 GTK: problem with 'L' in 'guioptions' changing the window width.
 (Aaron Cornelius, 2012 Feb 6)
 
@@ -59,38 +56,38 @@
 - The word that was selected (empty if abandoned complete)
 - Type of completion: tag, omnifunc, user func.
 
+Patch to fix sorting order when 'fileignorecase' is set. (Hirohito Higashi,
+2013 Mar 20)  Update Mar 24.
+
+Using ":call foo#d.f()" doesn't autoload the "foo.vim" file.
+That is, calling a dictionary function on an autoloaded dict.
+Works OK for echo, just not for  ":call" and ":call call()". (Ted, 2011 Mar
+17)
+Patch by Christian Brabandt, 2013 Mar 23.
+
+Patch to make building with Ruby 2.0 on 64 bit system work. (eagletmt (Kohei
+Suzuki), 2013 Mar 25)
+
 Win32: When a directory name contains an exclamation mark, completion doesn't
 complete the contents of the directory.  No escaping for the "!"? (Jan
 Stocker, 2012 Jan 5)
 
-Matchparen does not update match when indenting. (Marc Aldorasi, 2013 Feb 9)
-Possible patch by Christian Brabandt, 2013 Feb 13.
+Patch to avoid that visul motion breaks repeat with ".". (Sung Pae, 2013 Mar
+25)
 
-Remarks about the more message and a patch to change behavior. (cptstubing,
-2013 Mar 16)
-
-Patch to set antialiasing style on Windows. (Ondrej Balaz, 2013 Mar 14)
+Patch to fix problem introduced by 7.3.859, reusing "p". (Christian Brabandt,
+2013 Mar 20)
 
 Problem caused by patch 7.3.638: window->open does not update window
 correctly. Issue 91.
 
-Patch to add argument to bufname() to only consider buffers in the current
-tab.  (Alexey Radkov, 2013 Feb 8)  Example in later email.
-Is this right?
-
-Patch to fix compiler warnings for MingW 4.5.3. (Ken Takata, 2013 Jan 26)
-
-Bug: search() does not use the match at the cursor position if it's empty.
-(Christian Brabandt, 2013 Feb 16)  Patch later.
-
-On Mac do not define CASE_INSENSITIVE_FILENAME ? (Richo Healey, 2013 Mar 3)
-But do set 'wildignorecase' ?
-
-Patch to make it possible to create Title Case in :s. with \L\u.
-(James McCoy, 2013 Feb 13)
+Patch to fix that 'cedit' is recognized after :normal. (Christian Brabandt,
+2013 Mar 19, later message)
 
 Patch to view coverage of the tests. (Nazri Ramliy, 2013 Feb 15)
 
+Patch to make vim.bindeval() in Python work. (Yukihiro Nakadaira, 2013 Mar 25)
+
 Do allow real tags above the !_TAG entries. Undo older patch. Issue 90.
 
 Patch to support 'u' in interactive substitute. (Christian Brabandt, 2012 Sep
@@ -98,6 +95,8 @@
 
 Patch to make fold updates much faster. (Christian Brabandt, 2012 Dec)
 
+Patch to add more testing for Visual operators. (glts, 2013 Mar 28)
+
 Patch for IME handling, adds 'imactivatefunc' and 'imstatusfunc' option.
 (Yukihiro Nakadaira, 2012 Aug 16)
 Patch to improve IME handling. (Yasuhiro Matsumoto, 2012 Jul 18)
@@ -109,6 +108,9 @@
 
 New syntax files for apt. (quidame, 2012 Sep 21)
 
+Patch to use bold/italic fonts when 'guifontewide' is set. (Ken Takata, 2013
+Mar 31)
+
 v:register is not directly reset to " after a delete command that specifies a
 register.  It is reset after the next command. (Steve Vermeulen, 2013 Mar 16)
 
@@ -117,6 +119,13 @@
 Patch for if_lua. (Luis Carvalho, 2012 Aug 26, update Aug 29, another Aug 30,
 then Sep 1, reminder Oct 14)
 
+Patch to check if 'foldexpr' sets did_emsg. (Christian Brabandt, 2013 Mar 20)
+
+Patch to set antialiasing style on Windows. (Ondrej Balaz, 2013 Mar 14)
+Needs a different check for CLEARTYPE_QUALITY.
+
+Patch for repeating change that uses ":normal". (glts, 2013 March 23)
+
 Issue 72: 'autochdir' causes problems for :vimgrep.
 
 Undo problem: line not removed as expected when using setline() from Insert
@@ -152,8 +161,8 @@
 
 Patch to add functions for signs. (Christian Brabandt, 2013 Jan 27)
 
-Patch to use directX to draw text on Windows.  Adds the 'directx' option.
-(Taro Muraoka, 2013 Jan 25)
+Patch to use directX to draw text on Windows.  Adds the 'renderoptions'
+option.  (Taro Muraoka, 2013 Jan 25, update 2013 Apr 3)
 
 Problem with refresh:always in completion. (Tyler Wade, 2013 Mar 17)
 
@@ -189,6 +198,9 @@
 
 'iminsert' global value set when using ":setlocal iminsert"? (Wu, 2012 Jun 23)
 
+Patch to append regesp to tag commands to make it possible to select one out
+of many matches. (Cody Cutler, 2013 Mar 28)
+
 Help for 'b:undo_indent'. (Thilo Six, 2012 May 28)
 Also question if examples are correct.
 
@@ -216,6 +228,9 @@
 
 MS-Windows: test 17 fails.  Analysis by Michael Soyka, 2012 Nov 5.
 
+Combining characters are not used when executing a register with :@w.
+(William Fugh, 2013 Apr 5, more info from Ben Fritz)
+
 Patch to add tests for if_xcmdsrv.c., Jul 8, need some more work. (Brian Burns)
 New tests Jul 13.   Update Jul 17.  Discussion Jul 18.
 
@@ -710,9 +725,6 @@
 When completion inserts the first match, it may trigger the line to be folded.
 Disable updating folds while completion is active? (Peter Odding, 2010 Jun 9)
 
-Using ":call foo#d.f()" doesn't autoload the "foo.vim" file.  Works OK for
-echo, just not for  ":call" and ":call call()". (Ted, 2011 Mar 17)
-
 When a:base in 'completefunc' starts with a number it's passed as a number,
 not a string. (Sean Ma)  Need to add flag to call_func_retlist() to force a
 string value.
@@ -3968,9 +3980,6 @@
 
 
 Command line history:
-9   Remember which command lines were actually typed and were not loaded from
-    viminfo.  When writing viminfo append only these lines, so that lines from
-    other Vim's are not overwritten.
 -   Add "KeyWasTyped" flag: It's reset before each command and set when a
     character from the keyboard is consumed. Value is used to decide to put a
     command line in history or not. Put line in history if it didn't
