updated for version 7.0e03
diff --git a/runtime/syntax/lua.vim b/runtime/syntax/lua.vim
index 5553728..fe97712 100644
--- a/runtime/syntax/lua.vim
+++ b/runtime/syntax/lua.vim
@@ -1,254 +1,297 @@
-" Vim syntax file
-" Language:	Lua 4.0 and Lua 5.0
-" Maintainer:	Marcus Aurelius Farias <marcus.cf 'at' bol.com.br>
-" First Author:	Carlos Augusto Teixeira Mendes <cmendes 'at' inf puc-rio br>
-" Last Change:	2004 Aug 29
-" Options:	lua_version = 4 or 5 [default]
-"
-" For version 5.x: Clear all syntax items
-" For version 6.x: Quit when a syntax file was already loaded
-if version < 600
-  syntax clear
-elseif exists("b:current_syntax")
-  finish
-endif
-
-if !exists("lua_version")
-  let lua_version = 5
-endif
-
-syn case match
-
-" Comments
-syn keyword luaTodo		contained TODO FIXME XXX
-syn match   luaComment		"--.*$" contains=luaTodo
-if lua_version > 4
-  syn region  luaComment	matchgroup=luaComment start="--\[\[" end="\]\]" contains=luaTodo,luaInnerComment
-  syn region  luaInnerComment	contained transparent start="\[\[" end="\]\]"
-endif
-" First line may start with #!
-syn match   luaComment		"\%^#!.*"
-
-" catch errors caused by wrong parenthesis and wrong curly brackets or
-" keywords placed outside their respective blocks
-
-syn region  luaParen		transparent start='(' end=')' contains=ALLBUT,luaError,luaTodo,luaSpecial,luaCond,luaCondElseif,luaCondEnd,luaCondStart,luaBlock,luaRepeatBlock,luaRepeat,luaStatement
-syn match   luaError		")"
-syn match   luaError		"}"
-syn match   luaError		"\<\%(end\|else\|elseif\|then\|until\|in\)\>"
-
-
-" Function declaration
-syn region  luaFunctionBlock    transparent matchgroup=luaFunction start="\<function\>" end="\<end\>" contains=ALLBUT,luaTodo,luaSpecial,luaCond,luaCondElseif,luaCondEnd,luaRepeat
-
-" if then else elseif end
-syn keyword luaCond		contained else
-
-" then ... end
-syn region  luaCondEnd		contained transparent matchgroup=luaCond start="\<then\>" end="\<end\>" contains=ALLBUT,luaTodo,luaSpecial,luaRepeat
-
-" elseif ... then
-syn region  luaCondElseif	contained transparent matchgroup=luaCond start="\<elseif\>" end="\<then\>" contains=ALLBUT,luaTodo,luaSpecial,luaCond,luaCondElseif,luaCondEnd,luaRepeat
-
-" if ... then
-syn region  luaCondStart	transparent matchgroup=luaCond start="\<if\>" end="\<then\>"me=e-4 contains=ALLBUT,luaTodo,luaSpecial,luaCond,luaCondElseif,luaCondEnd,luaRepeat nextgroup=luaCondEnd skipwhite skipempty
-
-" do ... end
-syn region  luaBlock		transparent matchgroup=luaStatement start="\<do\>" end="\<end\>" contains=ALLBUT,luaTodo,luaSpecial,luaCond,luaCondElseif,luaCondEnd,luaRepeat
-
-" repeat ... until
-syn region  luaRepeatBlock	transparent matchgroup=luaRepeat start="\<repeat\>" end="\<until\>" contains=ALLBUT,luaTodo,luaSpecial,luaCond,luaCondElseif,luaCondEnd,luaRepeat
-
-" while ... do
-syn region  luaRepeatBlock	transparent matchgroup=luaRepeat start="\<while\>" end="\<do\>"me=e-2 contains=ALLBUT,luaTodo,luaSpecial,luaCond,luaCondElseif,luaCondEnd,luaRepeat nextgroup=luaBlock skipwhite skipempty
-
-" for ... do and for ... in ... do
-syn region luaRepeatBlock	transparent matchgroup=luaRepeat start="\<for\>" end="\<do\>"me=e-2 contains=ALLBUT,luaTodo,luaSpecial,luaCond,luaCondElseif,luaCondEnd nextgroup=luaBlock skipwhite skipempty
-
-" Following 'else' example. This is another item to those
-" contains=ALLBUT,... because only the 'for' luaRepeatBlock contains it.
-syn keyword luaRepeat		contained in
-
-" other keywords
-syn keyword luaStatement	return local break
-syn keyword luaOperator		and or not
-syn keyword luaConstant		nil
-if lua_version > 4
-  syn keyword luaConstant	true false
-endif
-
-" Pre processor doesn't exist since Lua 4.0
-" syn match   luaPreProc	  "^\s*$\%(debug\|nodebug\|if\|ifnot\|end\|else\|endinput\)\>"
-
-" Strings
-syn match   luaSpecial		contained "\\[\\abfnrtv\'\"[\]]\|\\\d\{,3}"
-syn region  luaString		start=+'+  end=+'+ skip=+\\\\\|\\'+ contains=luaSpecial
-syn region  luaString		start=+"+  end=+"+ skip=+\\\\\|\\"+ contains=luaSpecial
-" Nested strings
-syn region  luaString2		matchgroup=luaString start=+\[\[+ end=+\]\]+ contains=luaString2
-
-" integer number
-syn match luaNumber		"\<[0-9]\+\>"
-" floating point number, with dot, optional exponent
-syn match luaFloat		"\<[0-9]\+\.[0-9]*\%(e[-+]\=[0-9]\+\)\=\>"
-" floating point number, starting with a dot, optional exponent
-syn match luaFloat		"\.[0-9]\+\%(e[-+]\=[0-9]\+\)\=\>"
-" floating point number, without dot, with exponent
-syn match luaFloat		"\<[0-9]\+e[-+]\=[0-9]\+\>"
-
-" tables
-syn region  luaTableBlock       transparent matchgroup=luaTable start="{" end="}" contains=ALLBUT,luaTodo,luaSpecial,luaCond,luaCondElseif,luaCondEnd,luaCondStart,luaBlock,luaRepeatBlock,luaRepeat,luaStatement
-
-syn keyword luaFunc	assert collectgarbage dofile error gcinfo next
-syn keyword luaFunc	print rawget rawset tonumber tostring type _VERSION
-
-if lua_version == 4
-  syn keyword luaFunc	_ALERT _ERRORMESSAGE
-  syn keyword luaFunc	call copytagmethods dostring
-  syn keyword luaFunc	foreach foreachi getglobal getn
-  syn keyword luaFunc	gettagmethod globals newtag
-  syn keyword luaFunc	setglobal settag settagmethod sort
-  syn keyword luaFunc	tag tinsert tremove
-  syn keyword luaFunc	_INPUT _OUTPUT _STDIN _STDOUT _STDERR
-  syn keyword luaFunc	openfile closefile flush seek
-  syn keyword luaFunc	setlocale execute remove rename tmpname
-  syn keyword luaFunc	getenv date clock exit
-  syn keyword luaFunc	readfrom writeto appendto read write
-  syn keyword luaFunc	PI abs sin cos tan asin
-  syn keyword luaFunc	acos atan atan2 ceil floor
-  syn keyword luaFunc	mod frexp ldexp sqrt min max log
-  syn keyword luaFunc	log10 exp deg rad random
-  syn keyword luaFunc	randomseed strlen strsub strlower strupper
-  syn keyword luaFunc	strchar strrep ascii strbyte
-  syn keyword luaFunc	format strfind gsub
-  syn keyword luaFunc	getinfo getlocal setlocal setcallhook setlinehook
-else
-  syn keyword luaFunc	_G getfenv getmetatable ipairs loadfile
-  syn keyword luaFunc	loadlib loadstring pairs pcall rawequal
-  syn keyword luaFunc	require setfenv setmetatable unpack xpcall
-  syn keyword luaFunc	LUA_PATH _LOADED _REQUIREDNAME
-  " Not sure if all these functions need to be highlighted...
-  syn match   luaFunc	/coroutine\.create/
-  syn match   luaFunc	/coroutine\.resume/
-  syn match   luaFunc	/coroutine\.status/
-  syn match   luaFunc	/coroutine\.wrap/
-  syn match   luaFunc	/coroutine\.yield/
-  syn match   luaFunc	/string\.byte/
-  syn match   luaFunc	/string\.char/
-  syn match   luaFunc	/string\.dump/
-  syn match   luaFunc	/string\.find/
-  syn match   luaFunc	/string\.len/
-  syn match   luaFunc	/string\.lower/
-  syn match   luaFunc	/string\.rep/
-  syn match   luaFunc	/string\.sub/
-  syn match   luaFunc	/string\.upper/
-  syn match   luaFunc	/string\.format/
-  syn match   luaFunc	/string\.gfind/
-  syn match   luaFunc	/string\.gsub/
-  syn match   luaFunc	/table\.concat/
-  syn match   luaFunc	/table\.foreach/
-  syn match   luaFunc	/table\.foreachi/
-  syn match   luaFunc	/table\.getn/
-  syn match   luaFunc	/table\.sort/
-  syn match   luaFunc	/table\.insert/
-  syn match   luaFunc	/table\.remove/
-  syn match   luaFunc	/table\.setn/
-  syn match   luaFunc	/math\.abs/
-  syn match   luaFunc	/math\.acos/
-  syn match   luaFunc	/math\.asin/
-  syn match   luaFunc	/math\.atan/
-  syn match   luaFunc	/math\.atan2/
-  syn match   luaFunc	/math\.ceil/
-  syn match   luaFunc	/math\.cos/
-  syn match   luaFunc	/math\.deg/
-  syn match   luaFunc	/math\.exp/
-  syn match   luaFunc	/math\.floor/
-  syn match   luaFunc	/math\.log/
-  syn match   luaFunc	/math\.log10/
-  syn match   luaFunc	/math\.max/
-  syn match   luaFunc	/math\.min/
-  syn match   luaFunc	/math\.mod/
-  syn match   luaFunc	/math\.pow/
-  syn match   luaFunc	/math\.rad/
-  syn match   luaFunc	/math\.sin/
-  syn match   luaFunc	/math\.sqrt/
-  syn match   luaFunc	/math\.tan/
-  syn match   luaFunc	/math\.frexp/
-  syn match   luaFunc	/math\.ldexp/
-  syn match   luaFunc	/math\.random/
-  syn match   luaFunc	/math\.randomseed/
-  syn match   luaFunc	/math\.pi/
-  syn match   luaFunc	/io\.stdin/
-  syn match   luaFunc	/io\.stdout/
-  syn match   luaFunc	/io\.stderr/
-  syn match   luaFunc	/io\.close/
-  syn match   luaFunc	/io\.flush/
-  syn match   luaFunc	/io\.input/
-  syn match   luaFunc	/io\.lines/
-  syn match   luaFunc	/io\.open/
-  syn match   luaFunc	/io\.output/
-  syn match   luaFunc	/io\.popen/
-  syn match   luaFunc	/io\.read/
-  syn match   luaFunc	/io\.tmpfile/
-  syn match   luaFunc	/io\.type/
-  syn match   luaFunc	/io\.write/
-  syn match   luaFunc	/os\.clock/
-  syn match   luaFunc	/os\.date/
-  syn match   luaFunc	/os\.difftime/
-  syn match   luaFunc	/os\.execute/
-  syn match   luaFunc	/os\.exit/
-  syn match   luaFunc	/os\.getenv/
-  syn match   luaFunc	/os\.remove/
-  syn match   luaFunc	/os\.rename/
-  syn match   luaFunc	/os\.setlocale/
-  syn match   luaFunc	/os\.time/
-  syn match   luaFunc	/os\.tmpname/
-  syn match   luaFunc	/debug\.debug/
-  syn match   luaFunc	/debug\.gethook/
-  syn match   luaFunc	/debug\.getinfo/
-  syn match   luaFunc	/debug\.getlocal/
-  syn match   luaFunc	/debug\.getupvalue/
-  syn match   luaFunc	/debug\.setlocal/
-  syn match   luaFunc	/debug\.setupvalue/
-  syn match   luaFunc	/debug\.sethook/
-  syn match   luaFunc	/debug\.traceback/
-endif
-
-"syncing method
-syn sync minlines=100
-
-" Define the default highlighting.
-" For version 5.7 and earlier: only when not done already
-" For version 5.8 and later: only when an item doesn't have highlighting yet
-if version >= 508 || !exists("did_lua_syntax_inits")
-  if version < 508
-    let did_lua_syntax_inits = 1
-    command -nargs=+ HiLink hi link <args>
-  else
-    command -nargs=+ HiLink hi def link <args>
-  endif
-
-  HiLink luaStatement		Statement
-  HiLink luaRepeat		Repeat
-  HiLink luaString		String
-  HiLink luaString2		String
-  HiLink luaNumber		Number
-  HiLink luaFloat		Float
-  HiLink luaOperator		Operator
-  HiLink luaConstant		Constant
-  HiLink luaCond		Conditional
-  HiLink luaFunction		Function
-  HiLink luaComment		Comment
-  HiLink luaTodo		Todo
-  HiLink luaTable		Structure
-  HiLink luaError		Error
-  HiLink luaSpecial		SpecialChar
-  " HiLink luaPreProc		PreProc
-  HiLink luaFunc		Identifier
-
-  delcommand HiLink
-endif
-
-let b:current_syntax = "lua"
-
-" vim: noet ts=8
+" Vim syntax file

