Update runtime files
diff --git a/runtime/syntax/autoit.vim b/runtime/syntax/autoit.vim
index 1b9ab74..6b6048a 100644
--- a/runtime/syntax/autoit.vim
+++ b/runtime/syntax/autoit.vim
@@ -5,6 +5,7 @@
 " Authored By:	Riccardo Casini <ric@libero.it>
 " Script URL:	http://www.vim.org/scripts/script.php?script_id=1239
 " ChangeLog:	Please visit the script URL for detailed change information
+" 		Included change from #970.
 
 " Quit when a syntax file was already loaded.
 if exists("b:current_syntax")
@@ -932,7 +933,7 @@
 " constants - string
 syn match autoitConst "\$STR_NOCASESENSE"
 syn match autoitConst "\$STR_CASESENSE"
-syn match autoitConst "\STR_STRIPLEADING"
+syn match autoitConst "\$STR_STRIPLEADING"
 syn match autoitConst "\$STR_STRIPTRAILING"
 syn match autoitConst "\$STR_STRIPSPACES"
 syn match autoitConst "\$STR_STRIPALL"
diff --git a/runtime/syntax/gdb.vim b/runtime/syntax/gdb.vim
index 25a21d1..c820ba4 100644
--- a/runtime/syntax/gdb.vim
+++ b/runtime/syntax/gdb.vim
@@ -2,7 +2,8 @@
 " Language:	GDB command files
 " Maintainer:	Claudio Fleiner <claudio@fleiner.com>
 " URL:		http://www.fleiner.com/vim/syntax/gdb.vim
-" Last Change:	2012 Oct 05
+" Last Change:	2021 Nov 15
+" 		Additional changes by Simon Sobisch
 
 " quit when a syntax file was already loaded
 if exists("b:current_syntax")
@@ -21,19 +22,19 @@
 
 
 syn keyword gdbStatement contained actions apply attach awatch backtrace break bt call catch cd clear collect commands
-syn keyword gdbStatement contained complete condition continue delete detach directory disable disassemble display down
+syn keyword gdbStatement contained complete condition continue delete detach directory disable disas[semble] disp[lay] down
 syn keyword gdbStatement contained echo else enable end file finish frame handle hbreak help if ignore
 syn keyword gdbStatement contained inspect jump kill list load maintenance make next nexti ni output overlay
-syn keyword gdbStatement contained passcount path print printf ptype pwd quit rbreak remote return run rwatch
-syn keyword gdbStatement contained search section set sharedlibrary shell show si signal source step stepi stepping
+syn keyword gdbStatement contained passcount path print printf ptype python pwd quit rbreak remote return run rwatch
+syn keyword gdbStatement contained search section set sharedlibrary shell show si signal skip source step stepi stepping
 syn keyword gdbStatement contained stop target tbreak tdump tfind thbreak thread tp trace tstart tstatus tstop
-syn keyword gdbStatement contained tty undisplay unset until up watch whatis where while ws x
+syn keyword gdbStatement contained tty und[isplay] unset until up watch whatis where while ws x
 syn match gdbFuncDef "\<define\>.*"
 syn match gdbStatmentContainer "^\s*\S\+" contains=gdbStatement,gdbFuncDef
 syn match gdbStatement "^\s*info" nextgroup=gdbInfo skipwhite skipempty
 
 " some commonly used abbreviations
-syn keyword gdbStatement c disp undisp disas p
+syn keyword gdbStatement c cont p py
 
 syn region gdbDocument matchgroup=gdbFuncDef start="\<document\>.*$" matchgroup=gdbFuncDef end="^end\s*$"
 
diff --git a/runtime/syntax/gnuplot.vim b/runtime/syntax/gnuplot.vim
index 9c98e67..b5092d7 100644
--- a/runtime/syntax/gnuplot.vim
+++ b/runtime/syntax/gnuplot.vim
@@ -3,7 +3,8 @@
 " Maintainer:	Josh Wainwright <wainwright DOT ja AT gmail DOT com>
 " Last Maintainer:	Andrew Rasmussen andyras@users.sourceforge.net
 " Original Maintainer:	John Hoelzel johnh51@users.sourceforge.net
-" Last Change:	2020 May 12
+" Last Change:	2021 Nov 16
+" 		additional changes from PR #8949
 " Filenames:	*.gnu *.plt *.gpi *.gih *.gp *.gnuplot scripts: #!*gnuplot
 " URL:		http://www.vim.org/scripts/script.php?script_id=4873
 " Original URL:	http://johnh51.get.to/vim/syntax/gnuplot.vim
