在 `gvim -f` 期间将控制权返回给 shell

在 `gvim -f` 期间将控制权返回给 shell

我偶尔会使用gvim -f它来启动 gvim,但强制 shell 等待 gvim 会话结束后再恢复执行正在执行的操作(例如,我通常使用一个别名来编辑我的 bash 别名,该别名在我退出 gvim 后调用gvim -f然后重新加载我的.bashrc文件)。

但是,有时我意识到我想继续编辑文件,但我也想在 shell 中恢复工作。例如,在上面的示例用法中,有时我想测试我刚写的别名是否真的能做我想要的事情,如果没有,我想修复它以使其正常运行。(是的,我知道还有其他几种方法可以实现这一点;这只是一个例子。)

是否可以gvim -f在不关闭 gvim 会话的情况下将控制权从命令返回到 shell?

(例如,有没有办法让 gvim 将某种虚假的“我已完成”信号发送回 shell,但保留控制权?或者有没有办法将当前进程转变为后台进程而不终止它?)

(我添加bash标签是因为这是我当前正在使用的 shell,但理想情况下我想要一个与 shell 无关的解决方案。)

编辑:原始帖子提到“放弃子进程”,现在我意识到,这实际上不是我想要做的。

答案1

我不知道如何在 gvim 内部执行此操作,但正常的 shell 作业控制操作可以做到这一点。

用于ctrl-z暂停前台 gvim 进程,然后用于bg在后台恢复进程并允许 shell 继续正常运行。(这基本上就是 gvim 所做的一切,-f尽管方式略有不同。)

相关内容