如何在不执行文本的情况下将文本输入到Vim的命令行中?

时间:2018-04-18 20:04:38

标签: function vim

我的上下文: 我经常在VIM做笔记。我希望VIM函数在命令行中键入标准头(特别是:sav 20180418_的时间戳,而不执行;控制将返回VIM仍处于命令模式(这样用户可以附加文件名的剩余部分并执行)。

我的根本难点:我似乎无法让Vim函数/宏进入命令模式,向命令行提供文本,然后在保持命令模式时退出而不是执行提供的文本

这可能吗?

谢谢。

1 个答案:

答案 0 :(得分:3)

您可以使用expand()功能。例如,如果您当前正在编辑文件20180418_.txt,则可以键入:

:sav <c-r>=expand("%:r")<cr>

其中<c-r>=应输入 Ctrl + R ,然后输入 = 输入键为<cr>。这会将命令行中的文本扩展为:

:sav 20180418_