File: //usr/share/highlight/langDefs/cs_block_regex.lang
-- a highlight lang definition for coffeescript's block regexes, by Jess Austin
Description = "Coffeescript Block Regex"
Keywords = {
{ -- backslash literals
Id = 1,
Regex = [=[\\[][0-9'"\\.?()]]=]
},
{ -- interpolation
Id = 2,
Regex = [[#\{.*}]]
},
}
Comments = {
{
Block = false,
Delimiter = { [[#]] }
}
}
Strings = { -- actually, character sets
DelimiterPairs = { { Open = "\\[\\^?", Close = "\\]" } },
Escape = [=[\\u\{[[:xdigit:]]+\}|\\u[[:xdigit:]]{4}|\\x[[:xdigit:]]{2}|\\c[A-Z]|\\[[bBdDsSwWtrnvf0]]=]
}
Operators = [[\.|\+|\*|\^|\$|\||\?:|\?=|\?!|\?|\(|\)]]
Digits = [[\{\d+,?\d*\}]] -- integer quantifiers
-- maybe this would be a better way to do interpolation? I can't get it to work
--NestedSections = {
-- {
-- Lang = "coffee",
-- Delimiter = { [[#\{]], [[}]] }
-- }
--}