@@ -32,22 +33,22 @@
 " syn match gnuplotSpecial	"\\\o\o\o\|\\x\x\x\|\\c[^"]\|\\[a-z\\]" contained
 
 " measurements in the units in, cm and pt are special
-syn match gnuplotUnit		"[0-9]+in"
-syn match gnuplotUnit		"[0-9]+cm"
-syn match gnuplotUnit		"[0-9]+pt"
+syn match gnuplotUnit		"\d+in"
+syn match gnuplotUnit		"\d+cm"
+syn match gnuplotUnit		"\d+pt"
 
 " external (shell) commands are special
-syn region gnuplotExternal	start="!" end="$"
+syn region gnuplotExternal	start="^\s*!" end="$"
 
 " ---- Comments ---- "
 
-syn region gnuplotComment	start="#" end="$" contains=gnuplotTodo
+syn region gnuplotComment	start="#" end="$" contains=gnuplotTodo,@Spell
 
 " ---- Constants ---- "
 
 " strings
-syn region gnuplotString	start=+"+ skip=+\\"+ end=+"+ contains=gnuplotSpecial
-syn region gnuplotString	start="'" end="'"
+syn region gnuplotString	start=+"+ skip=+\\"+ end=+"+ contains=gnuplotSpecial,@Spell
+syn region gnuplotString	start="'" end="'" contains=@Spell
 
 " built-in variables
 syn keyword gnuplotNumber	GNUTERM GPVAL_TERM GPVAL_TERMOPTIONS GPVAL_SPLOT
@@ -76,7 +77,7 @@
 syn keyword gnuplotNumber	GPVAL_VIEW_ROT_Z GPVAL_VIEW_SCALE
 
 " function name variables
-syn match gnuplotNumber		"GPFUN_[a-zA-Z_]*"
+syn match gnuplotNumber		"GPFUN_\h*"
 
 " stats variables
 syn keyword gnuplotNumber	STATS_records STATS_outofrange STATS_invalid
@@ -104,23 +105,23 @@
 
 " integer number, or floating point number without a dot and with "f".
 syn case    ignore
-syn match   gnuplotNumber	"\<[0-9]\+\(u\=l\=\|lu\|f\)\>"
+syn match   gnuplotNumber	"\<\d\+\(u\=l\=\|lu\|f\)\>"
 
 " floating point number, with dot, optional exponent
-syn match   gnuplotFloat	"\<[0-9]\+\.[0-9]*\(e[-+]\=[0-9]\+\)\=[fl]\=\>"
+syn match   gnuplotFloat	"\<\d\+\.\d*\(e[-+]\=\d\+\)\=[fl]\=\>"
 
 " floating point number, starting with a dot, optional exponent
-syn match   gnuplotFloat	"\.[0-9]\+\(e[-+]\=[0-9]\+\)\=[fl]\=\>"
+syn match   gnuplotFloat	"\.\d\+\(e[-+]\=\d\+\)\=[fl]\=\>"
 
 " floating point number, without dot, with exponent
-syn match   gnuplotFloat	"\<[0-9]\+e[-+]\=[0-9]\+[fl]\=\>"
+syn match   gnuplotFloat	"\<\d\+e[-+]\=\d\+[fl]\=\>"
 
 " hex number
-syn match   gnuplotNumber	"\<0x[0-9a-f]\+\(u\=l\=\|lu\)\>"
+syn match   gnuplotNumber	"\<0x\x\+\(u\=l\=\|lu\)\>"
 syn case    match
 
 " flag an octal number with wrong digits by not highlighting
-syn match   gnuplotOctalError	"\<0[0-7]*[89]"
+syn match   gnuplotOctalError	"\<0\o*[89]"
 
 " ---- Identifiers: Functions ---- "
 
@@ -374,8 +375,8 @@
 syn keyword gnuplotKeyword	palette pattern pi pointinterval pointsize
 syn keyword gnuplotKeyword	pointtype ps pt radius range rectangle
 syn keyword gnuplotKeyword	rowstacked screen separation size solid sorted
-syn keyword gnuplotKeyword	textbox transparent units unsorted userstyles
-syn keyword gnuplotKeyword	wedge x x2 xx xy yy
+syn keyword gnuplotKeyword	textbox units unsorted userstyles wedge
+syn keyword gnuplotKeyword	x x2 xx xy yy
 " set surface
 syn keyword gnuplotKeyword	surface implicit explicit
 " set table
@@ -477,9 +478,13 @@
 " keywords for 'test' command
 syn keyword gnuplotKeyword	terminal palette rgb rbg grb gbr brg bgr
 
+" The transparent gnuplot keyword cannot use 'syn keyword' as transparent
+" has a special meaning in :syntax commands.
+syn match gnuplotKeyword	"\<transparent\>"
+
 " ---- Macros ---- "
 
-syn match gnuplotMacro		"@[a-zA-Z0-9_]*"
+syn match gnuplotMacro		"@\w*"
 
 " ---- Todos ---- "
 
diff --git a/runtime/syntax/lisp.vim b/runtime/syntax/lisp.vim
index 434150a..90513e3 100644
--- a/runtime/syntax/lisp.vim
+++ b/runtime/syntax/lisp.vim
@@ -1,8 +1,8 @@
 " Vim syntax file
 " Language:    Lisp
 " Maintainer:  Charles E. Campbell <NcampObell@SdrPchip.AorgM-NOSPAM>
-" Last Change: Jul 11, 2019
-" Version:     30
+" Last Change: Nov 10, 2021
+" Version:     31
 " URL:	http://www.drchip.org/astronaut/vim/index.html#SYNTAX_LISP
 "
 "  Thanks to F Xavier Noria for a list of 978 Common Lisp symbols taken from HyperSpec
@@ -54,20 +54,20 @@
  syn region lispParen8 contained matchgroup=hlLevel8 start="`\=(" end=")" skip="|.\{-}|" contains=@lispListCluster,lispParen9
  syn region lispParen9 contained matchgroup=hlLevel9 start="`\=(" end=")" skip="|.\{-}|" contains=@lispListCluster,lispParen0
 else
- syn region lispList			matchgroup=lispParen start="("   skip="|.\{-}|"			matchgroup=lispParen end=")"	contains=@lispListCluster
- syn region lispBQList			matchgroup=PreProc   start="`("  skip="|.\{-}|"			matchgroup=PreProc   end=")"		contains=@lispListCluster
+ syn region lispList		matchgroup=lispParen start="("   skip="|.\{-}|"		matchgroup=lispParen end=")"	contains=@lispListCluster
+ syn region lispBQList		matchgroup=PreProc   start="`("  skip="|.\{-}|"		matchgroup=PreProc   end=")"	contains=@lispListCluster
 endif
 
 " ---------------------------------------------------------------------
 " Atoms: {{{1
-syn match lispAtomMark			"'"
-syn match lispAtom			"'("me=e-1			contains=lispAtomMark	nextgroup=lispAtomList
-syn match lispAtom			"'[^ \t()]\+"			contains=lispAtomMark
-syn match lispAtomBarSymbol		!'|..\{-}|!			contains=lispAtomMark
-syn region lispAtom			start=+'"+			skip=+\\"+ end=+"+
-syn region lispAtomList			contained			matchgroup=Special start="("	skip="|.\{-}|" matchgroup=Special end=")"	contains=@lispAtomCluster,lispString,lispEscapeSpecial
-syn match lispAtomNmbr			contained			"\<\d\+"
-syn match lispLeadWhite			contained			"^\s\+"
+syn match lispAtomMark		"'"
+syn match lispAtom		"'("me=e-1			contains=lispAtomMark	nextgroup=lispAtomList
+syn match lispAtom		"'[^ \t()]\+"			contains=lispAtomMark
+syn match lispAtomBarSymbol	!'|..\{-}|!			contains=lispAtomMark
+syn region lispAtom		start=+'"+			skip=+\\"+ end=+"+
+syn region lispAtomList		contained			matchgroup=Special start="("	skip="|.\{-}|" matchgroup=Special end=")"	contains=@lispAtomCluster,lispString,lispEscapeSpecial
+syn match lispAtomNmbr		contained			"\<\d\+"
+syn match lispLeadWhite		contained			"^\s\+"
 
 " ---------------------------------------------------------------------
 " Standard Lisp Functions and Macros: {{{1
@@ -553,6 +553,8 @@
 syn cluster lispCommentGroup	contains=lispTodo,@Spell
 syn match   lispComment		";.*$"				contains=@lispCommentGroup
 syn region  lispCommentRegion	start="#|" end="|#"		contains=lispCommentRegion,@lispCommentGroup
+syn region  lispComment		start="#+nil"	end="\ze)"	contains=@lispCommentGroup
+syn match   lispComment		'^\s*#+nil.*$'			contains=@lispCommentGroup
 syn keyword lispTodo		contained			combak			combak:			todo			todo:
 
 " ---------------------------------------------------------------------
diff --git a/runtime/syntax/routeros.vim b/runtime/syntax/routeros.vim
new file mode 100644
index 0000000..b6effc9
--- /dev/null
+++ b/runtime/syntax/routeros.vim
@@ -0,0 +1,91 @@
+" Vim syntax file
+" Language:        MikroTik RouterOS Script
+" Maintainer:      zainin <z@wintr.dev>
+" Original Author: ndbjorne @ MikroTik forums
+" Last Change:     2021 Nov 14
+
+" quit when a syntax file was already loaded
+if exists("b:current_syntax")
+  finish
+endif
+
+syn case ignore
+
+syn iskeyword @,48-57,-
+
+" comments
+syn match   routerosComment      /^\s*\zs#.*/
+
+" options submenus: /interface ether1 etc
+syn match   routerosSubMenu      "\([a-z]\)\@<!/[a-zA-Z0-9-]*"
+
+" variables are matched by looking at strings ending with "=", e.g. var=
+syn match   routerosVariable     "[a-zA-Z0-9-/]*\(=\)\@="
+syn match   routerosVariable     "$[a-zA-Z0-9-]*"
+
+" colored for clarity
+syn match   routerosDelimiter    "[,=]"
+" match slash in CIDR notation (1.2.3.4/24, 2001:db8::/48, ::1/128)
+syn match   routerosDelimiter    "\(\x\|:\)\@<=\/\(\d\)\@="
+" dash in IP ranges
+syn match   routerosDelimiter    "\(\x\|:\)\@<=-\(\x\|:\)\@="
+
+" match service names after "set", like in original routeros syntax
+syn match   routerosService      "\(set\)\@<=\s\(api-ssl\|api\|dns\|ftp\|http\|https\|pim\|ntp\|smb\|ssh\|telnet\|winbox\|www\|www-ssl\)"
+
+" colors various interfaces
+syn match   routerosInterface    "bridge\d\+\|ether\d\+\|wlan\d\+\|pppoe-\(out\|in\)\d\+"
+
+syn keyword routerosBoolean      yes no true false
+
+syn keyword routerosConditional  if
+
+" operators
+syn match   routerosOperator     " \zs[-+*<>=!~^&.,]\ze "
+syn match   routerosOperator     "[<>!]="
+syn match   routerosOperator     "<<\|>>"
+syn match   routerosOperator     "[+-]\d\@="
+
+syn keyword routerosOperator     and or in
+
+" commands
+syn keyword routerosCommands     beep delay put len typeof pick log time set find environment
+syn keyword routerosCommands     terminal error parse resolve toarray tobool toid toip toip6
+syn keyword routerosCommands     tonum tostr totime add remove enable disable where get print
+syn keyword routerosCommands     export edit find append as-value brief detail count-only file
+syn keyword routerosCommands     follow follow-only from interval terse value-list without-paging
+syn keyword routerosCommands     return
+
+" variable types
+syn keyword routerosType         global local
+
+" loop keywords
+syn keyword routerosRepeat       do while for foreach
+
+syn match   routerosSpecial      "[():[\]{|}]"
+
+syn match   routerosLineContinuation "\\$"
+
+syn match   routerosEscape       "\\["\\nrt$?_abfv]" contained display
+syn match   routerosEscape       "\\\x\x"            contained display
+
+syn region  routerosString       start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=routerosEscape,routerosLineContinuation
+
+hi link routerosComment              Comment
+hi link routerosSubMenu              Function
+hi link routerosVariable             Identifier
+hi link routerosDelimiter            Operator
+hi link routerosEscape               Special
+hi link routerosService              Type
+hi link routerosInterface            Type
+hi link routerosBoolean              Boolean
+hi link routerosConditional          Conditional
+hi link routerosOperator             Operator
+hi link routerosCommands             Operator
+hi link routerosType                 Type
+hi link routerosRepeat               Repeat
+hi link routerosSpecial              Delimiter
+hi link routerosString               String
+hi link routerosLineContinuation     Special
+
+let b:current_syntax = "routeros"
diff --git a/runtime/syntax/tcl.vim b/runtime/syntax/tcl.vim
index 73b2b3f..59cb04f 100644
--- a/runtime/syntax/tcl.vim
+++ b/runtime/syntax/tcl.vim
@@ -6,8 +6,8 @@
 "		(previously Matt Neumann <mattneu@purpleturtle.com>)
 "		(previously Allan Kelly <allan@fruitloaf.co.uk>)
 " Original:	Robin Becker <robin@jessikat.demon.co.uk>
