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