Update runtime files and translations
diff --git a/runtime/compiler/scdoc.vim b/runtime/compiler/scdoc.vim
index 2f6edc6..c37969f 100644
--- a/runtime/compiler/scdoc.vim
+++ b/runtime/compiler/scdoc.vim
@@ -1,7 +1,8 @@
 " scdoc compiler for Vim
 " Compiler: scdoc
-" Maintainer: Greg Anders <greg@gpanders.com>
+" Maintainer: Gregory Anders <contact@gpanders.com>
 " Last Updated: 2019-10-24
+" Upstream: https://github.com/gpanders/vim-scdoc
 
 if exists('current_compiler')
     finish
diff --git a/runtime/doc/builtin.txt b/runtime/doc/builtin.txt
index 7d62583..538f099 100644
--- a/runtime/doc/builtin.txt
+++ b/runtime/doc/builtin.txt
@@ -1,4 +1,4 @@
-*builtin.txt*	For Vim version 8.2.  Last change: 2022 May 09
+*builtin.txt*	For Vim version 8.2.  Last change: 2022 May 10
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
diff --git a/runtime/doc/eval.txt b/runtime/doc/eval.txt
index ac61023..db70b71 100644
--- a/runtime/doc/eval.txt
+++ b/runtime/doc/eval.txt
@@ -1,4 +1,4 @@
-*eval.txt*	For Vim version 8.2.  Last change: 2022 May 06
+*eval.txt*	For Vim version 8.2.  Last change: 2022 May 11
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -1534,14 +1534,22 @@
 expression returning a value can be enclosed between curly braces.  The value
 is converted to a string.  All the text and results of the expressions
 are concatenated to make a new string.
-
+								*E1278*
 To include an opening brace '{' or closing brace '}' in the string content
-double it.
+double it.  For double quoted strings using a backslash also works.  A single
+closing brace '}' will result in an error.
 
 Examples: >
 	let your_name = input("What's your name? ")
+<	What's your name?  Peter ~
+>
+	echo
 	echo $"Hello, {your_name}!"
-	echo $"The square root of 9 is {sqrt(9)}"
+<	Hello, Peter! ~
+>
+	echo $"The square root of {{9}} is {sqrt(9)}"
+<	The square root of {9} is 3.0 ~
+
 
 option						*expr-option* *E112* *E113*
 ------
@@ -3538,8 +3546,8 @@
 :for {var} in {object}					*:for* *E690* *E732*
 :endfo[r]						*:endfo* *:endfor*
 			Repeat the commands between `:for` and `:endfor` for
-			each item in {object}.  {object} can be a |List| or
-			a |Blob|. *E1177*
+			each item in {object}.  {object} can be a |List|,
+			a |Blob| or a |String|. *E1177*
 
 			Variable {var} is set to the value of each item.
 			In |Vim9| script the loop variable must not have been
diff --git a/runtime/doc/starting.txt b/runtime/doc/starting.txt
index 3ec5a99..f5b33a8 100644
--- a/runtime/doc/starting.txt
+++ b/runtime/doc/starting.txt
@@ -1,4 +1,4 @@
-*starting.txt*  For Vim version 8.2.  Last change: 2022 May 09
+*starting.txt*  For Vim version 8.2.  Last change: 2022 May 10
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -737,6 +737,7 @@
 	:set guioptions-=a	non-Unix only: don't do auto-select
 
 Key mappings:
+	<CTRL-Q>	quit, using `:confirm` prompt if there are changes
 	<Down>		moves by screen lines rather than file lines
 	<Up>		idem
 	Q		does "gq", formatting, instead of Ex mode
@@ -747,7 +748,6 @@
 	<C-Insert>	idem
 	CTRL-V		Pastes from the clipboard (in any mode)
 	<S-Insert>	idem
-	CTRL-Q		do what CTRL-V used to do
 	CTRL-Z		undo
 	CTRL-Y		redo
 	<M-Space>	system menu
diff --git a/runtime/doc/syntax.txt b/runtime/doc/syntax.txt
index 9e9a0f1..fd78328 100644
--- a/runtime/doc/syntax.txt
+++ b/runtime/doc/syntax.txt
@@ -488,7 +488,7 @@
 	hi TOhtmlProgress guifg=#c0ffee ctermbg=7
 <
 							 *g:html_number_lines*
-Default: current 'number' setting.
+Default: Current 'number' setting.
 When 0, buffer text is displayed in the generated HTML without line numbering.
 When 1, a column of line numbers is added to the generated HTML with the same
 highlighting as the line number column in Vim (|hl-LineNr|).
@@ -577,7 +577,7 @@
    :let g:html_no_foldcolumn = 1
 <
 				*TOhtml-uncopyable-text* *g:html_prevent_copy*
