I decided to just make my own Lua module, by hacking an existing module and (for now) making up my own UUID. I'm 95% done, but for two (related) issues:
In Lua, you can have a multi-line string delimited by [[ ... ]]. For example:
local theMessage = [[ Hello world How are you doing? ]]
I've got that one covered. However, Lua is tricky and allows you to have nested [[..]] pairs within this block. So, for example:
local theExample = [[ Hello world In Lua, a string can contain nested [[...]] pairs. This includes a case like [[ hi [[ there ]] ]] More string]]
Is it possible to do this? I don't think so in general PCRE, but didn't know if TextMate or Oniguruma had some sweet balancing.
Right now I have: { name = 'string.quoted.multiline.lua'; begin = '(?<!--)[['; end = ']]'; swallow = '[[(.|\r)*?]]|\.'; }, which handles a single pair of [[..]] on the same line inside a block, but doesn't handle multiple nesting or (for reasons I don't understand) handle a single pair across multiple lines. Where can I find more information on the 'swallow' bit?