“按 ENTER 或输入命令继续”:为什么我会看到这个?

Wil*_*den 9 vim

当命令的输出超过一行时,我对这条消息很熟悉。

然而,在我使用的其中一个系统上,我每次用 书写时都会看到它:w,尽管有足够的水平空间来放置消息。例如:

在此处输入图片说明

这似乎只发生在我在 tmux 会话中使用 vim 时,但我不知道为什么会发生这种情况。vim 和 tmux 的所有其他方面似乎都运行良好。事实证明它与 tmux 无关。


更新:我在 vimrc 中将其追踪到以下行:

set backupdir=/tmp
Run Code Online (Sandbox Code Playgroud)

使用仅包含此行的 vimrc 足以在写入文件时触发消息。有趣的是,它仅在我写入现有文件时发生

为什么会发生这种情况,并且仅在这台机器上?

Pre*_*rem 5

如果不查看确切的环境,我只能猜测 /tmp 在罪魁祸首机器上不存在(或已满或存在某些权限问题)。每当你写入现有文件时,vim 都无法保存备份,因此它会抱怨,然后提示你。

您可以通过尝试以下方法之一来检查是否属于这种情况:

  1. 看看是否可以使用 来保存文件而无需提示:w!
  2. 通过将以下内容添加到以下内容,看看是否可以在提示之前收到一些错误消息.vimrc

    set cmdheight=N
    
    Run Code Online (Sandbox Code Playgroud)

    尝试 N=2 或 3 或 4,无论哪个适合您的环境。