diff --git a/runtime/doc/filetype.txt b/runtime/doc/filetype.txt
index 4eb7462..19720e1 100644
--- a/runtime/doc/filetype.txt
+++ b/runtime/doc/filetype.txt
@@ -563,16 +563,15 @@
 
 MAN					*ft-man-plugin* *:Man* *man.vim*
 
-Displays a manual page in a nice way.  Also see the user manual
-|find-manpage|.
+This plugin displays a manual page in a nice way.  See |find-manpage| in the
+user manual for more information.
 
-To start using the ":Man" command before any manual page was loaded, source
-this script from your startup vimrc file: >
-
+To start using the |:Man| command before any manual page has been loaded,
+source this script from your startup |vimrc| file: >
 	runtime ftplugin/man.vim
 
 Options:
-'iskeyword'	the '.' character is added to be able to use CTRL-] on the
+'iskeyword'	The '.' character is added to support the use of CTRL-] on the
 		manual page name.
 
 Commands:
@@ -582,24 +581,25 @@
 
 Global mapping:
 <Leader>K	Displays the manual page for the word under the cursor.
-<Plug>ManPreGetPage  idem, allows for using a mapping: >
-			nmap <F1> <Plug>ManPreGetPage<CR>
+<Plug>ManPreGetPage
+		idem, allows for using a mapping: >
+			nmap <F1> <Plug>ManPreGetPage
 
 Local mappings:
 CTRL-]		Jump to the manual page for the word under the cursor.
 CTRL-T		Jump back to the previous manual page.
-q		Same as ":quit"
+q		Same as the |:quit| command.
 
 To use a vertical split instead of horizontal: >
 	let g:ft_man_open_mode = 'vert'
 To use a new tab: >
 	let g:ft_man_open_mode = 'tab'
 
-To enable folding use this: >
-  	let g:ft_man_folding_enable = 1
-If you do not like the default folding, use an autocommand to add your desired
+To enable |folding|, use this: >
+	let g:ft_man_folding_enable = 1
+If you do not like the default folding, use an |autocommand| to add your desired
 folding style instead.  For example: >
-        autocmd FileType man setlocal foldmethod=indent foldenable
+	autocmd FileType man setlocal foldmethod=indent foldenable
 
 If you would like :Man {number} {name} to behave like man {number} {name} by
 not running man {name} if no page is found, then use this: >
@@ -612,7 +612,7 @@
 
 MANPAGER				      *manpager.vim*
 
-The :Man command allows you to turn Vim into a manpager (that syntax highlights
+The |:Man| command allows you to turn Vim into a manpager (that syntax highlights
 manpages and follows linked manpages on hitting CTRL-]).
 
 For bash,zsh,ksh or dash, add to the config file (.bashrc,.zshrc, ...)
diff --git a/runtime/doc/syntax.txt b/runtime/doc/syntax.txt
index 6b38b8c..00d01bc 100644
--- a/runtime/doc/syntax.txt
+++ b/runtime/doc/syntax.txt
@@ -1,4 +1,4 @@
-*syntax.txt*	For Vim version 8.2.  Last change: 2020 Aug 15
+*syntax.txt*	For Vim version 8.2.  Last change: 2020 Nov 22
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -5305,6 +5305,12 @@
 Without the "default" in the C syntax file, the highlighting would be
 overruled when the syntax file is loaded.
 
+To have a link survive `:highlight clear`, which is useful if you have
+highlighting for a specific filetype and you want to keep it when selecting
+another color scheme, put a command like this in the
+"after/syntax/{filetype}.vim" file: >
+    highlight! default link cComment Question
+
 ==============================================================================
 15. Cleaning up						*:syn-clear* *E391*
 
diff --git a/runtime/doc/terminal.txt b/runtime/doc/terminal.txt
index 1d751c3..08815ef 100644
--- a/runtime/doc/terminal.txt
+++ b/runtime/doc/terminal.txt
@@ -1,4 +1,4 @@
-*terminal.txt*	For Vim version 8.2.  Last change: 2020 Nov 15
+*terminal.txt*	For Vim version 8.2.  Last change: 2020 Nov 25
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -123,12 +123,14 @@
 
 							*options-in-terminal*
 After opening the terminal window and setting 'buftype' to "terminal" the
