vi for anything quick, emacs for heavy-duty editing. vi is quicker to navigate in, but emacs does a nice job of auto-formatting my code for me as I go.
Dude, you can't have it both ways. The simpsons can't live in Missouri AND Kentucky, so you can't have vi and emacs.
Personally, I prefer emacs (CRUCIFY ME!) but it's better to know vi since not all unices have emacs by default...