+" Language:	Lua 4.0, Lua 5.0 and Lua 5.1

+" Maintainer:	Marcus Aurelius Farias <marcus.cf 'at' bol.com.br>

+" First Author:	Carlos Augusto Teixeira Mendes <cmendes 'at' inf puc-rio br>

+" Last Change:	2006 Apr. 19

+" Options:	lua_version = 4 or 5

+"		lua_subversion = 0 (4.0, 5.0) or 1 (5.1)

+"		default 5.1

+

+" For version 5.x: Clear all syntax items

+" For version 6.x: Quit when a syntax file was already loaded

+if version < 600

+  syntax clear

+elseif exists("b:current_syntax")

+  finish

+endif

+

+if !exists("lua_version")

+  " Default is lua 5.1

+  let lua_version = 5

+  let lua_subversion = 1

+elseif !exists("lua_subversion")

+  " lua_version exists, but lua_subversion doesn't. So, set it to 0

+  let lua_subversion = 0

+endif

+

+syn case match

+

+" syncing method

+syn sync minlines=100

+

+" Comments

+syn keyword luaTodo             contained TODO FIXME XXX

+syn match   luaComment          "--.*$" contains=luaTodo

+if lua_version == 5 && lua_subversion == 0

+  syn region  luaComment        matchgroup=luaComment start="--\[\[" end="\]\]" contains=luaTodo,luaInnerComment

