Update runtime files.
diff --git a/runtime/doc/autocmd.txt b/runtime/doc/autocmd.txt
index d56f211..9355d1f 100644
--- a/runtime/doc/autocmd.txt
+++ b/runtime/doc/autocmd.txt
@@ -1,4 +1,4 @@
-*autocmd.txt*   For Vim version 8.2.  Last change: 2020 Aug 02
+*autocmd.txt*   For Vim version 8.2.  Last change: 2020 Sep 25
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -631,7 +631,7 @@
 
 							*CursorHold*
 CursorHold			When the user doesn't press a key for the time
-				specified with 'updatetime'.  Not re-triggered
+				specified with 'updatetime'.  Not triggered
 				until the user has pressed a key (i.e. doesn't
 				fire every 'updatetime' ms if you leave Vim to
 				make some coffee. :)  See |CursorHold-example|
diff --git a/runtime/doc/eval.txt b/runtime/doc/eval.txt
index 50e5995..58c390e 100644
--- a/runtime/doc/eval.txt
+++ b/runtime/doc/eval.txt
@@ -1,4 +1,4 @@
-*eval.txt*	For Vim version 8.2.  Last change: 2020 Sep 22
+*eval.txt*	For Vim version 8.2.  Last change: 2020 Sep 25
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -877,7 +877,7 @@
 All expressions within one level are parsed from left to right.
 
 
-expr1							*expr1* *E109*
+expr1							*expr1* *trinary* *E109*
 -----
 
 expr2 ? expr1 : expr1
diff --git a/runtime/doc/filetype.txt b/runtime/doc/filetype.txt
index 539b96e..4eb7462 100644
--- a/runtime/doc/filetype.txt
+++ b/runtime/doc/filetype.txt
@@ -1,4 +1,4 @@
-*filetype.txt*  For Vim version 8.2.  Last change: 2019 Jul 16
+*filetype.txt*  For Vim version 8.2.  Last change: 2020 Sep 28
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -397,6 +397,13 @@
 3.  Docs for the default filetype plugins.		*ftplugin-docs*
 
 
+AWK							*ft-awk-plugin*
+
+Support for features specific to GNU Awk, like @include, can be enabled by
+setting: >
+	let g:awk_is_gawk = 1
+
+
 CHANGELOG						*ft-changelog-plugin*
 
 Allows for easy entrance of Changelog entries in Changelog files.  There are
diff --git a/runtime/doc/gui.txt b/runtime/doc/gui.txt
index 985fdea..ac8febe 100644
--- a/runtime/doc/gui.txt
+++ b/runtime/doc/gui.txt
@@ -1,4 +1,4 @@
-*gui.txt*       For Vim version 8.2.  Last change: 2020 Mar 16
+*gui.txt*       For Vim version 8.2.  Last change: 2020 Sep 28
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -547,15 +547,6 @@
 5.2 Creating New Menus					*creating-menus*
 
 				*:me*  *:menu*   *:noreme*  *:noremenu*
-				*:am*  *:amenu*  *:an*      *:anoremenu*
-				*:nme* *:nmenu*  *:nnoreme* *:nnoremenu*
-				*:ome* *:omenu*  *:onoreme* *:onoremenu*
-				*:vme* *:vmenu*  *:vnoreme* *:vnoremenu*
-				*:xme* *:xmenu*  *:xnoreme* *:xnoremenu*
-				*:sme* *:smenu*  *:snoreme* *:snoremenu*
-				*:ime* *:imenu*  *:inoreme* *:inoremenu*
-				*:cme* *:cmenu*  *:cnoreme* *:cnoremenu*
-				*:tlm* *:tlmenu* *:tln*     *:tlnoremenu*
 				*E330* *E327* *E331* *E336* *E333*
 				*E328* *E329* *E337* *E792*
 To create a new menu item, use the ":menu" commands.  They are mostly like
@@ -596,6 +587,7 @@
 this menu can be used.  The second part is shown as "Open     :e".  The ":e"
 is right aligned, and the "O" is underlined, to indicate it is the shortcut.
 