-" Last Change:	2021 Oct 03
-" Version:	1.14
+" Last Change:	2021 Nov 16
+" Version:	1.14 plus improvements from PR #8948
 " URL:		(removed, no longer worked)
 
 " quit when a syntax file was already loaded
@@ -192,18 +192,18 @@
 syn keyword tclTodo contained	TODO
 
 " Sequences which are backslash-escaped: http://www.tcl.tk/man/tcl8.5/TclCmd/Tcl.htm#M16
-" Octal, hexadecimal, unicode codepoints, and the classics.
+" Octal, hexadecimal, Unicode codepoints, and the classics.
 " Tcl takes as many valid characters in a row as it can, so \xAZ in a string is newline followed by 'Z'.
-syn match   tclSpecial contained '\\\([0-7]\{1,3}\|x\x\{1,2}\|u\x\{1,4}\|[abfnrtv]\)'
+syn match   tclSpecial contained '\\\(\o\{1,3}\|x\x\{1,2}\|u\x\{1,4}\|[abfnrtv]\)'
 syn match   tclSpecial contained '\\[\[\]\{\}\"\$]'
 
 " Command appearing inside another command or inside a string.
 syn region tclEmbeddedStatement	start='\[' end='\]' contained contains=tclCommand,tclNumber,tclLineContinue,tclString,tclVarRef,tclEmbeddedStatement
 " A string needs the skip argument as it may legitimately contain \".
 " Match at start of line