+  syn region  luaInnerComment   contained transparent start="\[\[" end="\]\]"

+elseif lua_version > 5 || (lua_version == 5 && lua_subversion >= 1)

+  " Comments in Lua 5.1: [[ ... ]], [=[ ... ]=], [===[ ... ]===], etc.

+  syn region  luaComment        matchgroup=luaComment start="--\[\z(=*\)\[" end="\]\z1\]"

+endif

+

+" First line may start with #!

+syn match luaComment "\%^#!.*"

+

+" catch errors caused by wrong parenthesis and wrong curly brackets or

+" keywords placed outside their respective blocks

+

+syn region luaParen transparent start='(' end=')' contains=ALLBUT,luaError,luaTodo,luaSpecial,luaCond,luaCondElseif,luaCondEnd,luaCondStart,luaBlock,luaRepeatBlock,luaRepeat,luaStatement

+syn match  luaError ")"

+syn match  luaError "}"

+syn match  luaError "\<\%(end\|else\|elseif\|then\|until\|in\)\>"

+

+" Function declaration

+syn region luaFunctionBlock transparent matchgroup=luaFunction start="\<function\>" end="\<end\>" contains=ALLBUT,luaTodo,luaSpecial,luaCond,luaCondElseif,luaCondEnd,luaRepeat

