Thanks!
Yeah, I've already come across most of this stuff too. I just finally found something that half-worked and wanted to get it out in the world before I got bored or too busy to finish it.
Some sort of native functionality is what I would prefer. It's almost shameful that TextMate doesn't offer this natively.
For the updated version, I'll probly have it escape all brackets in the doc first, and then do another pass to put back only those brackets that are most likely to give the best balancing results. And then do all the business with selections and whatever. That should make it much more robust and capable of handling rhtml and embedded source and stuff.
The current version is only really useful on REALLY clean pages, and then only sometimes ;)
I'd also like to build up some nice testcases to check against anytime I make any changes. I bet I could use TMTOOLS to automate testing since it can move the caret around and run macros.
—Thomas Aylott – subtleGradient—
On Nov 16, 2007, at 5:41 AM, Hans-Jörg Bibiko wrote:
On 15.11.2007, at 19:50, Saul Rosenbaum wrote:
rock on! -- that's great...
First of all: yes, I agree, it's an awesome macro ;)
But I encounter further tiny problems.
I'd prefer to not use the local clipboard for that macro
The macro doesn't work for such an HTML:
<html> <head> <title>title</title> <style type="text/css" media="screen"> p { color: red; } </style> </head> <body> <p>Test <i>bla</i>sak{j}d(sahdskjdh)sadasl sakd</p> </body></html>
If you delete <title>..</title> it works If you leave <title> and delete <style> instead it also works BTW: I don't know why.
If you place the caret inside of '()' or '{}' it matches these brackets first. No problem redo it.
To use the undo function for going back it's awesome too, but it could be a bit confusing if one wants to really undo something. One has to do it at east twice.
Sometimes the entire window is scrolled to right side after selecting. This is maybe an issue of the length of some lines if one has switch off 'soft wrap'.
Instead of using CARET_WAS_HERE and ≤, ≥ I'd prefer to use unused unicode code points like \UFFFF0 -\UFFF9
By myself I also tried it with TMTOOLS. In principal it works, it's also faster, but there are other tiny things.
On the other hand TM has that selectBlock: function built-in. I don't know whether it would be possible for Allan to modify that function in order to get rid of it, because this feature is actually a very essential one, by my opinion.
Nevertheless, it's a very cool approach ;)
Cheers,
--Hans
For new threads USE THIS: textmate@lists.macromates.com (threading gets destroyed and the universe will collapse if you don't) http://lists.macromates.com/mailman/listinfo/textmate