如何让 vim 函数等待单次按键?
例子:
- 创建一个函数 NextOccur,该函数映射为在
f
按下键时执行 f
按下时没有任何帮助- 在按下下一个键(比如说
x
)后,光标应该移动到下一个x
PS:是的,我知道这正是
f
默认情况下所做的(尽管它只是逐行),但我想知道我们是否可以自己实现这样的功能
如果我想等待接下来的两个按键怎么办,这也可能吗?
您可以使用内置getchar()
功能。它等待一个按键然后返回它。对于一个普通的 8 位字符,你必须使用nr2char(getchar())
它来将其转换为字符串。
您似乎也想扩展f
/t
命令以涵盖多行。请注意,已经有插件可以做到这一点,例如ft_improved。