2014-02-19 75 views
1

我在Windows机器上,当我暂时更改为控制台使用:sh然后回到vim与exit命令,然后再次回到控制台,它重新开始。这会导致我失去以前的目录。有没有其他方式返回到vim不会启动shell?临时退出Gvim开始通过shell

回答

2

不是真的

https://stackoverflow.com/a/12089631/1427295

GVIM不保留“把手”,以启动它的方式 ,允许其将命令发送回它的外壳。由于它们是 同步执行,您也无法从GVIM启动shell,请继续使用 为其提供命令,同时继续在GVIM中运行。

恐怕您必须使用窗口管理器的功能来启动(然后再重新激活)shell窗口,然后发送 命令作为击键。在Windows上,这可以通过WshShell的Run(),AppActivate()和SendKeys()方法完成(例如,在 VBScript中); 也有类似的Linux窗口控制机制, 。

如果你不介意在你的GVIM内部有这个shell(模拟, 所有的缺点),但是,有插件可以实现这一点。

https://serverfault.com/a/95405

Windows命令解释器( “cmd.exe的”)不提供保存/导出/保存历史,任何 支持,如果这样做, 微软并没有记录它,没有人能够找到它。您 当然可以尝试解决,像肖恩建议,但 有(或确实出现了),没有使用回声内置支持这一

您可以输出你的命令历史记录%cd%> prev_dir.txt然后创建一个脚本,该脚本将cds指向prev_dir.txt中的目录,但在每次退出shell之前,仍然必须记住将目录保存到该文件。