我知道我可以使用外部程序在vim中运行我的代码,但我希望每次都保持该程序并接收我的代码 - 而不是每次都重新运行外部程序。
例如:我在vim中编辑我的Matlab文件,我想运行它。但是,我希望matlab实例在后台,并且vim将使用相同的实例来保持运行我的文件,而不是每次都打开一个新的matlab。
这可能吗? 感谢。
答案 0 :(得分:5)
当您可以配置外部程序(或者可以在其周围添加包装器)以便在文件被修改时自动重新运行文件(在Vim中通过保存或从其他任何地方),实际上没有任何东西可以从Vim触发(可能是初始程序启动除外)。这是理想的情况。
在所有其他情况下,您需要从Vim到外部程序的通知机制。这是否可行以及如何执行取决于外部程序,但通常这很困难。有一些插件,例如每当保存时,都会在浏览器中重新加载HTML页面,但我恐怕没有通用的解决方案。那么最好重新考虑整个方法。
答案 1 :(得分:1)
我也主要在matlab上遇到这个问题。 我做的是一个映射: - 将编辑后的文件名(或部分名称)复制到临时剪贴板 - 使用wmcrtl切换到matlab 然后我进入了matlab,所以我只需输入“Ctrl-V”并运行脚本。 然后可以自动返回到vim。 看这里的例子: Vim and matlab GUI - Emulate matlab Run (<F5>) with Vim