changeset 24636:840665e74421

Update runtime files Commit: https://github.com/vim/vim/commit/3ec3217f0491e9ba8aa8ea02f7e454cd19a287ef Author: Bram Moolenaar <Bram@vim.org> Date: Sun May 16 12:39:47 2021 +0200 Update runtime files
author Bram Moolenaar <Bram@vim.org>
date Sun, 16 May 2021 12:45:04 +0200
parents d3bbbedec49b
children 4a4f64cdc798
files .github/CODEOWNERS runtime/doc/cmdline.txt runtime/doc/eval.txt runtime/doc/map.txt runtime/doc/options.txt runtime/doc/pattern.txt runtime/doc/quickfix.txt runtime/doc/repeat.txt runtime/doc/starting.txt runtime/doc/tags runtime/doc/todo.txt runtime/doc/version7.txt runtime/doc/version8.txt runtime/ftplugin/meson.vim runtime/ftplugin/systemverilog.vim runtime/indent/meson.vim runtime/pack/dist/opt/termdebug/plugin/termdebug.vim runtime/syntax/dts.vim runtime/syntax/meson.vim
diffstat 19 files changed, 243 insertions(+), 74 deletions(-) [+]
line wrap: on
line diff
--- a/.github/CODEOWNERS
+++ b/.github/CODEOWNERS
@@ -9,9 +9,6 @@
 # So if a pull request only touches javascript files, only these owners
 # will be requested to review.
 
-src/iscygpty.*				@k-takata
-src/libvterm/				@leonerd
-
 runtime/autoload/getscript.vim		@cecamp
 runtime/autoload/netrw.vim		@cecamp
 runtime/autoload/netrwFileHandlers.vim	@cecamp
@@ -43,7 +40,7 @@ runtime/compiler/jshint.vim		@dkearns
 runtime/compiler/jsonlint.vim		@dkearns
 runtime/compiler/lazbuild.vim		@dkearns
 runtime/compiler/php.vim		@dkearns
-runtime/compiler/powershell.vim	@heaths
+runtime/compiler/powershell.vim		@heaths
 runtime/compiler/rake.vim		@tpope @dkearns
 runtime/compiler/rhino.vim		@dkearns
 runtime/compiler/rspec.vim		@tpope @dkearns
@@ -69,7 +66,7 @@ runtime/doc/pi_netrw.txt		@cecamp
 runtime/doc/pi_tar.txt			@cecamp
 runtime/doc/pi_vimball.txt		@cecamp
 runtime/doc/pi_zip.txt			@cecamp
-runtime/doc/ps1.txt				@heaths
+runtime/doc/ps1.txt			@heaths
 runtime/ftplugin/awk.vim		@dkearns
 runtime/ftplugin/basic.vim		@dkearns
 runtime/ftplugin/bst.vim		@tpope
@@ -96,10 +93,12 @@ runtime/ftplugin/m3build.vim		@dkearns
 runtime/ftplugin/m3quake.vim		@dkearns
 runtime/ftplugin/markdown.vim		@tpope
 runtime/ftplugin/matlab.vim		@cecamp
+runtime/ftplugin/meson.vim		@Liambeguin
 runtime/ftplugin/modula3.vim		@dkearns
 runtime/ftplugin/nroff.vim		@a-vrma
 runtime/ftplugin/nsis.vim		@k-takata
 runtime/ftplugin/pascal.vim		@dkearns
+runtime/ftplugin/pbtxt.vim		@lakshayg
 runtime/ftplugin/pdf.vim		@tpope
 runtime/ftplugin/ps1.vim		@heaths
 runtime/ftplugin/ps1xml.vim		@heaths
@@ -107,6 +106,7 @@ runtime/ftplugin/ruby.vim		@tpope @dkear
 runtime/ftplugin/sass.vim		@tpope
 runtime/ftplugin/scss.vim		@tpope
 runtime/ftplugin/spec.vim		@ignatenkobrain
+runtime/ftplugin/systemverilog.vim	@Kocha
 runtime/ftplugin/tidy.vim		@dkearns
 runtime/ftplugin/tmux.vim		@ericpruitt
 runtime/ftplugin/typescript.vim		@dkearns
@@ -120,12 +120,14 @@ runtime/indent/eruby.vim		@tpope @dkearn
 runtime/indent/gitconfig.vim		@tpope
 runtime/indent/haml.vim			@tpope
 runtime/indent/liquid.vim		@tpope
+runtime/indent/meson.vim		@Liambeguin
 runtime/indent/nsis.vim			@k-takata
 runtime/indent/ps1.vim			@heaths
 runtime/indent/ruby.vim			@AndrewRadev @dkearns
 runtime/indent/sass.vim			@tpope
 runtime/indent/scss.vim			@tpope
 runtime/indent/sh.vim			@chrisbra
+runtime/indent/systemverilog.vim	@Kocha
 runtime/indent/teraterm.vim		@k-takata
 runtime/indent/xml.vim			@chrisbra
 runtime/indent/zsh.vim			@chrisbra
@@ -142,6 +144,7 @@ runtime/syntax/aidl.vim			@dpelle
 runtime/syntax/amiga.vim		@cecamp
 runtime/syntax/asm.vim			@dkearns
 runtime/syntax/asmh8300.vim		@dkearns
