我在Windows机器上,当我暂时使用:sh
更改为控制台,然后使用exit
命令返回到vim,然后再次返回控制台并重新开始。这导致我丢失了以前的目录。是否有其他方式返回到vim将无法启动shell?
答案 0 :(得分:2)
不是真的
https://stackoverflow.com/a/12089631/1427295
GVIM不保留以某种方式启动它的shell的“句柄” 允许它将命令发送回它。因为他们 同步执行,你也无法从GVIM启动shell,保持 在继续使用GVIM的同时提供命令。
我担心你必须使用窗口管理器的功能 启动(然后重新激活)一个shell窗口,然后发送 命令作为击键。在Windows上,这可以完成(例如在 VBScript)通过WshShell的Run(),AppActivate()和SendKeys()方法; 在Linux上可能有类似的窗口控制机制, 太
如果您不介意在GVIM中使用该shell(模拟,使用 但是,有一些插件可以实现这一点。
https://serverfault.com/a/95405
Windows命令解释程序(“cmd.exe”)不提供任何内容 支持保存/导出/保存历史记录,如果有, 微软没有记录它,没有人能够找到它。您 当然可以尝试解决这个问题,就像肖恩建议的那样,但是 有(或似乎没有)内置支持
您可以使用 echo%cd%>输出命令历史记录。 prev_dir.txt 然后创建一个cds到prev_dir.txt目录的脚本,但是在每次退出shell之前,你仍然需要记住将目录保存到文件中。