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"
diff --git a/runtime/filetype.vim b/runtime/filetype.vim
index 266d195..71f2d34 100644
--- a/runtime/filetype.vim
+++ b/runtime/filetype.vim
@@ -1,7 +1,7 @@
 " Vim support file to detect file types
 "
 " Maintainer:	Bram Moolenaar <Bram@vim.org>
-" Last Change:	2016 Jun 26
+" Last Change:	2016 Jul 12
 
 " Listen very carefully, I will say this only once
 if exists("did_load_filetypes")
@@ -1621,11 +1621,9 @@
 " Pyrex
 au BufNewFile,BufRead *.pyx,*.pxd		setf pyrex
 
-" Python
-au BufNewFile,BufRead *.py,*.pyw		setf python
-
+" Python, Python Shell Startup Files
 " Quixote (Python-based web framework)
-au BufNewFile,BufRead *.ptl			setf python
+au BufNewFile,BufRead *.py,*.pyw,.pythonstartup,.pythonrc,*.ptl  setf python
 
 " Radiance
 au BufNewFile,BufRead *.rad,*.mat		setf radiance
diff --git a/runtime/syntax/awk.vim b/runtime/syntax/awk.vim
index 40491ee..ae0f217 100644
--- a/runtime/syntax/awk.vim
+++ b/runtime/syntax/awk.vim
@@ -1,15 +1,15 @@
 " Vim syntax file
 " Language:	awk, nawk, gawk, mawk
 " Maintainer:	Antonio Colombo <azc100@gmail.com>
-" Last Change:	2014 Oct 21
+" Last Change:	2016 Jul 15
 
-" AWK  ref.  is: Alfred V. Aho, Brian W. Kernighan, Peter J. Weinberger
+" AWK  ref. is: Alfred V. Aho, Brian W. Kernighan, Peter J. Weinberger
 " The AWK Programming Language, Addison-Wesley, 1988
 
 " GAWK ref. is: Arnold D. Robbins
 " Effective AWK Programming, Third Edition, O'Reilly, 2001
 " Effective AWK Programming, Fourth Edition, O'Reilly, 2015
-" (also available with the gawk source distribution)
+" (also available and updated with the gawk source distribution)
 
 " MAWK is a "new awk" meaning it implements AWK ref.
 " mawk conforms to the Posix 1003.2 (draft 11.3)
@@ -19,11 +19,8 @@
 " TODO:
 " Dig into the commented out syntax expressions below.
 
-" For version 5.x: Clear all syntax items
-" For version 6.x: Quit when a syntax file was already loaded
-if version < 600
-  syn clear
-elseif exists("b:current_syntax")
+" Quit when a syntax file was already loaded
+if exists("b:current_syntax")
   finish
 endif
 
@@ -35,13 +32,13 @@
 syn keyword awkStatement	break continue delete exit
 syn keyword awkStatement	function getline next
 syn keyword awkStatement	print printf return
-" GAWK ref. Chapter 7
-syn keyword awkStatement	nextfile
+" GAWK ref. Chapter 7-9
+syn keyword awkStatement	switch nextfile
+syn keyword awkStatement	func
 "
 " GAWK ref. Chapter 9, Functions
-"
 " Numeric Functions
-syn keyword awkFunction	atan2 cos div exp int log rand sin sqrt srand
+syn keyword awkFunction	atan2 cos exp int intdiv log rand sin sqrt srand
 " String Manipulation Functions
 syn keyword awkFunction	asort asort1 gensub gsub index length match 
 syn keyword awkFunction	patsplit split sprintf strtonum sub substr
@@ -52,17 +49,17 @@
 syn keyword awkFunction	mktime strftime systime
 " Bit Manipulation Functions
 syn keyword awkFunction	and compl lshift or rshift xor
-" Getting Type Function
-syn keyword awkFunction	isarray
+" Getting Type Functions
+syn keyword awkFunction	isarray typeof
 " String-Translation Functions
 syn keyword awkFunction	bindtextdomain dcgettext dcngetext
 
 syn keyword awkConditional	if else
-syn keyword awkRepeat	while for
+syn keyword awkRepeat	while for do
 
-syn keyword awkTodo		contained TODO
+syn keyword awkTodo	contained TODO
 
-syn keyword awkPatterns	BEGIN END
+syn keyword awkPatterns	BEGIN END BEGINFILE ENDFILE
 
 " GAWK ref. Chapter 7
 " Built-in Variables That Control awk
@@ -74,20 +71,18 @@
 syn keyword awkVariables	FNR NF FUNCTAB NR PROCINFO RLENGTH RSTART 
 syn keyword awkVariables	RT SYMTAB
 
-syn keyword awkRepeat	do
 
 " Octal format character.
 syn match   awkSpecialCharacter display contained "\\[0-7]\{1,3\}"
-syn keyword awkStatement	func nextfile
 " Hex   format character.
 syn match   awkSpecialCharacter display contained "\\x[0-9A-Fa-f]\+"
 
 syn match   awkFieldVars	"\$\d\+"
 
