why don't you try emacs?