Ok this is just a thought. I was playing around with ScriptUO, and I LOVE the syntax checker. But I've had a couple of instances where I've found an imbalance of brackets, but ScriptUO can't tell me WHERE. I understand it's difficult to search for each and every bracket, but there's GOT to be a way? What about giving a tool to the developer? Say, at the beginning of every sub, you type:
; start Lightning Strike
sub LS
code code code
code code code
RETURN
; end Lightning Strike
Then ScriptUO does a search for the text ; start and anything after will be used as the NAME of the sub. Then you do a search between those 2 names "start/end" then you could easily find which sub at least has the imbalance of brackets? I understand the problems with doing something like this, what if the user spells something wrong? What if its not spaced correctly? What if the 2 names are spelled wrong? But I think the benefit far outweighs the possible problems? If there is a typing error, you could just ignore it, until it finds 2 ;start ;end lines that match with the same name. Make finding those damn subs with the bad brackets SO easy.

Could even do something like have an add sub names command where you just pick a menu item and it auto adds the sub names to those ;start ;end lines for matching subs that match a set criteria. Like SUB/RETURN SUB/RETURN. For people who use one sub line and one return line, that would be beautiful. If that makes any sense?

The script would just breeze through and see that there's a bracket missing in sub Lightning Strike, and bam, you go fix it. I just had to search through 4000 lines of code for one bracket. I found one, but there's one more... haha
Actually I just had another thought, you dont even need to name the "; end" line as long as you only have ONE "; start" that has the name, then one "; end" after throughout the script. You could even just use it as a counter, like put them around ANY GROUP of subs you want, as long as you should have a balanced number of brackets between the start/end, it should give you a general idea of where the bracket is... so you wouldn't even need to enclose subs... you could enclose anything.