我重新映射一个键以捕获该键被按下并调用一个函数,在该函数中决定调用一个动作或调用该键,因为这个重映射不存在。但问题是当我重新映射一个密钥时,我会丢失映射到该密钥的操作。
Hot我可以在vimscript中实现这个吗?
答案 0 :(得分:1)
您可以在函数中使用:h :normal
来重新创建重新映射的密钥的原始功能。例如......
nnoremap l :call MyFun()<cr>
fun! MyFun()
call inputsave()
let choice = confirm("Call fun?", "&yes\n&no", 1)
if choice == 1
call OtherFun()
else
norm! l
endif
endfun
fun! OtherFun()
echo "It worked!"
endfun