+

+" if then else elseif end

+syn keyword luaCond contained else

+

+" then ... end

+syn region luaCondEnd contained transparent matchgroup=luaCond start="\<then\>" end="\<end\>" contains=ALLBUT,luaTodo,luaSpecial,luaRepeat

+

+" elseif ... then

+syn region luaCondElseif contained transparent matchgroup=luaCond start="\<elseif\>" end="\<then\>" contains=ALLBUT,luaTodo,luaSpecial,luaCond,luaCondElseif,luaCondEnd,luaRepeat

+

+" if ... then

+syn region luaCondStart transparent matchgroup=luaCond start="\<if\>" end="\<then\>"me=e-4 contains=ALLBUT,luaTodo,luaSpecial,luaCond,luaCondElseif,luaCondEnd,luaRepeat nextgroup=luaCondEnd skipwhite skipempty

+

+" do ... end

+syn region luaBlock transparent matchgroup=luaStatement start="\<do\>" end="\<end\>" contains=ALLBUT,luaTodo,luaSpecial,luaCond,luaCondElseif,luaCondEnd,luaRepeat

+

+" repeat ... until

+syn region luaRepeatBlock transparent matchgroup=luaRepeat start="\<repeat\>" end="\<until\>" contains=ALLBUT,luaTodo,luaSpecial,luaCond,luaCondElseif,luaCondEnd,luaRepeat