-Default: empty string.
+Default: Empty string.
 This option prevents certain regions of the generated HTML from being copied,
 when you select all text in document rendered in a browser and copy it. Useful
 for allowing users to copy-paste only the source text even if a fold column or
@@ -603,7 +603,7 @@
 selecting an entire page and copying the selection, the <input> tags are not
 pasted with the page text. If |g:html_no_invalid| is 0, the <input> tags have
 invalid type; this works in more browsers, but the page will not validate.
-Note: this method does NOT work in recent versions of Chrome and equivalent
+Note: This method does NOT work in recent versions of Chrome and equivalent
 browsers; the <input> tags get pasted with the text.
 
 When "fallback" (default value), the same <input> elements are generated for
@@ -659,12 +659,12 @@
 
 	:let g:html_id_expr = '"_mystring"'
 <
-Note, when converting a diff view to HTML, the expression will only be
+Note: When converting a diff view to HTML, the expression will only be
 evaluated for the first window in the diff, and the result used for all the
 windows.
 
 					  *TOhtml-wrap-text* *g:html_pre_wrap*
-Default: current 'wrap' setting.
+Default: Current 'wrap' setting.
 When 0, if |g:html_no_pre| is 0 or unset, the text in the generated HTML does
 not wrap at the edge of the browser window.
 When 1, if |g:html_use_css| is 1, the CSS 2.0 "white-space:pre-wrap" value is
@@ -724,7 +724,7 @@
 encodings that may not be automatically detected by default (see options
 below). See http://www.iana.org/assignments/character-sets for the IANA names.
 
-Note, by default all Unicode encodings are converted to UTF-8 with no BOM in
+Note: By default all Unicode encodings are converted to UTF-8 with no BOM in
 the generated HTML, as recommended by W3C:
 
 	http://www.w3.org/International/questions/qa-choosing-encodings
@@ -1328,8 +1328,8 @@
 adding the following to your .vimrc. >
 	:let g:load_doxygen_syntax=1
 
-There are a couple of variables that have an effect on syntax highlighting, and
-are to do with non-standard highlighting options.
+There are a couple of variables that have an effect on syntax highlighting,
+and are to do with non-standard highlighting options.
 
 Variable			Default	Effect ~
 g:doxygen_enhanced_color
@@ -1471,8 +1471,8 @@
 
 ELIXIR						*elixir.vim* *ft-elixir-syntax*
 
-Elixir is a dynamic, functional language for building scalable and maintainable
-applications.
+Elixir is a dynamic, functional language for building scalable and
+maintainable applications.
 
 The following file extensions are auto-detected as Elixir file types:
 
@@ -1488,7 +1488,7 @@
 FLEXWIKI				*flexwiki.vim* *ft-flexwiki-syntax*
 
 FlexWiki is an ASP.NET-based wiki package available at http://www.flexwiki.com
-NOTE: this site currently doesn't work, on Wikipedia is mentioned that
+NOTE: This site currently doesn't work, on Wikipedia is mentioned that
 development stopped in 2009.
 
 Syntax highlighting is available for the most common elements of FlexWiki
@@ -1568,8 +1568,8 @@
 When you create a new fortran file, the syntax script assumes fixed source
 form.  If you always use free source form, then >
     :let fortran_free_source=1
-in your .vimrc prior to the :syntax on command.  If you always use fixed source
-form, then >
+in your .vimrc prior to the :syntax on command.  If you always use fixed
+source form, then >
     :let fortran_fixed_source=1
 in your .vimrc prior to the :syntax on command.
 
@@ -1840,8 +1840,8 @@
 
 JavaScript and Visual Basic embedded inside HTML documents are highlighted as
 'Special' with statements, comments, strings and so on colored as in standard
-programming languages.  Note that only JavaScript and Visual Basic are currently
-supported, no other scripting language has been added yet.
+programming languages.  Note that only JavaScript and Visual Basic are
+currently supported, no other scripting language has been added yet.
 
 Embedded and inlined cascading style sheets (CSS) are highlighted too.
 
@@ -1945,8 +1945,8 @@
 
 In Java 1.0.2 it was never possible to have braces inside parens, so this was
 flagged as an error.  Since Java 1.1 this is possible (with anonymous
-classes), and therefore is no longer marked as an error.  If you prefer the old
-way, put the following line into your vim startup file: >
+classes), and therefore is no longer marked as an error.  If you prefer the
+old way, put the following line into your vim startup file: >
 	:let java_mark_braces_in_parens_as_errors=1
 
 All identifiers in java.lang.* are always visible in all classes.  To
@@ -2064,10 +2064,10 @@
 
 The lisp syntax highlighting provides two options: >
 
