Brandon wrote...

Your regexes are probably badly formed.  Read more about what makes a regex engine explode here: http://www.regular-expressions.info/catastrophic.html

The one that jumps out at me is: 
 
  windowTitle = "${projectDirectory/^.*/([^/]+)$/$1/} — $TM_DISPLAYNAME"

I'm pretty sure that you want to escape the second slash that appears in there, as you want it to represent a literal slash, not a regex delimiter.  

That is    .....\/([^/]+).......... 

Cheers,
Paul