Updated runtime files.
diff --git a/runtime/doc/channel.txt b/runtime/doc/channel.txt
index aece371..df7ec9f 100644
--- a/runtime/doc/channel.txt
+++ b/runtime/doc/channel.txt
@@ -1,4 +1,4 @@
-*channel.txt*      For Vim version 7.4.  Last change: 2016 Mar 14
+*channel.txt*      For Vim version 7.4.  Last change: 2016 Mar 15
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -153,6 +153,9 @@
 		excluding the NL.
 		When "mode" is "raw" the "msg" argument is the whole message
 		as a string.
+
+		For all callbacks: Use |function()| to bind it to arguments
+		and/or a dictionary.
 							*out_cb*
 "out_cb"	A function like "callback" but used for stdout.  Only for when
 		the channel uses pipes.  When "out_cb" wasn't set the channel
diff --git a/runtime/doc/helphelp.txt b/runtime/doc/helphelp.txt
index 4ef436c..4835f1f 100644
--- a/runtime/doc/helphelp.txt
+++ b/runtime/doc/helphelp.txt
@@ -1,4 +1,4 @@
-*helphelp.txt*	For Vim version 7.4.  Last change: 2014 Sep 19
+*helphelp.txt*	For Vim version 7.4.  Last change: 2016 Mar 12
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -197,6 +197,9 @@
 				*E154* *E150* *E151* *E152* *E153* *E670*
 :helpt[ags] [++t] {dir}
 			Generate the help tags file(s) for directory {dir}.
+			When {dir} is ALL then all "doc" directories in
+			'runtimepath' will be used.
+
 			All "*.txt" and "*.??x" files in the directory and
 			sub-directories are scanned for a help tag definition
 			in between stars.  The "*.??x" files are for
diff --git a/runtime/doc/if_lua.txt b/runtime/doc/if_lua.txt
index e6b8e68..f9039ea 100644
--- a/runtime/doc/if_lua.txt
+++ b/runtime/doc/if_lua.txt
@@ -410,13 +410,20 @@
 when needed.  When you don't use the Lua interface you don't need it, thus
 you can use Vim without this file.
 
-On MS-Windows to use the Lua interface the Lua DLL must be in your search path.
-In a console window type "path" to see what directories are used.  The version
-of the DLL must match the Lua version Vim was compiled with.
 
-On Unix the 'luadll' option can be used to specify the Lua shared library file
-instead of DYNAMIC_LUA_DLL file what was specified at compile time.  The
-version of the shared library must match the Lua version Vim was compiled with.
+MS-Windows ~
+
+To use the Lua interface the Lua DLL must be in your search path.  In a
+console window type "path" to see what directories are used.  The 'luadll'
+option can be also used to specify the Lua DLL.  The version of the DLL must
+match the Lua version Vim was compiled with.
+
+
+Unix ~
+
+The 'luadll' option can be used to specify the Lua shared library file instead
+of DYNAMIC_LUA_DLL file what was specified at compile time.  The version of
+the shared library must match the Lua version Vim was compiled with.
 
 
 ==============================================================================
diff --git a/runtime/doc/if_perl.txt b/runtime/doc/if_perl.txt
index c73eb61..b70d52a 100644
--- a/runtime/doc/if_perl.txt
+++ b/runtime/doc/if_perl.txt
@@ -284,7 +284,8 @@
 To use the Perl interface the Perl DLL must be in your search path.
 If Vim reports it cannot find the perl512.dll, make sure your $PATH includes
 the directory where it is located.  The Perl installer normally does that.
-In a console window type "path" to see what directories are used.
+In a console window type "path" to see what directories are used.  The
+'perldll' option can be also used to specify the Perl DLL.
 
 The name of the DLL must match the Perl version Vim was compiled with.
 Currently the name is "perl512.dll".  That is for Perl 5.12.  To know for
diff --git a/runtime/doc/if_pyth.txt b/runtime/doc/if_pyth.txt
index cc47beb..4f79c57 100644
--- a/runtime/doc/if_pyth.txt
+++ b/runtime/doc/if_pyth.txt
@@ -686,18 +686,24 @@
 when needed.  When you don't use the Python interface you don't need it, thus
 you can use Vim without this file.
 
