diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS
index 139a1b6..0bfb1a9 100644
--- a/.github/CODEOWNERS
+++ b/.github/CODEOWNERS
@@ -73,6 +73,7 @@
 runtime/ftplugin/basic.vim		@dkearns
 runtime/ftplugin/bst.vim		@tpope
 runtime/ftplugin/cfg.vim		@chrisbra
+runtime/ftplugin/csh.vim		@dkearns
 runtime/ftplugin/css.vim		@dkearns
 runtime/ftplugin/cucumber.vim		@tpope
 runtime/ftplugin/eiffel.vim		@dkearns
@@ -111,8 +112,10 @@
 runtime/ftplugin/scss.vim		@tpope
 runtime/ftplugin/spec.vim		@ignatenkobrain
 runtime/ftplugin/systemverilog.vim	@Kocha
+runtime/ftplugin/tcsh.vim		@dkearns
 runtime/ftplugin/tidy.vim		@dkearns
 runtime/ftplugin/tmux.vim		@ericpruitt
+runtime/ftplugin/toml.vim		@averms
 runtime/ftplugin/typescript.vim		@dkearns
 runtime/ftplugin/typescriptreact.vim	@dkearns
 runtime/ftplugin/xml.vim		@chrisbra
@@ -151,6 +154,7 @@
 runtime/indent/sh.vim			@chrisbra
 runtime/indent/systemverilog.vim	@Kocha
 runtime/indent/tcl.vim			@dkearns
+runtime/indent/tcsh.vim			@dkearns
 runtime/indent/teraterm.vim		@k-takata
 runtime/indent/xml.vim			@chrisbra
 runtime/indent/zsh.vim			@chrisbra
@@ -238,10 +242,12 @@
 runtime/syntax/sudoers.vim		@e-kwsm
 runtime/syntax/systemverilog.vim	@Kocha
 runtime/syntax/tags.vim			@cecamp
+runtime/syntax/tcsh.vim			@dkearns
 runtime/syntax/teraterm.vim		@k-takata
 runtime/syntax/tex.vim			@cecamp
 runtime/syntax/tidy.vim			@dkearns
 runtime/syntax/tmux.vim			@ericpruitt
+runtime/syntax/toml.vim			@averms
 runtime/syntax/vim.vim			@cecamp
 runtime/syntax/wget.vim			@dkearns
 runtime/syntax/xbl.vim			@dkearns
diff --git a/runtime/doc/autocmd.txt b/runtime/doc/autocmd.txt
index 6f7f6c6..bcc81ec 100644
--- a/runtime/doc/autocmd.txt
+++ b/runtime/doc/autocmd.txt
@@ -708,7 +708,7 @@
 							*FileAppendCmd*
 FileAppendCmd			Before appending to a file.  Should do the
 				appending to the file.  Use the '[ and ']
-				marks for the range of lines.|Cmd-event|
+				marks for the range of lines. |Cmd-event|
 							*FileAppendPost*
 FileAppendPost			After appending to a file.
 							*FileAppendPre*
@@ -836,7 +836,7 @@
 							*FilterWritePost*
 FilterWritePost			After writing a file for a filter command or
 				making a diff with an external diff (see
-				DiffUpdated for internal diff).
+				|DiffUpdated| for internal diff).
 				Vim checks the pattern against the name of
 				the current buffer as with FilterWritePre.
 				Not triggered when 'shelltemp' is off.
@@ -1195,9 +1195,9 @@
 						register, as a list of lines,
 						like with: >
 						getreg(r, 1, 1)
-<				   regname	Name of the |register| or
-						empty string for the unnamed
-						register.
+<				   regname	Name of the register or empty
+						string for the unnamed
+						register, see |registers|.
 				   regtype	Type of the register, see
 						|getregtype()|.
 				   visual	True if the operation is
diff --git a/runtime/doc/change.txt b/runtime/doc/change.txt
index 1a9ba7a..31843ee 100644
--- a/runtime/doc/change.txt
+++ b/runtime/doc/change.txt
@@ -1184,9 +1184,6 @@
 each of the selected lines (thus replacing the blockwise selected region by a
 block of the pasted line).
 
-Use |zP|/|zp| to paste a blockwise yanked register without appending trailing
-spaces.
-
 							*blockwise-register*
 If you use a blockwise Visual mode command to get the text into the register,
 the block of text will be inserted before ("P") or after ("p") the cursor
@@ -1197,6 +1194,9 @@
 width and the text after the inserted block contains <Tab>s, that text may be
 misaligned.
 
+Use |zP|/|zp| to paste a blockwise yanked register without appending trailing
+spaces.
+
 Note that after a characterwise yank command, Vim leaves the cursor on the
 first yanked character that is closest to the start of the buffer.  This means
 that "yl" doesn't move the cursor, but "yh" moves the cursor one character
diff --git a/runtime/doc/cmdline.txt b/runtime/doc/cmdline.txt
index 0c472bb..bf61024 100644
--- a/runtime/doc/cmdline.txt
+++ b/runtime/doc/cmdline.txt
@@ -803,7 +803,7 @@
 		3:d<CR>		is translated into: .,.+2d<CR>
 <
 
-Visual Mode and 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
diff --git a/runtime/doc/digraph.txt b/runtime/doc/digraph.txt
index 0801e3a..3610380 100644
--- a/runtime/doc/digraph.txt
+++ b/runtime/doc/digraph.txt
@@ -351,8 +351,8 @@
 þ	th	0xfe	254	LATIN SMALL LETTER THORN (Icelandic)
 ÿ	y:	0xff	255	LATIN SMALL LETTER Y WITH DIAERESIS
 
-If your Vim is compiled with |multibyte| support and you are using a multibyte
-'encoding', Vim provides this enhanced set of additional digraphs:
+If you are using a |multibyte| 'encoding', Vim provides this enhanced set of
+additional digraphs:
 
 							*digraph-table-mbyte*
 char  digraph	hex	dec	official name ~
diff --git a/runtime/doc/editing.txt b/runtime/doc/editing.txt
index 858fc42..cea0e44 100644
--- a/runtime/doc/editing.txt
+++ b/runtime/doc/editing.txt
@@ -1,4 +1,4 @@
-*editing.txt*   For Vim version 8.2.  Last change: 2021 Oct 04
+*editing.txt*   For Vim version 8.2.  Last change: 2021 Oct 16
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -1329,26 +1329,26 @@
 			other tabs and for windows in the current tab that
 			have their own window-local directory.
 
-							*:tch* *:tchdir*
-:tch[dir][!]		Same as |:tcd|.
-
 							*:tcd-*
 :tc[d][!] -		Change to the previous current directory, before the
 			last ":tcd {path}" command.
 
+							*:tch* *:tchdir*
+:tch[dir][!]		Same as |:tcd|.
+
 							*:lc* *:lcd*
 :lc[d][!] {path}	Like |:cd|, but only set the current directory when
 			the cursor is in the current window.  The current
 			directory for other windows is not changed, switching
 			to another window will stop using {path}.
 
-							*:lch* *:lchdir*
-:lch[dir][!]		Same as |:lcd|.
-
 							*:lcd-*
 :lcd[!] -		Change to the previous current directory, before the
 			last ":lcd {path}" command.
 
+							*:lch* *:lchdir*
+:lch[dir][!]		Same as |:lcd|.
+
 							*:pw* *:pwd* *E187*
 :pw[d]			Print the current directory name.
 			Also see |getcwd()|.
@@ -1375,14 +1375,14 @@
 When a |:lcd| command has been used for a window, the specified directory
 becomes the current directory for that window.  Windows where the |:lcd|
 command has not been used stick to the global or tab-local current directory.
-When jumping to another window the current directory will become the last
+When jumping to another window the current directory is changed to the last
 specified local current directory.  If none was specified, the global or
 tab-local current directory is used.
 
 When a |:tcd| command has been used for a tab page, the specified directory
 becomes the current directory for the current tab page and the current window.
 The current directory of other tab pages is not affected.  When jumping to
-another tab page, the current directory will become the last specified local
+another tab page, the current directory is changed to the last specified local
 directory for that tab page. If the current tab has no local current directory
 the global current directory is used.
 
@@ -1676,6 +1676,11 @@
 session or with another command (e.g., a filter command).  Then you will know
 which version of the file you want to keep.
 
+The accuracy of the time check depends on the filesystem.  On Unix it is
+usually sub-second.  With old file sytems and on MS-Windows it is normally one
+second.  Use has('nanotime') check if sub-second time stamp checks are
+available.
+
 There is one situation where you get the message while there is nothing wrong:
 On a Win32 system on the day daylight saving time starts.  There is something
 in the Win32 libraries that confuses Vim about the hour time difference.  The
diff --git a/runtime/doc/eval.txt b/runtime/doc/eval.txt
index 5a7e6ec..c3e894f 100644
--- a/runtime/doc/eval.txt
+++ b/runtime/doc/eval.txt
@@ -1,4 +1,4 @@
-*eval.txt*	For Vim version 8.2.  Last change: 2021 Oct 04
+*eval.txt*	For Vim version 8.2.  Last change: 2021 Oct 14
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -2549,7 +2549,7 @@
 did_filetype()			Number	|TRUE| if FileType autocmd event used
 diff_filler({lnum})		Number	diff filler lines about {lnum}
 diff_hlID({lnum}, {col})	Number	diff highlighting at {lnum}/{col}
-digraph_get({chars})		String	get the digraph of {chars}
+digraph_get({chars})		String	get the |digraph| of {chars}
 digraph_getlist([{listall}])	List	get all |digraph|s
 digraph_set({chars}, {digraph})	Boolean	register |digraph|
 digraph_setlist({digraphlist})	Boolean	register multiple |digraph|s
diff --git a/runtime/doc/help.txt b/runtime/doc/help.txt
index f5c3e6d..f339dad 100644
--- a/runtime/doc/help.txt
+++ b/runtime/doc/help.txt
@@ -88,6 +88,7 @@
 |usr_43.txt|  Using filetypes
 |usr_44.txt|  Your own syntax highlighted
 |usr_45.txt|  Select your language
