为什么将命令窗口高度设置为2行,以避免很多情况下必须“按<Enter>继续”?

use*_*ser 4 vim

我在我的.vimrc

Set the command window height to 2 lines, to avoid many cases of having to
" "press <Enter> to continue"
set cmdheight=2
Run Code Online (Sandbox Code Playgroud)

这会导致页面底部出现额外的空间: 在此输入图像描述

如果我将其设置为set cmdheight=1,那么我会得到一个更小的空间: 在此输入图像描述

我不明白我需要这样做set cmdheight=2。这些是什么many cases of having to "press <Enter> to continue"

不必反复按 Enter 键(无论出于什么原因)似乎很好,但为什么我需要为此失去屏幕中的一 (1) 行垂直空间?

mhi*_*inz 6

如果命令行区域不够大,无法显示文本,则会出现按 Enter 提示。

例如,插件打印的行数比'cmdheight'设置的行数多。甚至当 时也会发生这种情况cmdheight=1,但要打印的行比窗口的宽度长。

:set cmdheight=1
:echomsg "foo" | echomsg "bar"
Run Code Online (Sandbox Code Playgroud)

恕我直言,设置'cmdheight'为 2 或更高是不值得的,因为它看起来很丑并且占用了空间来解决不太常见的按输入提示。

相反,插件应该考虑到这一点并通过以下方式“刷新”它们的消息:redraw

:echomsg "foo" | redraw | echomsg "bar"
Run Code Online (Sandbox Code Playgroud)

现在,您只会看到后一条消息,但仍然可以通过 消息历史记录中找到前一条消息:messages

:h press-enter有关这方面的更多信息,请参阅参考资料。