## Syntax highlighting for Lua. # ## Original author: Matthew Wild ## License: GPL 3 or later syntax lua "\.lua$" magic "Lua script" linter "luacheck --no-color" comment "--" color brightwhite "\[\[.*\]\]" # Operators color brightyellow ":|\*|/|%|\+|-|\^|>|>=|<|<=|~=|=|\.\.|#|\<(not|and|or)\>" # Don't partially color ... as an operator color normal "\.\.\." # Statements color brightblue "\<(do|end|while|repeat|until|if|elseif|then|else|for|in|function|local|return|break)\>" # Keywords color brightyellow "\<(_G|_VERSION|assert|collectgarbage|dofile|error|getfenv|getmetatable|ipairs|load|loadfile|module|next|pairs|pcall|print|rawequal|rawget|rawlen|rawset|require|select|setfenv|setmetatable|tonumber|tostring|type|unpack|xpcall)\s*\(" # Standard library color brightyellow "\" color brightyellow "\" color brightyellow "\" color brightyellow "\" color brightyellow "\" color brightyellow "\" color brightyellow "\" color brightyellow "\" color brightyellow "\" color brightyellow "\" # File handle methods color brightyellow ":(close|flush|lines|read|seek|setvbuf|write)\>" # External files color brightgreen "\<(dofile|require)\>" # Special words color brightmagenta "\<(false|nil|true)\>" # Decimal and hexadecimal numbers color red "\<[0-9]+(\.[0-9]*)?([Ee][+-]?[0-9]+)?\>" color red "\<0x[0-9A-Fa-f]+(\.[0-9A-Fa-f]*)?([Pp][+-]?[0-9]+)?\>" # Brackets color brightmagenta "\(|\)|\[|\]|\{|\}" # Shebang color brightcyan "^#!.*" # Strings color red ""(\\.|[^"\])*"|'(\\.|[^'\])*'" # Simple comments and multiline comments color green "--.*" color green start="--\[\[" end="\]\]"