+|usr_46.txt|  Write plugins using Vim9 script
 
 Making Vim Run ~
 |usr_90.txt|  Installing Vim
diff --git a/runtime/doc/options.txt b/runtime/doc/options.txt
index 91df5df..41d7105 100644
--- a/runtime/doc/options.txt
+++ b/runtime/doc/options.txt
@@ -2410,7 +2410,7 @@
 	   xchacha20	XChaCha20 Cipher with Poly1305 Message Authentication
 			Code.  Medium strong till strong encryption.
 			Encryption is provided by the libsodium library, it
-			requires Vim to be built with |+sodium|
+			requires Vim to be built with |+sodium|.
 			It adds a seed and a message authentication code (MAC)
 			to the file.  This needs at least a Vim 8.2.3022 to
 			read the encrypted file.
@@ -7406,13 +7406,13 @@
 	      return value of expr contains % items they will get expanded.
 	      The expression can contain the } character, the end of
 	      expression is denoted by %}.
-	      The For example: >
+	      For example: >
 		func! Stl_filename() abort
 		    return "%t"
 		endfunc
 <	        `stl=%{Stl_filename()}`   results in `"%t"`
 	        `stl=%{%Stl_filename()%}` results in `"Name of current file"`
-	} -   End of `{%` expression
+	%} -  End of `{%` expression
 	( -   Start of item group.  Can be used for setting the width and
 	      alignment of a section.  Must be followed by %) somewhere.
 	) -   End of item group.  No width fields allowed.
diff --git a/runtime/doc/pattern.txt b/runtime/doc/pattern.txt
index c52708e..8f6d77e 100644
--- a/runtime/doc/pattern.txt
+++ b/runtime/doc/pattern.txt
@@ -932,7 +932,7 @@
 \%.l    Matches at the cursor line.
 \%<.l   Matches above the cursor line.
 \%>.l   Matches below the cursor line.
-	These three can be used to match specific lines in a buffer.  The "23"
+	These six can be used to match specific lines in a buffer.  The "23"
 	can be any line number.  The first line is 1.
 	WARNING: When inserting or deleting lines Vim does not automatically
 	update the matches.  This means Syntax highlighting quickly becomes
@@ -953,16 +953,15 @@
 \%.c    Matches at the cursor column.
 \%<.c   Matches before the cursor column.
 \%>.c   Matches after the cursor column.
-	These three can be used to match specific columns in a buffer or
-	string.  The "23" can be any column number.  The first column is 1.
-	Actually, the column is the byte number (thus it's not exactly right
-	for multibyte characters).
+	These six can be used to match specific columns in a buffer or string.
+	The "23" can be any column number.  The first column is 1.  Actually,
+	the column is the byte number (thus it's not exactly right for
+	multibyte characters).
 	WARNING: When inserting or deleting text Vim does not automatically
 	update the matches.  This means Syntax highlighting quickly becomes
 	wrong.  Also when referring to the cursor position (".") and
 	the cursor moves the display isn't updated for this change.  An update
 	is done when using the |CTRL-L| command (the whole screen is updated).
-
 	Example, to highlight the column where the cursor currently is: >
 		:exe '/\%' . col(".") . 'c'
 <	Alternatively use: >
@@ -980,8 +979,8 @@
 \%.v    Matches at the current virtual column.
 \%<.v   Matches before the current virtual column.
 \%>.v   Matches after the current virtual column.
-	These three can be used to match specific virtual columns in a buffer
-	or string.  When not matching with a buffer in a window, the option
+	These six can be used to match specific virtual columns in a buffer or
+	string.  When not matching with a buffer in a window, the option
 	values of the current window are used (e.g., 'tabstop').
 	The "23" can be any column number.  The first column is 1.
 	Note that some virtual column positions will never match, because they
@@ -1012,7 +1011,7 @@
 		/.*\%17v
 <	Column 17 is highlighted by 'hlsearch' because there is another match
 	where ".*" matches zero characters.
-<
+
 
 Character classes:
 \i	identifier character (see 'isident' option)	*/\i*
diff --git a/runtime/doc/testing.txt b/runtime/doc/testing.txt
index 5094d51..d064dc1 100644
--- a/runtime/doc/testing.txt
+++ b/runtime/doc/testing.txt
@@ -85,14 +85,14 @@
 test_gui_drop_files({list}, {row}, {col}, {mods})
 		Drop one or more files in {list} in the window at {row}, {col}.
 		This function only works when the GUI is running and the
-		|drag-n-drop| feature is present.
-		
+		|drop_file| feature is present.
+
 		The supported values for {mods} are:
 			0x4	Shift
 			0x8	Alt
 			0x10	Ctrl
-		The files are added to the argument list and the first file in
-		{list} is edited in the window.  See |drag-n-drop| for more
+		The files are added to the |argument-list| and the first file
+		in {list} is edited in the window.  See |drag-n-drop| for more
 		information.
 
 						*test_gui_mouse_event()*
diff --git a/runtime/doc/todo.txt b/runtime/doc/todo.txt
index 5959de3..558493b 100644
--- a/runtime/doc/todo.txt
+++ b/runtime/doc/todo.txt
@@ -1,4 +1,4 @@
-*todo.txt*      For Vim version 8.2.  Last change: 2021 Sep 22
+*todo.txt*      For Vim version 8.2.  Last change: 2021 Oct 15
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -38,12 +38,13 @@
 							*known-bugs*
 -------------------- Known bugs and current work -----------------------
 
-Flaky test op Windows:
-From test_vim9_script.vim:
-    Found errors in Test_no_unknown_error_after_error():
-    command line..script D:/a/vim/vim/src2/testdir/runtest.vim[486]..function RunTheTest[44]..Test_no_unknown_error_after_error line 22: Expected 'E1012:' but got 'E684: list index out of range: 0': so Xdef
+Remove s:flaky_tests from runtest.vim, set g:test_is_flaky in each test.
 
 Vim9 - Make everything work:
+- "filter #pat# ls" should work, #pat# is not a comment
+    vim9script
+    edit foobar
+    filter #foobar# ls
 - Check TODO items in vim9compile.c and vim9execute.c
 - use CheckLegacyAndVim9Success(lines) in many more places
 - For builtin functions using tv_get_string*() use check_for_string() to be
@@ -629,24 +630,27 @@
 
 Problem with colors in terminal window. (Jason Franklin, 2019 May 12)
 