+

+" while ... do

+syn region luaRepeatBlock transparent matchgroup=luaRepeat start="\<while\>" end="\<do\>"me=e-2 contains=ALLBUT,luaTodo,luaSpecial,luaCond,luaCondElseif,luaCondEnd,luaRepeat nextgroup=luaBlock skipwhite skipempty

+

+" for ... do and for ... in ... do

+syn region luaRepeatBlock transparent matchgroup=luaRepeat start="\<for\>" end="\<do\>"me=e-2 contains=ALLBUT,luaTodo,luaSpecial,luaCond,luaCondElseif,luaCondEnd nextgroup=luaBlock skipwhite skipempty

+

+" Following 'else' example. This is another item to those

+" contains=ALLBUT,... because only the 'for' luaRepeatBlock contains it.

+syn keyword luaRepeat contained in

+

+" other keywords

+syn keyword luaStatement return local break

+syn keyword luaOperator  and or not

+syn keyword luaConstant  nil

+if lua_version > 4

+  syn keyword luaConstant true false

+endif

+

+" Strings

+syn match  luaSpecial contained "\\[\\abfnrtv\'\"[\]]\|\\\d\{,3}"

+syn region luaString  start=+'+ end=+'+ skip=+\\\\\|\\'+ contains=luaSpecial

+syn region luaString  start=+"+ end=+"+ skip=+\\\\\|\\"+ contains=luaSpecial

+" Nested strings

+if (lua_version == 5 && lua_subversion == 0) || lua_version < 5

+  syn region luaString2 matchgroup=luaString start=+\[\[+ end=+\]\]+ contains=luaString2

+elseif lua_version > 5 || (lua_version == 5 && lua_subversion >= 1)

+  syn region luaString2 matchgroup=luaString start="\[\z(=*\)\[" end="\]\z1\]"

+endif

+

+" integer number

+syn match luaNumber "\<[0-9]\+\>"

+" floating point number, with dot, optional exponent

+syn match luaFloat  "\<[0-9]\+\.[0-9]*\%(e[-+]\=[0-9]\+\)\=\>"

+" floating point number, starting with a dot, optional exponent

+syn match luaFloat  "\.[0-9]\+\%(e[-+]\=[0-9]\+\)\=\>"

+" floating point number, without dot, with exponent

+syn match luaFloat  "\<[0-9]\+e[-+]\=[0-9]\+\>"

+

+" tables

+syn region  luaTableBlock transparent matchgroup=luaTable start="{" end="}" contains=ALLBUT,luaTodo,luaSpecial,luaCond,luaCondElseif,luaCondEnd,luaCondStart,luaBlock,luaRepeatBlock,luaRepeat,luaStatement

+

+syn keyword luaFunc assert collectgarbage dofile error gcinfo next

+syn keyword luaFunc print rawget rawset tonumber tostring type _VERSION

+

+if lua_version == 4