-	g:lisp_instring : if it exists, then "(...)" strings are highlighted
+	g:lisp_instring : If it exists, then "(...)" strings are highlighted
 			  as if the contents of the string were lisp.
 			  Useful for AutoLisp.
-	g:lisp_rainbow  : if it exists and is nonzero, then differing levels
+	g:lisp_rainbow  : If it exists and is nonzero, then differing levels
 			  of parenthesization will receive different
 			  highlighting.
 <
@@ -2474,8 +2474,8 @@
 
 (In Vim 6.x it was the other way around: "perl_extended_vars" enabled it.)
 
-The coloring strings can be changed.  By default strings and qq friends will be
-highlighted like the first line.  If you set the variable
+The coloring strings can be changed.  By default strings and qq friends will
+be highlighted like the first line.  If you set the variable
 perl_string_as_statement, it will be highlighted as in the second line.
 
    "hello world!"; qq|hello world|;
@@ -2487,8 +2487,8 @@
 The syncing has 3 options.  The first two switch off some triggering of
 synchronization and should only be needed in case it fails to work properly.
 If while scrolling all of a sudden the whole screen changes color completely
-then you should try and switch off one of those.  Let me know if you can figure
-out the line that causes the mistake.
+then you should try and switch off one of those.  Let me know if you can
+figure out the line that causes the mistake.
 
 One triggers on "^\s*sub\s*" and the other on "^[$@%]" more or less. >
 
@@ -2525,7 +2525,7 @@
 
 PHP3 and PHP4		*php.vim* *php3.vim* *ft-php-syntax* *ft-php3-syntax*
 
-[note: previously this was called "php3", but since it now also supports php4
+[Note: Previously this was called "php3", but since it now also supports php4
 it has been renamed to "php"]
 
 There are the following options for the php syntax highlighting.
@@ -2595,15 +2595,15 @@
 
 This syntax file has the options:
 
-- ppwiz_highlight_defs : determines highlighting mode for PPWizard's
+- ppwiz_highlight_defs : Determines highlighting mode for PPWizard's
   definitions.  Possible values are
 
   ppwiz_highlight_defs = 1 : PPWizard #define statements retain the
-    colors of their contents (e.g. PPWizard macros and variables)
+    colors of their contents (e.g. PPWizard macros and variables).
 
-  ppwiz_highlight_defs = 2 : preprocessor #define and #evaluate
+  ppwiz_highlight_defs = 2 : Preprocessor #define and #evaluate
     statements are shown in a single color with the exception of line
-    continuation symbols
+    continuation symbols.
 
   The default setting for ppwiz_highlight_defs is 1.
 
@@ -2642,7 +2642,7 @@
 If this variable is not defined it defaults to 2 (level 2) since this is
 the most prevalent version currently.
 
-Note, not all PS interpreters will support all language features for a
+Note: Not all PS interpreters will support all language features for a
 particular language level.  In particular the %!PS-Adobe-3.0 at the start of
 PS files does NOT mean the PostScript present is level 3 PostScript!
 
@@ -2744,7 +2744,7 @@
 preceding last option and unsetting all other ones): >
 	:let python_highlight_all = 1
 
-Note: only existence of these options matter, not their value. You can replace
+Note: Only existence of these options matter, not their value. You can replace
       1 above with anything.
 
 QUAKE						*quake.vim* *ft-quake-syntax*
@@ -3184,16 +3184,16 @@
   the DECLARE section; if you defined own types, you have to include
   them in the syntax file.
 
-- oneline_comments : this value ranges from 1 to 3 and determines the
+- oneline_comments : This value ranges from 1 to 3 and determines the
   highlighting of # style comments.
 
-  oneline_comments = 1 : allow normal Speedup code after an even
+  oneline_comments = 1 : Allow normal Speedup code after an even
   number of #s.
 
-  oneline_comments = 2 : show code starting with the second # as
+  oneline_comments = 2 : Show code starting with the second # as
   error.  This is the default setting.
 
-  oneline_comments = 3 : show the whole line as error if it contains
+  oneline_comments = 3 : Show the whole line as error if it contains
   more than one #.
 
 Since especially OPERATION sections tend to become very large due to
@@ -3232,8 +3232,8 @@
 for how the filetype is detected.
 
 Tcsh does not allow \" in strings unless the "backslash_quote" shell variable
-is set.  If you want VIM to assume that no backslash quote constructs exist add
-this line to your .vimrc: >
+is set.  If you want VIM to assume that no backslash quote constructs exist
+add this line to your .vimrc: >
 
 	:let tcsh_backslash_quote = 0
 
@@ -3599,7 +3599,7 @@
 	:let g:xml_syntax_folding = 1
 	:set foldmethod=syntax
 
