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

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

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

然而,在我使用的系统之一上,:w尽管有足够的水平空间来容纳消息,但每次使用 写入时都会看到它。例如:

在此输入图像描述

这似乎只发生在我在 tmux 会话中使用 vim 时,但我不明白为什么会发生这种情况。 vim 和 tmux 的所有其他方面似乎都工作正常。事实证明它与 tmux 无关。


更新:我在 vimrc 中找到了以下行:

set backupdir=/tmp

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

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

答案1

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

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

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

    set cmdheight=N
    

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

答案2

尝试使用特权打开文件sudo。例如,如果文件名为MyFilesudo vim MyFile 则不会出现该问题。如果文件是只读的,则会发生这种情况。您可以使用以下方法永久处理该问题

sudo chmod a+w MyFile

现在您始终可以打开不带sudo.做就是了vim MyFile

相关内容