+  syn keyword luaFunc _ALERT _ERRORMESSAGE

+  syn keyword luaFunc call copytagmethods dostring

+  syn keyword luaFunc foreach foreachi getglobal getn

+  syn keyword luaFunc gettagmethod globals newtag

+  syn keyword luaFunc setglobal settag settagmethod sort

+  syn keyword luaFunc tag tinsert tremove

+  syn keyword luaFunc _INPUT _OUTPUT _STDIN _STDOUT _STDERR

+  syn keyword luaFunc openfile closefile flush seek

+  syn keyword luaFunc setlocale execute remove rename tmpname

+  syn keyword luaFunc getenv date clock exit

+  syn keyword luaFunc readfrom writeto appendto read write

+  syn keyword luaFunc PI abs sin cos tan asin

+  syn keyword luaFunc acos atan atan2 ceil floor

+  syn keyword luaFunc mod frexp ldexp sqrt min max log

+  syn keyword luaFunc log10 exp deg rad random

+  syn keyword luaFunc randomseed strlen strsub strlower strupper

+  syn keyword luaFunc strchar strrep ascii strbyte

+  syn keyword luaFunc format strfind gsub

+  syn keyword luaFunc getinfo getlocal setlocal setcallhook setlinehook

+elseif lua_version == 5

+  " Not sure if all these functions need to be highlighted...

+  syn keyword luaFunc _G getfenv getmetatable ipairs loadfile

+  syn keyword luaFunc loadstring pairs pcall rawequal

+  syn keyword luaFunc require setfenv setmetatable unpack xpcall

+  if lua_subversion == 0

+    syn keyword luaFunc loadlib LUA_PATH _LOADED _REQUIREDNAME

+  elseif lua_subversion == 1

+    syn keyword luaFunc load module select

+    syn match luaFunc /package\.cpath/

+    syn match luaFunc /package\.loaded/

+    syn match luaFunc /package\.loadlib/

+    syn match luaFunc /package\.path/

+    syn match luaFunc /package\.preload/

+    syn match luaFunc /package\.seeall/

+    syn match luaFunc /coroutine\.running/

+  endif

+  syn match   luaFunc /coroutine\.create/

+  syn match   luaFunc /coroutine\.resume/

+  syn match   luaFunc /coroutine\.status/

+  syn match   luaFunc /coroutine\.wrap/

+  syn match   luaFunc /coroutine\.yield/

+  syn match   luaFunc /string\.byte/

+  syn match   luaFunc /string\.char/

+  syn match   luaFunc /string\.dump/

+  syn match   luaFunc /string\.find/

+  syn match   luaFunc /string\.len/

+  syn match   luaFunc /string\.lower/

+  syn match   luaFunc /string\.rep/

+  syn match   luaFunc /string\.sub/

+  syn match   luaFunc /string\.upper/

+  syn match   luaFunc /string\.format/

+  syn match   luaFunc /string\.gsub/

+  if lua_subversion == 0

+    syn match luaFunc /string\.gfind/

+  elseif lua_subversion == 1

+    syn match luaFunc /string\.gmatch/

+    syn match luaFunc /string\.match/

+    syn match luaFunc /string\.reverse/

+    syn match luaFunc /table\.maxn/

+  endif

+  syn match   luaFunc /table\.concat/

+  syn match   luaFunc /table\.foreach/

+  syn match   luaFunc /table\.foreachi/

+  syn match   luaFunc /table\.getn/

+  syn match   luaFunc /table\.sort/

+  syn match   luaFunc /table\.insert/

+  syn match   luaFunc /table\.remove/

+  syn match   luaFunc /table\.setn/

+  syn match   luaFunc /math\.abs/

+  syn match   luaFunc /math\.acos/

+  syn match   luaFunc /math\.asin/

+  syn match   luaFunc /math\.atan/

+  syn match   luaFunc /math\.atan2/

+  syn match   luaFunc /math\.ceil/

+  syn match   luaFunc /math\.sin/

+  syn match   luaFunc /math\.cos/

+  syn match   luaFunc /math\.tan/

+  syn match   luaFunc /math\.deg/

+  syn match   luaFunc /math\.exp/

