【问题标题】:Freeing Terminal While Using gVim使用 gVim 时释放终端
【发布时间】:2015-09-18 23:16:44
【问题描述】:

有没有一种方法可以让我的终端在不退出 gVim 的情况下从运行 gVim 进程中解放出来,以便我可以继续使用终端?我希望能够 做一些类似于我用emacs做的事情。使用 emacs,我可以使用 emacs [file] 命令让进程通过终端运行,或者我可以使用 runemacs [file] 命令保持终端空闲。

我使用以下命令启动 gVim:

gvim [file]

然后终端挂起直到我:quitgVim。当我在网上搜索这个问题的答案时,人们建议最好的办法是使用ctrl-z暂停vim进程,然后使用fg返回。但是,这在命令行和 gVim 模式下都对我不起作用。我在 Windows 7 上为我的终端使用 Git Bash。

【问题讨论】:

  • gvim [file] &?它应该使用& 在后台运行,就像任何其他进程一样
  • 我建议使用 vim 而不是 gvim。您在编辑文件时需要您的终端来处理其他事情吗?
  • 这确实有效,尽管它给了我输出[1] 972。附加的 & 到底是做什么的?
  • @Will 我通常使用 git 浏览目录,也许运行 Python 解释器。很有可能我只是不知道如何有效地使用终端,但无论出于何种原因,我现在同时使用它和 vim。
  • 啊,在那种情况下,我现在会选择@mMontu 的答案。看看这个:bashitout.com/2013/05/18/Ampersands-on-the-command-line.html 但是如果你喜欢 bash,我建议你尝试一个真正的 Linux 发行版。 Linux Mint Cinnamon 带有一个终端,该终端具有针对此问题的选项卡!

标签: vim vi git-bash


【解决方案1】:

您可以像任何其他进程一样在后台运行 gvim:

gvim [file] &

执行此命令后,您会收到一条消息,指示新进程的 pid。当您结束它时,您应该会在该 shell 上收到类似的消息。


编辑:

ctrl-z/fg的问题很可能和windows有关。 This question states GitBash 会创建一个新的 shell 而不是返回到当前的 shell,所以它可能不像在 Linux 中那样工作。一个可能的解决方案是从 gVim 运行您的命令,或者通过映射上的 :! 或插件/命令调用 shell(fugitive 用于 git,:py 或一些用于 python 解释器的插件等)。

【讨论】:

  • 啊,我明白了。谢谢!你知道为什么ctrl-zfg 不起作用吗?这是 Windows 特有的东西吗?
猜你喜欢
  • 2021-02-27
  • 1970-01-01
  • 2018-09-21
  • 2018-02-21
  • 1970-01-01
  • 2014-06-25
  • 1970-01-01
  • 1970-01-01
  • 2010-10-04
相关资源
最近更新 更多