我知道我可以:version
在正常模式下检查 vim 版本
但是命令给我的是只读文本,我无法搜索任何内容,而且文本很多
那么如何从:version
命令的结果中读取到编辑区域呢?
我想也许是这样的,:r!ls
但如何?
顺便说一句,我认为这不是:r!vim --version
正确的方法,因为带有 GUI 的 vim 在终端中是不一样的。
先谢谢了!
我知道我可以:version
在正常模式下检查 vim 版本
但是命令给我的是只读文本,我无法搜索任何内容,而且文本很多
那么如何从:version
命令的结果中读取到编辑区域呢?
我想也许是这样的,:r!ls
但如何?
顺便说一句,我认为这不是:r!vim --version
正确的方法,因为带有 GUI 的 vim 在终端中是不一样的。
先谢谢了!
该命令:redir
将消息重定向到文件、寄存器或变量中。
您可以将:version
输出重定向到一个寄存器,比如"x
,然后使用普通模式命令"xp
或 Ex 命令将寄存器内容插入缓冲区:put x
。
:redir @x | silent version | redir END
:put x
这适用于所有消息,而不仅仅是:version
.
如果您只是对从 Vim 中获取版本信息感兴趣,那么您也可以使用命令行选项来获取它--version
。
$ vim --version > version.txt
特别是对于 MacVim,您需要小心调用正确的 Vim 程序。也就是说,不是系统 Vim,而是 MacVim 可执行文件。尝试:
$ mvim --version > version.txt
现在version.txt
包含版本信息,与:version
输出相同。
您可以使用该:redir
命令将 的输出:version
放在寄存器中:
:redir @x
:version
:redir END
(or :redir @x | version | redir END in one line)
然后将其粘贴到缓冲区中:
"xp
由于您使用的是 MacVim,我假设该mvim
脚本已正确安装在您的$PATH
. 如果是这种情况,您还可以执行以下操作:
:r !mvim --version