-syn region  tclString		  start=+^"+ end=+"+ contains=@tclSpecialC skip=+\\\\\|\\"+
+syn region  tclString		  start=+^"+ end=+"+ contains=@tclSpecialC,@Spell skip=+\\\\\|\\"+
 "Match all other legal strings.
-syn region  tclString		  start=+[^\\]"+ms=s+1  end=+"+ contains=@tclSpecialC,@tclVarRefC,tclEmbeddedStatement skip=+\\\\\|\\"+
+syn region  tclString		  start=+[^\\]"+ms=s+1  end=+"+ contains=@tclSpecialC,@tclVarRefC,tclEmbeddedStatement,@Spell skip=+\\\\\|\\"+
 
 " Line continuation is backslash immediately followed by newline.
 syn match tclLineContinue '\\$'
@@ -222,12 +222,12 @@
 "floating point number, without dot, with exponent
 syn match  tclNumber		"\<\d\+e[-+]\=\d\+[fl]\=\>"
 "hex number
-syn match  tclNumber		"0x[0-9a-f]\+\(u\=l\=\|lu\)\>"
-"syn match  tclIdentifier	"\<[a-z_][a-z0-9_]*\>"
+syn match  tclNumber		"0x\x\+\(u\=l\=\|lu\)\>"
+"syn match  tclIdentifier	"\<\h\w*\>"
 syn case match
 
