我如何退出Vim,而不是:q,然后返回继续编辑?
如果您在Unix系统上,Ctrl + Z将挂起Vim并给您一个shell。
输入fg返回。注意,Vim在编辑时创建一个交换文件,挂起Vim不会删除该文件(毕竟你并没有退出Vim)。在哑终端上,这个方法对于使用vi的编辑-编译-编辑循环来说是相当标准的。我刚刚发现,对我来说,gVim最小化了键入Z。
假设终端Vim是*nix类型:
暂停运行Vim
Ctrl + Z
将暂停进程并返回到您的shell
fg
将恢复(带到前景)您暂停的Vim。
启动一个新的shell
使用以下命令启动子shell:
:sh
(由)
:set shell?
or
:!bash
紧随其后的是:
Ctrl+D(或退出,但为什么要输入这么多?)
杀死外壳并返回Vim。
有几种方法可以退出Vim,并且当您返回时一切都是一样的。在Vim本身中有非常好的文档解释了实现这一点的各种方法。您可以在vim中使用以下命令访问相关帮助页面
为了给你一个简单的总结,这里有不同的退出和返回的方法,而你的会话完好无损:
Suspend and resume - You don't actually quit Vim with this; you simply hide your session in the background until you need it. If you reset your computer or issue a kill command to Vim, you will lose your session. This is good for when you want to switch to another task temporarily, but if this is the case, then you might want to look into using the GNU Screen utility instead. Sessions - This is the true way of saving your session between instances of Vim. Even if you truly quit Vim, your session will be there for you when you return. This is probably what you are looking for.
你也可以通过:sus进入shell,然后通过fg返回。
如果您经常需要在shell和vim之间来回切换,那么您真正想要的可能是在shell中只有一个vim实例,并使用它来打开工作区中的任何文件。如果是,检查这个问题。一旦您正确地设置了它,您可以:sus或C-z返回到shell,然后只需v或v <newfile>返回到vim。
我的答案几乎就是我的日常生活。
如果你不介意用一下鼠标:
启动你的终端, 选择一个文件, 选择打开标签。
这将在终端上创建一个新选项卡,您可以在该选项卡上运行Vim。现在使用鼠标移到/移出终端。我更喜欢这样,而不是总是必须键入(:shell和退出)。
推荐文章
- 在Vim/Vi中,如何将光标移动到前一个单词的末尾?
- 如何在vim中自动删除尾随空格
- 为什么Vim使用~扩展名保存文件?
- 如何在Vim或Linux中将空格转换为制表符?
- 我如何使用vimdiff来解决git合并冲突?
- 在Vim中删除当前缓冲区的文件名/路径
- Git在终端提交时打开VIM,但无法返回终端
- 请参阅编辑器中的换行符和回车
- 如何在NERDTree中显示隐藏文件(以句点开始)?
- 如何复制一个选择到OS X剪贴板
- 如何删除(不削减)在Vim?
- Vim:在可视模式下快速选择文本块的方法
- 是否有vim命令来重新定位一个选项卡?
- MacVim和普通Vim有什么区别?
- 有什么方法可以在Vim中查看当前映射的键吗?