Don't do this. Instead, start emacs. Run M-x server-start. Now to edit a file, just say "emacsclient -t filename". You are instantly connected to your running emacs session, in the terminal you are currently working in. You can have an arbitrary number of these. C-x C-c closes the instance you are working in, not every instance.
I just run "emacs --daemon" when I log in, "emacsclient -c" to get my main emacs X frame, and then "emacsclient -t foo.bar" when I need to edit something. (Actually, I alias "emacsclient -t" to "ec", so "ec foo.bar".)
If you don't want to install Emacs for some reason, "mg" is a much better choice than vi or nano.
This doesn't solve one problem that sends me running to nano a lot: having very old Emacs versions (usually 21) on the server that don't work with my configuration.
I am using the TRAMP support instead from my desktop Emacs which runs all the time. TRAMP support within Emacs is very good, aside of the dired support all the vc commands work on the remote machines, too.
I just run "emacs --daemon" when I log in, "emacsclient -c" to get my main emacs X frame, and then "emacsclient -t foo.bar" when I need to edit something. (Actually, I alias "emacsclient -t" to "ec", so "ec foo.bar".)
If you don't want to install Emacs for some reason, "mg" is a much better choice than vi or nano.