Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

With emacs, you can use the emacsclient program to open a file in an already existing emacs frame. Is there any way to do this with vim? In other words, I want to have something I can type at the command prompt to open a file in a vim window I already have open rather than creating a new one.

share|improve this question

2 Answers 2

up vote 5 down vote accepted

I actually figured this one out on my own. This is supported in vim natively if you use the --remote option. Ex:

gvim --remote foo.txt

You can also specify a server name:

gvim --remote foo.txt --servername foo

I added the following function to my .zshrc (but it should work in bash as well) to make this a bit easier:

function vs() {
    gvim --remote-silent $@
}

This way, all you have to type in is vs <filename>.

share|improve this answer

emacs client is much more useful than just gvim --remote. With emacs client you can open a duplicate emacs gtk window. Then you can have emacs open with some files on your machine, ssh in with X11 forwarding and run emacsclient to pop up a emacs window on your remote machine. It's like screen for emacs. Unfortunately, gvim --remote only works to evaluate expressions, send keybindings, and open files, which while useful and matching your usecase, is not the same as emacsclient.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.