-On MS-Windows to use the Python interface the Python DLL must be in your search
-path.  In a console window type "path" to see what directories are used.
+
+MS-Windows ~
+
+To use the Python interface the Python DLL must be in your search path.  In a
+console window type "path" to see what directories are used.  The 'pythondll'
+or 'pythonthreedll' option can be also used to specify the Python DLL.
 
 The name of the DLL must match the Python version Vim was compiled with.
 Currently the name is "python24.dll".  That is for Python 2.4.  To know for
 sure edit "gvim.exe" and search for "python\d*.dll\c".
 
-On Unix the 'pythondll' or 'pythonthreedll' option can be used to specify the
-Python shared library file instead of DYNAMIC_PYTHON_DLL or
-DYNAMIC_PYTHON3_DLL file what were specified at compile time.  The version of
-the shared library must match the Python 2.x or Python 3 version Vim was
-compiled with.
+
+Unix ~
+
+The 'pythondll' or 'pythonthreedll' option can be used to specify the Python
+shared library file instead of DYNAMIC_PYTHON_DLL or DYNAMIC_PYTHON3_DLL file
+what were specified at compile time.  The version of the shared library must
+match the Python 2.x or Python 3 version Vim was compiled with.
 
 ==============================================================================
 10. Python 3						*python3*
diff --git a/runtime/doc/if_ruby.txt b/runtime/doc/if_ruby.txt
index b0f8029..3ec4c41 100644
--- a/runtime/doc/if_ruby.txt
+++ b/runtime/doc/if_ruby.txt
@@ -199,6 +199,7 @@
 when needed.  When you don't use the Ruby interface you don't need it, thus
 you can use Vim even though this library file is not on your system.
 
+
 MS-Windows ~
 
 You need to install the right version of Ruby for this to work.  You can find
@@ -207,7 +208,8 @@
 Currently that is ruby-1.9.1-p429-i386-mswin32.zip
 
 To use the Ruby interface the Ruby DLL must be in your search path.  In a
-console window type "path" to see what directories are used.
+console window type "path" to see what directories are used.  The 'rubydll'
+option can be also used to specify the Ruby DLL.
 
 The name of the DLL must match the Ruby version Vim was compiled with.
 Currently the name is "msvcrt-ruby191.dll".  That is for Ruby 1.9.1.  To know
@@ -218,6 +220,7 @@
 You may also need to rename the include directory name to match the version,
 strangely for Ruby 1.9.3 the directory is called 1.9.1.
 
+
 Unix ~
 
 The 'rubydll' option can be used to specify the Ruby shared library file
diff --git a/runtime/doc/if_tcl.txt b/runtime/doc/if_tcl.txt
index 4d02233..a7a61df 100644
--- a/runtime/doc/if_tcl.txt
+++ b/runtime/doc/if_tcl.txt
@@ -526,7 +526,8 @@
 MS-Windows ~
 
 To use the Tcl interface the Tcl DLL must be in your search path.  In a
-console window type "path" to see what directories are used.
+console window type "path" to see what directories are used.  The 'tcldll'
+option can be also used to specify the Tcl DLL.
 
 The name of the DLL must match the Tcl version Vim was compiled with.
 Currently the name is "tcl86.dll".  That is for Tcl 8.6.  To know for sure
diff --git a/runtime/doc/index.txt b/runtime/doc/index.txt
index 88abdd9..76ff93f 100644
--- a/runtime/doc/index.txt
+++ b/runtime/doc/index.txt
@@ -1,4 +1,4 @@
-*index.txt*     For Vim version 7.4.  Last change: 2016 Mar 04
+*index.txt*     For Vim version 7.4.  Last change: 2016 Mar 12
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -1395,6 +1395,7 @@
 |:ounmenu|	:ounme[nu]	remove menu for Operator-pending mode
 |:ownsyntax|	:ow[nsyntax]	set new local syntax highlight for this window
 |:packadd|	:pa[ckadd]	add a plugin from 'packpath'
+|:packloadall|	:packl[oadall]	load all packages under 'packpath'
 |:pclose|	:pc[lose]	close preview window
 |:pedit|	:ped[it]	edit file in the preview window
 |:perl|		:pe[rl]		execute Perl command
