Emacs can do most of the things that TextMate is loved for, and then some:
I've personally jumped to Vim. Mostly beacuse I do some sysadmin and now it's much less annoying editing config files, but also so I can jump from OS X and still be able to work.
What I really should do is figure out a way to open sections of text in their own buffer (and corresponding major mode) so that changes in that buffer would be reflected in the original selection.