-Note: syntax folding might slow down syntax highlighting significantly,
+Note: Syntax folding might slow down syntax highlighting significantly,
 especially for large files.
 
 
@@ -5098,8 +5098,8 @@
 
 	The case of the color names is ignored.
 	Note that for 16 color ansi style terminals (including xterms), the
-	numbers in the NR-8 column is used.  Here '*' means 'add 8' so that Blue
-	is 12, DarkGray is 8 etc.
+	numbers in the NR-8 column is used.  Here '*' means 'add 8' so that
+	Blue is 12, DarkGray is 8 etc.
 
 	Note that for some color terminals these names may result in the wrong
 	colors!
@@ -5242,48 +5242,46 @@
 unreadable use Visual selection.
 
 							*hl-ColorColumn*
-ColorColumn	used for the columns set with 'colorcolumn'
+ColorColumn	Used for the columns set with 'colorcolumn'.
 							*hl-Conceal*
-Conceal		placeholder characters substituted for concealed
-		text (see 'conceallevel')
+Conceal		Placeholder characters substituted for concealed
+		text (see 'conceallevel').
 							*hl-Cursor*
-Cursor		the character under the cursor
-lCursor		the character under the cursor when |language-mapping|
-		is used (see 'guicursor')
+Cursor		Character under the cursor.
+lCursor		Character under the cursor when |language-mapping|
+		is used (see 'guicursor').
 							*hl-CursorIM*
-CursorIM	like Cursor, but used when in IME mode |CursorIM|
+CursorIM	Like Cursor, but used when in IME mode. |CursorIM|
 							*hl-CursorColumn*
-CursorColumn	the screen column that the cursor is in when 'cursorcolumn' is
-		set
+CursorColumn	Screen column that the cursor is in when 'cursorcolumn' is set.
 							*hl-CursorLine*
-CursorLine	the screen line that the cursor is in when 'cursorline' is
-		set
+CursorLine	Screen line that the cursor is in when 'cursorline' is set.
 							*hl-Directory*
-Directory	directory names (and other special names in listings)
+Directory	Directory names (and other special names in listings).
 							*hl-DiffAdd*
-DiffAdd		diff mode: Added line |diff.txt|
+DiffAdd		Diff mode: Added line. |diff.txt|
 							*hl-DiffChange*
-DiffChange	diff mode: Changed line |diff.txt|
+DiffChange	Diff mode: Changed line. |diff.txt|
 							*hl-DiffDelete*
-DiffDelete	diff mode: Deleted line |diff.txt|
+DiffDelete	Diff mode: Deleted line. |diff.txt|
 							*hl-DiffText*
-DiffText	diff mode: Changed text within a changed line |diff.txt|
+DiffText	Diff mode: Changed text within a changed line. |diff.txt|
 							*hl-EndOfBuffer*
-EndOfBuffer	filler lines (~) after the last line in the buffer.
+EndOfBuffer	Filler lines (~) after the last line in the buffer.
 		By default, this is highlighted like |hl-NonText|.
 							*hl-ErrorMsg*
-ErrorMsg	error messages on the command line
+ErrorMsg	Error messages on the command line.
 							*hl-VertSplit*
-VertSplit	the column separating vertically split windows
+VertSplit	Column separating vertically split windows.
 							*hl-Folded*
-Folded		line used for closed folds
+Folded		Line used for closed folds.
 							*hl-FoldColumn*
 FoldColumn	'foldcolumn'
 							*hl-SignColumn*
-SignColumn	column where |signs| are displayed
+SignColumn	Column where |signs| are displayed.
 							*hl-IncSearch*
 IncSearch	'incsearch' highlighting; also used for the text replaced with
-		":s///c"
+		":s///c".
 							*hl-LineNr*
 LineNr		Line number for ":number" and ":#" commands, and when 'number'
 		or 'relativenumber' option is set.
@@ -5301,11 +5299,11 @@
 							*hl-CursorLineFold*
 CursorLineFold	Like FoldColumn when 'cursorline' is set for the cursor line.
 							*hl-MatchParen*
-MatchParen	The character under the cursor or just before it, if it
+MatchParen	Character under the cursor or just before it, if it
 		is a paired bracket, and its match. |pi_paren.txt|
 
 							*hl-ModeMsg*
-ModeMsg		'showmode' message (e.g., "-- INSERT --")
+ModeMsg		'showmode' message (e.g., "-- INSERT --").
 							*hl-MoreMsg*
 MoreMsg		|more-prompt|
 							*hl-NonText*
@@ -5314,17 +5312,17 @@
 		(e.g., ">" displayed when a double-wide character doesn't
 		fit at the end of the line).
 							*hl-Normal*
