diff --git a/runtime/doc/channel.txt b/runtime/doc/channel.txt
index dd4b8d3..6eec9f2 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 Jul 07
+*channel.txt*      For Vim version 7.4.  Last change: 2016 Jul 15
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -6,13 +6,9 @@
 
 		      Inter-process communication		*channel*
 
-DRAFT  DRAFT  DRAFT  DRAFT  DRAFT  DRAFT  DRAFT  DRAFT  DRAFT  DRAFT
-
 Vim uses channels to communicate with other processes.
-A channel uses a socket or pipes			*socket-interface*
+A channel uses a socket or pipes.			*socket-interface*
 Jobs can be used to start processes and communicate with them.
-
-Vim current supports up to 10 simultaneous channels.
 The Netbeans interface also uses a channel. |netbeans|
 
 1. Overview				|job-channel-overview|
@@ -569,11 +565,13 @@
 "out_cb": handler	Callback for when there is something to read on
 			stdout.  Only for when the channel uses pipes.  When
 			"out_cb" wasn't set the channel callback is used.
+			The two arguments are the channel and the message.
 
 						*job-err_cb* *err_cb*
 "err_cb": handler	Callback for when there is something to read on
 			stderr.  Only for when the channel uses pipes.  When
 			"err_cb" wasn't set the channel callback is used.
+			The two arguments are the channel and the message.
 						*job-close_cb*
 "close_cb": handler	Callback for when the channel is closed.  Same as
 			"close_cb" on |ch_open()|, see |close_cb|.
diff --git a/runtime/doc/message.txt b/runtime/doc/message.txt
index d41915e..65c222d 100644
--- a/runtime/doc/message.txt
+++ b/runtime/doc/message.txt
@@ -1,4 +1,4 @@
-*message.txt*   For Vim version 7.4.  Last change: 2016 Apr 14
+*message.txt*   For Vim version 7.4.  Last change: 2016 Jul 14
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -673,6 +673,12 @@
 have the same number, which causes various problems.  You might want to exit
 Vim and restart it.
 
+							*E931*  >
+  Buffer cannot be registered
+
+Out of memory or a duplicate buffer number.  May habben after W14.  Looking up
+a buffer will not always work, better restart Vim.
+
 							*E296* *E297*  >
   Seek error in swap file write
   Write error in swap file
