Update runtime files.
diff --git a/runtime/doc/cmdline.txt b/runtime/doc/cmdline.txt
index 989bd25..a0e37b5 100644
--- a/runtime/doc/cmdline.txt
+++ b/runtime/doc/cmdline.txt
@@ -1,4 +1,4 @@
-*cmdline.txt*   For Vim version 8.0.  Last change: 2017 Jul 11
+*cmdline.txt*   For Vim version 8.0.  Last change: 2017 Sep 17
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -826,6 +826,7 @@
 			       *:<cword>* *:<cWORD>* *:<cfile>* *<cfile>*
 			       *:<sfile>* *<sfile>* *:<afile>* *<afile>*
 			       *:<abuf>* *<abuf>* *:<amatch>* *<amatch>*
+			       *:<cexpr>* *<cexpr>*
 			       *<slnum>* *E495* *E496* *E497* *E499* *E500*
 Note: these are typed literally, they are not special keys!
 	<cword>    is replaced with the word under the cursor (like |star|)
diff --git a/runtime/doc/diff.txt b/runtime/doc/diff.txt
index 7361d42..9951028 100644
--- a/runtime/doc/diff.txt
+++ b/runtime/doc/diff.txt
@@ -1,4 +1,4 @@
-*diff.txt*      For Vim version 8.0.  Last change: 2017 Feb 03
+*diff.txt*      For Vim version 8.0.  Last change: 2017 Sep 02
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -226,8 +226,8 @@
 				(searching from the end of the line).  The
 				text in between is highlighted.  This means
 				that parts in the middle that are still the
-				same are highlighted anyway.  Only "iwhite" of
-				'diffopt' is used here.
+				same are highlighted anyway.  The 'diffopt'
+				flags "iwhite" and "icase" are used here.
 |hl-DiffDelete|	DiffDelete	Deleted lines.  Also called filler lines,
 				because they don't really exist in this
 				buffer.
diff --git a/runtime/doc/eval.txt b/runtime/doc/eval.txt
index 1650ee8..edc12ef 100644
--- a/runtime/doc/eval.txt
+++ b/runtime/doc/eval.txt
@@ -1,4 +1,4 @@
-*eval.txt*	For Vim version 8.0.  Last change: 2017 Sep 11
+*eval.txt*	For Vim version 8.0.  Last change: 2017 Sep 17
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -4787,7 +4787,9 @@
 
 		Each List item is a Dictionary with the following entries:
 			bufnr		number of buffer in the window
-			height		window height
+			height		window height (excluding winbar)
+			winbar		1 if the window has a toolbar, 0
+					otherwise
 			loclist		1 if showing a location list
 					{only with the +quickfix feature}
 			quickfix	1 if quickfix or location list window
@@ -5676,6 +5678,7 @@
 			"s"	Select
 			"x"	Visual
 			"l"	langmap |language-mapping|
+			"t"	Terminal-Job
 			""	Normal, Visual and Operator-pending
 		When {mode} is omitted, the modes for "" are used.
 
@@ -8021,9 +8024,9 @@
 
 term_getcursor({buf})					*term_getcursor()*
 		Get the cursor position of terminal {buf}. Returns a list with
-		two numbers and a dictionary: [rows, cols, dict].
+		two numbers and a dictionary: [row, col, dict].
 
-		"rows" and "cols" are one based, the first screen cell is row
+		"row" and "col" are one based, the first screen cell is row
 		1, column 1.  This is the cursor position of the terminal
 		itself, not of the Vim window.
 
@@ -8138,6 +8141,10 @@
 		means the character CTRL-X.
 		{only available when compiled with the |+terminal| feature}
 
+term_setsize({buf}, {expr})				*term_setsize()*
+		Not implemented yet.
+		{only available when compiled with the |+terminal| feature}
+
 term_start({cmd}, {options})				*term_start()*
 		Open a terminal window and run {cmd} in it.
 
@@ -8609,6 +8616,7 @@
 		When {nr} is zero, the height of the current window is
 		returned.  When window {nr} doesn't exist, -1 is returned.
 		An existing window always has a height of zero or more.
+		This excludes any window toolbar line.
 		Examples: >
   :echo "The current window has " . winheight(0) . " lines."
 <
@@ -8936,7 +8944,7 @@
 toolbar			Compiled with support for |gui-toolbar|.
 ttyin			input is a terminal (tty)
 ttyout			output is a terminal (tty)
-unix			Unix version of Vim.
+unix			Unix version of Vim. *+unix*
 unnamedplus		Compiled with support for "unnamedplus" in 'clipboard'
 user_commands		User-defined commands.
 vertsplit		Compiled with vertically split windows |:vsplit|.
diff --git a/runtime/doc/gui.txt b/runtime/doc/gui.txt
index 7fb6a59..dc77123 100644
--- a/runtime/doc/gui.txt
+++ b/runtime/doc/gui.txt
@@ -1,4 +1,4 @@
-*gui.txt*       For Vim version 8.0.  Last change: 2017 Sep 16
+*gui.txt*       For Vim version 8.0.  Last change: 2017 Sep 19
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -784,11 +784,12 @@
 from the main menu bar.  You must then use the |:popup| or |:tearoff| command
 to display it.
 
-							*window-toolbar*
+					*window-toolbar* *WinBar*
 Each window can have a local toolbar.  This uses the first line of the window,
-thus reduces the space for the text by one line.
+thus reduces the space for the text by one line.  The items in the toolbar
+must start with "WinBar".
 
-Only text can be used.  When using Unicode special characters can be used to
+Only text can be used.  When using Unicode, special characters can be used to
 make the items look like icons.
 
 If the items do not fit then the last ones cannot be used.  The toolbar does
@@ -802,6 +803,8 @@
 <
 The window toolbar uses the ToolbarLine and ToolbarButton highlight groups.
 