-Normal		normal text
+Normal		Normal text.
 							*hl-Pmenu*
-Pmenu		Popup menu: normal item.
+Pmenu		Popup menu: Normal item.
 							*hl-PmenuSel*
-PmenuSel	Popup menu: selected item.
+PmenuSel	Popup menu: Selected item.
 							*hl-PmenuSbar*
-PmenuSbar	Popup menu: scrollbar.
+PmenuSbar	Popup menu: Scrollbar.
 							*hl-PmenuThumb*
 PmenuThumb	Popup menu: Thumb of the scrollbar.
 							*hl-Question*
-Question	|hit-enter| prompt and yes/no questions
+Question	|hit-enter| prompt and yes/no questions.
 							*hl-QuickFixLine*
 QuickFixLine	Current |quickfix| item in the quickfix window.
 							*hl-Search*
@@ -5332,12 +5330,12 @@
 		Also used for similar items that need to stand out.
 							*hl-CurSearch*
 CurSearch	Current match for the last search pattern (see 'hlsearch').
-		Note: this is correct after a search, but may get outdated if
-		changes are made or the screen is redrawn. 
+		Note: This is correct after a search, but may get outdated if
+		changes are made or the screen is redrawn.
 							*hl-SpecialKey*
 SpecialKey	Meta and special keys listed with ":map", also for text used
 		to show unprintable characters in the text, 'listchars'.
-		Generally: text that is displayed differently from what it
+		Generally: Text that is displayed differently from what it
 		really is.
 							*hl-SpellBad*
 SpellBad	Word that is not recognized by the spellchecker. |spell|
@@ -5354,35 +5352,35 @@
 		hardly ever used. |spell|
 		This will be combined with the highlighting used otherwise.
 							*hl-StatusLine*
-StatusLine	status line of current window
+StatusLine	Status line of current window.
 							*hl-StatusLineNC*
 StatusLineNC	status lines of not-current windows
-		Note: if this is equal to "StatusLine" Vim will use "^^^" in
+		Note: If this is equal to "StatusLine", Vim will use "^^^" in
 		the status line of the current window.
 							*hl-StatusLineTerm*
-StatusLineTerm	status line of current window, if it is a |terminal| window.
+StatusLineTerm	Status line of current window, if it is a |terminal| window.
 							*hl-StatusLineTermNC*
-StatusLineTermNC   status lines of not-current windows that is a |terminal|
+StatusLineTermNC   Status lines of not-current windows that is a |terminal|
 		window.
 							*hl-TabLine*
-TabLine		tab pages line, not active tab page label
+TabLine		Tab pages line, not active tab page label.
 							*hl-TabLineFill*
-TabLineFill	tab pages line, where there are no labels
+TabLineFill	Tab pages line, where there are no labels.
 							*hl-TabLineSel*
-TabLineSel	tab pages line, active tab page label
+TabLineSel	Tab pages line, active tab page label.
 							*hl-Terminal*
-Terminal	|terminal| window (see |terminal-size-color|)
+Terminal	|terminal| window (see |terminal-size-color|).
 							*hl-Title*
-Title		titles for output from ":set all", ":autocmd" etc.
+Title		Titles for output from ":set all", ":autocmd" etc.
 							*hl-Visual*
-Visual		Visual mode selection
+Visual		Visual mode selection.
 							*hl-VisualNOS*
 VisualNOS	Visual mode selection when vim is "Not Owning the Selection".
 		Only X11 Gui's |gui-x11| and |xterm-clipboard| supports this.
 							*hl-WarningMsg*
-WarningMsg	warning messages
+WarningMsg	Warning messages.
 							*hl-WildMenu*
-WildMenu	current match in 'wildmenu' completion
+WildMenu	Current match in 'wildmenu' completion.
 
 					*hl-User1* *hl-User1..9* *hl-User9*
 The 'statusline' syntax allows the use of 9 different highlights in the
@@ -5772,7 +5770,7 @@
 faster.  To see slowness switch on some features that usually interfere, such
 as 'relativenumber' and |folding|.
 
-Note: this is only available when compiled with the |+profile| feature.
+Note: This is only available when compiled with the |+profile| feature.
 You many need to build Vim with "huge" features.
 
 To find out what patterns are consuming most time, get an overview with this
