in reply to perl development platform

I am surprised no one has mentioned emacs yet.

You can do all of what you asked for in emacs. Best of all, if you do not like something, you can change it. In addition you can enable things like

The cons being there is a small learning curve while getting fimilar with all the features that emacs offers. Most of the stuff is available from the pulldown menus, so don't let that scare you. The other issue was some of the keys are not standard by default, but you can easily redefine them so that the keys work the way they would in a windows based editor.

vim will probably do the some of the above things for you. But I will let a vim worshipper enlighten you about vim