-TerminalOpen autocommand event is triggered.  This makes it possible to set
-options specifically for the window and buffer.  Example: >
-   au TerminalOpen * if &buftype == 'terminal' | setlocal bufhidden=hide | endif
-The <abuf> is set to the terminal buffer, but if there is no window (hidden
-terminal) then setting options will happen in the wrong buffer, therefore the
-check for &buftype in the example.
+|TerminalWinOpen| autocommand event is triggered.  This makes it possible to set
+options specifically for the terminal window and buffer.  Example: >
+   au TerminalWinOpen * setlocal bufhidden=hide
+
+There is also the |TerminalOpen| event, but this may be triggered for a hidden
+terminal, and the current window and buffer may not be for the new terminal.
+You need to use <abuf>, which is set to the terminal buffer.  Example: >
+    au TerminalOpen * call setbufvar(+expand('<abuf>'), '&colorcolumn', 123)
 
 Mouse events (click and drag) are passed to the terminal.  Mouse move events
 are only passed when Vim itself is receiving them.  For a terminal that is
@@ -504,7 +506,7 @@
 			+	missing position in first file
 			-	missing position in second file
 			>	cursor position in first file, not in second
-			<	cursor position in secone file, not in first
+			<	cursor position in second file, not in first
 
 		Using the "s" key the top and bottom parts are swapped.  This
 		makes it easy to spot a difference.
diff --git a/runtime/doc/todo.txt b/runtime/doc/todo.txt
index b8088d5..454c0c2 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 Nov 19
+*todo.txt*      For Vim version 8.2.  Last change: 2020 Nov 28
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -38,8 +38,6 @@
 							*known-bugs*
 -------------------- Known bugs and current work -----------------------
 
-Coverity errors in October and November.
-
 Vim9 - Change
 - Drop support for #{} early December.  Close #7310
   -> Does it work to recognize lambda?
@@ -47,8 +45,10 @@
 	var int = 5
 	{x: int, y: int}
 Vim9 - Making everything work:
+- Compile: for [key, value] in items(map): Also support @r, $VAR, etc.
 - Make map() give an error if the resulting type of the first argument is
-  wrong.  Only works if the type is known?
+  wrong.  Only works if the type is known?  Is this slow (need to go over all
+  items)?
 - Run the same tests in :def and Vim9 script, like in Test_expr7_not()
 - need to check type when a declaration specifies a type: #6507
 	let nr: number = 'asdf'
@@ -57,8 +57,6 @@
   the script-local function, not a global one.
 - 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   #7309
-  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?
 - When defining an :autocmd or :command, how to specify using Vim9 syntax?
@@ -77,9 +75,6 @@
 - Expand `=expr` in :next, :argedit, :argadd, :argdelete, :drop
 - Expand `=expr` in :vimgrep, :vimgrepadd, :lvimgrep, :lvimgrepadd
 - Expand `=expr` in :mkspell
-- Test that a function defined inside a :def function is local to that
-  function, g: functions can be defined and script-local functions cannot be
-  defined.
 - Does this work already: can use func as reference:
 	def SomeFunc() ...
 	map(list, SomeFunc)
@@ -87,7 +82,6 @@
 - make 0 == 'string' fail on the script level, like inside :def.
 - Check that when using a user function name without prefix, it does not find
   a global function.  Prefixing g: is required.
-- Compile: for [key, value] in items(map)
 - Need the equivalent of get_lval() and set_var_lval() to implement assignment
   to nested list and dict members.
     - Assignment to dict doesn't work:
@@ -127,8 +121,9 @@
 - Test each level of expressions properly, with type checking
 - Test try/catch and throw better, also nested.
   Test return inside try/finally jumps to finally and then returns.
-- Test: Function declared inside a :def function is local, disappears at the
-  end of the function.  Unless g: is used, just like with variables.
+- Test that a function defined inside a :def function is local to that
+  function, g: functions can be defined and script-local functions cannot be
+  defined.
 - implement :type
 - import type declaration?
 - Future work: See |vim9-classes|
@@ -160,7 +155,6 @@
 	     current window.
     ? - switch between current window and all popup windows
     Esc in popup window goes back to previous current window