+  syn match   luaFunc /math\.floor/

+  syn match   luaFunc /math\.log/

+  syn match   luaFunc /math\.log10/

+  syn match   luaFunc /math\.max/

+  syn match   luaFunc /math\.min/

+  if lua_subversion == 0

+    syn match luaFunc /math\.mod/

+  elseif lua_subversion == 1

+    syn match luaFunc /math\.fmod/

+    syn match luaFunc /math\.modf/

+    syn match luaFunc /math\.cosh/

+    syn match luaFunc /math\.sinh/

+    syn match luaFunc /math\.tanh/

+  endif

+  syn match   luaFunc /math\.pow/

+  syn match   luaFunc /math\.rad/

+  syn match   luaFunc /math\.sqrt/

+  syn match   luaFunc /math\.frexp/

+  syn match   luaFunc /math\.ldexp/

+  syn match   luaFunc /math\.random/

+  syn match   luaFunc /math\.randomseed/

+  syn match   luaFunc /math\.pi/

+  syn match   luaFunc /io\.stdin/

+  syn match   luaFunc /io\.stdout/

+  syn match   luaFunc /io\.stderr/

+  syn match   luaFunc /io\.close/

+  syn match   luaFunc /io\.flush/

+  syn match   luaFunc /io\.input/

+  syn match   luaFunc /io\.lines/

+  syn match   luaFunc /io\.open/

+  syn match   luaFunc /io\.output/

+  syn match   luaFunc /io\.popen/

+  syn match   luaFunc /io\.read/

+  syn match   luaFunc /io\.tmpfile/

+  syn match   luaFunc /io\.type/

+  syn match   luaFunc /io\.write/

+  syn match   luaFunc /os\.clock/

+  syn match   luaFunc /os\.date/

+  syn match   luaFunc /os\.difftime/

+  syn match   luaFunc /os\.execute/

+  syn match   luaFunc /os\.exit/

+  syn match   luaFunc /os\.getenv/

+  syn match   luaFunc /os\.remove/

+  syn match   luaFunc /os\.rename/

+  syn match   luaFunc /os\.setlocale/

+  syn match   luaFunc /os\.time/

+  syn match   luaFunc /os\.tmpname/

+  syn match   luaFunc /debug\.debug/

+  syn match   luaFunc /debug\.gethook/

+  syn match   luaFunc /debug\.getinfo/

+  syn match   luaFunc /debug\.getlocal/

+  syn match   luaFunc /debug\.getupvalue/

+  syn match   luaFunc /debug\.setlocal/

+  syn match   luaFunc /debug\.setupvalue/

+  syn match   luaFunc /debug\.sethook/

+  syn match   luaFunc /debug\.traceback/

+  if lua_subversion == 1

+    syn match luaFunc /debug\.getfenv/

+    syn match luaFunc /debug\.getmetatable/

+    syn match luaFunc /debug\.getregistry/

+    syn match luaFunc /debug\.setfenv/

+    syn match luaFunc /debug\.setmetatable/

+  endif

+endif

+

+" Define the default highlighting.

+" For version 5.7 and earlier: only when not done already

+" For version 5.8 and later: only when an item doesn't have highlighting yet

+if version >= 508 || !exists("did_lua_syntax_inits")

+  if version < 508

+    let did_lua_syntax_inits = 1

+    command -nargs=+ HiLink hi link <args>

+  else

+    command -nargs=+ HiLink hi def link <args>

+  endif

+

+  HiLink luaStatement		Statement

+  HiLink luaRepeat		Repeat

+  HiLink luaString		String

+  HiLink luaString2		String

+  HiLink luaNumber		Number

+  HiLink luaFloat		Float

+  HiLink luaOperator		Operator

+  HiLink luaConstant		Constant

+  HiLink luaCond		Conditional

+  HiLink luaFunction		Function

+  HiLink luaComment		Comment

+  HiLink luaTodo		Todo

+  HiLink luaTable		Structure

+  HiLink luaError		Error

+  HiLink luaSpecial		SpecialChar

+  HiLink luaFunc		Identifier

+

+  delcommand HiLink

+endif

+

+let b:current_syntax = "lua"

+

+" vim: et ts=8