+					*:am*  *:amenu*  *:an*      *:anoremenu*
 The ":amenu" command can be used to define menu entries for all modes at once,
 except for Terminal mode.  To make the command work correctly, a character is
 automatically inserted for some modes:
@@ -634,6 +626,30 @@
 Note that <Esc> in Cmdline mode executes the command, like in a mapping.  This
 is Vi compatible.  Use CTRL-C to quit Cmdline mode.
 
+		*:nme* *:nmenu*  *:nnoreme* *:nnoremenu* *:nunme* *:nunmenu*
+Menu commands starting with "n" work in Normal mode. |mapmode-n|
+
+		*:ome* *:omenu*  *:onoreme* *:onoremenu* *:ounme* *:ounmenu*
+Menu commands starting with "o" work in Operator-pending mode. |mapmode-o|
+
+		*:vme* *:vmenu*  *:vnoreme* *:vnoremenu* *:vunme* *:vunmenu*
+Menu commands starting with "v" work in Visual mode. |mapmode-v|
+
+		*:xme* *:xmenu*  *:xnoreme* *:xnoremenu* *:xunme* *:xunmenu*
+Menu commands starting with "x" work in Visual and Select mode. |mapmode-x|
+
+		*:sme* *:smenu*  *:snoreme* *:snoremenu* *:sunme* *:sunmenu*
+Menu commands starting with "s" work in Select mode. |mapmode-s|
+
+		*:ime* *:imenu*  *:inoreme* *:inoremenu* *:iunme* *:iunmenu*
+Menu commands starting with "i" work in Insert mode. |mapmode-i|
+
+		*:cme* *:cmenu*  *:cnoreme* *:cnoremenu* *:cunme* *:cunmenu*
+Menu commands starting with "c" work in Cmdline mode. |mapmode-c|
+
+		*:tlm* *:tlmenu* *:tln*     *:tlnoremenu* *:tlu*   *:tlunmenu*
+Menu commands starting with "tl" work in Terminal mode. |mapmode-t|
+
 						*:menu-<silent>* *:menu-silent*
 To define a menu which will not be echoed on the command line, add
 "<silent>" as the first argument.  Example: >
@@ -897,14 +913,6 @@
 
 						*:unme*  *:unmenu*
 						*:aun*   *:aunmenu*
-						*:nunme* *:nunmenu*
-						*:ounme* *:ounmenu*
-						*:vunme* *:vunmenu*
-						*:xunme* *:xunmenu*
-						*:sunme* *:sunmenu*
-						*:iunme* *:iunmenu*
-						*:cunme* *:cunmenu*
-						*:tlu*   *:tlunmenu*
 To delete a menu item or a whole submenu, use the unmenu commands, which are
 analogous to the unmap commands.  Eg: >
     :unmenu! Edit.Paste
diff --git a/runtime/doc/popup.txt b/runtime/doc/popup.txt
index 856132d..118bc9b 100644
--- a/runtime/doc/popup.txt
+++ b/runtime/doc/popup.txt
@@ -1,4 +1,4 @@
-*popup.txt*  For Vim version 8.2.  Last change: 2020 Sep 08
+*popup.txt*  For Vim version 8.2.  Last change: 2020 Sep 27
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -711,7 +711,7 @@
 			By default a double line is used all around when
 			'encoding' is "utf-8" and 'ambiwidth' is "single",
 			otherwise ASCII characters are used.
-	scrollbar	non-zero: show a scrollbar when the text doesn't fit.
+	scrollbar	1 or true: show a scrollbar when the text doesn't fit.
 			zero: do not show a scrollbar.  Default is non-zero.
 			Also see |popup-scrollbar|.
 	scrollbarhighlight  Highlight group name for the scrollbar. The