-"catch errors caused by wrong parenthesis
-syn region	awkParen	transparent start="(" end=")" contains=ALLBUT,awkParenError,awkSpecialCharacter,awkArrayElement,awkArrayArray,awkTodo,awkRegExp,awkBrktRegExp,awkBrackets,awkCharClass
+" catch errors caused by wrong parenthesis
+syn region	awkParen	transparent start="(" end=")" contains=ALLBUT,awkParenError,awkSpecialCharacter,awkArrayElement,awkArrayArray,awkTodo,awkRegExp,awkBrktRegExp,awkBrackets,awkCharClass,awkComment
 syn match	awkParenError	display ")"
-syn match	awkInParen	display contained "[{}]"
+"syn match	awkInParen	display contained "[{}]"
 
 " 64 lines for complex &&'s, and ||'s in a big "if"
 syn sync ccomment awkParen maxlines=64
@@ -141,7 +136,7 @@
 syn keyword awkExpression	in
 
 " Boolean Logic (OR, AND, NOT)
-"syn match  awkBoolLogic	"||\|&&\|\!"
+syn match  awkBoolLogic	"||\|&&\|\!"
 
 " This is overridden by less-than & greater-than.
 " Put this above those to override them.
@@ -171,63 +166,42 @@
 " (for the few instances where it would be more than "oneline")
 syn sync ccomment awkArray maxlines=10
 
-" define the default highlighting
-" For version 5.7 and earlier: only when not done already
-" For version 5.8 and later: only when an item doesn't have highlighting yet
-if version >= 508 || !exists("did_awk_syn_inits")
-  if version < 508
-    let did_awk_syn_inits = 1
-    command -nargs=+ HiLink hi link <args>
-  else
-    command -nargs=+ HiLink hi def link <args>
-  endif
-
-  HiLink awkConditional		Conditional
-  HiLink awkFunction		Function
-  HiLink awkRepeat		Repeat
-  HiLink awkStatement		Statement
-
-  HiLink awkString		String
-  HiLink awkSpecialPrintf	Special
-  HiLink awkSpecialCharacter	Special
-
-  HiLink awkSearch		String
-  HiLink awkBrackets		awkRegExp
-  HiLink awkBrktRegExp		awkNestRegExp
-  HiLink awkCharClass		awkNestRegExp
-  HiLink awkNestRegExp		Keyword
-  HiLink awkRegExp		Special
-
-  HiLink awkNumber		Number
-  HiLink awkFloat		Float
-
-  HiLink awkFileIO		Special
-  HiLink awkOperator		Special
-  HiLink awkExpression		Special
-  HiLink awkBoolLogic		Special
-
-  HiLink awkPatterns		Special
-  HiLink awkVariables		Special
-  HiLink awkFieldVars		Special
-
-  HiLink awkLineSkip		Special
-  HiLink awkSemicolon		Special
-  HiLink awkComma		Special
-  "HiLink awkIdentifier		Identifier
-
-  HiLink awkComment		Comment
-  HiLink awkTodo		Todo
-
-  " Change this if you want nested array names to be highlighted.
-  HiLink awkArrayArray		awkArray
-  HiLink awkArrayElement	Special
-
-  HiLink awkParenError		awkError
-  HiLink awkInParen		awkError
-  HiLink awkError		Error
-
-  delcommand HiLink
-endif
+" Define the default highlighting.
+" Only used when an item doesn't have highlighting yet
+hi def link awkConditional	Conditional
+hi def link awkFunction		Function
+hi def link awkRepeat		Repeat
+hi def link awkStatement	Statement
+hi def link awkString		String
+hi def link awkSpecialPrintf	Special
+hi def link awkSpecialCharacter	Special
+hi def link awkSearch		String
+hi def link awkBrackets		awkRegExp
+hi def link awkBrktRegExp	awkNestRegExp
+hi def link awkCharClass	awkNestRegExp
+hi def link awkNestRegExp	Keyword
+hi def link awkRegExp		Special
+hi def link awkNumber		Number
+hi def link awkFloat		Float
+hi def link awkFileIO		Special
+hi def link awkOperator		Special
+hi def link awkExpression	Special
+hi def link awkBoolLogic	Special
+hi def link awkPatterns		Special
+hi def link awkVariables	Special
+hi def link awkFieldVars	Special
+hi def link awkLineSkip		Special
+hi def link awkSemicolon	Special
+hi def link awkComma		Special
+hi def link awkIdentifier	Identifier
+hi def link awkComment		Comment
+hi def link awkTodo		Todo
+" Change this if you want nested array names to be highlighted.
+hi def link awkArrayArray	awkArray
+hi def link awkArrayElement	Special
+hi def link awkParenError	awkError
+hi def link awkInParen		awkError
+hi def link awkError		Error
 
 let b:current_syntax = "awk"
 