-Lifepillar: Updated/cleaned up color schemes:
-https://github.com/lifepillar/vim8-colorschemes.
-
-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
+Color schemes:
+NOTE: modernizing the default colorschemes _AND_ introducing new ones is now
+a project in its own right: https://github.com/vim/colorschemes. Feel free to
+reach out if you want to lend a hand.
+- Lifepillar: Updated/cleaned up color schemes:
+  https://github.com/lifepillar/vim8-colorschemes.
+- 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
-Use names that indicate their appearance (Christian Brabandt, 2017 Aug 3)
-- monokai - Xia Crusoe (2017 Aug 4)
-- seoul256 - Christian Brabandt (2017 Aug 3)
-- gruvbox -  Christian Brabandt (2017 Aug 3) (simplified version from
-      Lifepillar, 2018 Jan 22, #2573)
-- janah - Marco Hinz (2017 Aug 4)
-- apprentice - Romain Lafourcade (2017 Aug 6)  remarks about help file #1964
-Suggested by Hiroki Kokubun:
-- [Iceberg](https://github.com/cocopon/iceberg.vim) (my one)
-- [hybrid](https://github.com/w0ng/vim-hybrid)
-Include solarized color scheme?, it does not support termguicolors.
-- Sanitized version of pablo (Lifepillar, 2017 Nov 21)
+- Use names that indicate their appearance (Christian Brabandt, 2017 Aug 3)
+  - monokai - Xia Crusoe (2017 Aug 4)
+  - seoul256 - Christian Brabandt (2017 Aug 3)
+  - gruvbox -  Christian Brabandt (2017 Aug 3) (simplified version from
+        Lifepillar, 2018 Jan 22, #2573)
+  - janah - Marco Hinz (2017 Aug 4)
+  - apprentice - Romain Lafourcade (2017 Aug 6)  remarks about help file #1964
+- Suggested by Hiroki Kokubun:
+  - [Iceberg](https://github.com/cocopon/iceberg.vim) (my one)
+  - [hybrid](https://github.com/w0ng/vim-hybrid)
+- Include solarized color scheme?, it does not support termguicolors.
+  - Sanitized version of pablo (Lifepillar, 2017 Nov 21)
 
 Bug: "vipgw" does not put cursor back where it belongs. (Jason Franklin, 2019
 Mar 5)
diff --git a/runtime/doc/various.txt b/runtime/doc/various.txt
index 7adff41..e9c6b7b 100644
--- a/runtime/doc/various.txt
+++ b/runtime/doc/various.txt
@@ -172,7 +172,7 @@
 
 							*:z!*
 :[range]z![+-^.=][count]
-			Like ":z:", but when [count] is not specified, it
+			Like ":z", but when [count] is not specified, it
 			defaults to the Vim window height minus one.
 
 :[range]z[!]#[+-^.=][count]				*:z#*
diff --git a/runtime/doc/vim9.txt b/runtime/doc/vim9.txt
index b661097..576456a 100644
--- a/runtime/doc/vim9.txt
+++ b/runtime/doc/vim9.txt
@@ -103,7 +103,7 @@
 	writefile(['done'], 'file.txt')
 - You cannot use `:xit`, `:t`, `:k`, `:append`, `:change`, `:insert`, `:open`,
   and `:s` or `:d` with only flags.
-  or curly-braces names.
+- You cannot use curly-braces names.
 - A range before a command must be prefixed with a colon: >
 	:%s/this/that
 - Executing a register with "@r" does not work, you can prepend a colon or use
@@ -206,7 +206,7 @@
 as the argument results in using the default value.  This is useful when you
 want to specify a value for an argument that comes after an argument that
 should use its default value.  Example: >
-	def MyFunc(one = 'one', last = 'last)
+	def MyFunc(one = 'one', last = 'last')
 	  ...
 	enddef
 	MyFunc(v:none, 'LAST')  # first argument uses default value 'one'
@@ -631,7 +631,7 @@
 		|   echo 'match'
 		| endif
 
-Note that this means that in heredoc the first line cannot be a bar: >
+Note that this means that in heredoc the first line cannot start with a bar: >
 	var lines =<< trim END
 	   | this doesn't work
 	END
@@ -639,7 +639,7 @@
 add the "C" flag to 'cpoptions': >
 	set cpo+=C
 	var lines =<< trim END
-	   | this doesn't work
+	   | this works
 	END
 	set cpo-=C
 If the heredoc is inside a function 'cpoptions' must be set before :def and
@@ -1118,7 +1118,7 @@
 function scope.  Instead, use a lambda: >
 	def MapList(): list<string>
 	  var list = ['aa', 'bb', 'cc', 'dd']
-	  return range(1, 2)->map(( _, v) => list[v])
+	  return range(1, 2)->map((_, v) => list[v])
 	enddef
 
 The same is true for commands that are not compiled, such as `:global`.
@@ -1322,16 +1322,16 @@
 - Using a string value when setting a number option.
 - Using a number where a string is expected.   *E1024*
 
-One consequence is that the item type of a list or dict given to map() must
+One consequence is that the item type of a list or dict given to |map()| must
 not change.  This will give an error in Vim9 script: >
-	vim9 echo map([1, 2, 3], (i, v) => 'item ' .. i)
+	echo map([1, 2, 3], (i, v) => 'item ' .. i)
 	E1012: Type mismatch; expected number but got string
-Instead use |mapnew(): >
-	vim9 echo mapnew([1, 2, 3], (i, v) => 'item ' .. i)
+Instead use |mapnew()|: >
+	echo mapnew([1, 2, 3], (i, v) => 'item ' .. i)
 	['item 0', 'item 1', 'item 2']
 
 If the item type was determined to be "any" it can change to a more specific
-type.  E.g. when a list of mixed types gets changed to a list of numbers: >
+type.  E.g. when a list of mixed types gets changed to a list of strings: >
 	var mylist = [1, 2.0, '3']
 	# typename(mylist) == "list<any>"
 	map(mylist, (i, v) => 'item ' .. i)
diff --git a/runtime/ftplugin/context.vim b/runtime/ftplugin/context.vim
index 10f1ae1..37f7240 100644
--- a/runtime/ftplugin/context.vim
+++ b/runtime/ftplugin/context.vim
@@ -2,7 +2,7 @@
 " Language:           ConTeXt typesetting engine
 " Maintainer:         Nicola Vitacolonna <nvitacolonna@gmail.com>
 " Former Maintainers: Nikolai Weibull <now@bitwi.se>
-" Latest Revision:    2016 Oct 30
+" Latest Revision:    2021 Oct 15
 
 if exists("b:did_ftplugin")
   finish
@@ -17,7 +17,6 @@
 endif
 
 let b:undo_ftplugin = "setl com< cms< def< inc< sua< fo< ofu<"
-      \ . "| unlet! b:match_ignorecase b:match_words b:match_skip"
 
 setlocal comments=b:%D,b:%C,b:%M,:% commentstring=%\ %s formatoptions+=tjcroql2
 if get(b:, 'context_metapost', get(g:, 'context_metapost', 1))
@@ -35,11 +34,12 @@
 
 setlocal suffixesadd=.tex
 
-if exists("loaded_matchit")
+if exists("loaded_matchit") && !exists("b:match_words")
   let b:match_ignorecase = 0
   let b:match_skip = 'r:\\\@<!\%(\\\\\)*%'
   let b:match_words = '(:),\[:],{:},\\(:\\),\\\[:\\],' .
         \ '\\start\(\a\+\):\\stop\1'
+  let b:undo_ftplugin .= " | unlet! b:match_ignorecase b:match_words b:match_skip"
 endif
 
 let s:context_regex = {
@@ -57,19 +57,28 @@
   call map(range(2, a:count), 'search(s:context_regex[a:what], a:flags)')
 endfunction
 
-" Move around macros.
-nnoremap <silent><buffer> [[ :<C-U>call <SID>move_around(v:count1, "beginsection", "bW", v:false) <CR>
-vnoremap <silent><buffer> [[ :<C-U>call <SID>move_around(v:count1, "beginsection", "bW", v:true)  <CR>
-nnoremap <silent><buffer> ]] :<C-U>call <SID>move_around(v:count1, "beginsection", "W",  v:false) <CR>
-vnoremap <silent><buffer> ]] :<C-U>call <SID>move_around(v:count1, "beginsection", "W",  v:true)  <CR>
-nnoremap <silent><buffer> [] :<C-U>call <SID>move_around(v:count1, "endsection",   "bW", v:false) <CR>
-vnoremap <silent><buffer> [] :<C-U>call <SID>move_around(v:count1, "endsection",   "bW", v:true)  <CR>
-nnoremap <silent><buffer> ][ :<C-U>call <SID>move_around(v:count1, "endsection",   "W",  v:false) <CR>
-vnoremap <silent><buffer> ][ :<C-U>call <SID>move_around(v:count1, "endsection",   "W",  v:true)  <CR>
-nnoremap <silent><buffer> [{ :<C-U>call <SID>move_around(v:count1, "beginblock",   "bW", v:false) <CR>
-vnoremap <silent><buffer> [{ :<C-U>call <SID>move_around(v:count1, "beginblock",   "bW", v:true)  <CR>
-nnoremap <silent><buffer> ]} :<C-U>call <SID>move_around(v:count1, "endblock",     "W",  v:false) <CR>
-vnoremap <silent><buffer> ]} :<C-U>call <SID>move_around(v:count1, "endblock",     "W",  v:true)  <CR>
+if !exists("no_plugin_maps") && !exists("no_context_maps")
+  " Move around macros.
+  nnoremap <silent><buffer> [[ :<C-U>call <SID>move_around(v:count1, "beginsection", "bW", v:false) <CR>
+  vnoremap <silent><buffer> [[ :<C-U>call <SID>move_around(v:count1, "beginsection", "bW", v:true)  <CR>
+  nnoremap <silent><buffer> ]] :<C-U>call <SID>move_around(v:count1, "beginsection", "W",  v:false) <CR>
+  vnoremap <silent><buffer> ]] :<C-U>call <SID>move_around(v:count1, "beginsection", "W",  v:true)  <CR>
+  nnoremap <silent><buffer> [] :<C-U>call <SID>move_around(v:count1, "endsection",   "bW", v:false) <CR>
+  vnoremap <silent><buffer> [] :<C-U>call <SID>move_around(v:count1, "endsection",   "bW", v:true)  <CR>
+  nnoremap <silent><buffer> ][ :<C-U>call <SID>move_around(v:count1, "endsection",   "W",  v:false) <CR>
+  vnoremap <silent><buffer> ][ :<C-U>call <SID>move_around(v:count1, "endsection",   "W",  v:true)  <CR>
+  nnoremap <silent><buffer> [{ :<C-U>call <SID>move_around(v:count1, "beginblock",   "bW", v:false) <CR>
+  vnoremap <silent><buffer> [{ :<C-U>call <SID>move_around(v:count1, "beginblock",   "bW", v:true)  <CR>
+  nnoremap <silent><buffer> ]} :<C-U>call <SID>move_around(v:count1, "endblock",     "W",  v:false) <CR>
+  vnoremap <silent><buffer> ]} :<C-U>call <SID>move_around(v:count1, "endblock",     "W",  v:true)  <CR>
+
+  let b:undo_ftplugin .= " | sil! exe 'nunmap <buffer> [[' | sil! exe 'vunmap <buffer> [['" .
+	\                " | sil! exe 'nunmap <buffer> ]]' | sil! exe 'vunmap <buffer> ]]'" .
+	\                " | sil! exe 'nunmap <buffer> []' | sil! exe 'vunmap <buffer> []'" .
+	\                " | sil! exe 'nunmap <buffer> ][' | sil! exe 'vunmap <buffer> ]['" .
+	\                " | sil! exe 'nunmap <buffer> [{' | sil! exe 'vunmap <buffer> [{'" .
+	\                " | sil! exe 'nunmap <buffer> ]}' | sil! exe 'vunmap <buffer> ]}'"
+end
 
 " Other useful mappings
 if get(g:, 'context_mappings', 1)
@@ -81,16 +90,22 @@
     call cursor(search(s:tp_regex, 'W') - 1, 1)
   endf
 
-  " Reflow paragraphs with commands like gqtp ("gq TeX paragraph")
-  onoremap <silent><buffer> tp :<c-u>call <sid>tp()<cr>
-  " Select TeX paragraph
-  vnoremap <silent><buffer> tp <esc>:<c-u>call <sid>tp()<cr>
+  if !exists("no_plugin_maps") && !exists("no_context_maps")
+    " Reflow paragraphs with commands like gqtp ("gq TeX paragraph")
+    onoremap <silent><buffer> tp :<c-u>call <sid>tp()<cr>
+    " Select TeX paragraph
+    vnoremap <silent><buffer> tp <esc>:<c-u>call <sid>tp()<cr>
 
-  " $...$ text object
-  onoremap <silent><buffer> i$ :<c-u>normal! T$vt$<cr>
-  onoremap <silent><buffer> a$ :<c-u>normal! F$vf$<cr>
-  vnoremap <buffer> i$ T$ot$
-  vnoremap <buffer> a$ F$of$
+    " $...$ text object
+    onoremap <silent><buffer> i$ :<c-u>normal! T$vt$<cr>
+    onoremap <silent><buffer> a$ :<c-u>normal! F$vf$<cr>
+    vnoremap <buffer> i$ T$ot$
+    vnoremap <buffer> a$ F$of$
+
+    let b:undo_ftplugin .= " | sil! exe 'ounmap <buffer> tp' | sil! exe 'vunmap <buffer> tp'" .
+	  \                " | sil! exe 'ounmap <buffer> i$' | sil! exe 'vunmap <buffer> i$'" .
+	  \                " | sil! exe 'ounmap <buffer> a$' | sil! exe 'vunmap <buffer> a$'"
+    endif
 endif
 
 " Commands for asynchronous typesetting
diff --git a/runtime/ftplugin/csh.vim b/runtime/ftplugin/csh.vim
index 4ae09f9..9298232 100644
--- a/runtime/ftplugin/csh.vim
+++ b/runtime/ftplugin/csh.vim
@@ -1,21 +1,23 @@
 " Vim filetype plugin file
-" Language:	csh
-" Maintainer:	Dan Sharp <dwsharp at users dot sourceforge dot net>
-" Last Changed: 20 Jan 2009
-" URL:		http://dwsharp.users.sourceforge.net/vim/ftplugin
+" Language:		csh
+" Maintainer:		Doug Kearns <dougkearns@gmail.com>
+" Previous Maintainer:	Dan Sharp <dwsharp at users dot sourceforge dot net>
+" Contributor:		Johannes Zellner <johannes@zellner.org>
+" Last Change:		2021 Oct 15
 
 if exists("b:did_ftplugin") | finish | endif
 let b:did_ftplugin = 1
 
-" Make sure the continuation lines below do not cause problems in
-" compatibility mode.
 let s:save_cpo = &cpo
 set cpo-=C
 
+setlocal comments=:#
 setlocal commentstring=#%s
 setlocal formatoptions-=t
 setlocal formatoptions+=crql
 
+let b:undo_ftplugin = "setlocal com< cms< fo<"
+
 " Csh:  thanks to Johannes Zellner
 " - Both foreach and end must appear alone on separate lines.
 " - The words else and endif must appear at the beginning of input lines;
@@ -23,26 +25,27 @@
 " - Each case label and the default label must appear at the start of a
 "   line.
 " - while and end must appear alone on their input lines.
-if exists("loaded_matchit")
-    let b:match_words =
-      \ '^\s*\<if\>.*(.*).*\<then\>:'.
-      \   '^\s*\<else\>\s\+\<if\>.*(.*).*\<then\>:^\s*\<else\>:'.
-      \   '^\s*\<endif\>,'.
-      \ '\%(^\s*\<foreach\>\s\+\S\+\|^s*\<while\>\).*(.*):'.
-      \   '\<break\>:\<continue\>:^\s*\<end\>,'.
-      \ '^\s*\<switch\>.*(.*):^\s*\<case\>\s\+:^\s*\<default\>:^\s*\<endsw\>'
+if exists("loaded_matchit") && !exists("b:match_words")
+  let s:line_start = '\%(^\s*\)\@<='
+  let b:match_words =
+	\ s:line_start .. 'if\s*(.*)\s*then\>:' ..
+	\   s:line_start .. 'else\s\+if\s*(.*)\s*then\>:' .. s:line_start .. 'else\>:' ..
+	\   s:line_start .. 'endif\>,' ..
+	\ s:line_start .. '\%(\<foreach\s\+\h\w*\|while\)\s*(:' ..
+	\   '\<break\>:\<continue\>:' ..
+	\   s:line_start .. 'end\>,' ..
+	\ s:line_start .. 'switch\s*(:' ..
+	\   s:line_start .. 'case\s\+:' .. s:line_start .. 'default\>:\<breaksw\>:' ..
+	\   s:line_start .. 'endsw\>'
+  unlet s:line_start
+  let b:undo_ftplugin ..= " | unlet b:match_words"
 endif
 
-" Change the :browse e filter to primarily show csh-related files.
-if has("gui_win32")
-    let  b:browsefilter="csh Scripts (*.csh)\t*.csh\n" .
-		\	"All Files (*.*)\t*.*\n"
+if (has("gui_win32") || has("gui_gtk")) && !exists("b:browsefilter")
+  let  b:browsefilter="csh Scripts (*.csh)\t*.csh\n" ..
+	\	      "All Files (*.*)\t*.*\n"
+  let b:undo_ftplugin ..= " | unlet b:browsefilter"
 endif
 
-" Undo the stuff we changed.
-let b:undo_ftplugin = "setlocal commentstring< formatoptions<" .
-		\     " | unlet! b:match_words b:browsefilter"
-
-" Restore the saved compatibility options.
 let &cpo = s:save_cpo
 unlet s:save_cpo
diff --git a/runtime/ftplugin/tcsh.vim b/runtime/ftplugin/tcsh.vim
index 7e2d959..33f1aab 100644
--- a/runtime/ftplugin/tcsh.vim
+++ b/runtime/ftplugin/tcsh.vim
@@ -1,19 +1,17 @@
 " Vim filetype plugin file
-" Language:	tcsh
-" Maintainer:	Dan Sharp <dwsharp at users dot sourceforge dot net>
-" Last Changed: 20 Jan 2009
-" URL:		http://dwsharp.users.sourceforge.net/vim/ftplugin
+" Language:		tcsh
+" Maintainer:		Doug Kearns <dougkearns@gmail.com>
+" Previous Maintainer:	Dan Sharp <dwsharp at users dot sourceforge dot net>
+" Last Change:		2021 Oct 15
 
 if exists("b:did_ftplugin") | finish | endif
 
-" Make sure the continuation lines below do not cause problems in
-" compatibility mode.
 let s:save_cpo = &cpo
 set cpo-=C
 
 " Define some defaults in case the included ftplugins don't set them.
 let s:undo_ftplugin = ""
-let s:browsefilter = "csh Files (*.csh)\t*.csh\n" .
+let s:browsefilter = "csh Files (*.csh)\t*.csh\n" ..
 	    \	     "All Files (*.*)\t*.*\n"
 
 runtime! ftplugin/csh.vim ftplugin/csh_*.vim ftplugin/csh/*.vim
@@ -27,14 +25,11 @@
     let s:browsefilter = b:browsefilter
 endif
 
-" Change the :browse e filter to primarily show tcsh-related files.
-if has("gui_win32")
-    let  b:browsefilter="tcsh Scripts (*.tcsh)\t*.tcsh\n" . s:browsefilter
+if (has("gui_win32") || has("gui_gtk"))
+    let  b:browsefilter="tcsh Scripts (*.tcsh)\t*.tcsh\n" .. s:browsefilter
 endif
 
-" Undo the stuff we changed.
-let b:undo_ftplugin = "unlet! b:browsefilter | " . s:undo_ftplugin
+let b:undo_ftplugin = "unlet! b:browsefilter | " .. s:undo_ftplugin
 
-" Restore the saved compatibility options.
 let &cpo = s:save_cpo
 unlet s:save_cpo
diff --git a/runtime/ftplugin/tmux.vim b/runtime/ftplugin/tmux.vim
index ed91549..5c3461f 100644
--- a/runtime/ftplugin/tmux.vim
+++ b/runtime/ftplugin/tmux.vim
@@ -9,4 +9,7 @@
 endif
 let b:did_ftplugin = 1
 
+let b:undo_ftplugin = "setlocal comments< commentstring<"
+
+setlocal comments=:#
 setlocal commentstring=#\ %s
diff --git a/runtime/ftplugin/toml.vim b/runtime/ftplugin/toml.vim
new file mode 100644
index 0000000..1ef09a1
--- /dev/null
+++ b/runtime/ftplugin/toml.vim
@@ -0,0 +1,23 @@
+" Vim filetype plugin
+" Language:    TOML
+" Homepage:    https://github.com/cespare/vim-toml
+" Maintainer:  Aman Verma
+" Author:      Kevin Ballard <kevin@sb.org>
+" Last Change: Sep 21, 2021
+
+if exists('b:did_ftplugin')
+  finish
+endif
+let b:did_ftplugin = 1
+
+let s:save_cpo = &cpo
+set cpo&vim
+let b:undo_ftplugin = 'setlocal commentstring< comments<'
+
+setlocal commentstring=#\ %s
+setlocal comments=:#
+
+let &cpo = s:save_cpo
+unlet s:save_cpo
+
+" vim: et sw=2 sts=2
diff --git a/runtime/indent/hamster.vim b/runtime/indent/hamster.vim
index b27a173..ae5c3fd 100644
--- a/runtime/indent/hamster.vim
+++ b/runtime/indent/hamster.vim
@@ -1,8 +1,14 @@
 " Vim indent file
 " Language:    Hamster Script 
-" Version:     2.0.6.0
-" Last Change: Wed Nov 08 2006 12:02:42 PM
-" Maintainer:  David Fishburn <fishburn@ianywhere.com>
+" Version:     2.0.6.1
+" Last Change: 2021 Oct 11
+" Maintainer:  David Fishburn <dfishburn dot vim at gmail dot com>
+" Download: https://www.vim.org/scripts/script.php?script_id=1099
+"
+"    2.0.6.1 (Oct 2021)
+"        Added b:undo_indent
+"        Added cpo check
+"
 
 " Only load this indent file when no other was loaded.
 if exists("b:did_indent")
@@ -14,12 +20,17 @@
 setlocal indentkeys+==~do,=~until,=~while,=~repeat,=~for,=~loop
 setlocal indentkeys+==~sub,=~endsub
 
+let b:undo_indent = "setl indentkeys<"
+
 " Define the appropriate indent function but only once
 setlocal indentexpr=HamGetFreeIndent()
 if exists("*HamGetFreeIndent")
   finish
 endif
 
+let s:keepcpo = &cpo
+set cpo&vim
+
 function HamGetIndent(lnum)
   let ind = indent(a:lnum)
   let prevline=getline(a:lnum)
@@ -52,4 +63,8 @@
   return ind
 endfunction
 
+" Restore:
+let &cpo = s:keepcpo
+unlet s:keepcpo
+
 " vim:sw=2 tw=80
diff --git a/runtime/indent/sqlanywhere.vim b/runtime/indent/sqlanywhere.vim
index d39fa32..4772b59 100644
--- a/runtime/indent/sqlanywhere.vim
+++ b/runtime/indent/sqlanywhere.vim
@@ -1,9 +1,8 @@
 " Vim indent file
 " Language:    SQL
 " Maintainer:  David Fishburn <dfishburn dot vim at gmail dot com>
-" Last Change By Maintainer: 2017 Jun 13
-" Last Change: by Stephen Wall, #5578, 2020 Jun 07
-" Version:     3.0
+" Last Change: 2021 Oct 11
+" Version:     4.0
 " Download:    http://vim.sourceforge.net/script.php?script_id=495
 
 " Notes:
@@ -21,6 +20,9 @@
 "    it, this can leave the indent hanging to the right one too many.
 "
 " History:
+"    4.0 (Oct 2021)
+"        Added b:undo_indent
+"
 "    3.0 (Dec 2012)
 "        Added cpo check
 "
@@ -56,10 +58,13 @@
 " in the indentkeys is typed
 setlocal indentexpr=GetSQLIndent()
 
+let b:undo_indent = "setl indentexpr< indentkeys<"
+
 " Only define the functions once.
 if exists("*GetSQLIndent")
     finish
 endif
+
 let s:keepcpo= &cpo
 set cpo&vim
 
@@ -68,14 +73,9 @@
 " IS is excluded, since it is difficult to determine when the
 " ending block is (especially for procedures/functions).
 let s:SQLBlockStart = '^\s*\%('.
-                \ 'if\>.*\<then\|'.
-                \ 'then\|else\>\|'.
-                \ 'elseif\>.*\<then\|'.
-                \ 'elsif\>.(\<then\|'.
-                \ 'while\>.*\<loop\|'.
-                \ 'for\>.*\<loop\|'.
-                \ 'foreach\>.*\<loop\|'. 
-                \ 'loop\|do\|declare\|begin\|'.
+                \ 'if\|else\|elseif\|elsif\|'.
+                \ 'while\|loop\|do\|for\|'.
+                \ 'begin\|'.
                 \ 'case\|when\|merge\|exception'.
                 \ '\)\>'
 let s:SQLBlockEnd = '^\s*\(end\)\>'
diff --git a/runtime/indent/tcsh.vim b/runtime/indent/tcsh.vim
index 025d9c8..93d96e7 100644
--- a/runtime/indent/tcsh.vim
+++ b/runtime/indent/tcsh.vim
@@ -1,7 +1,8 @@
 " Vim indent file
 " Language:		C-shell (tcsh)
-" Maintainer:		Doug Kearns <a@b.com> where a=dougkearns, b=gmail
-" Last Modified:	Sun 26 Sep 2021 12:38:38 PM EDT
+" Maintainer:		Doug Kearns <dougkearns@gmail.com>
+" Previous Maintainer:	Gautam Iyer <gi1242+vim@NoSpam.com> where NoSpam=gmail (Original Author)
+" Last Change:		2021 Oct 15
 
 " Only load this indent file when no other was loaded.
 if exists("b:did_indent")
@@ -11,7 +12,9 @@
 let b:did_indent = 1
 
 setlocal indentexpr=TcshGetIndent()
-setlocal indentkeys+=e,0=end,0=endsw indentkeys-=0{,0},0),:,0#
+setlocal indentkeys+=e,0=end
+setlocal indentkeys-=0{,0},0),:,0#
+
 let b:undo_indent = "setl inde< indk<"
 
 " Only define the function once.
@@ -40,9 +43,9 @@
 	let ind = ind - shiftwidth()
     endif
 
-    " Subtract indent if current line has on end, endif, case commands
+    " Subtract indent if current line has on end, endif, endsw, case commands
     let line = getline(v:lnum)
-    if line =~ '\v^\s*%(else|end|endif)\s*$'
+    if line =~ '\v^\s*%(else|end|endif|endsw)\s*$'
 	let ind = ind - shiftwidth()
     endif
 
diff --git a/runtime/syntax/css.vim b/runtime/syntax/css.vim
index 19326d0..67ad1ea 100644
--- a/runtime/syntax/css.vim
+++ b/runtime/syntax/css.vim
@@ -2,12 +2,12 @@
 " Language:     Cascading Style Sheets
 " Previous Contributor List:
 "               Jules Wang      <w.jq0722@gmail.com>
-"               Claudio Fleiner <claudio@fleiner.com> (Maintainer)
+"               Claudio Fleiner <claudio@fleiner.com>
 "               Yeti            (Add full CSS2, HTML4 support)
 "               Nikolai Weibull (Add CSS2 support)
-" URL:          https://github.com/jsit/css.vim
+" URL:          https://github.com/vim-language-dept/css-syntax.vim
 " Maintainer:   Jay Sitter <jay@jaysitter.com>
-" Last Change:  2019 Jul. 29
+" Last Change:  2021 Oct 15
 
 " quit when a syntax file was already loaded
 if !exists("main_syntax")
@@ -23,6 +23,8 @@
 set cpo&vim
 
 syn case ignore
+" Add dash to allowed keyword characters.
+syn iskeyword @,48-57,_,192-255,-
 
 " HTML4 tags
 syn keyword cssTagName abbr address area a b base
@@ -32,7 +34,7 @@
 syn keyword cssTagName h1 h2 h3 h4 h5 h6 head hr html img i
 syn keyword cssTagName iframe input ins isindex kbd label legend li
 syn keyword cssTagName link map menu meta noscript ol optgroup
-syn keyword cssTagName option p param pre q s samp script small
+syn keyword cssTagName option p param picture pre q s samp script small
 syn keyword cssTagName span strong sub sup tbody td
 syn keyword cssTagName textarea tfoot th thead title tr ul u var
 syn keyword cssTagName object svg
@@ -127,7 +129,7 @@
 syn region cssFunction contained matchgroup=cssFunctionName start="\<\(var\|calc\)\s*(" end=")" contains=cssCustomProp,cssValue.*,cssFunction,cssColor,cssStringQ,cssStringQQ oneline
 syn region cssFunction contained matchgroup=cssFunctionName start="\<\(rgb\|clip\|attr\|counter\|rect\|cubic-bezier\|steps\)\s*(" end=")" oneline  contains=cssValueInteger,cssValueNumber,cssValueLength,cssFunctionComma
 syn region cssFunction contained matchgroup=cssFunctionName start="\<\(rgba\|hsl\|hsla\|color-stop\|from\|to\)\s*(" end=")" oneline  contains=cssColor,cssValueInteger,cssValueNumber,cssValueLength,cssFunctionComma,cssFunction
-syn region cssFunction contained matchgroup=cssFunctionName start="\<\(linear-\|radial-\)\=\gradient\s*(" end=")" oneline  contains=cssColor,cssValueInteger,cssValueNumber,cssValueLength,cssFunction,cssGradientAttr,cssFunctionComma
+syn region cssFunction contained matchgroup=cssFunctionName start="\<\(linear-\|radial-\|conic-\)\=\gradient\s*(" end=")" oneline  contains=cssColor,cssValueInteger,cssValueNumber,cssValueLength,cssFunction,cssGradientAttr,cssFunctionComma
 syn region cssFunction contained matchgroup=cssFunctionName start="\<\(matrix\(3d\)\=\|scale\(3d\|X\|Y\|Z\)\=\|translate\(3d\|X\|Y\|Z\)\=\|skew\(X\|Y\)\=\|rotate\(3d\|X\|Y\|Z\)\=\|perspective\)\s*(" end=")" oneline contains=cssValueInteger,cssValueNumber,cssValueLength,cssValueAngle,cssFunctionComma
 syn region cssFunction contained matchgroup=cssFunctionName start="\<\(blur\|brightness\|contrast\|drop-shadow\|grayscale\|hue-rotate\|invert\|opacity\|saturate\|sepia\)\s*(" end=")" oneline contains=cssValueInteger,cssValueNumber,cssValueLength,cssValueAngle,cssFunctionComma
 syn keyword cssGradientAttr contained top bottom left right cover center middle ellipse at
@@ -220,7 +222,7 @@
 syn match cssFlexibleBoxAttr contained "\<\(row\|column\|wrap\)\(-reverse\)\=\>"
 syn keyword cssFlexibleBoxAttr contained nowrap stretch baseline center
 syn match cssFlexibleBoxAttr contained "\<flex\(-\(start\|end\)\)\=\>"
-syn match cssFlexibleBoxAttr contained "\<space\(-\(between\|around\)\)\=\>"
+syn match cssFlexibleBoxAttr contained "\<space\(-\(between\|around\|evenly\)\)\=\>"
 
 " CSS Fonts Module Level 3
 " http://www.w3.org/TR/css-fonts-3/
@@ -234,9 +236,7 @@
 syn match cssFontAttr contained "\<\(x\{1,2\}-\)\=\(large\|small\)\>"
 syn match cssFontAttr contained "\<small-\(caps\|caption\)\>"
 " font-family attributes
-syn match cssFontAttr contained "\<\(sans-\)\=serif\>"
-syn keyword cssFontAttr contained Antiqua Arial Black Book Charcoal Comic Courier Dingbats Gadget Geneva Georgia Grande Helvetica Impact Linotype Lucida MS Monaco Neue New Palatino Roboto Roman Symbol Tahoma Times Trebuchet Verdana Webdings Wingdings York Zapf
-syn keyword cssFontAttr contained cursive fantasy monospace
+syn keyword cssFontAttr contained sans-serif serif cursive fantasy monospace
 " font-feature-settings attributes
 syn keyword cssFontAttr contained on off
 " font-stretch attributes
@@ -283,6 +283,7 @@
 syn match cssGridProp contained "\<grid-template\(-\(columns\|rows\|areas\)\)\=\>"
 syn match cssGridProp contained "\<grid-\(column\|row\)\(-\(start\|end\|gap\)\)\=\>"
 syn match cssGridProp contained "\<grid-\(area\|gap\)\>"
+syn match cssGridProp contained "\<gap\>"
 syn match cssGridProp contained "\<grid-auto-\(flow\|rows\|columns\)\>"
 
 syn match cssHyerlinkProp contained "\<target\(-\(name\|new\|position\)\)\=\>"
@@ -294,6 +295,10 @@
 syn keyword cssListAttr contained disc circle square hebrew armenian georgian
 syn keyword cssListAttr contained inside outside
 
+" object-fit https://www.w3.org/TR/css-images-3/#the-object-fit
+syn match cssObjectProp contained "\<object-\(fit\|position\)\>"
+syn keyword cssObjectAttr contained fill contain cover scale-down
+
 syn keyword cssPositioningProp contained bottom clear clip display float left
 syn keyword cssPositioningProp contained position right top visibility
 syn match cssPositioningProp contained "\<z-index\>"
@@ -303,7 +308,7 @@
 syn match cssPositioningAttr contained "\<list-item\>"
 syn match cssPositioningAttr contained "\<inline\(-\(block\|box\|table\|grid\|flex\)\)\=\>"
 syn match cssPositioningAttr contained "\<flow\(-root\)\=\>"
-syn keyword cssPositioningAttr contained static relative absolute fixed subgrid
+syn keyword cssPositioningAttr contained static relative absolute fixed subgrid sticky
 
 syn keyword cssPrintAttr contained landscape portrait crop cross always
 
@@ -548,6 +553,7 @@
 hi def link cssMultiColumnProp cssProp
 hi def link cssPagedMediaProp cssProp
 hi def link cssPositioningProp cssProp
+hi def link cssObjectProp cssProp
 hi def link cssPrintProp cssProp
 hi def link cssRubyProp cssProp
 hi def link cssSpeechProp cssProp
@@ -581,6 +587,7 @@
 hi def link cssPaddingAttr cssAttr
 hi def link cssPagedMediaAttr cssAttr
 hi def link cssPositioningAttr cssAttr
+hi def link cssObjectAttr cssAttr
 hi def link cssGradientAttr cssAttr
 hi def link cssPrintAttr cssAttr
 hi def link cssRubyAttr cssAttr
diff --git a/runtime/syntax/tcsh.vim b/runtime/syntax/tcsh.vim
index 27c6417..6837125 100644
--- a/runtime/syntax/tcsh.vim
+++ b/runtime/syntax/tcsh.vim
@@ -1,8 +1,9 @@
-" tcsh.vim: Vim syntax file for tcsh scripts
-" Maintainer: Doug Kearns <dougkearns@NoSpam.com> where NoSpam=gmail
-" Author: Gautam Iyer <gi1242+vim@NoSpam.com> where NoSpam=gmail
-" Modified: Sun 26 Sep 2021 12:40:55 PM EDT
-"
+" Vim syntax file
+" Language:		tcsh scripts
+" Maintainer:		Doug Kearns <dougkearns@gmail.com>
+" Previous Maintainer:	Gautam Iyer <gi1242+vim@NoSpam.com> where NoSpam=gmail (Original Author)
+" Last Change:		2021 Oct 15
+
 " Description: We break up each statement into a "command" and an "end" part.
 " All groups are either a "command" or part of the "end" of a statement (ie
 " everything after the "command"). This is because blindly highlighting tcsh
@@ -20,36 +21,36 @@
 let s:oldcpo = &cpo
 set cpo&vim " Line continuation is used
 
-setlocal iskeyword+=-
+syn iskeyword @,48-57,_,192-255,-
 
 syn case match
 
-" ----- Clusters -----
+" ----- Clusters ----- {{{1
 syn cluster tcshModifiers	contains=tcshModifier,tcshModifierError
 syn cluster tcshQuoteList	contains=tcshDQuote,tcshSQuote,tcshBQuote
-syn cluster tcshStatementEnds	contains=@tcshQuoteList,tcshComment,@tcshVarList,tcshRedir,tcshMeta,tcshHereDoc,tcshSpecial,tcshArguement
+syn cluster tcshStatementEnds	contains=@tcshQuoteList,tcshComment,@tcshVarList,tcshRedir,tcshMeta,tcshHereDoc,tcshSpecial,tcshArgument
 syn cluster tcshStatements	contains=tcshBuiltin,tcshCommands,tcshIf,tcshWhile
 syn cluster tcshVarList		contains=tcshUsrVar,tcshArgv,tcshSubst
 syn cluster tcshConditions	contains=tcshCmdSubst,tcshParenExpr,tcshOperator,tcshNumber,@tcshVarList
 
-" ----- Errors -----
+" ----- Errors ----- {{{1
 " Define first, so can be easily overridden.
 syn match tcshError contained '\v\S.+'
 
-" ----- Statements -----
+" ----- Statements ----- {{{1
 " Tcsh commands: Any filename / modifiable variable (must be first!)
 syn match tcshCommands	'\v[a-zA-Z0-9\\./_$:-]+' contains=tcshSpecial,tcshUsrVar,tcshArgv,tcshVarError nextgroup=tcshStatementEnd
 
 " Builtin commands except those treated specially. Currently (un)set(env),
 " (un)alias, if, while, else, bindkey
-syn keyword tcshBuiltin nextgroup=tcshStatementEnd alloc bg break breaksw builtins bye case cd chdir complete continue default dirs echo echotc end endif endsw eval exec exit fg filetest foreach getspath getxvers glob goto hashstat history hup inlib jobs kill limit log login logout ls ls-F migrate newgrp nice nohup notify onintr popd printenv pushd rehash repeat rootnode sched setpath setspath settc setty setxvers shift source stop suspend switch telltc time umask uncomplete unhash universe unlimit ver wait warp watchlog where which
+syn keyword tcshBuiltin nextgroup=tcshStatementEnd alloc bg break breaksw builtins bye case cd chdir complete continue default dirs echo echotc end endif endsw eval exec exit fg filetest foreach getspath getxvers glob goto hashstat history hup inlib jobs kill limit log login logout ls ls-F migrate newgrp nice nohup notify onintr popd printenv pushd rehash repeat rootnode sched setpath setspath settc setty setxvers shift source stop suspend switch telltc termname time umask uncomplete unhash universe unlimit ver wait warp watchlog where which
 
 " StatementEnd is anything after a built-in / command till the lexical end of a
 " statement (;, |, ||, |&, && or end of line)
 syn region tcshStatementEnd	transparent contained matchgroup=tcshBuiltin start='' end='\v\\@<!(;|\|[|&]?|\&\&|$)' contains=@tcshStatementEnds
 
 " set expressions (Contains shell variables)
-syn keyword tcshShellVar contained afsuser ampm argv autocorrect autoexpand autolist autologout backslash_quote catalog cdpath color colorcat command complete continue continue_args correct cwd dextract dirsfile dirstack dspmbyte dunique echo echo_style edit ellipsis fignore filec gid group histchars histdup histfile histlit history home ignoreeof implicitcd inputmode killdup killring listflags listjobs listlinks listmax listmaxrows loginsh logout mail matchbeep nobeep noclobber noding noglob nokanji nonomatch nostat notify oid owd path printexitvalue prompt prompt2 prompt3 promptchars pushdtohome pushdsilent recexact recognize_only_executables rmstar rprompt savedirs savehist sched shell shlvl status symlinks tcsh term time tperiod tty uid user verbose version visiblebell watch who wordchars
+syn keyword tcshShellVar contained addsuffix afsuser ampm anyerror argv autocorrect autoexpand autolist autologout autorehash backslash_quote catalog cdpath cdtohome color colorcat command compat_expr complete continue continue_args correct csubstnonl cwd dextract dirsfile dirstack dspmbyte dunique echo echo_style edit editors ellipsis euid euser fignore filec gid globdot globstar group highlight histchars histdup histfile histlit history home ignoreeof implicitcd inputmode killdup killring listflags listjobs listlinks listmax listmaxrows loginsh logout mail matchbeep nobeep noclobber noding noglob nokanji nonomatch nostat notify oid owd padhour parseoctal path printexitvalue prompt prompt2 prompt3 promptchars pushdtohome pushdsilent recexact recognize_only_executables rmstar rprompt savedirs savehist sched shell shlvl status symlinks tcsh term time tperiod tty uid user verbose version vimode visiblebell watch who wordchars
 syn keyword tcshBuiltin	nextgroup=tcshSetEnd set unset
 syn region  tcshSetEnd	contained transparent matchgroup=tcshBuiltin start='' skip='\\$' end='$\|;' contains=tcshShellVar,@tcshStatementEnds
 
@@ -96,14 +97,15 @@
 	    \ history-search-forward insert-last-word i-search-fwd
 	    \ i-search-back keyboard-quit kill-line kill-region
 	    \ kill-whole-line list-choices list-choices-raw list-glob
-	    \ list-or-eof load-average magic-space newline normalize-path
-	    \ normalize-command overwrite-mode prefix-meta quoted-insert
-	    \ redisplay run-fg-editor run-help self-insert-command
-	    \ sequence-lead-in set-mark-command spell-word spell-line
-	    \ stuff-char toggle-literal-history transpose-chars
-	    \ transpose-gosling tty-dsusp tty-flush-output tty-sigintr
-	    \ tty-sigquit tty-sigtsusp tty-start-output tty-stop-output
-	    \ undefined-key universal-argument up-history upcase-word
+	    \ list-or-eof load-average magic-space newline newline-and-hold
+	    \ newline-and-down-history normalize-path normalize-command
+	    \ overwrite-mode prefix-meta quoted-insert redisplay
+	    \ run-fg-editor run-help self-insert-command sequence-lead-in
+	    \ set-mark-command spell-word spell-line stuff-char
+	    \ toggle-literal-history transpose-chars transpose-gosling
+	    \ tty-dsusp tty-flush-output tty-sigintr tty-sigquit tty-sigtsusp
+	    \ tty-start-output tty-stop-output undefined-key
+	    \ universal-argument up-history upcase-word
 	    \ vi-beginning-of-next-word vi-add vi-add-at-eol vi-chg-case
 	    \ vi-chg-meta vi-chg-to-eol vi-cmd-mode vi-cmd-mode-complete
 	    \ vi-delprev vi-delmeta vi-endword vi-eword vi-char-back
@@ -116,7 +118,7 @@
 	    \ e_paste_from_clipboard e_dosify_next e_dosify_prev e_page_up
 	    \ e_page_down
 syn keyword tcshBuiltin nextgroup=tcshBindkeyEnd bindkey
-syn region tcshBindkeyEnd contained transparent matchgroup=tcshBuiltin start='' skip='\\$' end='$' contains=@tcshQuoteList,tcshComment,@tcshVarList,tcshMeta,tcshSpecial,tcshArguement,tcshBindkeyFuncs
+syn region tcshBindkeyEnd contained transparent matchgroup=tcshBuiltin start='' skip='\\$' end='$' contains=@tcshQuoteList,tcshComment,@tcshVarList,tcshMeta,tcshSpecial,tcshArgument,tcshBindkeyFuncs
 
 " Expressions start with @.
 syn match tcshExprStart '\v\@\s+' nextgroup=tcshExprVar
@@ -126,20 +128,20 @@
 syn match tcshExprEnd	contained '\v.*$'hs=e+1 contains=@tcshConditions
 syn match tcshExprEnd	contained '\v.{-};'hs=e	contains=@tcshConditions
 
-" ----- Comments: -----
+" ----- Comments: ----- {{{1
 syn match tcshComment	'#\s.*' contains=tcshTodo,tcshCommentTi,@Spell
 syn match tcshComment	'\v#($|\S.*)' contains=tcshTodo,tcshCommentTi
 syn match tcshSharpBang '^#! .*$'
 syn match tcshCommentTi contained '\v#\s*\u\w*(\s+\u\w*)*:'hs=s+1 contains=tcshTodo
 syn match tcshTodo	contained '\v\c<todo>'
 
-" ----- Strings -----
+" ----- Strings ----- {{{1
 " Tcsh does not allow \" in strings unless the "backslash_quote" shell
 " variable is set. Set the vim variable "tcsh_backslash_quote" to 0 if you
 " want VIM to assume that no backslash quote constructs exist.
 
 " Backquotes are treated as commands, and are not contained in anything
-if(exists('tcsh_backslash_quote') && tcsh_backslash_quote == 0)
+if exists('tcsh_backslash_quote') && tcsh_backslash_quote == 0
     syn region tcshSQuote	keepend contained start="\v\\@<!'" end="'"
     syn region tcshDQuote	keepend contained start='\v\\@<!"' end='"' contains=@tcshVarList,tcshSpecial,@Spell
     syn region tcshBQuote	keepend start='\v\\@<!`' end='`' contains=@tcshStatements
@@ -149,7 +151,7 @@
     syn region tcshBQuote	keepend matchgroup=tcshBQuoteGrp start='\v\\@<!`' skip='\v\\\\|\\`' end='`' contains=@tcshStatements
 endif
 
-" ----- Variables -----
+" ----- Variables ----- {{{1
 " Variable Errors. Must come first! \$ constructs will be flagged by
 " tcshSpecial, so we don't consider them here.
 syn match tcshVarError	'\v\$\S*'	contained
@@ -171,7 +173,7 @@
 syn match tcshModifierError	contained '\v:\S*'
 syn match tcshModifier		contained '\v:[ag]?[htreuls&qx]' nextgroup=@tcshModifiers
 
-" ----- Operators / Specials -----
+" ----- Operators / Specials ----- {{{1
 " Standard redirects (except <<) [<, >, >>, >>&, >>!, >>&!]
 syn match tcshRedir contained	'\v\<|\>\>?\&?!?'
 
@@ -190,13 +192,13 @@
 syn match tcshNumber	contained '\v<-?\d+>'
 
 " Arguments
-syn match tcshArguement	contained '\v\s@<=-(\w|-)*'
+syn match tcshArgument	contained '\v\s@<=-(\w|-)*'
 
 " Special characters. \xxx, or backslashed characters.
 "syn match tcshSpecial	contained '\v\\@<!\\(\d{3}|.)'
 syn match tcshSpecial	contained '\v\\%([0-7]{3}|.)'
 
-" ----- Synchronising -----
+" ----- Synchronising ----- {{{1
 if exists('tcsh_minlines')
     if tcsh_minlines == 'fromstart'
 	syn sync fromstart
@@ -207,6 +209,7 @@
     syn sync minlines=100	" Some completions can be quite long
 endif
 
+" ----- Highlighting ----- {{{1
 " Define highlighting of syntax groups
 hi def link tcshError		Error
 hi def link tcshBuiltin		Statement
@@ -233,17 +236,20 @@
 hi def link tcshUsrVar		Type
 hi def link tcshArgv		tcshUsrVar
 hi def link tcshSubst		tcshUsrVar
-hi def link tcshModifier	tcshArguement
+hi def link tcshModifier	tcshArgument
 hi def link tcshModifierError	tcshVarError
 hi def link tcshMeta		tcshSubst
 hi def link tcshRedir		tcshOperator
 hi def link tcshHereDoc		tcshSQuote
 hi def link tcshOperator	Operator
 hi def link tcshNumber		Number
-hi def link tcshArguement	Special
+hi def link tcshArgument	Special
 hi def link tcshSpecial		SpecialChar
+" }}}
 
 let &cpo = s:oldcpo
 unlet s:oldcpo
 
 let b:current_syntax = 'tcsh'
+
+" vim: nowrap sw=2 sts=2 ts=8 noet fdm=marker:
diff --git a/runtime/syntax/tmux.vim b/runtime/syntax/tmux.vim
index 4f435ab..867c033 100644
--- a/runtime/syntax/tmux.vim
+++ b/runtime/syntax/tmux.vim
@@ -1,5 +1,5 @@
 " Language: tmux(1) configuration file
-" Version: 3.0 (git-48cbbb87)
+" Version: 3.2a (git-44ada9cd)
 " URL: https://github.com/ericpruitt/tmux.vim/
 " Maintainer: Eric Pruitt <eric.pruitt@gmail.com>
 " License: 2-Clause BSD (http://opensource.org/licenses/BSD-2-Clause)
@@ -30,14 +30,14 @@
 syn match tmuxVariableExpansion /\${\=\w\+}\=/         display
 syn match tmuxControl           /%\(if\|elif\|else\|endif\)/
 
-syn region tmuxComment start=/#/ skip=/\\\@<!\\$/ end=/$/ contains=tmuxTodo
+syn region tmuxComment start=/#/ skip=/\\\@<!\\$/ end=/$/ contains=tmuxTodo,@Spell
 
-syn region tmuxString start=+"+ skip=+\\\\\|\\"\|\\$+ excludenl end=+"+ end='$' contains=tmuxFormatString
-syn region tmuxString start=+'+ skip=+\\\\\|\\'\|\\$+ excludenl end=+'+ end='$' contains=tmuxFormatString
+syn region tmuxString start=+"+ skip=+\\\\\|\\"\|\\$+ excludenl end=+"+ end='$' contains=tmuxFormatString,@Spell
+syn region tmuxString start=+'+ skip=+\\\\\|\\'\|\\$+ excludenl end=+'+ end='$' contains=tmuxFormatString,@Spell
 
 " TODO: Figure out how escaping works inside of #(...) and #{...} blocks.
 syn region tmuxFormatString start=/#[#DFhHIPSTW]/ end=// contained keepend
-syn region tmuxFormatString start=/#{/ skip=/#{.\{-}}/ end=/}/ contained keepend
+syn region tmuxFormatString start=/#{/ skip=/#{.\{-}}/ end=/}/ keepend
 syn region tmuxFormatString start=/#(/ skip=/#(.\{-})/ end=/)/ contained keepend
 
 hi def link tmuxFormatString      Identifier
@@ -55,62 +55,69 @@
 hi def link tmuxVariable          Identifier
 hi def link tmuxVariableExpansion Identifier
 
-" Make the foreground of colourXXX keywords match the color they represent.
+" Make the foreground of colourXXX keywords match the color they represent
+" when g:tmux_syntax_colors is unset or set to a non-zero value.
 " Darker colors have their background set to white.
-for s:i in range(0, 255)
-    let s:bg = (!s:i || s:i == 16 || (s:i > 231 && s:i < 235)) ? 15 : "none"
-    exec "syn match tmuxColour" . s:i . " /\\<colour" . s:i . "\\>/ display"
-\     " | highlight tmuxColour" . s:i . " ctermfg=" . s:i . " ctermbg=" . s:bg
-endfor
+if get(g:, "tmux_syntax_colors", 1)
+    for s:i in range(0, 255)
+        let s:bg = (!s:i || s:i == 16 || (s:i > 231 && s:i < 235)) ? 15 : "none"
+        exec "syn match tmuxColour" . s:i . " /\\<colour" . s:i . "\\>/ display"
+\         " | highlight tmuxColour" . s:i . " ctermfg=" . s:i . " ctermbg=" . s:bg
+    endfor
+endif
 
 syn keyword tmuxOptions
-\ backspace buffer-limit command-alias default-terminal escape-time
-\ exit-empty activity-action assume-paste-time base-index bell-action
-\ default-command default-shell default-size destroy-unattached
+\ backspace buffer-limit command-alias copy-command default-terminal editor
+\ escape-time exit-empty activity-action assume-paste-time base-index
+\ bell-action default-command default-shell default-size destroy-unattached
 \ detach-on-destroy display-panes-active-colour display-panes-colour
-\ display-panes-time display-time exit-unattached focus-events history-file
-\ history-limit key-table lock-after-time lock-command message-command-style
-\ message-limit message-style aggressive-resize allow-rename
-\ alternate-screen automatic-rename automatic-rename-format
-\ clock-mode-colour clock-mode-style main-pane-height main-pane-width
-\ mode-keys mode-style monitor-activity monitor-bell monitor-silence mouse
-\ other-pane-height other-pane-width pane-active-border-style
-\ pane-base-index pane-border-format pane-border-status pane-border-style
-\ prefix prefix2 remain-on-exit renumber-windows repeat-time set-clipboard
-\ set-titles set-titles-string silence-action status status-bg status-fg
-\ status-format status-interval status-justify status-keys status-left
-\ status-left-length status-left-style status-position status-right
-\ status-right-length status-right-style status-style synchronize-panes
-\ terminal-overrides update-environment user-keys visual-activity
-\ visual-bell visual-silence window-active-style window-size
-\ window-status-activity-style window-status-bell-style
+\ display-panes-time display-time exit-unattached extended-keys focus-events
+\ history-file history-limit key-table lock-after-time lock-command
+\ message-command-style message-limit message-style aggressive-resize
+\ allow-rename alternate-screen automatic-rename automatic-rename-format
+\ clock-mode-colour clock-mode-style copy-mode-current-match-style
+\ copy-mode-mark-style copy-mode-match-style main-pane-height
+\ main-pane-width mode-keys mode-style monitor-activity monitor-bell
+\ monitor-silence mouse other-pane-height other-pane-width
+\ pane-active-border-style pane-base-index pane-border-format
+\ pane-border-lines pane-border-status pane-border-style pane-colours prefix
+\ prefix2 prompt-history-limit remain-on-exit renumber-windows repeat-time
+\ set-clipboard set-titles set-titles-string silence-action status status-bg
+\ status-fg status-format status-interval status-justify status-keys
+\ status-left status-left-length status-left-style status-position
+\ status-right status-right-length status-right-style status-style
+\ synchronize-panes terminal-features terminal-overrides update-environment
+\ user-keys visual-activity visual-bell visual-silence window-active-style
+\ window-size window-status-activity-style window-status-bell-style
 \ window-status-current-format window-status-current-style
 \ window-status-format window-status-last-style window-status-separator
-\ window-status-style window-style word-separators wrap-search xterm-keys
+\ window-status-style window-style word-separators wrap-search
 
 syn keyword tmuxCommands
 \ attach attach-session bind bind-key break-pane breakp capture-pane
 \ capturep choose-buffer choose-client choose-tree clear-history clearhist
-\ clock-mode command-prompt confirm confirm-before copy-mode detach
-\ detach-client display display-menu display-message display-panes displayp
-\ find-window findw if if-shell join-pane joinp kill-pane kill-server
-\ kill-session kill-window killp has-session has killw link-window linkw
-\ list-buffers list-clients list-commands list-keys list-panes list-sessions
-\ list-windows load-buffer loadb lock lock-client lock-server lock-session
-\ lockc last-pane lastp locks ls last-window last lsb lsc delete-buffer
-\ deleteb lscm lsk lsp lsw menu move-pane move-window movep movew new
-\ new-session new-window neww next next-layout next-window nextl
-\ paste-buffer pasteb pipe-pane pipep prev previous-layout previous-window
-\ prevl refresh refresh-client rename rename-session rename-window renamew
-\ resize-pane resize-window resizep resizew respawn-pane respawn-window
-\ respawnp respawnw rotate-window rotatew run run-shell save-buffer saveb
+\ clock-mode command-prompt confirm confirm-before copy-mode customize-mode
+\ detach detach-client display display-menu display-message display-panes
+\ display-popup displayp find-window findw if if-shell join-pane joinp
+\ kill-pane kill-server kill-session kill-window killp has has-session killw
+\ link-window linkw list-buffers list-clients list-commands list-keys
+\ list-panes list-sessions list-windows load-buffer loadb lock lock-client
+\ lock-server lock-session lockc last-pane lastp locks ls last last-window
+\ lsb delete-buffer deleteb lsc lscm lsk lsp lsw menu move-pane move-window
+\ clear-prompt-history clearphist movep movew new new-session new-window
+\ neww next next-layout next-window nextl paste-buffer pasteb pipe-pane
+\ pipep popup prev previous-layout previous-window prevl refresh
+\ refresh-client rename rename-session rename-window renamew resize-pane
+\ resize-window resizep resizew respawn-pane respawn-window respawnp
+\ respawnw rotate-window rotatew run run-shell save-buffer saveb
 \ select-layout select-pane select-window selectl selectp selectw send
 \ send-keys send-prefix set set-buffer set-environment set-hook set-option
 \ set-window-option setb setenv setw show show-buffer show-environment
-\ show-hooks show-messages show-options show-window-options showb showenv
-\ showmsgs showw source source-file split-window splitw start start-server
-\ suspend-client suspendc swap-pane swap-window swapp swapw switch-client
-\ switchc unbind unbind-key unlink-window unlinkw wait wait-for
+\ show-hooks show-messages show-options show-prompt-history
+\ show-window-options showb showenv showmsgs showphist showw source
+\ source-file split-window splitw start start-server suspend-client suspendc
+\ swap-pane swap-window swapp swapw switch-client switchc unbind unbind-key
+\ unlink-window unlinkw wait wait-for
 
 let &cpo = s:original_cpo
 unlet! s:original_cpo s:bg s:i
diff --git a/runtime/syntax/toml.vim b/runtime/syntax/toml.vim
new file mode 100644
index 0000000..bcb1b0b
--- /dev/null
+++ b/runtime/syntax/toml.vim
@@ -0,0 +1,81 @@
+" Vim syntax file
+" Language:            TOML
+" Homepage:            https://github.com/cespare/vim-toml
+" Maintainer:          Aman Verma
+" Previous Maintainer: Caleb Spare <cespare@gmail.com>
+" Last Change:         Oct 8, 2021
+
+if exists('b:current_syntax')
+  finish
+endif
+
+syn match tomlEscape /\\[btnfr"/\\]/ display contained
+syn match tomlEscape /\\u\x\{4}/ contained
+syn match tomlEscape /\\U\x\{8}/ contained
+syn match tomlLineEscape /\\$/ contained
+
+" Basic strings
+syn region tomlString oneline start=/"/ skip=/\\\\\|\\"/ end=/"/ contains=tomlEscape
+" Multi-line basic strings
+syn region tomlString start=/"""/ end=/"""/ contains=tomlEscape,tomlLineEscape
+" Literal strings
+syn region tomlString oneline start=/'/ end=/'/
+" Multi-line literal strings
+syn region tomlString start=/'''/ end=/'''/
+
+syn match tomlInteger /[+-]\=\<[1-9]\(_\=\d\)*\>/ display
+syn match tomlInteger /[+-]\=\<0\>/ display
+syn match tomlInteger /[+-]\=\<0x[[:xdigit:]]\(_\=[[:xdigit:]]\)*\>/ display
+syn match tomlInteger /[+-]\=\<0o[0-7]\(_\=[0-7]\)*\>/ display
+syn match tomlInteger /[+-]\=\<0b[01]\(_\=[01]\)*\>/ display
+syn match tomlInteger /[+-]\=\<\(inf\|nan\)\>/ display
+
+syn match tomlFloat /[+-]\=\<\d\(_\=\d\)*\.\d\+\>/ display
+syn match tomlFloat /[+-]\=\<\d\(_\=\d\)*\(\.\d\(_\=\d\)*\)\=[eE][+-]\=\d\(_\=\d\)*\>/ display
+
+syn match tomlBoolean /\<\%(true\|false\)\>/ display
+
+" https://tools.ietf.org/html/rfc3339
+syn match tomlDate /\d\{4\}-\d\{2\}-\d\{2\}/ display
+syn match tomlDate /\d\{2\}:\d\{2\}:\d\{2\}\%(\.\d\+\)\?/ display
+syn match tomlDate /\d\{4\}-\d\{2\}-\d\{2\}[T ]\d\{2\}:\d\{2\}:\d\{2\}\%(\.\d\+\)\?\%(Z\|[+-]\d\{2\}:\d\{2\}\)\?/ display
+
+syn match tomlDotInKey /\v[^.]+\zs\./ contained display
+syn match tomlKey /\v(^|[{,])\s*\zs[[:alnum:]._-]+\ze\s*\=/ contains=tomlDotInKey display
+syn region tomlKeyDq oneline start=/\v(^|[{,])\s*\zs"/ end=/"\ze\s*=/ contains=tomlEscape
+syn region tomlKeySq oneline start=/\v(^|[{,])\s*\zs'/ end=/'\ze\s*=/
+
+syn region tomlTable oneline start=/^\s*\[[^\[]/ end=/\]/ contains=tomlKey,tomlKeyDq,tomlKeySq,tomlDotInKey
+
+syn region tomlTableArray oneline start=/^\s*\[\[/ end=/\]\]/ contains=tomlKey,tomlKeyDq,tomlKeySq,tomlDotInKey
+
+syn region tomlKeyValueArray start=/=\s*\[\zs/ end=/\]/ contains=@tomlValue
+
+syn region tomlArray start=/\[/ end=/\]/ contains=@tomlValue contained
+
+syn cluster tomlValue contains=tomlArray,tomlString,tomlInteger,tomlFloat,tomlBoolean,tomlDate,tomlComment
+
+syn keyword tomlTodo TODO FIXME XXX BUG contained
+
+syn match tomlComment /#.*/ contains=@Spell,tomlTodo
+
+hi def link tomlComment Comment
+hi def link tomlTodo Todo
+hi def link tomlTableArray Title
+hi def link tomlTable Title
+hi def link tomlDotInKey Normal
+hi def link tomlKeySq Identifier
+hi def link tomlKeyDq Identifier
+hi def link tomlKey Identifier
+hi def link tomlDate Constant
+hi def link tomlBoolean Boolean
+hi def link tomlFloat Float
+hi def link tomlInteger Number
+hi def link tomlString String
+hi def link tomlLineEscape SpecialChar
+hi def link tomlEscape SpecialChar
+
+syn sync minlines=500
+let b:current_syntax = 'toml'
+
+" vim: et sw=2 sts=2
