假设我要运行组合键 <C-e>
来自 Vim 脚本的五次。那可能吗?如果是这样,它是如何完成的?
具体来说,我需要这个,因为我想映射一个键以将视口(viewport)在一个方向上轻推屏幕高度的四分之一。为此,我需要结合功能 winheight(".")
使用组合键 <C-e>
不知何故。
注:我知道我可以更改选项 'scroll'
设置行数<C-u>
和 <C-d>
滚动,但该组合键也会移动光标。另外,我不知道如何设置 'scroll'
滚动窗口高度的一部分的选项,除了当我将其设置为 0 时它滚动窗口高度的一半。
最佳答案
对于简单的命令,:norm[al][!]
足够了。例如,要拉出一行:
norm! yy
对于特殊字符,请使用
:exe[cute] "norm[al][!]"
.比如做5<C-e>
:exe "norm! 5\<C-e>"
与
exe
,可以使用多个参数插入其他代码:exe "norm!" winheight(".")/4 "\<C-e>"
但是,参数是用空格连接的,然后按字面意思解释。为避免这种情况,请使用
.
加入争论。因此,为了达到预期的效果:exe "norm!" winheight(".")/4 . "\<C-e>"
见
:help norm
和 :help exe
了解更多信息。
关于vim - 如何从 Vim 脚本文件手动执行组合键?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14349779/