diff --git a/runtime/doc/quickfix.txt b/runtime/doc/quickfix.txt
index 3d42337..0ca314d 100644
--- a/runtime/doc/quickfix.txt
+++ b/runtime/doc/quickfix.txt
@@ -1,4 +1,4 @@
-*quickfix.txt*  For Vim version 7.4.  Last change: 2016 Jan 21
+*quickfix.txt*  For Vim version 7.4.  Last change: 2016 Mar 19
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -56,6 +56,10 @@
 similar to the quickfix commands, replacing the 'c' prefix in the quickfix
 command with 'l'.
 
+							*E924*
+If the current window was closed by an |autocommand| while processing a
+location list command, it will be aborted.
+
 							*:cc*
 :cc[!] [nr]		Display error [nr].  If [nr] is omitted, the same
 			error is displayed again.  Without [!] this doesn't
diff --git a/runtime/doc/repeat.txt b/runtime/doc/repeat.txt
index 9399e1f..c8624a2 100644
--- a/runtime/doc/repeat.txt
+++ b/runtime/doc/repeat.txt
@@ -1,4 +1,4 @@
-*repeat.txt*    For Vim version 7.4.  Last change: 2016 Mar 09
+*repeat.txt*    For Vim version 7.4.  Last change: 2016 Mar 15
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -249,15 +249,18 @@
 
 			Also see |pack-add|.
 
+						*:packl* *:packloadall*
 :packloadall[!]		Load all packages in the "start" directories under
 			'packpath'.  The directories found are added to
 			'runtimepath'.
-			This normally done during startup, after loading your
-			.vimrc file.  With this command it can be done
-			earlier.
+			This is normally done automatically during startup,
+			after loading your .vimrc file.  With this command it
+			can be done earlier.
 			Packages will be loaded only once.  After this command
 			it won't happen again.  When the optional ! is added
 			this command will load packages even when done before.
+			An Error only causes sourcing the script where it
+			happens to be aborted, further plugins will be loaded.
 			See |packages|.
 
 :scripte[ncoding] [encoding]		*:scripte* *:scriptencoding* *E167*
diff --git a/runtime/doc/syntax.txt b/runtime/doc/syntax.txt
index 091168f..f635111 100644
--- a/runtime/doc/syntax.txt
+++ b/runtime/doc/syntax.txt
@@ -1,4 +1,4 @@
-*syntax.txt*	For Vim version 7.4.  Last change: 2016 Feb 25
+*syntax.txt*	For Vim version 7.4.  Last change: 2016 Mar 12
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -4534,9 +4534,9 @@
 :colo[rscheme] {name}	Load color scheme {name}.  This searches 'runtimepath'
 			for the file "colors/{name}.vim".  The first one that
 			is found is loaded.
-			To see the name of the currently active color scheme: >
-				:colo
-<			The name is also stored in the g:colors_name variable.
+			Also searches all plugins in 'packpath', first below
+			"start" and then under "opt".
+
 			Doesn't work recursively, thus you can't use
 			":colorscheme" in a color scheme script.
 			After the color scheme has been loaded the