-syn region  tclComment		start="^\s*\#" skip="\\$" end="$" contains=tclTodo
-syn region  tclComment		start=/;\s*\#/hs=s+1 skip="\\$" end="$" contains=tclTodo
+syn region  tclComment		start="^\s*\#" skip="\\$" end="$" contains=tclTodo,@Spell
+syn region  tclComment		start=/;\s*\#/hs=s+1 skip="\\$" end="$" contains=tclTodo,@Spell
 
 "syn match tclComment /^\s*\#.*$/
 "syn match tclComment /;\s*\#.*$/hs=s+1
diff --git a/runtime/syntax/vim.vim b/runtime/syntax/vim.vim
index 7a146b5..412afe9 100644
--- a/runtime/syntax/vim.vim
+++ b/runtime/syntax/vim.vim
@@ -1,8 +1,8 @@
 " Vim syntax file
 " Language:	Vim 8.2 script
 " Maintainer:	Charles E. Campbell <NcampObell@SdrPchip.AorgM-NOSPAM>
-" Last Change:	Nov 02, 2021
-" Version:	8.2-11
+" Last Change:	November 10, 2021
+" Version:	8.2-14
 " URL:	http://www.drchip.org/astronaut/vim/index.html#SYNTAX_VIM
 " Automatically generated keyword lists: {{{1
 
@@ -78,12 +78,12 @@
 syn case match
 
 " Function Names {{{2
