vim - 发现 Vim 退出状态的原因

标签 vim

运行时:

vim /tmp/blah
:q
echo $?

我的退出状态为 1 .这破坏了包括 Git 在内的各种东西。如果我在没有 vimrc 的情况下运行 vim:
vim -u NONE /tmp/blah
:q
echo $?

我的退出状态为 0 .我使用 Pathogen 所以这也有效地禁用了插件。有没有人建议有效地确定退出状态的原因?我知道详细运行 Vim 并记录到文件中。我应该在这个文件中寻找特定的东西吗?

如果有一种方法可以找到确定退出状态的确切行,我很想知道它,因为搜索并没有出现太多。

最佳答案

终于在帮助中找到了这个命令::cq[uit] .因此,在进行详细日志记录后,搜索 \<cq\%[uit]\> .

更新:还有一些方法可以使用在某些解释器支持下编译的 vim 来更改退出状态:至少,以下工作:

python import sys
python sys.exit(1)
" (same for python3)

perl exit 1

我不太了解其他语言,无法在这里编写以不同退出状态退出 vim 的代码示例。另请注意,使用 :pyfile 获取的文件中的此类命令, :rubyfile和其他 :*file也应该可以工作,以及未随插件分发的模块中的此代码。

我认为此时最有效的方法是禁用插件,直到找到问题的根源。

关于vim - 发现 Vim 退出状态的原因,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5956001/

相关文章:

VIM折叠所有东西,除了其他东西

vim - 使用非英文键盘在 Vim 上写得更快的最佳方法是什么?

regex - Vim 语法文件。在 'foo'中独立匹配 'bar'和 'foobar'

vim - 在vim中,如何使用setreg向寄存器添加回车符?

vim - 在 Vim 中,如何删除双引号内的所有内容?

vim - 在 Vim 中粘贴而不移动光标

pdf - 使用 vim 阅读 pdf 的内容

vim - 使 gvim markdown 高亮忽略内部标记

vim - 更改任何字符内的文本(如 ci')

Vim 颜色方案不适用于大文件