-- Cursor not updated before a redraw, making it jump. (#5943)
 - Add a termcap entry for changing the cursor when it goes under the popup and
   back.  like t_SI and t_EI  (t_SU and t_EU, where "U" means under?)
 - With terminal in popup, allow for popup_hide() to temporarily hide it.?
@@ -278,6 +272,9 @@
 
 Remove SPACE_IN_FILENAME ? It is only used for completion.
 
+Making breakat support multibyte characters (Yasuhiro Matsumoto, #6598)
+Scroll doesn't work correctly, why?
+
 Add 'termguiattr' option, use "gui=" attributes in the terminal?  Would work
 with 'termguicolors'. #1740
 
@@ -292,9 +289,6 @@
 This is useful e.g. when a popup was created that disables mappings, we need
 to return from vgetc() to make this happen.  #7011
 
-Making breakat support multibyte characters (Yasuhiro Matsumoto, #6598)
-Scroll doesn't work correctly, why?
-
 Expanding <mods> should put the tab number from cmdmod.tab before "tab".
 Any way to convert "$" back by using a special value? (#6901)
 
@@ -323,6 +317,9 @@
     BufIsRenamed  (after buffer ID gets another name)
 The buffer list and windows are locked, no changes possible
 
+Add a ModeChanged autocommand that has an argument indicating the old and new
+mode, as what's returned from mode().  Also used for switching Terminal mode.
+
 Matchparen doesn't remove highlight after undo. (#7054)
 Is OK when syntax HL is active.
 
@@ -766,6 +763,7 @@
 
 Add buffer argument to undotree(). (#4001)
 
+Memory leak in test_debugger
 Using uninitialized value in test_crypt (can't explain why).
 Memory leak in test_terminal_fail
 TODO: be able to run all parts of test_alot with valgrind separately
@@ -896,9 +894,6 @@
 or asyncmake:
   https://github.com/yegappan/asyncmake
 
-Add a ModeChanged autocommand that has an argument indicating the old and new
-mode, as what's returned from mode().  Also used for switching Terminal mode.
-
 Add an option with file patterns, to be used when unloading a buffer: If there
 is a match, remove entries for the buffer from marks, jumplist, etc.  To be
 used for git temp files.
diff --git a/runtime/doc/version8.txt b/runtime/doc/version8.txt
index 951a307..f7dc1fc 100644
--- a/runtime/doc/version8.txt
+++ b/runtime/doc/version8.txt
@@ -76,7 +76,7 @@
 Also asynchronous are timers.  They can fire once or repeatedly and invoke a
 function to do any work.  For example: >
 	let tempTimer = timer_start(4000, 'CheckTemp')
-This will call the CheckTemp() function four seconds (4000 milli seconds)
+This will call the CheckTemp() function four seconds (4000 milliseconds)
 later.  See |timer_start()|.
 
 
diff --git a/runtime/doc/vim9.txt b/runtime/doc/vim9.txt
index 9d42b68..085e445 100644
--- a/runtime/doc/vim9.txt
+++ b/runtime/doc/vim9.txt
@@ -1,4 +1,4 @@
-*vim9.txt*	For Vim version 8.2.  Last change: 2020 Nov 20
+*vim9.txt*	For Vim version 8.2.  Last change: 2020 Nov 25
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -388,6 +388,9 @@
 	var result = start
 	:+ print
 
+Note that the colon is not required for the |+cmd| argument: >
+	edit +6 fname
+
 It is also possible to split a function header over multiple lines, in between
 arguments: >
 	def MyFunc(
@@ -1122,7 +1125,7 @@
 `:var`.  This is used in many languages.  The semantics might be slightly
 different, but it's easily recognized as a declaration.
 
-Using `:const`  for constants is common, but the semantics vary.  Some
+Using `:const`  for constants is common, but the semantics varies.  Some
 languages only make the variable immutable, others also make the value
 immutable.  Since "final" is well known from Java for only making the variable
 immutable we decided to use that.  And then `:const` can be used for making
@@ -1182,7 +1185,7 @@
 considered false.  Thus using a string for a condition would often not give an
 error and be considered false.  That is confusing.
 
-In Vim9 type checking is more strict to avoid mistakes.  Where a condition is
+In Vim9 type checking is stricter to avoid mistakes.  Where a condition is
 used, e.g. with the `:if` command and the `||` operator, only boolean-like
 values are accepted:
 	true:  `true`, `v:true`, `1`, `0 < 9`