+When splitting the window the window toolbar is not copied to the new window.
+
 							*popup-menu*
 In the Win32, GTK+, Motif, Athena and Photon GUI, you can define the
 special menu "PopUp".  This is the menu that is displayed when the right mouse
diff --git a/runtime/doc/index.txt b/runtime/doc/index.txt
index e202c33..3d0c8d6 100644
--- a/runtime/doc/index.txt
+++ b/runtime/doc/index.txt
@@ -1583,13 +1583,17 @@
 |:tjump|	:tj[ump]	like ":tselect", but jump directly when there
 				is only one match
 |:tlast|	:tl[ast]	jump to last matching tag
+|:tmapclear|	:tmapc[lear]	remove all mappings for Terminal-Job mode
+|:tmap|		:tma[p]		like ":map" but for Terminal-Job mode
 |:tmenu|	:tm[enu]	define menu tooltip
 |:tnext|	:tn[ext]	jump to next matching tag
+|:tnoremap|	:tno[remap]	like ":noremap" but for Terminal-Job mode
 |:topleft|	:to[pleft]	make split window appear at top or far left
 |:tprevious|	:tp[revious]	jump to previous matching tag
 |:trewind|	:tr[ewind]	jump to first matching tag
 |:try|		:try		execute commands, abort on error or exception
 |:tselect|	:ts[elect]	list matching tags and select one
+|:tunmap|	:tunma[p]	like ":unmap" but for Terminal-Job mode
 |:tunmenu|	:tu[nmenu]	remove menu tooltip
 |:undo|		:u[ndo]		undo last change(s)
 |:undojoin|	:undoj[oin]	join next change with previous undo block
diff --git a/runtime/doc/intro.txt b/runtime/doc/intro.txt
index 287a1d6..24ceb47 100644
--- a/runtime/doc/intro.txt
+++ b/runtime/doc/intro.txt
@@ -1,4 +1,4 @@
-*intro.txt*     For Vim version 8.0.  Last change: 2017 Aug 24
+*intro.txt*     For Vim version 8.0.  Last change: 2017 Sep 04
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -264,6 +264,10 @@
 	Juergen Weigert		Lattice version, AUX improvements, UNIX and
 				MS-DOS ports, autoconf
 	Stefan 'Sec' Zehl	Maintainer of vim.org
+	Yasuhiro Matsumoto	many MS-Windows improvements
+	Ken Takata		fixes and features
+	Kazunobu Kuriyama	GTK 3
+	Christian Brabandt	many fixes, features, user support, etc.
 
 I wish to thank all the people that sent me bug reports and suggestions.  The
 list is too long to mention them all here.  Vim would not be the same without
diff --git a/runtime/doc/map.txt b/runtime/doc/map.txt
index fcba510..80e9077 100644
--- a/runtime/doc/map.txt
+++ b/runtime/doc/map.txt
@@ -1,4 +1,4 @@
-*map.txt*       For Vim version 8.0.  Last change: 2017 May 30
+*map.txt*       For Vim version 8.0.  Last change: 2017 Sep 17
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -55,7 +55,7 @@
 :im[ap]	{lhs} {rhs}		|mapmode-i|		*:im* *:imap*
 :lm[ap]	{lhs} {rhs}		|mapmode-l|		*:lm* *:lmap*
 :cm[ap]	{lhs} {rhs}		|mapmode-c|		*:cm* *:cmap*
-:tm[ap]	{lhs} {rhs}		|mapmode-t|		*:tma* *:tmap*
+:tma[p]	{lhs} {rhs}		|mapmode-t|		*:tma* *:tmap*
 			Map the key sequence {lhs} to {rhs} for the modes
 			where the map command applies.  The result, including
 			{rhs}, is then further scanned for mappings.  This
@@ -89,7 +89,7 @@
 :iu[nmap] {lhs}			|mapmode-i|		*:iu*   *:iunmap*
 :lu[nmap] {lhs}			|mapmode-l|		*:lu*   *:lunmap*
 :cu[nmap] {lhs}			|mapmode-c|		*:cu*   *:cunmap*
-:tu[nmap] {lhs}			|mapmode-t|		*:tunma* *:tunmap*
+:tunma[p] {lhs}			|mapmode-t|		*:tunma* *:tunmap*
 			Remove the mapping of {lhs} for the modes where the
 			map command applies.  The mapping may remain defined
 			for other modes where it applies.
@@ -125,7 +125,7 @@
 :im[ap]				|mapmode-i|
 :lm[ap]				|mapmode-l|
 :cm[ap]				|mapmode-c|
-:tm[ap]				|mapmode-t|
+:tma[p]				|mapmode-t|
 			List all key mappings for the modes where the map
 			command applies.  Note that ":map" and ":map!" are
 			used most often, because they include the other modes.
@@ -140,7 +140,7 @@
 :im[ap] {lhs}			|mapmode-i|		*:imap_l*
 :lm[ap] {lhs}			|mapmode-l|		*:lmap_l*
 :cm[ap] {lhs}			|mapmode-c|		*:cmap_l*
-:tm[ap] {lhs}			|mapmode-t|		*:tmap_l*
+:tma[p] {lhs}			|mapmode-t|		*:tmap_l*
 			List the key mappings for the key sequences starting
 			with {lhs} in the modes where the map command applies.
 			{not in Vi}
@@ -694,7 +694,7 @@
 you type slowly, or your system is slow, reset the 'timeout' option.  Then you
 might want to set the 'ttimeout' option.
 
-                            				*map-precedence*
+			      				*map-precedence*
 Buffer-local mappings (defined using |:map-<buffer>|) take precedence over
 global mappings.  When a buffer-local mapping is the same as a global mapping,
 Vim will use the buffer-local mapping.  In addition, Vim will use a complete