diff --git a/runtime/doc/motion.txt b/runtime/doc/motion.txt
index aee4e4a..b6a5969 100644
--- a/runtime/doc/motion.txt
+++ b/runtime/doc/motion.txt
@@ -1,4 +1,4 @@
-*motion.txt*    For Vim version 7.4.  Last change: 2016 Jun 12
+*motion.txt*    For Vim version 7.4.  Last change: 2016 Jul 12
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -586,7 +586,7 @@
 			When used in Visual mode it is made characterwise.
 
 a)							*v_a)* *a)* *a(*
-a(							*v_ab* *v_a(* *ab*
+a(							*vab* *v_ab* *v_a(* *ab*
 ab			"a block", select [count] blocks, from "[count] [(" to
 			the matching ')', including the '(' and ')' (see
 			|[(|).  Does not include white space outside of the
@@ -594,7 +594,7 @@
 			When used in Visual mode it is made characterwise.
 
 i)							*v_i)* *i)* *i(*
-i(							*v_ib* *v_i(* *ib*
+i(							*vib* *v_ib* *v_i(* *ib*
 ib			"inner block", select [count] blocks, from "[count] [("
 			to the matching ')', excluding the '(' and ')' (see
 			|[(|).
diff --git a/runtime/doc/netbeans.txt b/runtime/doc/netbeans.txt
index 7455f2f..47927ae 100644
--- a/runtime/doc/netbeans.txt
+++ b/runtime/doc/netbeans.txt
@@ -1,4 +1,4 @@
-*netbeans.txt*  For Vim version 7.4.  Last change: 2016 Feb 18
+*netbeans.txt*  For Vim version 7.4.  Last change: 2016 Jul 15
 
 
 		  VIM REFERENCE MANUAL    by Gordon Prieur et al.
@@ -59,6 +59,8 @@
 
 Check the specific project pages to see how to use Vim with these projects.
 
+An alternative is to use a channel, see |channel|.
+
 In the rest of this help page, we will use the term "Vim Controller" to
 describe the program controlling Vim through the NetBeans socket interface.
 
diff --git a/runtime/doc/options.txt b/runtime/doc/options.txt
index f535fcf..ea247e2 100644
--- a/runtime/doc/options.txt
+++ b/runtime/doc/options.txt
@@ -1,4 +1,4 @@
-*options.txt*	For Vim version 7.4.  Last change: 2016 Jul 09
+*options.txt*	For Vim version 7.4.  Last change: 2016 Jul 12
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -6455,6 +6455,8 @@
 	The |FilterReadPre|, |FilterReadPost| and |FilterWritePre|,
 	|FilterWritePost| autocommands event are not triggered when
 	'shelltemp' is off.
+	The `system()` function does not respect this option and always uses
+	temp files.
 
 						*'shelltype'* *'st'*
 'shelltype' 'st'	number	(default 0)
diff --git a/runtime/doc/tags b/runtime/doc/tags
index 12ed733..d4ba7c6 100644
--- a/runtime/doc/tags
+++ b/runtime/doc/tags
@@ -4462,6 +4462,7 @@
 E929	starting.txt	/*E929*
 E93	windows.txt	/*E93*
 E930	eval.txt	/*E930*
+E931	message.txt	/*E931*
 E94	windows.txt	/*E94*
 E95	message.txt	/*E95*
 E96	diff.txt	/*E96*
@@ -5809,6 +5810,7 @@
 expr-isnot	eval.txt	/*expr-isnot*
 expr-isnot#	eval.txt	/*expr-isnot#*
 expr-isnot?	eval.txt	/*expr-isnot?*
+expr-lambda	eval.txt	/*expr-lambda*
 expr-nesting	eval.txt	/*expr-nesting*
 expr-number	eval.txt	/*expr-number*
 expr-option	eval.txt	/*expr-option*
@@ -6968,6 +6970,7 @@
 l:var	eval.txt	/*l:var*
 lCursor	mbyte.txt	/*lCursor*
 lace.vim	syntax.txt	/*lace.vim*
+lambda	eval.txt	/*lambda*
 lang-variable	eval.txt	/*lang-variable*
 language-mapping	map.txt	/*language-mapping*
 last-pattern	pattern.txt	/*last-pattern*
@@ -8958,6 +8961,7 @@
 v_x	change.txt	/*v_x*
 v_y	change.txt	/*v_y*
 v_~	change.txt	/*v_~*
+vab	motion.txt	/*vab*
 val-variable	eval.txt	/*val-variable*
 valgrind	debug.txt	/*valgrind*
 values()	eval.txt	/*values()*
@@ -9005,6 +9009,7 @@
 vi-differences	vi_diff.txt	/*vi-differences*
 vi:	options.txt	/*vi:*
 vi_diff.txt	vi_diff.txt	/*vi_diff.txt*
+vib	motion.txt	/*vib*
 view	starting.txt	/*view*
 view-diffs	diff.txt	/*view-diffs*
 view-file	starting.txt	/*view-file*
diff --git a/runtime/doc/todo.txt b/runtime/doc/todo.txt
index 88a6ce2..b9794f7 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 Jul 09
+*todo.txt*      For Vim version 7.4.  Last change: 2016 Jul 15
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -38,10 +38,6 @@
 clear the next list, not the current one.  Ramel Eshed, Jun 8.
 
 +channel:
-- GUI cursor blinking interrupted when the job output goes to a buffer that is
-  in a window. (Ramel Eshed, 2016 Jun 9)
-- GUI cursor blinking interrupted when there is a status line.  (Ramel Eshed,
-  2016 Jun 9)
 - When a message in the queue but there is no callback, drop it after a while?
   Add timestamp to queued messages and callbacks with ID, remove after a
   minute.  Option to set the droptime.
@@ -62,10 +58,10 @@
   creating lots of buffers. (Ramel Eshed)
   Store the relative file name and set a flag "qf_relative".  Before changing
   directory turn them into full paths.
+  When using getqflist() or getloclist() we need to get the bufnr for other
+  plugins.  Add a flag to not do that.
 
 Regexp problems:
-- When using automatic engine selection there is a false match.  Forcing
-  either engine works OK. (fritzophrenic, 2016 Jun 15, #867)
 - Since 7.4.704 the old regex engine fails to match [[:print:]] in 0xf6.
   (Manuel Ortega, 2016 Apr 24)
   Test fails on Mac.  Avoid using isalpha(), isalnum(), etc?  Depends on
@@ -120,13 +116,7 @@
 Should json_encode()/json_decode() restrict recursiveness?
 Or avoid recursiveness.
 
-Add a lambda() function.
-Patch by Yasuhiro Matsumoto, 2014 Sep 16, update 2016 Apr 17.
-Correction for test, Ken Takata, 2016 May 27.
-Merged patch: Ken Takata, 2016 Jun 15.
-Need to separate-out closure and lambda somehow.
-Define lambda directly, not as a string: {v -> v * 8}
-Lambda implementation by Ken Takata, 2016 Jul 7.
+Also use funcref for substitute, instead of \=.
 
 Python: Extended funcrefs: use func_T* structure in place of char_u* function
 names.
@@ -136,6 +126,8 @@
 Once .exe with updated installer is available: Add remark to download page
 about /S and /D options (Ken Takata, 2016 Apr 13)
 
+Patch to remove unsupported systems. (Hirohito Higashi, 2016 Jul 13)
+
 Cursor positioned in the wrong place when editing src/testdir/test_viml.vim.
 
 Javascript indent wrong after /* in single quoted string:
@@ -152,23 +144,11 @@
 For current Windows build .pdb file is missing. (Gabriele Fava, 2016 May 11)
 5)
 
-'completeopt' noinsert breaks redo register (Shougo, 2016 Jun 18, #874)
-Patch to fix this: #905.
-There also is #875 to fix another problem?
-
 Problem with whitespace in errorformat. (Gerd Wachsmuth, 2016 May 15, #807)
 
-":caddexpr" should keep state, so that directory changes can be respected.
-(Luc Hermitte, 2016 Jun 6)
-Don't clear dir_stack and file_stack when returning, do it on entry when not
-adding iterms.  And keep them in qf_list_T.
-
 Patch to add filtering of the quickfix list. (Yegappan Lakshmanan, 2016 Mar
 13, last version)  Update June 26, #830.
-
-When 'autochdir' is set, writing  new file does not change the current dir.
-(Dan Church, issue #777)
-Patch to fix this. (mister fish (Allen Haim), 2016 May 14, #803)
+Instead use a Vim script implementation, invoked from a Vim command.
 
 ml_get errors when reloading file. (Chris Desjardins, 2016 Apr 19)
 Also with latest version.
@@ -183,6 +163,11 @@
 
 No autocommand for when changing directory.  Patch from allen haim, 2016 Jun
 27, #888
+Justin M Keyes: use "global" or "window" for the pattern.  Can add "tab"
+later.
+
+MS-Windows: use WS_HIDE instead of SW_SHOWMINNOACTIVE in os_win32.c?
+Otherwise task flickers in taskbar.
 
 Should make ":@r" handle line continuation. (Cesar Romani, 2016 Jun 26)
 Also for ":@.".
@@ -190,6 +175,8 @@
 Patch to add TabNew, TabNewEntered and TabClosed autocommand events.
 (Felipe Morales, 2015 Feb 1)
 
+Repeating 'opfunc' in a function only works once. (Tarmean, 2016 Jul 15, #925)
+
 Patch on issue #728 by Christian Brabandt, 2016 Apr 7.  Update with test: Apr 8.
 Explanation Apr 12.
 Might be related to:
@@ -203,6 +190,9 @@
 Patch to make matchit work better, respect 'matchpairs'. (Ken Takata, 2016 Mar
 25)
 
+This does not work: :set cscopequickfix=a-
+(Linewi, 2015 Jul 12, #914)
+
 Possibly wrong value for seq_cur. (Florent Fayolle, 2016 May 15, #806)
 
 Patch to improve map documentation. Issue #799.
@@ -3847,7 +3837,7 @@
 8   Pass the command line arguments to Vim scripts in some way.  As v:args
     List?  Or extra parameter to argv()?
 8   Add command arguments with three dashes, passed on to Vim scripts.
-7   Add optional arguments to user functions:
+9   Add optional arguments to user functions:
 	:func myFunc(arg1, arg2, arg3 = "blah", arg4 = 17)
 6   User functions: Functions local to buffer "b:func()"?
 8   For Strings add ":let var[{expr}] = {expr}".  When past the end of "var"
