Oh, we agree that vi sucks. I prefer modeless screen editing.
But I'm confused. The ed I know (/bin/ed) is strictly a line editor -- you even have to request a prompt 'P'. I use it when I have to edit /etc/fstab from a single-user shell when a crashed system refuses to boot with fsck hung on a failed drive. But it's only marginally better than writing with a sharp pointy stick and a pile of poo, for anything more complicated than a 10-line config file.
Are we talking about the same ed?