diff --git a/runtime/doc/tags b/runtime/doc/tags
index 2525ce4..ad7f6bb 100644
--- a/runtime/doc/tags
+++ b/runtime/doc/tags
@@ -4264,6 +4264,7 @@
 E1271	vim9.txt	/*E1271*
 E1274	cmdline.txt	/*E1274*
 E1276	builtin.txt	/*E1276*
+E1278	eval.txt	/*E1278*
 E128	eval.txt	/*E128*
 E129	eval.txt	/*E129*
 E13	message.txt	/*E13*
diff --git a/runtime/doc/todo.txt b/runtime/doc/todo.txt
index f7a3d35..49fd1ee 100644
--- a/runtime/doc/todo.txt
+++ b/runtime/doc/todo.txt
@@ -1,4 +1,4 @@
-*todo.txt*      For Vim version 8.2.  Last change: 2022 May 09
+*todo.txt*      For Vim version 8.2.  Last change: 2022 May 12
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -38,9 +38,6 @@
 							*known-bugs*
 -------------------- Known bugs and current work -----------------------
 
-String interpolation: Handle backslash and quotes in the expression normally,
-do not require escaping.
-
 Once Vim9 is stable:
 - Use Vim9 for more runtime files.
 - Check code coverage, add more tests if needed.
@@ -48,6 +45,7 @@
 	vim9instr.c
 	vim9script.c
 	vim9type.c
+- Inlude new set of colors: #9795
 - Adjust intro message to say "help version9".
 
 Further Vim9 improvements, possibly after launch:
@@ -65,8 +63,6 @@
   evaluation.
   Use the location where the option was set for deciding whether it's to be
   evaluated in Vim9 script context.
-- Implement "import lazy" - like autoload but with a relative or absolute
-  path. #9595
 - implement :type
 - implement :enum
 - implement :class and :interface: See |vim9-classes|
@@ -127,14 +123,12 @@
   where property fits in.
   Or Should we let the textprop highlight overrule other (e.g. diff) highlight
   if the priority is above a certain value?  (#7392)
-- Popup attached to text property stays visible when text is deleted with
-  "cc". (#7737)  "C" works OK.  "dd" also files in a buffer with a single
+- "C" works OK.  "dd" fails to delete text property in a buffer with a single
   line.
 - Add text property that shifts text to make room for annotation (e.g.
   variable type).  Like the opposite of conceal.  Requires fixing the cursor
   positioning and mouse clicks as with conceal mode.
 - Auto-indenting may cause highlighting to shift. (#7719)
-- "cc" does not call inserted_bytes(). (Axel Forsman, #5763)
 - Combining text property with 'cursorline' does not always work (Billie
   Cleek, #5533)
 - See remarks at top of src/textprop.c
@@ -862,10 +856,6 @@
 ":au * * command" should not be allowed, only use * for event when listing or
 deleting autocmds, not when adding them.
 
-With 'foldmethod' "indent" and appending an empty line, what follows isn't
-included in the existing fold.  Deleting the empty line and undo fixes it.
-(Oleg Koshovetc, 2018 Jul 15, #3214)
-
 Column number is wrong when using 'linebreak' and 'wrap'. (Keith Smiley, 2018
 Jan 15, #2555)
 
diff --git a/runtime/doc/windows.txt b/runtime/doc/windows.txt
index eadd7d9..a5c1d14 100644
--- a/runtime/doc/windows.txt
+++ b/runtime/doc/windows.txt
@@ -1,4 +1,4 @@
-*windows.txt*   For Vim version 8.2.  Last change: 2022 Apr 06
+*windows.txt*   For Vim version 8.2.  Last change: 2022 May 11
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -1036,7 +1036,7 @@
 'autowrite' is off or the buffer can't be written.
 
 You can make a hidden buffer not hidden by starting to edit it with any
-command.  Or by deleting it with the ":bdelete" command.
+command, or by deleting it with the ":bdelete" command.
 
 The 'hidden' is global, it is used for all buffers.  The 'bufhidden' option
 can be used to make an exception for a specific buffer.  It can take these
diff --git a/runtime/evim.vim b/runtime/evim.vim
index 4a875ee..d3f349e 100644
--- a/runtime/evim.vim
+++ b/runtime/evim.vim
@@ -1,6 +1,6 @@
 " Vim script for Evim key bindings
 " Maintainer:	Bram Moolenaar <Bram@vim.org>
-" Last Change:	2019 Jan 27
+" Last Change:	2022 May 10
 
 " Don't use Vi-compatible mode.
 set nocompatible
@@ -8,6 +8,9 @@
 " Use the mswin.vim script for most mappings
 source <sfile>:p:h/mswin.vim
 
+" Allow for using CTRL-Q in Insert mode to quit Vim.
+inoremap <C-Q> <C-O>:confirm qall<CR>
+
 " Vim is in Insert mode by default
 set insertmode
 
diff --git a/runtime/ftplugin/scdoc.vim b/runtime/ftplugin/scdoc.vim
index 2e98e64..552c865 100644
--- a/runtime/ftplugin/scdoc.vim
+++ b/runtime/ftplugin/scdoc.vim
@@ -1,6 +1,7 @@
 " scdoc filetype plugin
-" Maintainer: Gregory Anders <greg@gpanders.com>
-" Last Updated: 2021-08-04
+" Maintainer: Gregory Anders <contact@gpanders.com>
+" Last Updated: 2022-05-09
+" Upstream: https://github.com/gpanders/vim-scdoc
 
 " Only do this when not done yet for this buffer
 if exists('b:did_ftplugin')
@@ -19,8 +20,3 @@
 setlocal textwidth=80
 
 let b:undo_ftplugin = 'setl com< cms< fo< et< sw< sts< tw<'
-
-if has('conceal')
-    setlocal conceallevel=2
-    let b:undo_ftplugin .= ' cole<'
-endif
diff --git a/runtime/syntax/debchangelog.vim b/runtime/syntax/debchangelog.vim
index 8d09af0..2efd919 100644
--- a/runtime/syntax/debchangelog.vim
+++ b/runtime/syntax/debchangelog.vim
@@ -3,7 +3,7 @@
 " Maintainer:  Debian Vim Maintainers
 " Former Maintainers: Gerfried Fuchs <alfie@ist.org>
 "                     Wichert Akkerman <wakkerma@debian.org>
-" Last Change: 2022 Mar 28
+" Last Change: 2022 May 01
 " URL: https://salsa.debian.org/vim-team/vim-debian/blob/master/syntax/debchangelog.vim
 
 " Standard syntax initialization
@@ -24,7 +24,7 @@
       \ 'jessie', 'stretch', 'buster', 'bullseye', 'bookworm',
       \ 'trixie', 'sid', 'rc-buggy',
       \
-      \ 'trusty', 'xenial', 'bionic', 'focal', 'impish', 'jammy',
+      \ 'trusty', 'xenial', 'bionic', 'focal', 'impish', 'jammy', 'kinetic',
       \ 'devel'
       \ ]
 let s:unsupported = [
diff --git a/runtime/syntax/debcontrol.vim b/runtime/syntax/debcontrol.vim
index 8b65ece..4c7fb5d 100644
--- a/runtime/syntax/debcontrol.vim
+++ b/runtime/syntax/debcontrol.vim
@@ -3,7 +3,7 @@
 " Maintainer:  Debian Vim Maintainers
 " Former Maintainers: Gerfried Fuchs <alfie@ist.org>
 "                     Wichert Akkerman <wakkerma@debian.org>
-" Last Change: 2021 Nov 26
+" Last Change: 2022 May 11
 " URL: https://salsa.debian.org/vim-team/vim-debian/blob/master/syntax/debcontrol.vim
 
 " Standard syntax initialization
@@ -17,7 +17,7 @@
 " Should match case except for the keys of each field
 syn case match
 
-syn iskeyword @,48-57,-,/
+syn iskeyword @,48-57,-
 
 " Everything that is not explicitly matched by the rules below
 syn match debcontrolElse "^.*$"
diff --git a/runtime/syntax/debsources.vim b/runtime/syntax/debsources.vim
index d79ce4b..e3ec6e6 100644
--- a/runtime/syntax/debsources.vim
+++ b/runtime/syntax/debsources.vim
@@ -2,7 +2,7 @@
 " Language:     Debian sources.list
 " Maintainer:   Debian Vim Maintainers
 " Former Maintainer: Matthijs Mohlmann <matthijs@cacholong.nl>
-" Last Change: 2022 Mar 28
+" Last Change: 2022 May 01
 " URL: https://salsa.debian.org/vim-team/vim-debian/blob/master/syntax/debsources.vim
 
 " Standard syntax initialization
@@ -26,7 +26,7 @@
       \ 'jessie', 'stretch', 'buster', 'bullseye', 'bookworm',
       \ 'trixie', 'sid', 'rc-buggy',
       \
-      \ 'trusty', 'xenial', 'bionic', 'focal', 'impish', 'jammy',
+      \ 'trusty', 'xenial', 'bionic', 'focal', 'impish', 'jammy', 'kinetic',
       \ 'devel'
       \ ]
 let s:unsupported = [
diff --git a/runtime/syntax/help.vim b/runtime/syntax/help.vim
index f5a50bf..14777f8 100644
--- a/runtime/syntax/help.vim
+++ b/runtime/syntax/help.vim
@@ -1,7 +1,7 @@
 " Vim syntax file
 " Language:	Vim help file
 " Maintainer:	Bram Moolenaar (Bram@vim.org)
-" Last Change:	2022 May 01
+" Last Change:	2022 May 12
 
 " Quit when a (custom) syntax file was already loaded
 if exists("b:current_syntax")
@@ -215,7 +215,7 @@
 hi def link helpTodo		Todo
 hi def link helpURL		String
 
-if expand('%:p') == $VIMRUNTIME .. '/doc/syntax.txt'
+if expand('%:p') =~ escape($VIMRUNTIME, '\') .. '[/\\]doc[/\\]syntax.txt'
   " highlight groups with their respective color
   import 'dist/vimhelp.vim'
   call vimhelp.HighlightGroups()
diff --git a/runtime/syntax/scdoc.vim b/runtime/syntax/scdoc.vim
index 25c9c54..0180f35 100644
--- a/runtime/syntax/scdoc.vim
+++ b/runtime/syntax/scdoc.vim
@@ -1,6 +1,7 @@
 " Syntax file for scdoc files
-" Maintainer: Gregory Anders <greg@gpanders.com>
-" Last Updated: 2021-08-04
+" Maintainer: Gregory Anders <contact@gpanders.com>
+" Last Updated: 2022-05-09
+" Upstream: https://github.com/gpanders/vim-scdoc
 
 if exists('b:current_syntax')
     finish
@@ -20,33 +21,43 @@
 
 syntax match scdocLineBreak "++$"
 
-syntax match scdocOrderedListMarker "^\s*\.\%(\s\+\S\)\@="
-syntax match scdocListMarker "^\s*-\%(\s\+\S\)\@="
+syntax region scdocOrderedListItem matchgroup=scdocOrderedListMarker start="^\z(\s*\)\." skip="^\z1  .*$" end="^" contains=scdocBold,scdocUnderline
+syntax region scdocListItem matchgroup=scdocListMarker start="^\z(\s*\)-" skip="^\z1  .*$" end="^" contains=scdocBold,scdocUnderline
 
-syntax match scdocTableStartMarker "^[\[|\]][\[\-\]]"
-syntax match scdocTableMarker "^[|:][\[\-\] ]"
+" Tables cannot start with a column
+syntax match scdocTableError "^:"
+
+syntax region scdocTable matchgroup=scdocTableEntry start="^[\[|\]][\[\-\]<=>]" end="^$" contains=scdocTableEntry,scdocTableError,scdocTableContinuation,scdocBold,scdocUnderline,scdocPre
+syntax match scdocTableError "^.*$" contained
+syntax match scdocTableContinuation "^   \+\S\+" contained
+syntax match scdocTableEntry "^[|:][\[\-\]<=> ]" contained
+syntax match scdocTableError "^[|:][\[\-\]<=> ]\S.*$" contained
 
 syntax region scdocBold concealends matchgroup=scdocBoldDelimiter start="\\\@<!\*" end="\\\@<!\*"
 syntax region scdocUnderline concealends matchgroup=scdocUnderlineDelimiter start="\<\\\@<!_" end="\\\@<!_\>"
 syntax region scdocPre matchgroup=scdocPreDelimiter start="^\t*```" end="^\t*```"
 
-hi link scdocFirstLineValid     Comment
-hi link scdocComment            Comment
-hi link scdocHeader             Title
-hi link scdocOrderedListMarker  Statement
-hi link scdocListMarker         scdocOrderedListMarker
-hi link scdocLineBreak          Special
-hi link scdocTableMarker        Statement
-hi link scdocTableStartMarker   scdocTableMarker
+syntax sync minlines=50
 
-hi link scdocFirstLineError     Error
-hi link scdocCommentError       Error
-hi link scdocHeaderError        Error
-hi link scdocIndentError        Error
+hi default link scdocFirstLineValid     Comment
+hi default link scdocComment            Comment
+hi default link scdocHeader             Title
+hi default link scdocOrderedListMarker  Statement
+hi default link scdocListMarker         scdocOrderedListMarker
+hi default link scdocLineBreak          Special
+hi default link scdocTableSpecifier     Statement
+hi default link scdocTableEntry         Statement
 
-hi link scdocPreDelimiter       Delimiter
+hi default link scdocFirstLineError        Error
+hi default link scdocCommentError          Error
+hi default link scdocHeaderError           Error
+hi default link scdocIndentError           Error
+hi default link scdocTableError            Error
+hi default link scdocTableError Error
 
-hi scdocBold term=bold cterm=bold gui=bold
-hi scdocUnderline term=underline cterm=underline gui=underline
-hi link scdocBoldDelimiter scdocBold
-hi link scdocUnderlineDelimiter scdocUnderline
+hi default link scdocPreDelimiter       Delimiter
+
+hi default scdocBold term=bold cterm=bold gui=bold
+hi default scdocUnderline term=underline cterm=underline gui=underline
+hi default link scdocBoldDelimiter scdocBold
+hi default link scdocUnderlineDelimiter scdocUnderline