I've just been trying out TextMate on my Mac. Verdict: It's too clever by half.

I currently use SubEthaEdit. It's a nice, no-fuss editor with tabs and syntax highlighting. However, it occasionally hangs annoyingly when connected to a network drive, so I'm open to finding a replacement.

TextMate is often cited as an excellent editor for OSX, so I thought I'd give it a go. Sadly, it's a "kitchen sink" effort - with more features than anyone could possibly use. If I wanted to use EMACS, I'd - y'know - just use EMACS.

The whole ethos of this tool is to automate as much as possible. I understand that some people like that, but for me it's a big turn-off.

First niggle. Even if I've asked it to use spaces instead of tabs, it still pretends that the whitespace at the start of each line is made up of tabs. So if I want to move the cursor back by one space I can't! Left-arrow moves the cursor back by a whole tab. The only way I can put the cursor where I want it is to reach for the mouse.

However, the real killer for me is the auto-indent feature. When I hit return, it doesn't just add enough spaces to indent the new line to the same level as the old one - it looks at the context and tries to guess whether I want a bit more or less indentation. I prefer to choose my own indentation thanks, but this tool doesn't give me the option of turning it off.

That's the key problem: there's no way to decline the bloody thing's offer of help. A text editor should start as a text editor - everything else should be an optional extra. Syntax highlighting, auto-indent, auto-complete, auto-syntax-check, auto-whatever-else... they are all clever add-ons, and someone out there likes each and every one of them. But they are all extra to the fundamental function of the tool, which is to edit text.

For a different perspective, read this article, which slags off TextMate for not being clever enough. Its author wants his editor to be constantly anticipating his every move, suggesting what he should type and complaining when it thinks he's got it wrong. In short, he wants Visual Studio.