vim有许多方法可以从vim内部执行shell命令。我们可以使用shell跳转到shell并返回到vim,使用当前进程ctrl+z并使用fg返回。选择的/当前行可以使用!w bash执行。
但是,所有这些方法只对运行一个命令很有帮助。执行命令后,shell is进程就会被杀死。
我想知道是否有一种方法可以继续在shell中执行代码片段,并让shell记住前面命令中的函数/变量(类似于将代码片段复制到shell提示符)来调试代码。为此,shell会话必须以某种方式持久化。
我经常遇到这样的情况:我需要在shell上执行一些函数,然后通过调用它们来测试它们。标准的方法是将它们复制到不同的shell中,然后执行它们。如何从内部做这件事?
发布于 2014-03-11 12:49:43
如果您的Vim是使用Python构建的(大多数Unix构建都是,Windows / Cygwin构建不是),那么您可能想看看康克壳牌插件,它允许运行在Vim缓冲区内。
编辑:修正,显然Vim7.3forWindows现在也提供了支持(因此,它具有兼容性)。
发布于 2014-03-11 12:45:56
您可以从shell启动vim (而不是gvim),然后使用<C-Z>来挂起vim。返回到调用的shell (而不是子shell),并使用fg继续使用vim。根据文档,这是“在许多Unix系统上”工作的。
:help suspendhttps://stackoverflow.com/questions/22318593
复制相似问题