切换到使用vim编辑的文件的打开实例

时间:2013-12-03 17:37:36

标签: vim

我经常尝试使用已在另一个Vim实例中打开的Vim编辑文件。在这种情况下,您将获得错误对话框“交换文件”...“已经存在!”选项打开只读,无论如何编辑,恢复,退出和中止。

在几乎所有情况下,我想要做的只是切换到已经打开的Vim实例,然后继续编辑它。相反,我必须使用Quit或Abort关闭此尝试,然后寻找另一个实例的打开窗口(如果有许多打开的窗口,一些隐藏,一些在另一个工作区等,这可能很难)。

有没有办法做到这一点?

3 个答案:

答案 0 :(得分:1)

您可以通过设置环境来使用Vim的客户端/服务器功能来解决此问题。

vim别名化为vim --servername VIM --remote可能足以解决您的“问题”。

但我认为你应该修改你的工作流程并从vim本身打开相关文件。

答案 1 :(得分:1)

我建议在.bashrc文件中添加以下行

alias vim='vim --remote-silent'

这样,如果文件已经打开,你就不会收到恼人的“交换文件...”消息,如果它还没有打开,你就不会显示错误。

答案 2 :(得分:0)

安装wmctrl,然后您可以编写别名为vimgvim的脚本,该脚本在/ tmp目录中查找是否存在具有相同名称的交换文件。如果存在,则使用wmctrl将右侧窗口置于前台,否则请根据需要调用vim / gvim。