-syn keyword vimFuncName contained	abs argc assert_equal assert_match atan browse bufloaded byteidx charclass chdir ch_log ch_sendexpr col copy debugbreak diff_hlID empty execute expandcmd filter floor foldlevel function getchangelist getcmdline getcursorcharpos getftime getloclist getpos gettabinfo getwininfo glob haslocaldir histnr indent inputrestore invert items job_status json_decode libcallnr list2str log mapcheck matchaddpos matchfuzzypos menu_info nextnonblank popup_atcursor popup_dialog popup_getoptions popup_menu popup_show prompt_setcallback prop_clear prop_type_change pumvisible range reduce reltimestr remote_send resolve screenchar screenstring searchpairpos setbufvar setcursorcharpos setmatches settabwinvar shiftwidth sign_place simplify sound_clear spellbadword state strcharpart stridx strridx swapinfo synIDtrans tabpagenr tanh term_getaltscreen term_getline term_gettty term_setansicolors term_start test_garbagecollect_now test_ignore_error test_null_job test_override test_srand_seed timer_start tr undofile visualmode win_execute winheight winnr win_splitmove
-syn keyword vimFuncName contained	acos argidx assert_equalfile assert_nobeep atan2 browsedir bufname byteidxcomp charcol ch_evalexpr ch_logfile ch_sendraw complete cos deepcopy digraph_get environ exepath extend finddir fmod foldtext garbagecollect getchar getcmdpos getcwd getftype getmarklist getqflist gettabvar getwinpos glob2regpat hasmapto hlexists index inputsave isdirectory job_getchannel job_stop json_encode line listener_add log10 mapnew matcharg matchlist min nr2char popup_beval popup_filter_menu popup_getpos popup_move pow prompt_setinterrupt prop_find prop_type_delete py3eval readblob reg_executing remote_expr remote_startserver reverse screenchars search searchpos setcellwidths setenv setpos settagstack sign_define sign_placelist sin soundfold spellsuggest str2float strchars string strtrans swapname synstack tabpagewinnr tempname term_getansicolors term_getscrolled terminalprops term_setapi term_wait test_garbagecollect_soon test_null_blob test_null_list test_refcount test_unknown timer_stop trim undotree wildmenumode win_findbuf win_id2tabwin winrestcmd winwidth
-syn keyword vimFuncName contained	add arglistid assert_exception assert_notequal balloon_gettext bufadd bufnr call charidx ch_evalraw ch_open ch_setoptions complete_add cosh delete digraph_getlist escape exists extendnew findfile fnameescape foldtextresult get getcharmod getcmdtype getenv getimstatus getmatches getreg gettabwinvar getwinposx globpath histadd hlID input inputsecret isinf job_info join keys line2byte listener_flush luaeval mapset matchdelete matchstr mkdir or popup_clear popup_filter_yesno popup_hide popup_notification prevnonblank prompt_setprompt prop_list prop_type_get pyeval readdir reg_recording remote_foreground remove round screencol searchcount server2client setcharpos setfperm setqflist setwinvar sign_getdefined sign_undefine sinh sound_playevent split str2list strdisplaywidth strlen strwidth synconcealed system tagfiles term_dumpdiff term_getattr term_getsize term_list term_setkill test_alloc_fail test_getvalue test_null_channel test_null_partial test_scrollbar test_void timer_stopall trunc uniq winbufnr win_getid win_id2win winrestview wordcount
-syn keyword vimFuncName contained	and argv assert_fails assert_notmatch balloon_show bufexists bufwinid ceil ch_canread ch_getbufnr ch_read ch_status complete_check count deletebufline digraph_set eval exists_compiled feedkeys flatten fnamemodify foreground getbufinfo getcharpos getcmdwintype getfontname getjumplist getmousepos getreginfo gettagstack getwinposy has histdel hostname inputdialog insert islocked job_setoptions js_decode len lispindent listener_remove map match matchend matchstrpos mode pathshorten popup_close popup_findinfo popup_list popup_setoptions printf prop_add prop_remove prop_type_list pyxeval readdirex reltime remote_peek rename rubyeval screenpos searchdecl serverlist setcharsearch setline setreg sha256 sign_getplaced sign_unplace slice sound_playfile sqrt str2nr strftime strpart submatch synID systemlist taglist term_dumpload term_getcursor term_getstatus term_scrape term_setrestore test_autochdir test_gui_drop_files test_null_dict test_null_string test_setmouse timer_info tolower type values wincol win_gettype winlayout winsaveview writefile
-syn keyword vimFuncName contained	append asin assert_false assert_report balloon_split buflisted bufwinnr changenr ch_close ch_getjob ch_readblob cindent complete_info cscope_connection did_filetype digraph_setlist eventhandler exp filereadable flattennew foldclosed fullcommand getbufline getcharsearch getcompletion getfperm getline getpid getregtype gettext getwinvar has_key histget iconv inputlist interrupt isnan job_start js_encode libcall list2blob localtime maparg matchadd matchfuzzy max mzeval perleval popup_create popup_findpreview popup_locate popup_settext prompt_getprompt prop_add_list prop_type_add pum_getpos rand readfile reltimefloat remote_read repeat screenattr screenrow searchpair setbufline setcmdpos setloclist settabvar shellescape sign_jump sign_unplacelist sort sound_stop srand strcharlen strgetchar strptime substitute synIDattr tabpagebuflist tan term_dumpwrite term_getjob term_gettitle term_sendkeys term_setsize test_feedinput test_gui_mouse_event test_null_function test_option_not_set test_settime timer_pause toupper typename virtcol windowsversion win_gotoid winline win_screenpos xor
-syn keyword vimFuncName contained	appendbufline assert_beeps assert_inrange assert_true blob2list bufload byte2line char2nr ch_close_in ch_info ch_readraw clearmatches confirm cursor diff_filler echoraw executable expand filewritable float2nr foldclosedend funcref getbufvar getcharstr getcurpos getfsize
+syn keyword vimFuncName contained	abs argc assert_equal assert_match atan browse bufloaded byteidx charclass chdir ch_log ch_sendexpr col copy debugbreak diff_hlID empty execute expandcmd filter floor foldlevel function getchangelist getcmdline getcursorcharpos getftime getmarklist getreg gettabwinvar getwinposx globpath histadd hlget indent inputrestore invert items job_status json_decode libcallnr list2str log mapcheck matchaddpos matchfuzzypos menu_info nextnonblank popup_atcursor popup_dialog popup_getoptions popup_menu popup_show prompt_setcallback prop_clear prop_type_change pumvisible range reduce reltimestr remote_send resolve screenchar screenstring searchpairpos setbufvar setcursorcharpos setmatches settabwinvar shiftwidth sign_place simplify sound_clear spellbadword state strcharpart stridx strridx swapinfo synIDtrans tabpagenr tanh term_getaltscreen term_getline term_gettty term_setansicolors term_start test_garbagecollect_now test_ignore_error test_null_job test_override test_srand_seed timer_start tr undofile visualmode win_execute winheight winnr win_splitmove
+syn keyword vimFuncName contained	acos argidx assert_equalfile assert_nobeep atan2 browsedir bufname byteidxcomp charcol ch_evalexpr ch_logfile ch_sendraw complete cos deepcopy digraph_get environ exepath extend finddir fmod foldtext garbagecollect getchar getcmdpos getcwd getftype getmatches getreginfo gettagstack getwinposy has histdel hlID index inputsave isdirectory job_getchannel job_stop json_encode line listener_add log10 mapnew matcharg matchlist min nr2char popup_beval popup_filter_menu popup_getpos popup_move pow prompt_setinterrupt prop_find prop_type_delete py3eval readblob reg_executing remote_expr remote_startserver reverse screenchars search searchpos setcellwidths setenv setpos settagstack sign_define sign_placelist sin soundfold spellsuggest str2float strchars string strtrans swapname synstack tabpagewinnr tempname term_getansicolors term_getscrolled terminalprops term_setapi term_wait test_garbagecollect_soon test_null_blob test_null_list test_refcount test_unknown timer_stop trim undotree wildmenumode win_findbuf win_id2tabwin winrestcmd winwidth
+syn keyword vimFuncName contained	add arglistid assert_exception assert_notequal balloon_gettext bufadd bufnr call charidx ch_evalraw ch_open ch_setoptions complete_add cosh delete digraph_getlist escape exists extendnew findfile fnameescape foldtextresult get getcharmod getcmdtype getenv getimstatus getmousepos getregtype gettext getwinvar has_key histget hlset input inputsecret isinf job_info join keys line2byte listener_flush luaeval mapset matchdelete matchstr mkdir or popup_clear popup_filter_yesno popup_hide popup_notification prevnonblank prompt_setprompt prop_list prop_type_get pyeval readdir reg_recording remote_foreground remove round screencol searchcount server2client setcharpos setfperm setqflist setwinvar sign_getdefined sign_undefine sinh sound_playevent split str2list strdisplaywidth strlen strwidth synconcealed system tagfiles term_dumpdiff term_getattr term_getsize term_list term_setkill test_alloc_fail test_getvalue test_null_channel test_null_partial test_scrollbar test_void timer_stopall trunc uniq winbufnr win_getid win_id2win winrestview wordcount
+syn keyword vimFuncName contained	and argv assert_fails assert_notmatch balloon_show bufexists bufwinid ceil ch_canread ch_getbufnr ch_read ch_status complete_check count deletebufline digraph_set eval exists_compiled feedkeys flatten fnamemodify foreground getbufinfo getcharpos getcmdwintype getfontname getjumplist getpid gettabinfo getwininfo glob haslocaldir histnr hostname inputdialog insert islocked job_setoptions js_decode len lispindent listener_remove map match matchend matchstrpos mode pathshorten popup_close popup_findinfo popup_list popup_setoptions printf prop_add prop_remove prop_type_list pyxeval readdirex reltime remote_peek rename rubyeval screenpos searchdecl serverlist setcharsearch setline setreg sha256 sign_getplaced sign_unplace slice sound_playfile sqrt str2nr strftime strpart submatch synID systemlist taglist term_dumpload term_getcursor term_getstatus term_scrape term_setrestore test_autochdir test_gui_drop_files test_null_dict test_null_string test_setmouse timer_info tolower type values wincol win_gettype winlayout winsaveview writefile
+syn keyword vimFuncName contained	append asin assert_false assert_report balloon_split buflisted bufwinnr changenr ch_close ch_getjob ch_readblob cindent complete_info cscope_connection did_filetype digraph_setlist eventhandler exp filereadable flattennew foldclosed fullcommand getbufline getcharsearch getcompletion getfperm getline getpos gettabvar getwinpos glob2regpat hasmapto hlexists iconv inputlist interrupt isnan job_start js_encode libcall list2blob localtime maparg matchadd matchfuzzy max mzeval perleval popup_create popup_findpreview popup_locate popup_settext prompt_getprompt prop_add_list prop_type_add pum_getpos rand readfile reltimefloat remote_read repeat screenattr screenrow searchpair setbufline setcmdpos setloclist settabvar shellescape sign_jump sign_unplacelist sort sound_stop srand strcharlen strgetchar strptime substitute synIDattr tabpagebuflist tan term_dumpwrite term_getjob term_gettitle term_sendkeys term_setsize test_feedinput test_gui_mouse_event test_null_function test_option_not_set test_settime timer_pause toupper typename virtcol windowsversion win_gotoid winline win_screenpos xor
+syn keyword vimFuncName contained	appendbufline assert_beeps assert_inrange assert_true blob2list bufload byte2line char2nr ch_close_in ch_info ch_readraw clearmatches confirm cursor diff_filler echoraw executable expand filewritable float2nr foldclosedend funcref getbufvar getcharstr getcurpos getfsize getloclist getqflist
 
 "--- syntax here and above generated by mkvimvim ---
 " Special Vim Highlighting (not automatic) {{{1