diff --git a/runtime/doc/options.txt b/runtime/doc/options.txt
index 3072793..b5e5847 100644
--- a/runtime/doc/options.txt
+++ b/runtime/doc/options.txt
@@ -1,4 +1,4 @@
-*options.txt*	For Vim version 8.0.  Last change: 2017 Aug 27
+*options.txt*	For Vim version 8.0.  Last change: 2017 Sep 16
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -423,6 +423,16 @@
 							*$HOME-windows*
 On MS-Windows, if $HOME is not defined as an environment variable, then
 at runtime Vim will set it to the expansion of $HOMEDRIVE$HOMEPATH.
+If $HOMEDRIVE is not set then $USERPROFILE is used.
+
+This expanded value is not exported to the environment, this matters when
+running an external command: >
+	:echo system('set | findstr ^HOME=')
+and >
+	:echo luaeval('os.getenv("HOME")')
+should echo nothing (an empty string) despite exists('$HOME') being true.
+When setting $HOME to a non-empty string it will be exported to the
+subprocesses.
 
 
 Note the maximum length of an expanded option is limited.  How much depends on
@@ -722,7 +732,8 @@
 
 	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
-	escape sequence to request cursor position report.
+	escape sequence to request cursor position report.  The response can
+	be found in |v:termu7resp|.
 
 			*'antialias'* *'anti'* *'noantialias'* *'noanti'*
 'antialias' 'anti'	boolean (default: off)
@@ -870,11 +881,12 @@
 <	Vim will guess the value.  In the GUI this should work correctly,
 	in other cases Vim might not be able to guess the right value.
 
-	When the t_BG option is set, Vim will use it to request the background
+	When the |t_RB| option is set, Vim will use it to request the background
 	color from the terminal.  If the returned RGB value is dark/light and
 	'background' is not dark/light, 'background' will be set and the
 	screen is redrawn.  This may have side effects, make t_BG empty in
-	your .vimrc if you suspect this problem.
+	your .vimrc if you suspect this problem.  The response to |t_RB| can
+	be found in |v:termrgbresp|.
 
 	When starting the GUI, the default value for 'background' will be
 	"light".  When the value is not set in the .gvimrc, and Vim detects
@@ -4363,9 +4375,9 @@
 			{not in Vi}
 			{only available when compiled with |+xim| and
 			|+GUI_GTK|}
-	This option specifies the input style of Input Method.
-	Set to zero if you want to use on-the-spot style.
-	Set to one if you want to use over-the-spot style.
+	This option specifies the input style of Input Method:
+	0   use on-the-spot style
+	1   over-the-spot style
 	See: |xim-input-style|
 
 	For a long time on-the-spot sytle had been used in GTK version of vim,
@@ -5746,6 +5758,18 @@
 <	Replace the ';' with a ':' or whatever separator is used.  Note that
 	this doesn't work when $INCL contains a comma or white space.
 
+						*'perldll'*
+'perldll'		string	(default depends on the build)
+			global
+			{not in Vi}
+			{only available when compiled with the |+perl/dyn|
+			feature}
+	Specifies the name of the Perl shared library. The default is
+	DYNAMIC_PERL_DLL, which was specified at compile time.
+	Environment variables are expanded |:set_env|.
+	This option cannot be set from a |modeline| or in the |sandbox|, for
+	security reasons.
+
 			*'preserveindent'* *'pi'* *'nopreserveindent'* *'nopi'*
 'preserveindent' 'pi'	boolean	(default off)
 			local to buffer
diff --git a/runtime/doc/quickfix.txt b/runtime/doc/quickfix.txt
index 753f461..cfbfe4c 100644
--- a/runtime/doc/quickfix.txt
+++ b/runtime/doc/quickfix.txt
@@ -1,4 +1,4 @@
-*quickfix.txt*  For Vim version 8.0.  Last change: 2017 Jun 13
+*quickfix.txt*  For Vim version 8.0.  Last change: 2017 Sep 13
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -47,11 +47,6 @@
 							*quickfix-ID*
 Each quickfix list has a unique identifier called the quickfix ID and this
 number will not change within a Vim session. The getqflist() function can be
-used to get the identifier assigned to a list.
-
-							*quickfix-ID*
-Each quickfix list has a unique identifier called the quickfix ID and this
-number will not change within a Vim session. The getqflist() function can be
 used to get the identifier assigned to a list. There is also a quickfix list
 number which may change whenever more than ten lists are added to a quickfix
 stack.
diff --git a/runtime/doc/quickref.txt b/runtime/doc/quickref.txt
index 326b405..c4d6790 100644
--- a/runtime/doc/quickref.txt
+++ b/runtime/doc/quickref.txt
@@ -1,4 +1,4 @@
-*quickref.txt*  For Vim version 8.0.  Last change: 2017 Aug 19
+*quickref.txt*  For Vim version 8.0.  Last change: 2017 Sep 10
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -749,6 +749,7 @@
 'iminsert'	  'imi'     use :lmap or IM in Insert mode
 'imsearch'	  'ims'     use :lmap or IM when typing a search pattern
 'imstatusfunc'    'imsf'    function to obtain X input method status
+'imstyle'	  'imst'    specifies the input style of the input method
 'include'	  'inc'     pattern to be used to find an include file
 'includeexpr'	  'inex'    expression used to process an include line
 'incsearch'	  'is'	    highlight match while typing search pattern
