Switching to TextMate
Today my 30-day trial of TextMate expired. This was the moment of truth: do I plunk down the €39 for a license, or go back to TextWrangler? As I live in a text editor, this was no small choice.
It wasn't, however, a very difficult choice. Don't get me wrong: TextWrangler and I had many happy months together. But it's time for me to move on. TextMate was easily worth the investment.
I admit that TextMate didn't take at first. I was first introduced to it via the inimitable Merlin, but was scared away by the anti-aliased and italicized monospace fonts. It was only after seeing it in action with Rails that I gave it another shot, and this time I was hooked.
There are a couple features of TextMate that I can't live without.
- Projects. I can't remember how I got along without projects. Being able to save, load, and organize groups of files is fantastic.
- Syntax Recognition. One of my huge headaches with TextWrangler was its limited ability to deal with embedded code. In particular, it missed PHP embedded in HTML attributes entirely (e.g.
<div id="<?php echo $id; ?>">). TextMate not only gets it right, but has the ability to highlight all embedded code with a different background color. Reading complicated templates is much easier now. - Language-specific Tabs. I'm a traditionalist. C should have 8-space hard tabs, PHP 4-space soft tabs, Ruby 2-space soft tabs. With TextWrangler, I found myself wrestling with the preferences every time I created a new file. One minor gripe here: I like hard tabs in my HTML (where file size matters), but soft tabs in PHP (where flexible alignment is important for legibility). TextMate now considers both the same type of file.
There are a few nicities of TextWrangler that I miss, though:
- Block Undo. TextWrangler was smart with it's undo history. If you deleted a line of text using the backspace key, you could undo it all with a single Command-Z. TextMate will undo your changes character-by-character.
- Column Markers. It's a little thing, but I like it. Particularly the page guide (set at 80 charcters, fo course).
- Find & Replace. TextWrangler's find & replace was world-class. The RegEx highlighting was particularly useful. I also miss the Command-= shortcut to replace the current find result.
One thing that did help ease the transition to TextMate it's customizability, allowing me to mimic the look of BBEdit. At Shaun's request, here's my BBEdit TextMate theme (recommended with non-anti-aliased Monaco 10) if you, too, are considering a switch.
![Infocraft [Logo]](/images/logo.png)