@@ -188,10 +188,13 @@
 syn keyword vimCommand  contained	in
 
 " Insertions And Appends: insert append {{{2
+"   (buftype != nofile test avoids having append, change, insert show up in the command window)
 " =======================
-syn region vimInsert	matchgroup=vimCommand start="^[: \t]*\(\d\+\(,\d\+\)\=\)\=a\%[ppend]$"		matchgroup=vimCommand end="^\.$""
-syn region vimInsert	matchgroup=vimCommand start="^[: \t]*\(\d\+\(,\d\+\)\=\)\=c\%[hange]$"		matchgroup=vimCommand end="^\.$""
-syn region vimInsert	matchgroup=vimCommand start="^[: \t]*\(\d\+\(,\d\+\)\=\)\=i\%[nsert]$"		matchgroup=vimCommand end="^\.$""
+if &buftype != 'nofile'
+ syn region vimInsert	matchgroup=vimCommand start="^[: \t]*\(\d\+\(,\d\+\)\=\)\=a\%[ppend]$"		matchgroup=vimCommand end="^\.$""
+ syn region vimInsert	matchgroup=vimCommand start="^[: \t]*\(\d\+\(,\d\+\)\=\)\=c\%[hange]$"		matchgroup=vimCommand end="^\.$""
+ syn region vimInsert	matchgroup=vimCommand start="^[: \t]*\(\d\+\(,\d\+\)\=\)\=i\%[nsert]$"		matchgroup=vimCommand end="^\.$""
+endif
 
 " Behave! {{{2
 " =======