diff --git a/runtime/doc/tags b/runtime/doc/tags
index 1c644ca..e275ef0 100644
--- a/runtime/doc/tags
+++ b/runtime/doc/tags
@@ -207,6 +207,8 @@
 'efm'	options.txt	/*'efm'*
 'ei'	options.txt	/*'ei'*
 'ek'	options.txt	/*'ek'*
+'emo'	options.txt	/*'emo'*
+'emoji'	options.txt	/*'emoji'*
 'enc'	options.txt	/*'enc'*
 'encoding'	options.txt	/*'encoding'*
 'endofline'	options.txt	/*'endofline'*
@@ -1286,6 +1288,7 @@
 +termresponse	various.txt	/*+termresponse*
 +textobjects	various.txt	/*+textobjects*
 +tgetent	various.txt	/*+tgetent*
++timers	various.txt	/*+timers*
 +title	various.txt	/*+title*
 +toolbar	various.txt	/*+toolbar*
 +user_commands	various.txt	/*+user_commands*
@@ -2620,6 +2623,8 @@
 :p	various.txt	/*:p*
 :pa	repeat.txt	/*:pa*
 :packadd	repeat.txt	/*:packadd*
+:packl	repeat.txt	/*:packl*
+:packloadall	repeat.txt	/*:packloadall*
 :pc	windows.txt	/*:pc*
 :pclose	windows.txt	/*:pclose*
 :pe	if_perl.txt	/*:pe*
@@ -4212,7 +4217,6 @@
 E703	eval.txt	/*E703*
 E704	eval.txt	/*E704*
 E705	eval.txt	/*E705*
-E706	eval.txt	/*E706*
 E707	eval.txt	/*E707*
 E708	eval.txt	/*E708*
 E709	eval.txt	/*E709*
@@ -4444,6 +4448,11 @@
 E918	channel.txt	/*E918*
 E919	repeat.txt	/*E919*
 E92	message.txt	/*E92*
+E920	channel.txt	/*E920*
+E921	channel.txt	/*E921*
+E922	eval.txt	/*E922*
+E923	eval.txt	/*E923*
+E924	quickfix.txt	/*E924*
 E93	windows.txt	/*E93*
 E94	windows.txt	/*E94*
 E95	message.txt	/*E95*
@@ -5170,6 +5179,7 @@
 ch_evalraw()	eval.txt	/*ch_evalraw()*
 ch_getbufnr()	eval.txt	/*ch_getbufnr()*
 ch_getjob()	eval.txt	/*ch_getjob()*
+ch_info()	eval.txt	/*ch_info()*
 ch_log()	eval.txt	/*ch_log()*
 ch_logfile()	eval.txt	/*ch_logfile()*
 ch_open()	eval.txt	/*ch_open()*
@@ -5278,7 +5288,7 @@
 clipboard-unnamed	options.txt	/*clipboard-unnamed*
 clipboard-unnamedplus	options.txt	/*clipboard-unnamedplus*
 clojure-indent	indent.txt	/*clojure-indent*
-close-cb	channel.txt	/*close-cb*
+close_cb	channel.txt	/*close_cb*
 cmdarg-variable	eval.txt	/*cmdarg-variable*
 cmdbang-variable	eval.txt	/*cmdbang-variable*
 cmdline-arguments	vi_diff.txt	/*cmdline-arguments*
@@ -5643,10 +5653,11 @@
 end-of-file	pattern.txt	/*end-of-file*
 enlightened-terminal	syntax.txt	/*enlightened-terminal*
 erlang.vim	syntax.txt	/*erlang.vim*
-err-buf	channel.txt	/*err-buf*
-err-cb	channel.txt	/*err-cb*
-err-name	channel.txt	/*err-name*
-err-timeout	channel.txt	/*err-timeout*
+err_buf	channel.txt	/*err_buf*
+err_cb	channel.txt	/*err_cb*
+err_mode	channel.txt	/*err_mode*
+err_name	channel.txt	/*err_name*
+err_timeout	channel.txt	/*err_timeout*
 errmsg-variable	eval.txt	/*errmsg-variable*
 error-file-format	quickfix.txt	/*error-file-format*
 error-messages	message.txt	/*error-messages*
@@ -6765,10 +6776,11 @@
 improvements-5	version5.txt	/*improvements-5*
 improvements-6	version6.txt	/*improvements-6*
 improvements-7	version7.txt	/*improvements-7*
-in-bot	channel.txt	/*in-bot*
-in-buf	channel.txt	/*in-buf*
-in-name	channel.txt	/*in-name*
-in-top	channel.txt	/*in-top*
+in_bot	channel.txt	/*in_bot*
+in_buf	channel.txt	/*in_buf*
+in_mode	channel.txt	/*in_mode*
+in_name	channel.txt	/*in_name*
+in_top	channel.txt	/*in_top*
 inactive-buffer	windows.txt	/*inactive-buffer*
 include-search	tagsrch.txt	/*include-search*
 inclusive	motion.txt	/*inclusive*
@@ -6846,21 +6858,22 @@
 job	channel.txt	/*job*
 job-callback	channel.txt	/*job-callback*
 job-channel-overview	channel.txt	/*job-channel-overview*
-job-close-cb	channel.txt	/*job-close-cb*
+job-close_cb	channel.txt	/*job-close_cb*
 job-control	channel.txt	/*job-control*
-job-err-cb	channel.txt	/*job-err-cb*
-job-err-io	channel.txt	/*job-err-io*
-job-exit-cb	channel.txt	/*job-exit-cb*
-job-in-io	channel.txt	/*job-in-io*
+job-err_cb	channel.txt	/*job-err_cb*
+job-err_io	channel.txt	/*job-err_io*
+job-exit_cb	channel.txt	/*job-exit_cb*
+job-in_io	channel.txt	/*job-in_io*
 job-options	channel.txt	/*job-options*
-job-out-cb	channel.txt	/*job-out-cb*
-job-out-io	channel.txt	/*job-out-io*
+job-out_cb	channel.txt	/*job-out_cb*
+job-out_io	channel.txt	/*job-out_io*
 job-start	channel.txt	/*job-start*
 job-start-if-needed	channel.txt	/*job-start-if-needed*
 job-start-nochannel	channel.txt	/*job-start-nochannel*
 job-stoponexit	channel.txt	/*job-stoponexit*
 job-term	channel.txt	/*job-term*
 job_getchannel()	eval.txt	/*job_getchannel()*
+job_info()	eval.txt	/*job_info()*
 job_setoptions()	eval.txt	/*job_setoptions()*
 job_start()	eval.txt	/*job_start()*
 job_status()	eval.txt	/*job_status()*
@@ -7511,6 +7524,7 @@
 nextnonblank()	eval.txt	/*nextnonblank()*
 nice	todo.txt	/*nice*
 no-eval-feature	eval.txt	/*no-eval-feature*
+no-type-checking	eval.txt	/*no-type-checking*
 no_buffers_menu	gui.txt	/*no_buffers_menu*
 non-greedy	pattern.txt	/*non-greedy*
 non-zero-arg	eval.txt	/*non-zero-arg*
@@ -7579,10 +7593,11 @@
 os_vms.txt	os_vms.txt	/*os_vms.txt*
 os_win32.txt	os_win32.txt	/*os_win32.txt*
 other-features	vi_diff.txt	/*other-features*
-out-buf	channel.txt	/*out-buf*
-out-cb	channel.txt	/*out-cb*
-out-name	channel.txt	/*out-name*
-out-timeout	channel.txt	/*out-timeout*
+out_buf	channel.txt	/*out_buf*
+out_cb	channel.txt	/*out_cb*
+out_mode	channel.txt	/*out_mode*
+out_name	channel.txt	/*out_name*
+out_timeout	channel.txt	/*out_timeout*
 p	change.txt	/*p*
 pack-add	repeat.txt	/*pack-add*
 packages	repeat.txt	/*packages*
@@ -8199,7 +8214,6 @@
 static-tag	tagsrch.txt	/*static-tag*
 status-line	windows.txt	/*status-line*
 statusmsg-variable	eval.txt	/*statusmsg-variable*
-sticky-type-checking	eval.txt	/*sticky-type-checking*
 str2float()	eval.txt	/*str2float()*
 str2nr()	eval.txt	/*str2nr()*
 strcasestr()	eval.txt	/*strcasestr()*
@@ -8580,6 +8594,8 @@
 throw-variables	eval.txt	/*throw-variables*
 throwpoint-variable	eval.txt	/*throwpoint-variable*
 time-functions	usr_41.txt	/*time-functions*
+timer_start()	eval.txt	/*timer_start()*
+timer_stop()	eval.txt	/*timer_stop()*
 timestamp	editing.txt	/*timestamp*
 timestamps	editing.txt	/*timestamps*
 tips	tips.txt	/*tips*
@@ -9028,6 +9044,11 @@
 win32-vimrun	gui_w32.txt	/*win32-vimrun*
 win32-win3.1	os_win32.txt	/*win32-win3.1*
 win32s	os_win32.txt	/*win32s*
+win_findbuf()	eval.txt	/*win_findbuf()*
+win_getid()	eval.txt	/*win_getid()*
+win_gotoid()	eval.txt	/*win_gotoid()*
+win_id2tabwin()	eval.txt	/*win_id2tabwin()*
+win_id2win()	eval.txt	/*win_id2win()*
 winbufnr()	eval.txt	/*winbufnr()*
 wincol()	eval.txt	/*wincol()*
 window	windows.txt	/*window*
diff --git a/runtime/doc/todo.txt b/runtime/doc/todo.txt
index afa8219..15bc65c 100644
--- a/runtime/doc/todo.txt
+++ b/runtime/doc/todo.txt
@@ -1,4 +1,4 @@
-*todo.txt*      For Vim version 7.4.  Last change: 2016 Mar 11
+*todo.txt*      For Vim version 7.4.  Last change: 2016 Mar 20
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -35,15 +35,8 @@
 -------------------- Known bugs and current work -----------------------
 
 +channel:
-- CHANNEL_PIPES -> FEAT_JOB
-- FEAT_JOB / FEAT_CHANNEL -> FEAT_JOBCHANNEL ?
-- move code from eval.c to channel.c
-- add job_info(): process ID, run/dead, etc.
-- add ch_info(): in/out/err mode, timeout, callbacks, etc.
+- add test for out-cb and err-cb.
 - Move more details from eval.txt to channel.txt.  Add tags in eval.txt.
-- When receiving malformed json starting with a quote it doesn't get
-  discarded.  Any invalid JSON or JSON that isn't a list will block further
-  parsing?
 - When decoding json, don't read all the typeahead at once, use the reader
   properly.
 - When a message in the queue but there is no callback, drop it after a while?
@@ -64,47 +57,9 @@
 - job_start(): run job in a newly opened terminal.
     With xterm could use -S{pty}.
 
-emoji patch from Yasuhiro Matsumoto.  Asked Thomas Dickey.
+Packages: how about "after" directory?
 
-Remove sticky type checking.
-
-Packages:
-- Add command to update help tags in 'runtimepath'.  Pathogen has something
-  like that.
-- colorscheme command in .vimrc doesn't work.
-   - Also search in 'packpath', both "start" and "opt", don't add dir to 'rtp'
-- command like :runtime that also search 'packpath'.  :packruntime
-    use "ever" or "opt"?  both?
-- command to load packages now?
-
-More plugin support:
-- Have a way to install a callback from the main loop.  Called every second or
-  so.
-- Need way to uniquely identify a window, no matter how windows are
-  rearranged.  Same for tab pages.
-      getwinid()             ID of current winow
-      getwinid({nr})         ID of window {nr}
-      getwinid({nr}, {tab})  ID of window {nr} in tab page {tab}
-      getwinnr({id})	     window nr of {id} or -1 if not open
-      gettabnr({id})	     tab page nr of {id} or -1 if not open
-      gotowin({id})
-  Make it so that the window ID can be used where currently a window nr is used
-  Patch from Anton Lindqvist, 2016 Feb 21, to make bufwinnr() return a list.
-  Perhaps add bufwinid() instead.
-
-This difference is unexpected:
-    echo v:true == 1
-    1
-    echo [v:true] == [1]
-    0
-It's because tv_equal() works different.
-
-Compiler warnings. (John Marriott, Feb 17)
-
-Compiler warnings in if_ole.cpp.  Patch by Ken Takata, Feb 18.
-
-When running "make install" don't overwrite the doc/tags file, generate it
-elsewhere, so that the distributed file doesn't change.
+Make it so that the window ID can be used where currently a window nr is used
 
 Fix to support --nofork for Windows batch files. (Kevin Cantú, 2016 Feb 23,
 #658, #659)  Also add "setlocal" at top of batch file?
@@ -170,6 +125,12 @@
 Also include update_curswant() fix for getcurpos(). (Christian Brabandt, 2016
 Feb 9)
 
+Patch to list some messages and clear messages. (Yasuhiro Matsumoto, 2016 Mar
+12)
+
+Patch to fix escaping special characters for delete(). (tc-0, 2016 Mar 20,
+#700) Test fails on MS-Windows.
+
 Patch to put undo options together in undo window.
 (Gary Johnson, 2016 Jan 28)
 
@@ -182,6 +143,10 @@
 
 Patch for test86 and test87. (Roland Puntaier, #622)
 
+Cannot delete a file with square brackets with delete(). (#696)
+
+Patch to add 'topbot' to 'belloff' option. (Coot, 2016 Mar 18, #695)
+
 We can use '. to go to the last change in the current buffer, but how about
 the last change in any buffer?  Can we use ', (, is next to .)?
 
@@ -200,9 +165,14 @@
 - Drop support for older MS-Windows systems, before XP.
   Patch from Ken Takata, 2016 Mar 8.
 
+Add stronger encryption.  Could use libsodium (NaCl).
+https://github.com/jedisct1/libsodium/
+Possibly include the needed code so that it can be build everywhere.
+
 Patch to add setbufline(). (email from Yasuhiro Matsumoto, patch by Ozaki
 Kiichi, 2016 Feb 28)
 Update Mar 8: https://gist.github.com/mattn/23c1f50999084992ca98
+Update Mar 13: https://gist.github.com/mattn/23c1f50999084992ca98
 
 Need to try out instructions in INSSTALLpc.txt about how to install all
 interfaces and how to build Vim with them.
@@ -210,9 +180,6 @@
 interfaces: https://github.com/k-takata/vim/tree/chrisbra-appveyor-build
 result: https://ci.appveyor.com/project/k-takata/vim/history
 
-Still using freed memory after using setloclist(). (lcd, 2014 Jul 23)
-More info Jul 24.  Not clear why.
-
 Duplication of completion suggestions for ":!hom".  Issue 539.
 Patch by Christian, 2016 Jan 29
 >
@@ -242,9 +209,6 @@
 Or use $XDG_DATA_DIRS.
 Also need to run update-desktop-database (Kuriyama Kazunobu, 2015 Nov 4)
 
-Move the README files that are for including in archives to a subdirectory.
-"readmedir/" ?
-
 Access to uninitialized memory in match_backref() regexp_nda.c:4882
 (Dominique Pelle, 2015 Nov 6)
 
@@ -333,6 +297,9 @@
 Value returned by virtcol() changes depending on how lines wrap.  This is
 inconsistent with the documentation.
 
+Patch to add filtering of the quickfix list. (Yegappan Lakshmanan, 2016 Mar
+13, last version)
+
 Can we cache the syntax attributes, so that updates for 'relativenumber' and
 'cursorline'/'cursorcolumn' are a lot faster?
 
@@ -412,8 +379,6 @@
 When 'showbreak' is set repeating a Visual operation counts the size of the
 'showbreak' text as part of the operation. (Axel Bender, 2015 Jul 20)
 
-Patch to apply 'fileformats' when starting Vim. (Mike Williams, 2015 Jul 22)
-
 Patch for matchit plugin related to multibyte chars. (Ken Takata, 2015 Jul 22)
 
 Patch for multi-byte characters in langmap and applying a mapping on them.
@@ -471,6 +436,7 @@
 Patch for drag&drop reordering of GUI tab pages reordering.
 (Ken Takata, 2013 Nov 22, second one, also by Masamichi Abe)
 Now on Git: https://gist.github.com/nocd5/165286495c782b815b94
+Update 2016 Mar 15.
 
 Patch on Issue 72: 'autochdir' causes problems for :vimgrep.
 
@@ -3732,7 +3698,7 @@
     unprintable char another color.  Would be useful for ^M at end of line.
 
 
-Built-in script language:
+Vim script language:
 8   Make the filename and line number available to script functions, so that
     they can give useful debugging info.  The whole call stack would be ideal.
     At least use this for error messages.
@@ -3753,14 +3719,10 @@
 7   ":include" command: just like ":source" but doesn't start a new scriptID?
     Will be tricky for the list of script names.
 8   Have a look at VSEL.  Would it be useful to include? (Bigham)
-8   Add ":fungroup" command, to group function definitions together.  When
-    encountered, all functions in the group are removed.  Suggest using an
-    obscure name to avoid name clashes.  Require a ":fungroup END" in the same
-    sourced file?  Assume the group ends at the end of the file.  Handle
-    nested packages?
-    Alternative: Support packages.  {package-name}:{function-name}().
-    Packages are loaded automatically when first used, from
-    $VIMRUNTIME/packages (or use a search path).
+8   Have a prefix for a function to make it unique.  When using packages it
+    can be the plugin name.
+    Perhaps also have a way to remove everything that the package added?
+    including autocommands.
 7   Pre-parse or compile Vim scripts into a bytecode.
     1. Put the bytecode with the original script, with an ":if
        has('bytecode')" around it, so that it's only used with a Vim that
@@ -3777,8 +3739,6 @@
 8   Add functions:
 	has(":command")		Check if ":command" works.  compare function
 				with "ex_ni".  E.g. for ":simalt".
-	system()		With a List argument.  Bypasses the shell, use
-				exec() directly.  (Bob Hiestand)
 	escape()		Add argument to specify what to escape with.
 	modestack()		Instead of just the current mode return the
 				stack of Insert / CTRL-O / :normal things.
diff --git a/runtime/doc/usr_41.txt b/runtime/doc/usr_41.txt
index 7ef466d..920be4a 100644
--- a/runtime/doc/usr_41.txt
+++ b/runtime/doc/usr_41.txt
@@ -1,4 +1,4 @@
-*usr_41.txt*	For Vim version 7.4.  Last change: 2016 Feb 14
+*usr_41.txt*	For Vim version 7.4.  Last change: 2016 Mar 15
 
 		     VIM USER MANUAL - by Bram Moolenaar
 
@@ -889,9 +889,11 @@
 	wildmenumode()		check if the wildmode is active
 
 Testing:				    *test-functions*
-	assert_equal()       	assert that two expressions values are equal
+	assert_equal()		assert that two expressions values are equal
 	assert_false()		assert that an expression is false
 	assert_true()		assert that an expression is true
+	assert_exception()	assert that a command throws an exception
+	assert_fails()		assert that a function call fails
 
 Inter-process communication:
 	ch_open()		open a channel
@@ -932,7 +934,7 @@
 	perleval()		evaluate Perl expression (|+perl|)
 	py3eval()		evaluate Python expression (|+python3|)
 	pyeval()		evaluate Python expression (|+python|)
-	wordcount()             get byte/word/char count of buffer
+	wordcount()		get byte/word/char count of buffer
 
 ==============================================================================
 *41.7*	Defining a function
diff --git a/runtime/doc/various.txt b/runtime/doc/various.txt
index 1bce66e..8e51005 100644
--- a/runtime/doc/various.txt
+++ b/runtime/doc/various.txt
@@ -1,4 +1,4 @@
-*various.txt*   For Vim version 7.4.  Last change: 2016 Feb 27
+*various.txt*   For Vim version 7.4.  Last change: 2016 Mar 20
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -426,6 +426,7 @@
 N  *+termresponse*	support for |t_RV| and |v:termresponse|
 N  *+textobjects*	|text-objects| selection
    *+tgetent*		non-Unix only: able to use external termcap
+N  *+timers*		the |timer_start()| function
 N  *+title*		Setting the window 'title' and 'icon'
 N  *+toolbar*		|gui-toolbar|
 N  *+user_commands*	User-defined commands. |user-commands|
diff --git a/runtime/optwin.vim b/runtime/optwin.vim
index c44d73a..368eb09 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:	2016 Feb 21
+" Last Change:	2016 Mar 19
 
 " If there already is an option window, jump to that one.
 if bufwinnr("option-window") > 0
diff --git a/runtime/tools/demoserver.py b/runtime/tools/demoserver.py
index c701434..00fe8bf 100644
--- a/runtime/tools/demoserver.py
+++ b/runtime/tools/demoserver.py
@@ -50,7 +50,7 @@
             if data == '':
                 print("=== socket closed ===")
                 break
-            print("received: {}".format(data))
+            print("received: {0}".format(data))
             try:
                 decoded = json.loads(data)
             except ValueError:
@@ -65,7 +65,7 @@
                 else:
                     response = "what?"
                 encoded = json.dumps([decoded[0], response])
-                print("sending {}".format(encoded))
+                print("sending {0}".format(encoded))
                 self.request.sendall(encoded.encode('utf-8'))
         thesocket = None
 
@@ -87,7 +87,7 @@
     server_thread.start()
     print("Server loop running in thread: ", server_thread.name)
 
-    print("Listening on port {}".format(PORT))
+    print("Listening on port {0}".format(PORT))
     while True:
         typed = sys.stdin.readline()
         if "quit" in typed:
@@ -96,7 +96,7 @@
         if thesocket is None:
             print("No socket yet")
         else:
-            print("sending {}".format(typed))
+            print("sending {0}".format(typed))
             thesocket.sendall(typed.encode('utf-8'))
 
     server.shutdown()