diff --git a/runtime/doc/starting.txt b/runtime/doc/starting.txt
index f437c0e..9014a42 100644
--- a/runtime/doc/starting.txt
+++ b/runtime/doc/starting.txt
@@ -1,4 +1,4 @@
-*starting.txt*  For Vim version 8.2.  Last change: 2020 Feb 04
+*starting.txt*  For Vim version 8.2.  Last change: 2020 Sep 23
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -513,6 +513,8 @@
 		  'nocompatible': use Vim defaults
 		- no |gvimrc| script is loaded
 		- no viminfo file is read or written
+		Note that a following "-u" argument overrules the effect of
+		"-u DEFAULTS".
 
 							*-x*
 -x		Use encryption to read/write files.  Will prompt for a key,
diff --git a/runtime/doc/tags b/runtime/doc/tags
index b9d7e03..49baae6 100644
--- a/runtime/doc/tags
+++ b/runtime/doc/tags
@@ -6461,6 +6461,7 @@
 ft-asmh8300-syntax	syntax.txt	/*ft-asmh8300-syntax*
 ft-aspperl-syntax	syntax.txt	/*ft-aspperl-syntax*
 ft-aspvbs-syntax	syntax.txt	/*ft-aspvbs-syntax*
+ft-awk-plugin	filetype.txt	/*ft-awk-plugin*
 ft-bash-syntax	syntax.txt	/*ft-bash-syntax*
 ft-basic-syntax	syntax.txt	/*ft-basic-syntax*
 ft-c-omni	insert.txt	/*ft-c-omni*
@@ -7756,6 +7757,7 @@
 matchdelete()	eval.txt	/*matchdelete()*
 matchend()	eval.txt	/*matchend()*
 matchfuzzy()	eval.txt	/*matchfuzzy()*
+matchfuzzypos()	eval.txt	/*matchfuzzypos()*
 matchit-install	usr_05.txt	/*matchit-install*
 matchlist()	eval.txt	/*matchlist()*
 matchparen	pi_paren.txt	/*matchparen*
@@ -9649,6 +9651,7 @@
 toupper()	eval.txt	/*toupper()*
 tr()	eval.txt	/*tr()*
 trim()	eval.txt	/*trim()*
+trinary	eval.txt	/*trinary*
 trojan-horse	starting.txt	/*trojan-horse*
 true	vim9.txt	/*true*
 true-variable	eval.txt	/*true-variable*
@@ -10040,6 +10043,7 @@
 vim9-declarations	usr_46.txt	/*vim9-declarations*
 vim9-differences	vim9.txt	/*vim9-differences*
 vim9-export	vim9.txt	/*vim9-export*
+vim9-final	vim9.txt	/*vim9-final*
 vim9-gotchas	vim9.txt	/*vim9-gotchas*
 vim9-import	vim9.txt	/*vim9-import*
 vim9-rationale	vim9.txt	/*vim9-rationale*
diff --git a/runtime/doc/todo.txt b/runtime/doc/todo.txt
index 03c9fce..d47ecca 100644
--- a/runtime/doc/todo.txt
+++ b/runtime/doc/todo.txt
@@ -1,4 +1,4 @@
-*todo.txt*      For Vim version 8.2.  Last change: 2020 Sep 19
+*todo.txt*      For Vim version 8.2.  Last change: 2020 Sep 28
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -38,14 +38,19 @@
 							*known-bugs*
 -------------------- Known bugs and current work -----------------------
 
-Why does Test_invalid_sid() not work in the GUI?
+Popup windows: don't send any keys from ":normal" to popup filter?
+  Can drop ex_normal_busy_done then.
 
-Add matchfuzzy() and matchfuzzypos() Yegappan, #6947
-    should be ready now
+Move Test_let_* from test_vim9_script to test_vim9_assign
 
+Modifiers in GTK: issue #6457.  CTRL-6 should work, like CTRL-@ and CTRL-_.
+
+3 October: remove using :let in Vim9 script.
+
+Go back to not using string/list/dict as falsy/thruthy boolean?
+    or only make "||" and "&&" result in a boolean?
 Making everything work:
-- Fix memory leak in test_vim9_func (through compile_nested_function and
-  get_lambda_tv())
+- Fix memory leaks in test_vim9_assign, remove "if 0"
 - Fix memory leaks in test_vim9_script
 - At the Vim9 script level, keep script variables local to the block they are
   declared in, like in Javascript (using :let).
@@ -78,6 +83,7 @@
 - Make sure that where a callback is expected a function can be used (without
   quotes). E.g. sort() and map().  Also at the script level.
 - assignment to more complex lval: list[1][2][3] = 8
+  Also "list[0] += value".  test in Test_assign_dict_unknown_type().
 - ":put" with ISN_PUT does not handle range correctly, e.g. ":$-2put".
   Add command to parse range at runtime?
 - Make map() give an error if the resulting type is wrong.
@@ -92,9 +98,10 @@
 - ISN_CHECKTYPE could use check_argtype()
 - give error for variable name:
       let p = function('NoSuchFunc')
-- Give runtime error if function argument is wrong.
-	def Increment(nr: number)
-	range(3)->Increment()
+- If a :def function is called with a function reference, compile it to get
+  the function type.
+	def Filter(x: string, Cond: func(string): bool)
+	Filter(x, { v -> v =~ '^b' })
 - Expand `=expr` in :next, :argedit, :argadd, :argdelete, :drop
 - Expand `=expr` in :vimgrep, :vimgrepadd, :lvimgrep, :lvimgrepadd
 - Expand `=expr` in :mkspell
@@ -122,6 +129,8 @@
 - When evaluating constants for script variables, some functions could work:
     has('asdf'), len('string')
 - Implement "as Name" in "import Item as Name from ..."
+- Implement using imported items at script level from "import * as X" in
+  eval_variable().  Should pass the ".xxx" that follows and return that.
 - Disallow unlet for local/script/imported vars
 - Make "++nr" work.
 - Make closures work:
@@ -332,6 +341,8 @@
 Patch for Template string: #4634
 Have another look at the implementation.
 
+Valgrind warns for uninitialized values in f_term_dumpwrite().
+
 Add the <=> (spaceship) operator and "cond ?< expr ?= expr ?> expr"
     replace this:
 	let left = GetLeftFunc()
@@ -341,6 +352,8 @@
 	let res = GetLeftFunc() <=> GetRightFunc() ?< lower ?= equal ?> upper
 Patch to make :q work with local arglist. (Christian Brabandt, #6286)
 
+Why does Test_invalid_sid() not work in the GUI?
+
 Lua: updating wrong buffer when using newly created, unloaded buffer.
 (#6539)
 
diff --git a/runtime/doc/vim9.txt b/runtime/doc/vim9.txt
index 4e5d2f3..86879dd 100644
--- a/runtime/doc/vim9.txt
+++ b/runtime/doc/vim9.txt
@@ -65,6 +65,35 @@
 
 THIS IS STILL UNDER DEVELOPMENT - ANYTHING CAN BREAK - ANYTHING CAN CHANGE
 
+Overview ~
+
+Brief summary of the differences you will most often encounter when using Vim9
+script and `:def` functions; details are below:
+- Comments start with #, not ": >
+  	echo "hello"   # comment
+- Using a backslash for line continuation is hardly ever needed: >
+  	echo "hello "
+	     .. yourName
+	     .. ", how are you?"
+- White space is required in many places.
+- Assign values without `:let`, declare variables with `:var`: >
+  	var count = 0
+	count += 3
+- Constants can be declared with `:final` and `:const`: >
+  	final matches = []		  # add matches
+	const names = ['Betty', 'Peter']  # cannot be changed
+- `:final` cannot be used as an abbreviation of `:finally`.
+- Variables and functions are script-local by default.
+- Functions are declared with argument types and return type: >
+	def CallMe(count: number, message: string): bool
+- Call functions without `:call`: >
+  	writefile(['done'], 'file.txt')
+- You cannot use `:xit`, `:t`, `:append`, `:change`, `:insert` or curly-braces
+  names.
+- A range before a command must be prefixed with a colon: >
+  	:%s/this/that
+
+
 Comments starting with # ~
 
 In legacy Vim script comments start with double quote.  In Vim9 script