vim
I use vi...Wait!  Don't click that back button.  Let me explain.  vi was a drab and boring program that has been revived by Bram Moolenaar, the author of vim, or vi improved.   I use vim because I can get it on just about any operating system and it has a lot of cool feautures, namely:

Columnar cut and paste
VHDL and perl syntax highlighting
keyboard macros
flexible search and replace
built-in help
word completion
use perl as filter/macro
can compile inside vim and it highlights errors
built-in comment formatting
plus...
I only have to know one command set no matter what os I'm using.

Now I'll be the first to admit that the interface use to be archaic but the guys on the vim project have created a gui around vim that will change your mind.  It's called gvim and allows you to use the mouse or keyboard for input.  I prefer the keyboard but it's entirely up to you.  The program has many features yet remains very fast.  Think very hard about your decision for an editor because this is where you'll end up spending a lot of time if you use VHDL.  The main thing that makes vim efficient is everything can be done via the keyboard and I don't have to reach over to find a mouse.

Did I mention it runs on many operating systems:

AmigaOS, AtariMiNT, BeOS, DOS, MacOS,
OS/2, RiscOS, VMS, and Windows (CE/95/98/NT4/NT5)

and, of course, on UNIX in a lot of flavours: 

A/UX, AIX, BSDI, Convex, DYNIX/ptx, DG/UX, DEC Unix, FreeBSD, HPUX, Irix,
Linux [Debian, RedHat, SuSE], MacOSX, NetBSD, NEXTSTEP, OpenBSD, OSF,
QNX, SCO, Sinix, Solaris, SunOS, SUPER-UX, Ultrix, Unixware, Unisys.

Download vim.
Learn more about vim.
Download my vim config file.vimrc.
Download my gvim config file.gvimrc.