Update runtime files
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 ---- "