+runtime/syntax/asterisk.vim		@jaunis
 runtime/syntax/awk.vim			@dkearns
 runtime/syntax/basic.vim		@dkearns
 runtime/syntax/bst.vim			@tpope
@@ -154,8 +157,10 @@ runtime/syntax/cucumber.vim		@tpope
 runtime/syntax/datascript.vim		@dpelle
 runtime/syntax/dcl.vim			@cecamp
 runtime/syntax/desktop.vim		@e-kwsm
+runtime/syntax/dot.vim			@mmottl
 runtime/syntax/doxygen.vim		@frogonwheels
 runtime/syntax/dtd.vim			@chrisbra
+runtime/syntax/dts.vim			@zonque
 runtime/syntax/elmfilt.vim		@cecamp
 runtime/syntax/eruby.vim		@tpope @dkearns
 runtime/syntax/exports.vim		@cecamp
@@ -170,6 +175,7 @@ runtime/syntax/haml.vim			@tpope
 runtime/syntax/haskell.vim		@coot
 runtime/syntax/hgcommit.vim		@k-takata
 runtime/syntax/kconfig.vim		@chrisbra
+runtime/syntax/less.vim			@genoma
 runtime/syntax/lex.vim			@cecamp
 runtime/syntax/liquid.vim		@tpope
 runtime/syntax/lisp.vim			@cecamp
@@ -180,17 +186,20 @@ runtime/syntax/mailcap.vim		@dkearns
 runtime/syntax/make.vim			@rohieb
 runtime/syntax/maple.vim		@cecamp
 runtime/syntax/markdown.vim		@tpope
+runtime/syntax/meson.vim		@Liambeguin
 runtime/syntax/modula3.vim		@dkearns
 runtime/syntax/netrw.vim		@cecamp
 runtime/syntax/nroff.vim		@jmarshall
 runtime/syntax/nsis.vim			@k-takata
 runtime/syntax/pascal.vim		@dkearns
+runtime/syntax/pbtxt.vim		@lakshayg
 runtime/syntax/pdf.vim			@tpope
 runtime/syntax/php.vim			@TysonAndre
 runtime/syntax/privoxy.vim		@dkearns
 runtime/syntax/prolog.vim		@XVilka
 runtime/syntax/ps1.vim			@heaths
 runtime/syntax/ps1xml.vim		@heaths
+runtime/syntax/psl.vim			@danielkho
 runtime/syntax/rc.vim			@chrisbra
 runtime/syntax/rpcgen.vim		@cecamp
 runtime/syntax/ruby.vim			@dkearns
@@ -203,6 +212,7 @@ runtime/syntax/sqloracle.vim		@chrisbra
 runtime/syntax/sshconfig.vim		@Jakuje
 runtime/syntax/sshdconfig.vim		@Jakuje
 runtime/syntax/sudoers.vim		@e-kwsm
+runtime/syntax/systemverilog.vim	@Kocha
 runtime/syntax/tags.vim			@cecamp
 runtime/syntax/teraterm.vim		@k-takata
 runtime/syntax/tex.vim			@cecamp
@@ -221,6 +231,8 @@ runtime/tutor/tutor.eo			@dpelle
 runtime/tutor/tutor.eo.utf-8		@dpelle
 runtime/tutor/tutor.fr			@dpelle
 runtime/tutor/tutor.fr.utf-8		@dpelle
+src/iscygpty.*				@k-takata
+src/libvterm/				@leonerd
 src/po/de.po				@chrisbra
 src/po/eo.po				@dpelle
 src/po/fr.po				@dpelle
--- a/runtime/doc/cmdline.txt
+++ b/runtime/doc/cmdline.txt
@@ -1,4 +1,4 @@
-*cmdline.txt*   For Vim version 8.2.  Last change: 2021 Apr 05
+*cmdline.txt*   For Vim version 8.2.  Last change: 2021 May 08
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -798,18 +798,20 @@ three lines: >
 		3:d<CR>		is translated into: .,.+2d<CR>
 <
 
-Visual Mode and Range					*v_:*
-							*:star-visual-range*
+Visual Mode and Range					
+							*v_:*
 {Visual}:	Starts a command-line with the Visual selected lines as a
 		range.  The code `:'<,'>` is used for this range, which makes
 		it possible to select a similar line from the command-line
 		history for repeating a command on different Visually selected
 		lines.
+
+:*						*:star* *:star-visual-range*
 		When Visual mode was already ended, a short way to use the
 		Visual area for a range is `:*`.  This requires that "*" does
 		not appear in 'cpo', see |cpo-star|.  Otherwise you will have
 		to type `:'<,'>`
-
+		For when "*" is in 'cpo' see |:star-compatible|.
 
 ==============================================================================
 5. Ex command-line flags				*ex-flags*
--- a/runtime/doc/eval.txt
+++ b/runtime/doc/eval.txt
@@ -1,4 +1,4 @@
-*eval.txt*	For Vim version 8.2.  Last change: 2021 Apr 24
+*eval.txt*	For Vim version 8.2.  Last change: 2021 May 07
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -7591,6 +7591,9 @@ matchfuzzy({list}, {str} [, {dict}])			*
 		empty list is returned. If length of {str} is greater than
 		256, then returns an empty list.
 
