vim myfile> :sh>退出> vim myfile //得到另一个vim实例的警告正在编辑同一个文件
这些是正常情况:
vim myfile> :sh>退出//继续编辑
vim myfile> :wq> vim myfile //继续编辑
解决方法
>使用pstree -h:它将输出当前分支highligted的进程树,你需要检查的是高亮显示中是否有vim.
>另一种可能性是ps t:它将使用当前终端显示所有进程,并且当你在里面时应该在列表中显示vim:sh.如果你想知道你运行vim的参数,ps -oargs可能会更有用.
这些方法更可靠,因为您可以覆盖VIMRUNTIME,VIM和MYVIMRC环境变量以进行一些自定义(BTW,它们由vim定义用于vimscripts,而不是:sh).它们也适用于允许您运行子shell的其他进程,但不定义任何环境变量.
我还建议考虑使用< C-z>在正常模式下:或者挂起/:在Ex中停止,因为这些使用shell vim是从而不是创建新的.此行为使您可以访问在运行vim之前键入的命令的历史记录,还可以编写更复杂且耗时的shell配置,而无需每次都等待.
如果您使用< C-z>两种方法仍然有效,但第一种方法不会突出显示vim,因为它与pstree本身处于同一级别(具有相同的父级),可能只是在图形中的pstree之下或之上.这也启用了第三种方法:内置作业shell.
为了从< C-z>恢复.你应该使用fg(zsh和bash中的单个%也可以使用),然后输入更少然后退出(但更多然后< C-d>).
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。