diff --git a/runtime/doc/tags b/runtime/doc/tags
index f2c2518..31836c1 100644
--- a/runtime/doc/tags
+++ b/runtime/doc/tags
@@ -4,6 +4,7 @@
 $	motion.txt	/*$*
 $HOME	options.txt	/*$HOME*
 $HOME-use	version5.txt	/*$HOME-use*
+$HOME-windows	options.txt	/*$HOME-windows*
 $MYGVIMRC	gui.txt	/*$MYGVIMRC*
 $MYVIMRC	starting.txt	/*$MYVIMRC*
 $VIM	starting.txt	/*$VIM*
@@ -366,7 +367,9 @@
 'ims'	options.txt	/*'ims'*
 'imsearch'	options.txt	/*'imsearch'*
 'imsf'	options.txt	/*'imsf'*
+'imst'	options.txt	/*'imst'*
 'imstatusfunc'	options.txt	/*'imstatusfunc'*
+'imstyle'	options.txt	/*'imstyle'*
 'inc'	options.txt	/*'inc'*
 'include'	options.txt	/*'include'*
 'includeexpr'	options.txt	/*'includeexpr'*
@@ -746,6 +749,7 @@
 'path'	options.txt	/*'path'*
 'pdev'	options.txt	/*'pdev'*
 'penc'	options.txt	/*'penc'*
+'perldll'	options.txt	/*'perldll'*
 'pex'	options.txt	/*'pex'*
 'pexpr'	options.txt	/*'pexpr'*
 'pfn'	options.txt	/*'pfn'*
@@ -971,6 +975,7 @@
 't_PE'	term.txt	/*'t_PE'*
 't_PS'	term.txt	/*'t_PS'*
 't_RB'	term.txt	/*'t_RB'*
+'t_RC'	term.txt	/*'t_RC'*
 't_RI'	term.txt	/*'t_RI'*
 't_RS'	term.txt	/*'t_RS'*
 't_RV'	term.txt	/*'t_RV'*
@@ -980,6 +985,8 @@
 't_SR'	term.txt	/*'t_SR'*
 't_Sb'	term.txt	/*'t_Sb'*
 't_Sf'	term.txt	/*'t_Sf'*
+'t_Te'	term.txt	/*'t_Te'*
+'t_Ts'	term.txt	/*'t_Ts'*
 't_VS'	term.txt	/*'t_VS'*
 't_WP'	term.txt	/*'t_WP'*
 't_WS'	term.txt	/*'t_WS'*
@@ -1328,6 +1335,7 @@
 +timers	various.txt	/*+timers*
 +title	various.txt	/*+title*
 +toolbar	various.txt	/*+toolbar*
++unix	eval.txt	/*+unix*
 +user_commands	various.txt	/*+user_commands*
 +vertsplit	various.txt	/*+vertsplit*
 +viminfo	various.txt	/*+viminfo*
@@ -1892,6 +1900,7 @@
 :<afile>	cmdline.txt	/*:<afile>*
 :<amatch>	cmdline.txt	/*:<amatch>*
 :<cWORD>	cmdline.txt	/*:<cWORD>*
+:<cexpr>	cmdline.txt	/*:<cexpr>*
 :<cfile>	cmdline.txt	/*:<cfile>*
 :<cword>	cmdline.txt	/*:<cword>*
 :<sfile>	cmdline.txt	/*:<sfile>*
@@ -1951,6 +1960,7 @@
 :Sexplore	pi_netrw.txt	/*:Sexplore*
 :TOhtml	syntax.txt	/*:TOhtml*
 :TarDiff	pi_tar.txt	/*:TarDiff*
+:Termdebug	terminal.txt	/*:Termdebug*
 :Texplore	pi_netrw.txt	/*:Texplore*
 :UseVimball	pi_vimball.txt	/*:UseVimball*
 :Vexplore	pi_netrw.txt	/*:Vexplore*
@@ -3122,9 +3132,16 @@
 :tl	tagsrch.txt	/*:tl*
 :tlast	tagsrch.txt	/*:tlast*
 :tm	gui.txt	/*:tm*
+:tma	map.txt	/*:tma*
+:tmap	map.txt	/*:tmap*
+:tmap_l	map.txt	/*:tmap_l*
+:tmapc	map.txt	/*:tmapc*
+:tmapclear	map.txt	/*:tmapclear*
 :tmenu	gui.txt	/*:tmenu*
 :tn	tagsrch.txt	/*:tn*
 :tnext	tagsrch.txt	/*:tnext*
+:tno	map.txt	/*:tno*
+:tnoremap	map.txt	/*:tnoremap*
 :topleft	windows.txt	/*:topleft*
 :tp	tagsrch.txt	/*:tp*
 :tprevious	tagsrch.txt	/*:tprevious*
@@ -3134,6 +3151,8 @@
 :ts	tagsrch.txt	/*:ts*
 :tselect	tagsrch.txt	/*:tselect*
 :tu	gui.txt	/*:tu*
+:tunma	map.txt	/*:tunma*
+:tunmap	map.txt	/*:tunmap*
 :tunmenu	gui.txt	/*:tunmenu*
 :u	undo.txt	/*:u*
 :un	undo.txt	/*:un*
@@ -3398,6 +3417,7 @@
 <bang>	map.txt	/*<bang>*
 <buffer=N>	autocmd.txt	/*<buffer=N>*
 <buffer=abuf>	autocmd.txt	/*<buffer=abuf>*
+<cexpr>	cmdline.txt	/*<cexpr>*
 <cfile>	cmdline.txt	/*<cfile>*
 <character>	intro.txt	/*<character>*
 <count>	map.txt	/*<count>*
@@ -3428,6 +3448,7 @@
 <mods>	map.txt	/*<mods>*
 <nomodeline>	autocmd.txt	/*<nomodeline>*
 <q-args>	map.txt	/*<q-args>*
+<range>	map.txt	/*<range>*
 <reg>	map.txt	/*<reg>*
 <register>	map.txt	/*<register>*
 <sfile>	cmdline.txt	/*<sfile>*
@@ -4829,6 +4850,7 @@
 WORD	motion.txt	/*WORD*
 WWW	intro.txt	/*WWW*
 Win32	os_win32.txt	/*Win32*
+WinBar	gui.txt	/*WinBar*
 WinEnter	autocmd.txt	/*WinEnter*
 WinLeave	autocmd.txt	/*WinLeave*
 WinNew	autocmd.txt	/*WinNew*
@@ -7270,6 +7292,7 @@
 mapmode-nvo	map.txt	/*mapmode-nvo*
 mapmode-o	map.txt	/*mapmode-o*
 mapmode-s	map.txt	/*mapmode-s*
+mapmode-t	map.txt	/*mapmode-t*
 mapmode-v	map.txt	/*mapmode-v*
 mapmode-x	map.txt	/*mapmode-x*
 mapping	map.txt	/*mapping*
@@ -8005,6 +8028,7 @@
 quake.vim	syntax.txt	/*quake.vim*
 quickfix	quickfix.txt	/*quickfix*
 quickfix-6	version6.txt	/*quickfix-6*
+quickfix-ID	quickfix.txt	/*quickfix-ID*
 quickfix-directory-stack	quickfix.txt	/*quickfix-directory-stack*
 quickfix-error-lists	quickfix.txt	/*quickfix-error-lists*
 quickfix-functions	usr_41.txt	/*quickfix-functions*
@@ -8234,6 +8258,7 @@
 session-file	starting.txt	/*session-file*
 set-option	options.txt	/*set-option*
 set-spc-auto	spell.txt	/*set-spc-auto*
+setbufline()	eval.txt	/*setbufline()*
 setbufvar()	eval.txt	/*setbufvar()*
 setcharsearch()	eval.txt	/*setcharsearch()*
 setcmdpos()	eval.txt	/*setcmdpos()*
@@ -8460,6 +8485,7 @@
 strftime()	eval.txt	/*strftime()*
 strgetchar()	eval.txt	/*strgetchar()*
 stridx()	eval.txt	/*stridx()*
+strikethrough	syntax.txt	/*strikethrough*
 string	eval.txt	/*string*
 string()	eval.txt	/*string()*
 string-functions	usr_41.txt	/*string-functions*
@@ -8590,6 +8616,7 @@
 t_PE	term.txt	/*t_PE*
 t_PS	term.txt	/*t_PS*
 t_RB	term.txt	/*t_RB*
+t_RC	term.txt	/*t_RC*
 t_RI	term.txt	/*t_RI*
 t_RS	term.txt	/*t_RS*
 t_RV	term.txt	/*t_RV*
@@ -8599,6 +8626,8 @@
 t_SR	term.txt	/*t_SR*
 t_Sb	term.txt	/*t_Sb*
 t_Sf	term.txt	/*t_Sf*
+t_Te	term.txt	/*t_Te*
+t_Ts	term.txt	/*t_Ts*
 t_VS	term.txt	/*t_VS*
 t_WP	term.txt	/*t_WP*
 t_WS	term.txt	/*t_WS*
@@ -8830,6 +8859,7 @@
 term_list()	eval.txt	/*term_list()*
 term_scrape()	eval.txt	/*term_scrape()*
 term_sendkeys()	eval.txt	/*term_sendkeys()*
+term_setsize()	eval.txt	/*term_setsize()*
 term_start()	eval.txt	/*term_start()*
 term_wait()	eval.txt	/*term_wait()*
 termcap	term.txt	/*termcap*
@@ -8848,6 +8878,7 @@
 terminal-options	term.txt	/*terminal-options*
 terminal-output-codes	term.txt	/*terminal-output-codes*
 terminal-testing	terminal.txt	/*terminal-testing*
+terminal-typing	terminal.txt	/*terminal-typing*
 terminal-use	terminal.txt	/*terminal-use*
 terminal.txt	terminal.txt	/*terminal.txt*
 terminfo	term.txt	/*terminfo*
@@ -8855,6 +8886,7 @@
 test-functions	usr_41.txt	/*test-functions*
 test_alloc_fail()	eval.txt	/*test_alloc_fail()*
 test_autochdir()	eval.txt	/*test_autochdir()*
+test_feedinput()	eval.txt	/*test_feedinput()*
 test_garbagecollect_now()	eval.txt	/*test_garbagecollect_now()*
 test_ignore_error()	eval.txt	/*test_ignore_error()*
 test_null_channel()	eval.txt	/*test_null_channel()*
@@ -9081,7 +9113,11 @@
 v:t_none	eval.txt	/*v:t_none*
 v:t_number	eval.txt	/*v:t_number*
 v:t_string	eval.txt	/*v:t_string*
+v:termblinkresp	eval.txt	/*v:termblinkresp*
 v:termresponse	eval.txt	/*v:termresponse*
+v:termrgbresp	eval.txt	/*v:termrgbresp*
+v:termstyleresp	eval.txt	/*v:termstyleresp*
+v:termu7resp	eval.txt	/*v:termu7resp*
 v:testing	eval.txt	/*v:testing*
 v:this_session	eval.txt	/*v:this_session*
 v:throwpoint	eval.txt	/*v:throwpoint*
@@ -9401,6 +9437,7 @@
 window-size	term.txt	/*window-size*
 window-size-functions	usr_41.txt	/*window-size-functions*
 window-tag	windows.txt	/*window-tag*
+window-toolbar	gui.txt	/*window-toolbar*
 window-variable	eval.txt	/*window-variable*
 windowid	windows.txt	/*windowid*
 windowid-variable	eval.txt	/*windowid-variable*
diff --git a/runtime/doc/term.txt b/runtime/doc/term.txt
index df11525..0fc6939 100644
--- a/runtime/doc/term.txt
+++ b/runtime/doc/term.txt
@@ -1,4 +1,4 @@
-*term.txt*      For Vim version 8.0.  Last change: 2017 Aug 26
+*term.txt*      For Vim version 8.0.  Last change: 2017 Aug 28
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -295,8 +295,6 @@
 	t_ts	set window title start (to status line)		*t_ts* *'t_ts'*
 	t_ue	underline end					*t_ue* *'t_ue'*
 	t_us	underline mode					*t_us* *'t_us'*
-	t_Ce	undercurl end					*t_Ce* *'t_Ce'*
-	t_Cs	undercurl mode					*t_Cs* *'t_Cs'*
 	t_ut	clearing uses the current background color	*t_ut* *'t_ut'*
 	t_vb	visual bell					*t_vb* *'t_vb'*
 	t_ve	cursor visible					*t_ve* *'t_ve'*
@@ -311,6 +309,10 @@
 	t_ZR	italics end					*t_ZR* *'t_ZR'*
 
 Added by Vim (there are no standard codes for these):
+	t_Ce	undercurl end					*t_Ce* *'t_Ce'*
+	t_Cs	undercurl mode					*t_Cs* *'t_Cs'*
+	t_Te	strikethrough end				*t_Te* *'t_Te'*
+	t_Ts	strikethrough mode				*t_Ts* *'t_Ts'*
 	t_IS	set icon text start				*t_IS* *'t_IS'*
 	t_IE	set icon text end				*t_IE* *'t_IE'*
 	t_WP	set window position (Y, X) in pixels		*t_WP* *'t_WP'*
@@ -337,6 +339,7 @@
 	t_SC	set cursor color start				*t_SC* *'t_SC'*
 	t_EC	set cursor color end				*t_EC* *'t_EC'*
 	t_SH	set cursor shape				*t_SH* *'t_SH'*
+	t_RC	request terminal cursor blinking		*t_RC* *'t_RC'*
 	t_RS	request terminal cursor style			*t_RS* *'t_RS'*
 
 Some codes have a start, middle and end part.  The start and end are defined
diff --git a/runtime/doc/todo.txt b/runtime/doc/todo.txt
index 1cedf63..8247fe6 100644
--- a/runtime/doc/todo.txt
+++ b/runtime/doc/todo.txt
@@ -1,4 +1,4 @@
-*todo.txt*      For Vim version 8.0.  Last change: 2017 Aug 27
+*todo.txt*      For Vim version 8.0.  Last change: 2017 Sep 19
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -35,25 +35,39 @@
 							*known-bugs*
 -------------------- Known bugs and current work -----------------------
 
+:term hangs in Athena and Motif. (Kazunobu Kuriyama, 2017 Sep 17)
+
+Always use FEAT_WINDOWS:
+May get rid of:
+    #define W_WINCOL(wp)	(wp->w_wincol)
+    #define W_WIDTH(wp)	(wp->w_width)
+    #define W_ENDCOL(wp)	(wp->w_wincol + wp->w_width)
+    #define W_VSEP_WIDTH(wp) (wp->w_vsep_width)
+    #define W_STATUS_HEIGHT(wp) (wp->w_status_height)
+    #define W_WINROW(wp)	(wp->w_winrow)
+# define ALIST(win) (win)->w_alist
+
 No maintainer for Vietnamese translations.
 No maintainer for Simplified Chinese translations.
 
-
 Terminal emulator window:
 - Lots of stuff to implement, see src/terminal.c
-- Add debugger interface.  Implementation for gdb by Xavier de Gaye.  Should
-  work like an IDE.  Try to keep it generic.  Now found here:
-    http://clewn.sf.net.
-  Can this replace Agide?  http://www.a-a-p.org/images/debugfull.png
+- Improve debugger interface:
+  Include all debug features of Agide.
+    - Implement the right-click popup menu for the terminal. Can use the
+      completion popup menu code and mouse dragging.
+      Use it for "set breakpoint", "remove breakpoint", etc.
     - make showballoon() work in a terminal.  Requires getting mouse-move
       events.
     - send 'balloonText' events for the cursor position (using CursorHold ?)
       in terminal mode.
-    - Implement the right-click popup menu for the terminal. Can use the
-      completion popup menu code and mouse dragging.
-- Look into the idevim plugin/script.
-- Related wishes for NetBeans commands:
-    - make it possible to have 'defineAnnoType' also handle terminal colors.
+  - get ideas from http://clewn.sf.net
+  - Look into the idevim plugin/script.
+- Improve testing:
+  Make a screenshot of a terminal, store in a file.
+  Display a stored screenshot, display diff with another one.
+  Make a test that puts Vim in a specific state, make a screenshot and compare
+  with the expected screenshot.  Set t_Co to 256.
 
 +channel:
 - Try out background make plugin: 
@@ -123,8 +137,6 @@
   Another one: echom matchstr(" sdfsfsf\n sfdsdfsdf",'[^\n]*')
   (2017 May 15, #1252)
 
-Patch to turn test80 into a new style test. (Yegappan Lakshmanan, 2017 Aug 20)
-
 Include a few color schemes, based on popularity:
 http://www.vim.org/scripts/script_search_results.php?keywords=&script_type=color+scheme&order_by=rating&direction=descending&search=search
 http://vimawesome.com/?q=tag:color-scheme
@@ -138,26 +150,45 @@
 - [Iceberg](https://github.com/cocopon/iceberg.vim) (my one)
 - [hybrid](https://github.com/w0ng/vim-hybrid)
 
+Patch to update Brazilian translations. (Eduardo Dobay, 2017 Sep 10, #2077)
+
 When starting with --clean packages under "start" are not loaded.  Make this
 work:  :packadd START {name}  similar to :runtime START name
 
+Patch to refactor qf_jump(). (Yegappan, 2017 Sep 17)
+
 When using :packadd files under "later" are not used, which is inconsistent
 with packages under "start". (xtal8, #1994)
 
 After 8.0.0962 pasting leaves the cursor in another position. (Ken Takata,
 2017 Aug 23, #2015) Also (zdm, 2017 Aug 23)
 
-Patch to add quickfix list identifier. (Yegappan, 2017 Aug 15)
+Patch to fix popup menu drawing when changing the window size. (Ozaki Kiichi,
+2017 Sep 17, #2110)
+
+Patch to fix cursor highlighting with match. (Ozaki Kiichi, 2017 Sep 17,
+#2111)
+
+Patch for not profiling the first line of a script. (Lemonboy, 2017 Sep 17,
+#2103)
 
 Mac Terminal.app: ctermbg=15 gives light grey instead of white.
 ctermbg=256 breaks clearing till end of the line.  Both work fine in xterm.
 
-Patch to avoid editing a file in the session file twice. (Christian Brabandt,
-2017 Aug 21)  #1958
+Using ":hi" causes a redraw, but a redraw may update the status line, which
+may trigger a ":hi" command.
+
+Last line not in profile if it is a continuation line. (LemonBoy, 2017 Sep 17,
+#2112)
+
+"vim -c startinsert!" doesn't append. (#2117)
 
 With foldmethod=syntax and nofoldenable comment highlighting isn't removed.
 (Marcin Szewczyk, 2017 Apr 26)
 
+Patch to make Mac features more clear and add "macdarwin". (Kazunobu Kuriyama,
+2017 Sep 5)
+
 Using 'wildignore' also applies to literally entered file name.  Also with
 :drop (remote commands).
 
@@ -168,35 +199,27 @@
 
 Error in emsg with buggy script. (Dominique, 2017 Apr 30)
 
+Patch to make ":set scroll&" work properly. (Ozaki Kiichi, 2017 Sep 17, #2104)
+
+mswin.vim should not map CTRL-F in the console (#2093)
+Patch from Christian, 2017 Sep 15.
+
+Default install on MS-Windows should source defaults.vim.
+Ask whether to use Windows or Vim key behavior?
+
+matchit hasn't been maintained for a long time.  #955.
+
 Test runtime files.
 Start with filetype detection: testdir/test_filetype.vim
 
-Patch to support on-the-spot and over-the-spot input method. (Ken Takata, 2017
-Feb 14).  Also see #1215.
-
-Patch to ignore case when 'diffopt' has "icase" for finding the difference
-inside a line. (Rick Howe, 2017 Aug 21, 22 with test)
-
-Patch to support strikethrough next to bold and italic. (Christian Brabandt,
-2013 Jul 30)  Update from Ken Takata, 2013 Oct 12.
-Update mentioned by Christian, 2016 Apr 25.
-Update from Ken Takata, 2017 Aug 23.
-
-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
-Update Aug 2017: #1953
-
-Patch to fix indenting for raw C++ string. (Christian Brabandt, 2017 Aug 24,
-#2019)
+Window not closed when deleting buffer. (Harm te Hennepe, 2017 Aug 27, #2029)
 
 Add options_default() / options_restore() to set several options to Vim
 defaults for a plugin. Comments from Zyx, 2017 May 10.
 Perhaps use a vimcontext / endvimcontext command block.
 
-Patch to fix bogus characters inserted in visual-block append. (Christian
-Brabandt, 2017 Aug 23)
+After using :noautocmd CursorMoved may still trigger. (Andy Stewart, 2017 Sep
+13, #2084).  Set old position after the command.
 
 Illegal memory access, requires ASAN to see. (Dominique Pelle, 2015 Jul 28)
 Still happens (2017 Jul 9)
@@ -207,17 +230,19 @@
 This example in the help does not work (Andy Wokula, 2017 Aug 20):
     augroup mine | au! BufRead | augroup END
 
+Memory leaks in test_channel? (or is it because of fork())
 Memory leak in test_arabic.
+Using uninitialized value in test_crypt.
 
-Include Haiku port? (Adrien Destugues, Siarzhuk Zharski, 2013 Oct 24)
+Patch to make gM move to middle of line. (Yasuhiro Matsumoto, Sep 8, #2070)
+
+Include Haiku port. (Adrien Destugues, Siarzhuk Zharski, 2013 Oct 24)
 It can replace the BeOS code, which is likely not used anymore.
-Now on github: #1856.  Is now up-to-date?
+Now on github: #1856.
 Got permission to include this under the Vim license.
 
 Refactored HTML indent file. (Michael Lee, #1821)
 
-Using uninitialized value in test_crypt.
-
 Test_writefile_fails_conversion failure on Solaris because if different iconv
 behavior.  Skip when "uname" returns "SunOS"? (Pavel Heimlich, #1872)
 
@@ -235,6 +260,9 @@
 
 The ++ options for the :edit command are also useful on the Vim command line.
 
+Overlong utf-8 sequence is displayed wrong. (Harm te Hennepe, 2017 Sep 14,
+#2089)  Patch with possible solution by Björn Linse.
+
 X11: Putting more than about 262040 characters of text on the clipboard and
 pasting it in another Vim doesn't work.  (Dominique Pelle, 2008 Aug 21-23)
 clip_x11_request_selection_cb() is called with zero value and length.
@@ -249,6 +277,9 @@
 attribute of the function.  For an unknown function assume "self" and make
 that optiona? (Bjorn Linse, 2017 Aug 5)
 
+Cindent: returning a structure has more indent for the second item.
+(Sam Pagenkopf, 2017 Sep 14, #2090)
+
 Completion mixes results from the current buffer with tags and other files.
 Happens when typing CTRL-N while still search for results.  E.g., type "b_" in
 terminal.c and then CTRL-N twice.
@@ -1519,6 +1550,9 @@
 Win32: tear-off menu does not work when menu language is German. (Markus
 Bossler, 2011 Mar 2)  Fixed by 7.3.095?
 
+Wish for NetBeans commands:
+    - make it possible to have 'defineAnnoType' also handle terminal colors.
+
 Version of netbeans.c for use with MacVim. (Kazuki Sakamoto, 2010 Nov 18)
 
 7.3.014 changed how backslash at end of line works, but still get a NUL when
@@ -3709,7 +3743,7 @@
     at a multi-byte character >= 0x100.
 -   Add the possibility to enter mappings which are used whenever normal text
     could be entered.  E.g., for "f" command.  But not in Normal mode.  Sort
-    of opposite of 'langmap'.  Use ":tmap" command?
+    of opposite of 'langmap'.  Use ":amap" command?
 -   When breaking a line, take properties of multi-byte characters into
     account.  The "linebreak" program from Bruno Haible can do it:
     ftp://ftp.ilog.fr/pub/Users/haible/gnu/linebreak-0.1.tar.gz
diff --git a/runtime/doc/usr_07.txt b/runtime/doc/usr_07.txt
index 956dc1d..50fe4e9 100644
--- a/runtime/doc/usr_07.txt
+++ b/runtime/doc/usr_07.txt
@@ -1,4 +1,4 @@
-*usr_07.txt*	For Vim version 8.0.  Last change: 2017 Aug 11
+*usr_07.txt*	For Vim version 8.0.  Last change: 2017 Sep 18
 
 		     VIM USER MANUAL - by Bram Moolenaar
 
@@ -215,14 +215,14 @@
 
 	`.
 
-Suppose you are editing the file "one.txt".  Somewhere halfway the file you
-use "x" to delete a character.  Then you go to the last line with "G" and
-write the file with ":w".  You edit several other files, and then use ":edit
-one.txt" to come back to "one.txt".  If you now use `" Vim jumps to the last
-line of the file.  Using `. takes you to the position where you deleted the
-character.  Even when you move around in the file `" and `. will take you to
-the remembered position.  At least until you make another change or leave the
-file.
+Suppose you are editing the file "one.txt".  Somewhere halfway through the
+file you use "x" to delete a character.  Then you go to the last line with "G"
+and write the file with ":w".  You edit several other files, and then use
+":edit one.txt" to come back to "one.txt".  If you now use `" Vim jumps to the
+last line of the file.  Using `. takes you to the position where you deleted
+the character.  Even when you move around in the file `" and `. will take you
+to the remembered position.  At least until you make another change or leave
+the file.
 
 
 FILE MARKS
@@ -233,8 +233,8 @@
 each file has its own set of marks, they are local to the file.
    So far we were using marks with a lowercase letter.  There are also marks
 with an uppercase letter.  These are global, they can be used from any file.
-For example suppose that we are editing the file "foo.txt".  Go to halfway the
-file ("50%") and place the F mark there (F for foo): >
+For example suppose that we are editing the file "foo.txt".  Go to halfway
+down the file ("50%") and place the F mark there (F for foo): >
 
 	50%mF
 
diff --git a/runtime/doc/various.txt b/runtime/doc/various.txt
index 24290fa..3790b25 100644
--- a/runtime/doc/various.txt
+++ b/runtime/doc/various.txt
@@ -1,4 +1,4 @@
-*various.txt*   For Vim version 8.0.  Last change: 2017 Feb 24
+*various.txt*   For Vim version 8.0.  Last change: 2017 Sep 16
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -322,7 +322,7 @@
 N  *+clientserver*	Unix and Win32: Remote invocation |clientserver|
    *+clipboard*		|clipboard| support
 N  *+cmdline_compl*	command line completion |cmdline-completion|
-N  *+cmdline_hist*	command line history |cmdline-history|
+S  *+cmdline_hist*	command line history |cmdline-history|
 N  *+cmdline_info*	|'showcmd'| and |'ruler'|
 N  *+comments*		|'comments'| support
 B  *+conceal*		"conceal" support, see |conceal| |:syn-conceal| etc.
@@ -361,7 +361,7 @@
    *+iconv/dyn*		Likewise |iconv-dynamic| |/dyn|
 N  *+insert_expand*	|insert_expand| Insert mode completion
 m  *+job*		starting and stopping jobs |job|
-N  *+jumplist*		|jumplist|
+S  *+jumplist*		|jumplist|
 B  *+keymap*		|'keymap'|
 N  *+lambda*		|lambda| and |closure|
 B  *+langmap*		|'langmap'|
@@ -438,14 +438,16 @@
 N  *+toolbar*		|gui-toolbar|
 N  *+user_commands*	User-defined commands. |user-commands|
 N  *+viminfo*		|'viminfo'|
-N  *+vertsplit*		Vertically split windows |:vsplit|
+   *+vertsplit*		Vertically split windows |:vsplit|; Always enabled
+			since 8.0.1118.
+			in sync with the |+windows| feature
 N  *+virtualedit*	|'virtualedit'|
 S  *+visual*		Visual mode |Visual-mode| Always enabled since 7.4.200.
 N  *+visualextra*	extra Visual mode commands |blockwise-operators|
 N  *+vreplace*		|gR| and |gr|
 N  *+wildignore*	|'wildignore'|
 N  *+wildmenu*		|'wildmenu'|
-S  *+windows*		more than one window
+   *+windows*		more than one window; Always enabled sinde 8.0.1118.
 m  *+writebackup*	|'writebackup'| is default on
 m  *+xim*		X input method |xim|
    *+xfontset*		X fontset support |xfontset|
diff --git a/runtime/doc/visual.txt b/runtime/doc/visual.txt
index 5931501..c799727 100644
--- a/runtime/doc/visual.txt
+++ b/runtime/doc/visual.txt
@@ -1,4 +1,4 @@
-*visual.txt*    For Vim version 8.0.  Last change: 2014 Mar 23
+*visual.txt*    For Vim version 8.0.  Last change: 2017 Sep 02
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
diff --git a/runtime/doc/windows.txt b/runtime/doc/windows.txt
index 8e8b0bb..be26841 100644
--- a/runtime/doc/windows.txt
+++ b/runtime/doc/windows.txt
@@ -1,4 +1,4 @@
-*windows.txt*   For Vim version 8.0.  Last change: 2017 Aug 21
+*windows.txt*   For Vim version 8.0.  Last change: 2017 Sep 08
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -1034,6 +1034,7 @@
 		   =	a readonly buffer
 		   R	a terminal buffer with a running job
 		   F	a terminal buffer with a finished job
+		   ?    a terminal buffer without a job: `:terminal NONE`
 		    +	a modified buffer
 		    x   a buffer with read errors