+		Refer to |fuzzy-match| for more information about fuzzy
+		matching strings.
+
 		Example: >
 		   :echo matchfuzzy(["clay", "crow"], "cay")
 <		results in ["clay"]. >
@@ -9188,6 +9191,8 @@ searchpair({start}, {middle}, {end} [, {
 		and -1 returned.
 		{skip} can be a string, a lambda, a funcref or a partial.
 		Anything else makes the function fail.
+		In a `:def` function when the {skip} argument is a string
+		constant it is compiled into instructions.
 
 		For {stopline} and {timeout} see |search()|.
 
--- a/runtime/doc/map.txt
+++ b/runtime/doc/map.txt
@@ -1,4 +1,4 @@
-*map.txt*       For Vim version 8.2.  Last change: 2021 Apr 23
+*map.txt*       For Vim version 8.2.  Last change: 2021 May 16
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -389,6 +389,22 @@ Overview of which map command works in w
 :cmap  :cnoremap :cunmap    Command-line
 :tmap  :tnoremap :tunmap    Terminal-Job
 
+Same information in a table:
+							*map-table*
+         Mode  | Norm | Ins | Cmd | Vis | Sel | Opr | Term | Lang | ~
+Command        +------+-----+-----+-----+-----+-----+------+------+ ~
+[nore]map      | yes  |  -  |  -  | yes | yes | yes |  -   |  -   |
+n[nore]map     | yes  |  -  |  -  |  -  |  -  |  -  |  -   |  -   |
+[nore]map!     |  -   | yes | yes |  -  |  -  |  -  |  -   |  -   |
+i[nore]map     |  -   | yes |  -  |  -  |  -  |  -  |  -   |  -   |
+c[nore]map     |  -   |  -  | yes |  -  |  -  |  -  |  -   |  -   |
+v[nore]map     |  -   |  -  |  -  | yes | yes |  -  |  -   |  -   |
+x[nore]map     |  -   |  -  |  -  | yes |  -  |  -  |  -   |  -   |
+s[nore]map     |  -   |  -  |  -  |  -  | yes |  -  |  -   |  -   |
+o[nore]map     |  -   |  -  |  -  |  -  |  -  | yes |  -   |  -   |
+t[nore]map     |  -   |  -  |  -  |  -  |  -  |  -  | yes  |  -   |
+l[nore]map     |  -   | yes | yes |  -  |  -  |  -  |  -   | yes  |
+
 
     COMMANDS				      MODES ~
 				       Normal  Visual+Select  Operator-pending ~
--- a/runtime/doc/options.txt
+++ b/runtime/doc/options.txt
@@ -1,4 +1,4 @@
-*options.txt*	For Vim version 8.2.  Last change: 2021 Apr 28
+*options.txt*	For Vim version 8.2.  Last change: 2021 May 15
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
--- a/runtime/doc/pattern.txt
+++ b/runtime/doc/pattern.txt
@@ -1,4 +1,4 @@
-*pattern.txt*   For Vim version 8.2.  Last change: 2021 Feb 16
+*pattern.txt*   For Vim version 8.2.  Last change: 2021 May 02
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -19,6 +19,7 @@ 7. Ignoring case in a pattern	|/ignoreca
 8. Composing characters		|patterns-composing|
 9. Compare with Perl patterns	|perl-patterns|
 10. Highlighting matches	|match-highlight|
+11. Fuzzy matching		|fuzzy-match|
 
 ==============================================================================
 1. Search commands				*search-commands*
@@ -1431,5 +1432,38 @@ 10. Highlighting matches				*match-highl
 		are suggested to use ":match" for manual matching and
 		":2match" for another plugin.
 
+==============================================================================
+11. Fuzzy matching					*fuzzy-match*
+
+Fuzzy matching refers to matching strings using a non-exact search string.
+Fuzzy matching will match a string, if all the characters in the search string
+are present anywhere in the string in the same order. Case is ignored.  In a
+matched string, other characters can be present between two consecutive
+characters in the search string. If the search string has multiple words, then
+each word is matched separately. So the words in the search string can be
+present in any order in a string.
+
+Fuzzy matching assigns a score for each matched string based on the following
+criteria:
+    - The number of sequentially matching characters.
+    - The number of characters (distance) between two consecutive matching
+      characters.
+    - Matches at the beginning of a word
+    - Matches after a camel case character or a path separator or a hyphen.
+    - The number of unmatched characters in a string.
+The matching string with the highest score is returned first.
+
+For example, when you search for the "get pat" string using fuzzy matching, it
+will match the strings "GetPattern", "PatternGet", "getPattern", "patGetter",
+"getSomePattern", "MatchpatternGet" etc.
+
+The functions |matchfuzzy()| and |matchfuzzypos()| can be used to fuzzy search
+a string in a List of strings. The matchfuzzy() function returns a List of
+matching strings. The matchfuzzypos() functions returns the List of matches,
+the matching positions and the fuzzy match scores.
+
+The "f" flag of `:vimgrep` enables fuzzy matching.
+
+
 
  vim:tw=78:ts=8:noet:ft=help:norl:
--- a/runtime/doc/quickfix.txt
+++ b/runtime/doc/quickfix.txt
@@ -1,4 +1,4 @@
-*quickfix.txt*  For Vim version 8.2.  Last change: 2021 Apr 30
+*quickfix.txt*  For Vim version 8.2.  Last change: 2021 May 02
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -1037,8 +1037,8 @@ 5.1 using Vim's internal grep
 			     matching is used to find matching lines. In this
 			     case, {pattern} is treated as a literal string
 			     instead of a regular expression.  See
-			     |matchfuzzy()| for more info about fuzzy
-			     matching.
+			     |fuzzy-match| for more information about fuzzy
+			     matching strings.
 
 			|QuickFixCmdPre| and |QuickFixCmdPost| are triggered.
 			A file that is opened for matching may use a buffer
--- a/runtime/doc/repeat.txt
+++ b/runtime/doc/repeat.txt
@@ -1,4 +1,4 @@
-*repeat.txt*    For Vim version 8.2.  Last change: 2021 Feb 13
+*repeat.txt*    For Vim version 8.2.  Last change: 2021 May 08
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -59,6 +59,11 @@ 2. Multiple repeats					*multi-repeat*
 :[range]v[global]/{pattern}/[cmd]
 			Same as :g!.
 
+Example: >
+	:g/^Obsolete/d _
+Using the underscore after `:d` avoids clobbering registers or the clipboard.
+This also makes it faster.
+
 Instead of the '/' which surrounds the {pattern}, you can use any other
 single byte character, but not an alphabetic character, '\', '"' or '|'.
 This is useful if you want to include a '/' in the search pattern or
@@ -150,15 +155,12 @@ q			Stops recording.  (Implementation no
 							*@@* *E748*
 @@			Repeat the previous @{0-9a-z":*} [count] times.
 
-:[addr]*{0-9a-z".=+}						*:@* *:star*
+								*:@*
 :[addr]@{0-9a-z".=*+}	Execute the contents of register {0-9a-z".=*+} as an Ex
 			command.  First set cursor at line [addr] (default is
 			current line).  When the last line in the register does
 			not have a <CR> it will be added automatically when
 			the 'e' flag is present in 'cpoptions'.
-			Note that the ":*" command is only recognized when the
-			'*' flag is present in 'cpoptions'.  This is NOT the
-			default when 'nocompatible' is used.
 			For ":@=" the last used expression is used.  The
 			result of evaluating the expression is executed as an
 			Ex command.
@@ -171,6 +173,13 @@ q			Stops recording.  (Implementation no
 			Future: Will execute the register for each line in the
 			address range.
 
+:[addr]*{0-9a-z".=+}					*:star-compatible*
+			When '*' is present in 'cpoptions' |cpo-star|, use
+			":*" in the same way as ":@".  This is NOT the default
+			when 'nocompatible' is used.  When the '*' flag is not
+			present in 'cpoptions', ":*" is an alias for ":'<,'>",
+			select the Visual area |:star|.
+
 							*:@:*
 :[addr]@:		Repeat last command-line.  First set cursor at line
 			[addr] (default is current line).
--- a/runtime/doc/starting.txt
+++ b/runtime/doc/starting.txt
@@ -1,4 +1,4 @@
-*starting.txt*  For Vim version 8.2.  Last change: 2021 Feb 10
+*starting.txt*  For Vim version 8.2.  Last change: 2021 May 08
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -1592,7 +1592,7 @@ VIMINFO FILE NAME					*viminfo-file-name
   file name given is "NONE" (all uppercase), no viminfo file is ever read or
   written.  Also not for the commands below!
 - The 'viminfofile' option can be used like the "-i" argument.  In fact, the
-  value form the "-i" argument is stored in the 'viminfofile' option.
+  value from the "-i" argument is stored in the 'viminfofile' option.
 - For the commands below, another file name can be given, overriding the
   default and the name given with 'viminfo' or "-i" (unless it's NONE).
 
--- a/runtime/doc/tags
+++ b/runtime/doc/tags
@@ -3184,7 +3184,8 @@ 90.5	usr_90.txt	/*90.5*
 :st	starting.txt	/*:st*
 :sta	windows.txt	/*:sta*
 :stag	windows.txt	/*:stag*
-:star	repeat.txt	/*:star*
+:star	cmdline.txt	/*:star*
+:star-compatible	repeat.txt	/*:star-compatible*
 :star-visual-range	cmdline.txt	/*:star-visual-range*
 :start	insert.txt	/*:start*
 :startgreplace	insert.txt	/*:startgreplace*
@@ -6691,6 +6692,7 @@ function-range-example	eval.txt	/*functi
 function-search-undo	eval.txt	/*function-search-undo*
 function_key	intro.txt	/*function_key*
 functions	eval.txt	/*functions*
+fuzzy-match	pattern.txt	/*fuzzy-match*
 fvwm.vim	syntax.txt	/*fvwm.vim*
 fvwm2rc	syntax.txt	/*fvwm2rc*
 fvwmrc	syntax.txt	/*fvwmrc*
@@ -7790,6 +7792,7 @@ map-return	map.txt	/*map-return*
 map-self-destroy	tips.txt	/*map-self-destroy*
 map-space_in_lhs	map.txt	/*map-space_in_lhs*
 map-space_in_rhs	map.txt	/*map-space_in_rhs*
+map-table	map.txt	/*map-table*
 map-typing	map.txt	/*map-typing*
 map-which-keys	map.txt	/*map-which-keys*
 map.txt	map.txt	/*map.txt*
--- a/runtime/doc/todo.txt
+++ b/runtime/doc/todo.txt
@@ -1,4 +1,4 @@
-*todo.txt*      For Vim version 8.2.  Last change: 2021 Apr 29
+*todo.txt*      For Vim version 8.2.  Last change: 2021 May 15
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -39,13 +39,14 @@ browser use: https://github.com/vim/vim/
 -------------------- Known bugs and current work -----------------------
 
 Vim9 - Make everything work:
-- expandcmd() with `=expr` in filename uses legacy expression.
-- eval_expr() in ex_cexpr()
-- eval_expr() call in dbg_parsearg() and debuggy_find()
-- compile_member() guesses the type, should figure out at runtime.
-- compile "skip" argument of searchpair()
+- function returning nothing should return void instead of zero
 - compile "expr" and "call" expression of a channel in channel_exe_cmd()?
-- give an error for "echo Func()" if Func() does not return anything.
+- Need some solution for dict function.  Can we implement part of classes?
+- A lambda without {} does not require a return type, using { return x } does.
+  That's unexpected, since the arguments are not required to have a type.
+  alt 1: not require a return type, figure it out from the common type of all
+	  the return statements found
+  alt 2: also require argument types
 - Using "windo echo expr" does not accept a line break inside "expr" (in a
   :def function and at script level in a not executed block). #7681
 - use CheckLegacyAndVim9Success(lines) in many more places
@@ -239,6 +240,10 @@ Memory leak in test_alot with pyeval() (
 Memory leak in test_alot with expand()
 Memory leaks in test_channel? (or is it because of fork())
 
+":set &shellpipe" and ":set &shellredir" should use the logic from
+initialization to figure out the default value from 'shell'.  Add a test for
+this.
+
 test_arglist func Test_all_not_allowed_from_cmdwin() hangs on MS-Windows.
 
 Mapping with partial match not executed properly in GTK. (Ingo Karkat, #7082)
@@ -249,6 +254,9 @@ Have another look at the implementation.
 Patch to implement the vimtutor with a plugin: #6414
 Was originally written by Felipe Morales.
 
+Request to use "." for the cursor column in search pattern \%<.c and \%<.v.
+(#8179)
+
 Adding "10" to 'spellsuggest' causes spell suggestions to become very slow.
 (#4087)  Did patch 8.2.2379 help?
 Also, z= in German on a long word can take a very long time, but CTRL-C to
@@ -276,6 +284,9 @@ Missing filetype test for bashrc, PKGBUI
 Add an option to not fetch terminal codes in xterm, to avoid flicker when t_Co
 changes.
 
+When using ":bwipe!" also get rid of references to be buffer, e.g. in the
+jumplist and alternate file.
+
 Add an option to start_timer() to return from the input loop with K_IGNORE.
 This is useful e.g. when a popup was created that disables mappings, we need
 to return from vgetc() to make this happen.  #7011
@@ -293,6 +304,9 @@ MS-Windows: when writing undo file the i
 mch_copy_file_attribute(), that seems unnecessary. (#7925)
 Add a flag to only copy attributes?
 
+Make the jumplist behave like a tag stack. (#7738)  Should there be a more
+time bound navigation, like with undo?
+
 Changing a capturing group to non-capturing changes the result: #7607
     :echo matchstr('aaa bbb', '\(.\{-1,}\>\)\|.*')
     aaa
@@ -1215,7 +1229,7 @@ Undo problem: "g-" doesn't go back, gets stuck. (Björn Linse, 2016 Jul 18)
 Add "unicode true" to NSIS installer.  Doesn't work with Windows 95, which we
 no longer support.
 
-Suppoert sort(l, 'F'), convert strings to float. (#7857)
+Support sort(l, 'F'), convert strings to float. (#7857)
 
 sort() is not stable when using numeric/float sort (Nikolay Pavlov, 2016 Sep
 4#1038)
--- a/runtime/doc/version7.txt
+++ b/runtime/doc/version7.txt
@@ -1,4 +1,4 @@
-*version7.txt*  For Vim version 8.2.  Last change: 2020 Oct 25
+*version7.txt*  For Vim version 8.2.  Last change: 2021 May 13
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -9826,7 +9826,7 @@ Solution:   Add AC_SYS_LARGEFILE to conf
 Files:	    src/configure.in, src/config.h.in, src/auto/configure
 
 Patch 7.2.414
-Problem:    CTRK-K <space> <space> does not produce 0xa0 as expected. (Tony
+Problem:    CTRL-K <space> <space> does not produce 0xa0 as expected. (Tony
 	    Mechelynck)
 Solution:   Remove the Unicode range 0xe000 - 0xefff from digraphs, these are
 	    not valid characters.
--- a/runtime/doc/version8.txt
+++ b/runtime/doc/version8.txt
@@ -1,4 +1,4 @@
-*version8.txt*  For Vim version 8.2.  Last change: 2020 Dec 24
+*version8.txt*  For Vim version 8.2.  Last change: 2021 May 13
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -15341,7 +15341,7 @@ Solution:   Link winpthread statically. 
 Files:      src/Make_cyg_ming.mak
 
 Patch 8.0.0116
-Problem:    When reading English help and using CTRl-] the language from
+Problem:    When reading English help and using CTRL-] the language from
             'helplang' is used.
 Solution:   Make help tag jumps keep the language. (Tatsuki, test by Hirohito
             Higashi, closes #1249)
--- a/runtime/ftplugin/meson.vim
+++ b/runtime/ftplugin/meson.vim
@@ -1,6 +1,7 @@
 " Vim filetype plugin file
 " Language:	meson
 " License:	VIM License
+" Maintainer:   Liam Beguin <liambeguin@gmail.com>
 " Original Author:	Laurent Pinchart <laurent.pinchart@ideasonboard.com>
 " Last Change:		2018 Nov 27
 
--- a/runtime/ftplugin/systemverilog.vim
+++ b/runtime/ftplugin/systemverilog.vim
@@ -1,7 +1,7 @@
 " Vim filetype plugin file
 " Language:    SystemVerilog
 " Maintainer:  kocha <kocha.lsifrontend@gmail.com>
-" Last Change: 12-Aug-2013. 
+" Last Change: 07-May-2021
 
 if exists("b:did_ftplugin")
   finish
@@ -9,3 +9,36 @@ endif
 
 " Behaves just like Verilog
 runtime! ftplugin/verilog.vim
+
+let s:cpo_save = &cpo
+set cpo&vim
+
+" Add SystemVerilog keywords for matchit plugin.
+if exists("loaded_matchit")
+  let b:match_words =
+    \ '\<begin\>:\<end\>,' .
+    \ '\<case\>\|\<casex\>\|\<casez\>:\<endcase\>,' .
+    \ '\<module\>:\<endmodule\>,' .
+    \ '\<if\>:`\@<!\<else\>,' .
+    \ '\<function\>:\<endfunction\>,' .
+    \ '`ifn\?def\>:`elsif\>:`else\>:`endif\>,' .
+    \ '\<task\>:\<endtask\>,' .
+    \ '\<specify\>:\<endspecify\>,' .
+    \ '\<config\>:\<endconfig\>,' .
+    \ '\<generate\>:\<endgenerate\>,' .
+    \ '\<fork\>:\<join\>\|\<join_any\>\|\<join_none\>,' .
+    \ '\<primitive\>:\<endprimitive\>,' .
+    \ '\<table\>:\<endtable\>,' .
+    \ '\<checker\>:\<endchecker\>,' .
+    \ '\<class\>:\<endclass\>,' .
+    \ '\<clocking\>:\<endclocking\>,' .
+    \ '\<gruop\>:\<endgruop\>,' .
+    \ '\<interface\>:\<endinterface\>,' .
+    \ '\<package\>:\<endpackage\>,' .
+    \ '\<program\>:\<endprogram\>,' .
+    \ '\<property\>:\<endproperty\>,' .
+    \ '\<sequence\>:\<endsequence\>'
+endif
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
--- a/runtime/indent/meson.vim
+++ b/runtime/indent/meson.vim
@@ -2,6 +2,7 @@
 " Language:		Meson
 " License:		VIM License
 " Maintainer:		Nirbheek Chauhan <nirbheek.chauhan@gmail.com>
+"	        	Liam Beguin <liambeguin@gmail.com>
 " Original Authors:	David Bustos <bustos@caltech.edu>
 "			Bram Moolenaar <Bram@vim.org>
 " Last Change:		2019 Oct 18
--- a/runtime/pack/dist/opt/termdebug/plugin/termdebug.vim
+++ b/runtime/pack/dist/opt/termdebug/plugin/termdebug.vim
@@ -2,7 +2,7 @@
 "
 " Author: Bram Moolenaar
 " Copyright: Vim license applies, see ":help license"
-" Last Change: 2021 Jan 03
+" Last Change: 2021 May 16
 "
 " WORK IN PROGRESS - Only the basics work
 " Note: On MS-Windows you need a recent version of gdb.  The one included with
@@ -228,7 +228,9 @@ func s:StartDebug_term(dict)
   endif
   let s:gdbwin = win_getid(winnr())
 
-  " Set arguments to be run
+  " Set arguments to be run.  First wait a bit to make detecting gdb a bit
+  " more reliable.
+  sleep 200m
   if len(proc_args)
     call term_sendkeys(s:gdbbuf, 'set args ' . join(proc_args) . "\r")
   endif
--- a/runtime/syntax/dts.vim
+++ b/runtime/syntax/dts.vim
@@ -1,7 +1,7 @@
 " Vim syntax file
 " Language:	dts/dtsi (device tree files)
 " Maintainer:	Daniel Mack <vim@zonque.org>
-" Last Change:	2013 Oct 20
+" Last Change:	2021 May 15
 
 if exists("b:current_syntax")
   finish
@@ -9,7 +9,7 @@ endif
 
 syntax region dtsComment        start="/\*"  end="\*/"
 syntax match  dtsReference      "&[[:alpha:][:digit:]_]\+"
-syntax region dtsBinaryProperty start="\[" end="\]" 
+syntax region dtsBinaryProperty start="\[" end="\]"
 syntax match  dtsStringProperty "\".*\""
 syntax match  dtsKeyword        "/.\{-1,\}/"
 syntax match  dtsLabel          "^[[:space:]]*[[:alpha:][:digit:]_]\+:"
@@ -18,6 +18,38 @@ syntax region dtsCellProperty   start="<
 syntax region dtsCommentInner   start="/\*"  end="\*/"
 syntax match  dtsCommentLine    "//.*$"
 
+" Accept %: for # (C99)
+syn region	cPreCondit	start="^\s*\zs\(%:\|#\)\s*\(if\|ifdef\|ifndef\|elif\)\>" skip="\\$" end="$" keepend contains=cComment,cCommentL,cCppString,cCharacter,cCppParen,cParenError,cNumbers,cCommentError,cSpaceError
+syn match	cPreConditMatch	display "^\s*\zs\(%:\|#\)\s*\(else\|endif\)\>"
+if !exists("c_no_if0")
+  syn cluster	cCppOutInGroup	contains=cCppInIf,cCppInElse,cCppInElse2,cCppOutIf,cCppOutIf2,cCppOutElse,cCppInSkip,cCppOutSkip
+  syn region	cCppOutWrapper	start="^\s*\zs\(%:\|#\)\s*if\s\+0\+\s*\($\|//\|/\*\|&\)" end=".\@=\|$" contains=cCppOutIf,cCppOutElse,@NoSpell fold
+  syn region	cCppOutIf	contained start="0\+" matchgroup=cCppOutWrapper end="^\s*\(%:\|#\)\s*endif\>" contains=cCppOutIf2,cCppOutElse
+  if !exists("c_no_if0_fold")
+    syn region	cCppOutIf2	contained matchgroup=cCppOutWrapper start="0\+" end="^\s*\(%:\|#\)\s*\(else\>\|elif\s\+\(0\+\s*\($\|//\|/\*\|&\)\)\@!\|endif\>\)"me=s-1 contains=cSpaceError,cCppOutSkip,@Spell fold
+  else
+    syn region	cCppOutIf2	contained matchgroup=cCppOutWrapper start="0\+" end="^\s*\(%:\|#\)\s*\(else\>\|elif\s\+\(0\+\s*\($\|//\|/\*\|&\)\)\@!\|endif\>\)"me=s-1 contains=cSpaceError,cCppOutSkip,@Spell
+  endif
+  syn region	cCppOutElse	contained matchgroup=cCppOutWrapper start="^\s*\(%:\|#\)\s*\(else\|elif\)" end="^\s*\(%:\|#\)\s*endif\>"me=s-1 contains=TOP,cPreCondit
+  syn region	cCppInWrapper	start="^\s*\zs\(%:\|#\)\s*if\s\+0*[1-9]\d*\s*\($\|//\|/\*\||\)" end=".\@=\|$" contains=cCppInIf,cCppInElse fold
+  syn region	cCppInIf	contained matchgroup=cCppInWrapper start="\d\+" end="^\s*\(%:\|#\)\s*endif\>" contains=TOP,cPreCondit
+  if !exists("c_no_if0_fold")
+    syn region	cCppInElse	contained start="^\s*\(%:\|#\)\s*\(else\>\|elif\s\+\(0*[1-9]\d*\s*\($\|//\|/\*\||\)\)\@!\)" end=".\@=\|$" containedin=cCppInIf contains=cCppInElse2 fold
+  else
+    syn region	cCppInElse	contained start="^\s*\(%:\|#\)\s*\(else\>\|elif\s\+\(0*[1-9]\d*\s*\($\|//\|/\*\||\)\)\@!\)" end=".\@=\|$" containedin=cCppInIf contains=cCppInElse2
+  endif
+  syn region	cCppInElse2	contained matchgroup=cCppInWrapper start="^\s*\(%:\|#\)\s*\(else\|elif\)\([^/]\|/[^/*]\)*" end="^\s*\(%:\|#\)\s*endif\>"me=s-1 contains=cSpaceError,cCppOutSkip,@Spell
+  syn region	cCppOutSkip	contained start="^\s*\(%:\|#\)\s*\(if\>\|ifdef\>\|ifndef\>\)" skip="\\$" end="^\s*\(%:\|#\)\s*endif\>" contains=cSpaceError,cCppOutSkip
+  syn region	cCppInSkip	contained matchgroup=cCppInWrapper start="^\s*\(%:\|#\)\s*\(if\s\+\(\d\+\s*\($\|//\|/\*\||\|&\)\)\@!\|ifdef\>\|ifndef\>\)" skip="\\$" end="^\s*\(%:\|#\)\s*endif\>" containedin=cCppOutElse,cCppInIf,cCppInSkip contains=TOP,cPreProc
+endif
+syn region	cIncluded	display contained start=+"+ skip=+\\\\\|\\"+ end=+"+
+syn match	cIncluded	display contained "<[^>]*>"
+syn match	cInclude	display "^\s*\zs\(%:\|#\)\s*include\>\s*["<]" contains=cIncluded
+"syn match cLineSkip	"\\$"
+syn cluster	cPreProcGroup	contains=cPreCondit,cIncluded,cInclude,cDefine,cErrInParen,cErrInBracket,cUserLabel,cSpecial,cOctalZero,cCppOutWrapper,cCppInWrapper,@cCppOutInGroup,cFormat,cNumber,cFloat,cOctal,cOctalError,cNumbersCom,cString,cCommentSkip,cCommentString,cComment2String,@cCommentGroup,cCommentStartError,cParen,cBracket,cMulti,cBadBlock
+syn region	cDefine		start="^\s*\zs\(%:\|#\)\s*\(define\|undef\)\>" skip="\\$" end="$" keepend contains=ALLBUT,@cPreProcGroup,@Spell
+syn region	cPreProc	start="^\s*\zs\(%:\|#\)\s*\(pragma\>\|line\>\|warning\>\|warn\>\|error\>\)" skip="\\$" end="$" keepend contains=ALLBUT,@cPreProcGroup,@Spell
+
 hi def link dtsCellProperty     Number
 hi def link dtsBinaryProperty   Number
 hi def link dtsStringProperty   String
@@ -26,5 +58,21 @@ hi def link dtsLabel            Label
 hi def link dtsNode             Structure
 hi def link dtsReference        Macro
 hi def link dtsComment          Comment
-hi def link dtsCommentInner     Comment 
+hi def link dtsCommentInner     Comment
 hi def link dtsCommentLine      Comment
+
+hi def link cInclude		Include
+hi def link cPreProc		PreProc
+hi def link cDefine		Macro
+hi def link cIncluded		cString
+hi def link cString		String
+
+hi def link cCppInWrapper	cCppOutWrapper
+hi def link cCppOutWrapper	cPreCondit
+hi def link cPreConditMatch	cPreCondit
+hi def link cPreCondit		PreCondit
+hi def link cCppOutSkip		cCppOutIf2
+
+hi def link cCppInElse2		cCppOutIf2
+hi def link cCppOutIf2		cCppOut
+hi def link cCppOut		Comment
--- a/runtime/syntax/meson.vim
+++ b/runtime/syntax/meson.vim
@@ -2,6 +2,7 @@
 " Language:	Meson
 " License:	VIM License
 " Maintainer:	Nirbheek Chauhan <nirbheek.chauhan@gmail.com>
+"		Liam Beguin <liambeguin@gmail.com>
 " Last Change:	2019 Oct 18
 " Credits:	Zvezdan Petkovic <zpetkovic@acm.org>
 "		Neil Schemenauer <nas@meson.ca>
@@ -17,11 +18,7 @@
 "   let meson_space_error_highlight = 1
 "
 
-" For version 5.x: Clear all syntax items.
-" For version 6.x: Quit when a syntax file was already loaded.
-if version < 600
-  syntax clear
-elseif exists("b:current_syntax")
+if exists("b:current_syntax")
   finish
 endif
 
@@ -32,8 +29,9 @@ set cpo&vim
 
 " http://mesonbuild.com/Syntax.html
 syn keyword mesonConditional	elif else if endif
-syn keyword mesonRepeat	foreach endforeach
-syn keyword mesonOperator	and not or
+syn keyword mesonRepeat		foreach endforeach
+syn keyword mesonOperator	and not or in
+syn keyword mesonStatement	continue break
 
 syn match   mesonComment	"#.*$" contains=mesonTodo,@Spell
 syn keyword mesonTodo		FIXME NOTE NOTES TODO XXX contained
@@ -117,10 +115,12 @@ syn keyword mesonBuiltin
   \ subdir
   \ subdir_done
   \ subproject
+  \ summary
   \ target_machine
   \ test
   \ vcs_tag
   \ warning
+  \ range
 
 if exists("meson_space_error_highlight")
   " trailing whitespace
@@ -130,31 +130,20 @@ if exists("meson_space_error_highlight")
   syn match   mesonSpaceError	display "\t\+ "
 endif
 
-if version >= 508 || !exists("did_meson_syn_inits")
-  if version <= 508
-    let did_meson_syn_inits = 1
-    command -nargs=+ HiLink hi link <args>
-  else
-    command -nargs=+ HiLink hi def link <args>
-  endif
-
-  " The default highlight links.  Can be overridden later.
-  HiLink mesonStatement		Statement
-  HiLink mesonConditional	Conditional
-  HiLink mesonRepeat		Repeat
-  HiLink mesonOperator		Operator
-  HiLink mesonComment		Comment
-  HiLink mesonTodo		Todo
-  HiLink mesonString		String
-  HiLink mesonEscape		Special
-  HiLink mesonNumber		Number
-  HiLink mesonBuiltin		Function
-  HiLink mesonConstant		Number
-  if exists("meson_space_error_highlight")
-    HiLink mesonSpaceError	Error
-  endif
-
-  delcommand HiLink
+" The default highlight links.  Can be overridden later.
+hi def link mesonStatement	Statement
+hi def link mesonConditional	Conditional
+hi def link mesonRepeat	Repeat
+hi def link mesonOperator	Operator
+hi def link mesonComment	Comment
+hi def link mesonTodo		Todo
+hi def link mesonString	String
+hi def link mesonEscape	Special
+hi def link mesonNumber	Number
+hi def link mesonBuiltin	Function
+hi def link mesonConstant	Number
+if exists("meson_space_error_higlight")
+  hi def link mesonSpaceError	Error
 endif
 
 let b:current_syntax = "meson"