I use several different applications for different purposes. I'm sticking to the free apps, because I don't like spending money.
TextWrangler: I use this for web development because of its really great find/replace features, and it gets the job done without getting in my way. Also I use Texw when I need to be sure the editor is not screwing with the text encoding.
Xcode: I use this for making Cocoa stuff because it's the center of activity when writing applications. Apple-Return Return saves, builds and runs. If there's another editor that can do it that easily, let me know! Besides, it was built for Objective-C so its text completion is pretty handy.
Bean: Rich text is a limited technology, but Bean manages to make it acceptable to work with by squeezing out every drop of usefulness.
vi(m), emacs, etc: These may be textually powerful, but I fail to see why I should be forced to use the Terminal
everin 2010.
MacVim looks promising, though
Dreamweaver: This may have looked promising in the '90s, but now it's a bloated,
HIG-violating beast that likes to slow my typing and mess up my neatly-laid-out code.
TextEdit: Just
no. Don't. Equals cannot. This one would be better off sitting in the Trash.
FountainPen: When you're not writing code but don't want to get stuck in a word processor, FountainPen uses Markdown to turn plain text into HTML or Rich Text. Okay, just so you know, I made this one (or rather,
making it; the link takes you to a semi-dysfunctional prototype).