In Tmux, how do I assign a particular program to a particular window, so that all calls to that program from a shell in another window in Tmux will go to that program? One example would be a window that just keeps Vim open.
So in this example, whenever I type vim myfile.txt
in my shell window in Tmux, I will see myfile.txt
in the vim window of Tmux.
Best Answer
There's no universal way to do this, since each program handles this differently, but vim has a client-server mode that might satisfy your needs in this particular instance.
Firstly, start vim in server mode:
Now you can open files in that instance of vim from elsewhere:
This requires having a
vim
version compiled with+clientserver
. On Debian, thevim-gnome
package contains a version of vim with client-server functionality. Some other distributions have similar packages.